/** 进度信息,用于 onProgress 回调 */ export interface ThumbnailProgress { /** 当前阶段 */ phase: "analyzing" | "extracting" | "composing" | "encoding" | "done"; /** 总进度 0–100 */ percent: number; /** 当前阶段已完成数(如已提取帧数) */ current?: number; /** 当前阶段总数 */ total?: number; /** 可读描述 */ message?: string; } export interface ThumbnailOptions { /** 参与合成的帧数(实际提取 frames - 1 张),默认 60 */ frames?: number; /** 输出图宽度,默认 3840 */ outputWidth?: number; /** 每行列数,默认 4 */ columns?: number; /** 输出文件名,默认 thumbnail.avif */ outputFileName?: string; /** 输出质量 1–100,默认 80 */ quality?: number; /** 输出格式,默认 avif */ format?: 'avif' | 'webp' | 'jpeg' | 'png'; /** 批处理大小,默认 10 */ batchSize?: number; /** 最大并发数,默认 4 */ maxConcurrency?: number; /** 临时目录 */ tempDir?: string; /** 进度回调 */ onProgress?: (progress: ThumbnailProgress) => void; } interface ProcessingResult { buffer: Buffer; outputPath: string; metadata: { frames: number; duration: number; outputSize: { width: number; height: number; }; }; } export declare const getThumbnail: (videoPath: string, options?: ThumbnailOptions) => Promise; export {};