/** * AVIF image data */ export declare interface AvifImageData { data: Uint8Array width: number height: number hasAlpha?: boolean bitDepth?: 8 | 10 | 12 } export declare interface AvifAnimationFrame extends AvifImageData { duration: number timestamp: number } export declare interface AvifAnimation { frames: AvifAnimationFrame[] timescale: number duration: number } /** * AVIF encoding options */ export declare interface AvifEncodeOptions { quality?: number lossless?: boolean effort?: number alpha?: boolean alphaQuality?: number chromaSubsampling?: '4:2:0' | '4:2:2' | '4:4:4' } /** * AVIF decoding options */ export declare interface AvifDecodeOptions { format?: 'rgba' | 'rgb' ignoreAlpha?: boolean } /** * ISOBMFF box structure */ export declare interface ISOBMFFBox { type: string size: number offset: number data: Uint8Array children?: ISOBMFFBox[] } /** * AVIF file info */ export declare interface AvifInfo { width: number height: number hasAlpha: boolean bitDepth: number colorSpace: string isSequence: boolean } /** * Item location entry */ export declare interface ItemLocation { itemId: number constructionMethod: number dataReferenceIndex: number baseOffset: number extents: Array<{ extentOffset: number extentLength: number }> } /** * Item info entry */ export declare interface ItemInfo { itemId: number itemProtectionIndex: number itemType: string itemName: string contentType?: string contentEncoding?: string } /** * Image spatial extent */ export declare interface ImageSpatialExtent { width: number height: number } /** * Pixel information */ export declare interface PixelInformation { bitsPerChannel: number[] } /** * AV1 codec configuration */ export declare interface AV1CodecConfig { seqProfile: number seqLevelIdx0: number seqTier0: number highBitdepth: number twelveBit: number monochrome: number chromaSubsamplingX: number chromaSubsamplingY: number chromaSamplePosition: number } /** * AV1 OBU (Open Bitstream Unit) */ export declare interface AV1OBU { type: number size: number data: Uint8Array } /** * AV1 OBU types */ export declare enum OBUType { SEQUENCE_HEADER = 1, TEMPORAL_DELIMITER = 2, FRAME_HEADER = 3, TILE_GROUP = 4, METADATA = 5, FRAME = 6, REDUNDANT_FRAME_HEADER = 7, TILE_LIST = 8, PADDING = 15, }