/** * Display-resolution cache for frame screenshots. Captures are taken above * 1:1 so zoomed frames stay sharp, but an overview showing every frame keeps * the full decoded bitmaps resident — gigabytes for a large storyboard, and * the canvas pans like it is buffering. When the camera draws below one * device pixel per CSS pixel, frames display a CSS-resolution downscale * generated here once per screenshot and cached as an object URL. * * Generation is best-effort: environments without OffscreenCanvas (server * rendering, test realms) simply keep the native bitmap. */ export declare function subscribeScreenshotBitmaps(listener: () => void): () => void; /** * The CSS-resolution URL for a screenshot, or null while it generates (or * when it cannot be generated) — callers fall back to the native bitmap. * `width`/`height` are the frame's CSS dimensions. */ export declare function getDownscaledScreenshotUrl(key: string, dataUrl: string, width: number, height: number): string | null; /** Test seam: forget cached and failed entries (object URLs are revoked). */ export declare function __resetScreenshotBitmapsForTest(): void;