"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.lockableProperties = exports.columns = void 0;
const userColumns = ['id', 'name', 'email', 'avatarColor', 'profileImagePath', 'profileChangedAt'];
const userWithPrefixColumns = [
    'user2.id',
    'user2.name',
    'user2.email',
    'user2.avatarColor',
    'user2.profileImagePath',
    'user2.profileChangedAt',
];
exports.columns = {
    asset: [
        'asset.id',
        'asset.checksum',
        'asset.checksumAlgorithm',
        'asset.fileCreatedAt',
        'asset.fileModifiedAt',
        'asset.isExternal',
        'asset.visibility',
        'asset.libraryId',
        'asset.livePhotoVideoId',
        'asset.localDateTime',
        'asset.originalFileName',
        'asset.originalPath',
        'asset.ownerId',
        'asset.type',
        'asset.width',
        'asset.height',
        'asset.isEdited',
    ],
    workflowAssetV1: [
        'asset.id',
        'asset.ownerId',
        'asset.stackId',
        'asset.livePhotoVideoId',
        'asset.libraryId',
        'asset.duplicateId',
        'asset.createdAt',
        'asset.updatedAt',
        'asset.deletedAt',
        'asset.fileCreatedAt',
        'asset.fileModifiedAt',
        'asset.localDateTime',
        'asset.type',
        'asset.status',
        'asset.visibility',
        'asset.duration',
        'asset.checksum',
        'asset.originalPath',
        'asset.originalFileName',
        'asset.isOffline',
        'asset.isFavorite',
        'asset.isExternal',
        'asset.isEdited',
        'asset.isFavorite',
    ],
    assetFiles: ['asset_file.id', 'asset_file.path', 'asset_file.type', 'asset_file.isEdited'],
    assetFilesForThumbnail: [
        'asset_file.id',
        'asset_file.path',
        'asset_file.type',
        'asset_file.isEdited',
        'asset_file.isProgressive',
        'asset_file.isTransparent',
    ],
    authUser: ['user.id', 'user.name', 'user.email', 'user.isAdmin', 'user.quotaUsageInBytes', 'user.quotaSizeInBytes'],
    authApiKey: ['api_key.id', 'api_key.permissions'],
    authSession: ['session.id', 'session.updatedAt', 'session.pinExpiresAt', 'session.appVersion'],
    user: userColumns,
    userWithPrefix: userWithPrefixColumns,
    userAdmin: [
        ...userColumns,
        'createdAt',
        'updatedAt',
        'deletedAt',
        'isAdmin',
        'status',
        'oauthId',
        'profileImagePath',
        'shouldChangePassword',
        'storageLabel',
        'quotaSizeInBytes',
        'quotaUsageInBytes',
    ],
    tag: ['tag.id', 'tag.value', 'tag.createdAt', 'tag.updatedAt', 'tag.color', 'tag.parentId'],
    apiKey: ['id', 'name', 'userId', 'createdAt', 'updatedAt', 'permissions'],
    notification: ['id', 'createdAt', 'level', 'type', 'title', 'description', 'data', 'readAt'],
    pluginMethod: [
        'plugin_method.name',
        'plugin_method.title',
        'plugin_method.description',
        'plugin_method.types',
        'plugin_method.schema',
        'plugin_method.hostFunctions',
        'plugin_method.allowedHosts',
        'plugin_method.uiHints',
    ],
    syncAsset: [
        'asset.id',
        'asset.ownerId',
        'asset.originalFileName',
        'asset.thumbhash',
        'asset.checksum',
        'asset.fileCreatedAt',
        'asset.fileModifiedAt',
        'asset.createdAt',
        'asset.localDateTime',
        'asset.type',
        'asset.deletedAt',
        'asset.isFavorite',
        'asset.visibility',
        'asset.duration',
        'asset.livePhotoVideoId',
        'asset.stackId',
        'asset.libraryId',
        'asset.width',
        'asset.height',
        'asset.isEdited',
    ],
    syncAlbumAsset: [
        'asset.id',
        'asset.ownerId',
        'asset.originalFileName',
        'asset.thumbhash',
        'asset.checksum',
        'asset.fileCreatedAt',
        'asset.fileModifiedAt',
        'asset.createdAt',
        'asset.localDateTime',
        'asset.type',
        'asset.deletedAt',
        'asset.visibility',
        'asset.duration',
        'asset.livePhotoVideoId',
        'asset.stackId',
        'asset.libraryId',
        'asset.width',
        'asset.height',
        'asset.isEdited',
    ],
    syncPartnerAsset: [
        'asset.id',
        'asset.ownerId',
        'asset.originalFileName',
        'asset.thumbhash',
        'asset.checksum',
        'asset.fileCreatedAt',
        'asset.fileModifiedAt',
        'asset.localDateTime',
        'asset.createdAt',
        'asset.type',
        'asset.deletedAt',
        'asset.visibility',
        'asset.duration',
        'asset.livePhotoVideoId',
        'asset.stackId',
        'asset.libraryId',
        'asset.width',
        'asset.height',
        'asset.isEdited',
    ],
    syncAlbumUser: ['album_user.albumId as albumId', 'album_user.userId as userId', 'album_user.role'],
    syncStack: ['stack.id', 'stack.createdAt', 'stack.updatedAt', 'stack.primaryAssetId', 'stack.ownerId'],
    syncUser: ['id', 'name', 'email', 'avatarColor', 'deletedAt', 'updateId', 'profileImagePath', 'profileChangedAt'],
    stack: ['stack.id', 'stack.primaryAssetId', 'ownerId'],
    syncAssetExif: [
        'asset_exif.assetId',
        'asset_exif.description',
        'asset_exif.exifImageWidth',
        'asset_exif.exifImageHeight',
        'asset_exif.fileSizeInByte',
        'asset_exif.orientation',
        'asset_exif.dateTimeOriginal',
        'asset_exif.modifyDate',
        'asset_exif.timeZone',
        'asset_exif.latitude',
        'asset_exif.longitude',
        'asset_exif.projectionType',
        'asset_exif.city',
        'asset_exif.state',
        'asset_exif.country',
        'asset_exif.make',
        'asset_exif.model',
        'asset_exif.lensModel',
        'asset_exif.fNumber',
        'asset_exif.focalLength',
        'asset_exif.iso',
        'asset_exif.exposureTime',
        'asset_exif.profileDescription',
        'asset_exif.rating',
        'asset_exif.fps',
    ],
    syncAssetOcr: [
        'asset_ocr.id',
        'asset_ocr.assetId',
        'asset_ocr.x1',
        'asset_ocr.y1',
        'asset_ocr.x2',
        'asset_ocr.y2',
        'asset_ocr.x3',
        'asset_ocr.y3',
        'asset_ocr.x4',
        'asset_ocr.y4',
        'asset_ocr.text',
        'asset_ocr.boxScore',
        'asset_ocr.textScore',
        'asset_ocr.updateId',
        'asset_ocr.isVisible',
    ],
    syncAssetEdit: [
        'asset_edit.id',
        'asset_edit.assetId',
        'asset_edit.sequence',
        'asset_edit.action',
        'asset_edit.parameters',
    ],
    exif: [
        'asset_exif.assetId',
        'asset_exif.autoStackId',
        'asset_exif.bitsPerSample',
        'asset_exif.city',
        'asset_exif.colorspace',
        'asset_exif.country',
        'asset_exif.dateTimeOriginal',
        'asset_exif.description',
        'asset_exif.exifImageHeight',
        'asset_exif.exifImageWidth',
        'asset_exif.exposureTime',
        'asset_exif.fileSizeInByte',
        'asset_exif.fNumber',
        'asset_exif.focalLength',
        'asset_exif.fps',
        'asset_exif.iso',
        'asset_exif.latitude',
        'asset_exif.lensModel',
        'asset_exif.livePhotoCID',
        'asset_exif.longitude',
        'asset_exif.make',
        'asset_exif.model',
        'asset_exif.modifyDate',
        'asset_exif.orientation',
        'asset_exif.profileDescription',
        'asset_exif.projectionType',
        'asset_exif.rating',
        'asset_exif.state',
        'asset_exif.tags',
        'asset_exif.timeZone',
    ],
};
exports.lockableProperties = [
    'description',
    'dateTimeOriginal',
    'latitude',
    'longitude',
    'rating',
    'timeZone',
    'tags',
];
//# sourceMappingURL=database.js.map