import { z } from "zod"; import type { CrocoProjectState } from "./preproduction-workspace.ts"; import type { VideoUnitGeneratedImage, VideoUnitStoryboard } from "./studio-video-units.ts"; declare const versionSchema: z.ZodObject<{ id: z.ZodString; relativePath: z.ZodString; model: z.ZodString; prompt: z.ZodString; inputFingerprint: z.ZodString; contextFingerprint: z.ZodOptional; createdAt: z.ZodString; }, z.core.$strip>; export type ImageVersion = z.infer; /** A legacy image receives a stable ID across reads before the next project write. */ export declare function imageVersion(image: VideoUnitGeneratedImage): ImageVersion; /** Validate stored versions and derive the only current-image projection. */ export declare function hydrateImageVersions(record: T): T; /** Read and write responses share current-image projections, including suspended openings. */ export declare function projectImageProjection(state: CrocoProjectState): CrocoProjectState; /** Store each full image once; `image` is reconstructed on read. */ export declare function projectImageStorage(state: CrocoProjectState): CrocoProjectState; /** Planning inputs identify whether an adopted picture still matches its target. */ export declare function imageContextFingerprint(state: CrocoProjectState, unitId: string, record: VideoUnitStoryboard): string; export {};