import { AssetStats } from "../repositories/asset.repository";
import z from 'zod';
export declare const AssetIdsSchema: z.ZodObject<{
    assetIds: z.ZodArray<z.ZodUUID>;
}, z.core.$strip>;
export declare enum AssetJobName {
    REFRESH_FACES = "refresh-faces",
    REFRESH_METADATA = "refresh-metadata",
    REGENERATE_THUMBNAIL = "regenerate-thumbnail",
    TRANSCODE_VIDEO = "transcode-video"
}
export declare const AssetMetadataUpsertItemSchema: z.ZodObject<{
    key: z.ZodString;
    value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
}, z.core.$strip>;
export declare const mapStats: (stats: AssetStats) => AssetStatsResponseDto;
declare const AssetBulkUpdateDto_base: import("nestjs-zod").ZodDto<z.ZodPipe<z.ZodObject<{
    isFavorite: z.ZodOptional<z.ZodBoolean>;
    visibility: z.ZodOptional<z.ZodEnum<typeof import("src/enum").AssetVisibility>>;
    dateTimeOriginal: z.ZodOptional<z.ZodString>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    rating: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
    description: z.ZodOptional<z.ZodString>;
    ids: z.ZodArray<z.ZodUUID>;
    duplicateId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    dateTimeRelative: z.ZodOptional<z.ZodInt>;
    timeZone: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodCustom<{
    ids: string[];
    isFavorite?: boolean | undefined;
    visibility?: import("src/enum").AssetVisibility | undefined;
    dateTimeOriginal?: string | undefined;
    latitude?: number | undefined;
    longitude?: number | undefined;
    rating?: number | null | undefined;
    description?: string | undefined;
    duplicateId?: string | null | undefined;
    dateTimeRelative?: number | undefined;
    timeZone?: string | undefined;
}, {
    ids: string[];
    isFavorite?: boolean | undefined;
    visibility?: import("src/enum").AssetVisibility | undefined;
    dateTimeOriginal?: string | undefined;
    latitude?: number | undefined;
    longitude?: number | undefined;
    rating?: number | null | undefined;
    description?: string | undefined;
    duplicateId?: string | null | undefined;
    dateTimeRelative?: number | undefined;
    timeZone?: string | undefined;
}>>, false>;
export declare class AssetBulkUpdateDto extends AssetBulkUpdateDto_base {
}
declare const UpdateAssetDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    isFavorite: z.ZodOptional<z.ZodBoolean>;
    visibility: z.ZodOptional<z.ZodEnum<typeof import("src/enum").AssetVisibility>>;
    dateTimeOriginal: z.ZodOptional<z.ZodString>;
    latitude: z.ZodOptional<z.ZodNumber>;
    longitude: z.ZodOptional<z.ZodNumber>;
    rating: z.ZodOptional<z.ZodNullable<z.ZodInt>>;
    description: z.ZodOptional<z.ZodString>;
    livePhotoVideoId: z.ZodOptional<z.ZodNullable<z.ZodUUID>>;
}, z.core.$strip>, false>;
export declare class UpdateAssetDto extends UpdateAssetDto_base {
}
declare const AssetBulkDeleteDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    ids: z.ZodArray<z.ZodUUID>;
    force: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>, false>;
export declare class AssetBulkDeleteDto extends AssetBulkDeleteDto_base {
}
declare const AssetIdsDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    assetIds: z.ZodArray<z.ZodUUID>;
}, z.core.$strip>, false>;
export declare class AssetIdsDto extends AssetIdsDto_base {
}
declare const AssetJobsDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    assetIds: z.ZodArray<z.ZodUUID>;
    name: z.ZodEnum<typeof AssetJobName>;
}, z.core.$strip>, false>;
export declare class AssetJobsDto extends AssetJobsDto_base {
}
declare const AssetStatsDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    visibility: z.ZodOptional<z.ZodEnum<typeof import("src/enum").AssetVisibility>>;
    isFavorite: z.ZodOptional<z.ZodCodec<z.ZodString, z.ZodBoolean>>;
    isTrashed: z.ZodOptional<z.ZodCodec<z.ZodString, z.ZodBoolean>>;
}, z.core.$strip>, false>;
export declare class AssetStatsDto extends AssetStatsDto_base {
}
declare const AssetStatsResponseDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    images: z.ZodInt;
    videos: z.ZodInt;
    total: z.ZodInt;
}, z.core.$strip>, false>;
export declare class AssetStatsResponseDto extends AssetStatsResponseDto_base {
}
declare const AssetMetadataRouteParams_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    id: z.ZodUUID;
    key: z.ZodString;
}, z.core.$strip>, false>;
export declare class AssetMetadataRouteParams extends AssetMetadataRouteParams_base {
}
declare const AssetMetadataUpsertDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    items: z.ZodArray<z.ZodObject<{
        key: z.ZodString;
        value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    }, z.core.$strip>>;
}, z.core.$strip>, false>;
export declare class AssetMetadataUpsertDto extends AssetMetadataUpsertDto_base {
}
declare const AssetMetadataBulkUpsertDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    items: z.ZodArray<z.ZodObject<{
        assetId: z.ZodUUID;
        key: z.ZodString;
        value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    }, z.core.$strip>>;
}, z.core.$strip>, false>;
export declare class AssetMetadataBulkUpsertDto extends AssetMetadataBulkUpsertDto_base {
}
declare const AssetMetadataBulkDeleteDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    items: z.ZodArray<z.ZodObject<{
        assetId: z.ZodUUID;
        key: z.ZodString;
    }, z.core.$strip>>;
}, z.core.$strip>, false>;
export declare class AssetMetadataBulkDeleteDto extends AssetMetadataBulkDeleteDto_base {
}
declare const AssetMetadataResponseDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    key: z.ZodString;
    value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    updatedAt: z.ZodCodec<z.ZodISODateTime, z.ZodDate>;
}, z.core.$strip>, false>;
export declare class AssetMetadataResponseDto extends AssetMetadataResponseDto_base {
}
declare const AssetMetadataBulkResponseDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    key: z.ZodString;
    value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
    updatedAt: z.ZodCodec<z.ZodISODateTime, z.ZodDate>;
    assetId: z.ZodUUID;
}, z.core.$strip>, false>;
export declare class AssetMetadataBulkResponseDto extends AssetMetadataBulkResponseDto_base {
}
declare const AssetCopyDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    sourceId: z.ZodUUID;
    targetId: z.ZodUUID;
    sharedLinks: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
    albums: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
    sidecar: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
    stack: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
    favorite: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
}, z.core.$strip>, false>;
export declare class AssetCopyDto extends AssetCopyDto_base {
}
declare const AssetDownloadOriginalDto_base: import("nestjs-zod").ZodDto<z.ZodObject<{
    edited: z.ZodOptional<z.ZodDefault<z.ZodCodec<z.ZodString, z.ZodBoolean>>>;
}, z.core.$strip>, false>;
export declare class AssetDownloadOriginalDto extends AssetDownloadOriginalDto_base {
}
export {};
