export type FrameWriter = (frame: number, png: Uint8Array) => Promise; export interface FrameStreamOptions { directory: string; frameCount: number; parallelism: number; fpsSource: string; output: string; ffmpegPath?: string; signal?: AbortSignal; acquireEncoder?: (signal: AbortSignal) => Promise<() => void>; onEncoder?: (details: { pid: number | undefined; startFrame: number; endFrame: number; }) => void; onComplete?: (details: { frames: number; encoders: number; }) => void; } /** PNGs go straight from the sampler into independent lossless encoders. */ export declare function withFrameStream(options: FrameStreamOptions, render: (write: FrameWriter) => Promise): Promise<{ value: T; mediaPath?: string; }>; //# sourceMappingURL=frame-stream.d.ts.map