import type { Claim } from './Claim'; declare type ValidFormats = 'image/jpeg' | 'image/png'; export interface IThumbnailData { format: ValidFormats; image: number[]; } export interface IThumbnail { url: string | null; dispose?: () => void; } export interface IAssetData { /** * A human readable title, generally source filename */ title: string; /** * The format of the source file as a mime type or extension */ format: string; /** * Document ID from `xmpMM:DocumentID` in XMP metadata */ document_id: string; /** * Instance ID from `xmpMM:InstanceID` in XMP metadata */ instance_id: string; /** * Binary thumbnail of the image */ thumbnail?: IThumbnailData | null | undefined; } export declare class Asset { #private; readonly parent: Claim; readonly data: IAssetData; readonly type: string | undefined; readonly arrayBuffer: ArrayBuffer | undefined; constructor(parent: Claim, data: IAssetData); get blob(): Blob | undefined; computeHash(): Promise; /** * Generates a blob URL from the thumbnail data * * @returns An object with a `url` and `dispose` function */ generateThumbnailUrl(): Promise; } export {}; //# sourceMappingURL=Asset.d.ts.map