import { type EnqueueCinemaTaskInput } from './cinema-production-queue.js'; import type { CinemaQueueMoney, CinemaQueueTaskKind, CinemaQueueTaskStatus } from './cinema-queue-types.js'; import type { CinemaSha256 } from './cinema-types.js'; export type CinemaQueueFrontDoor = 'batch' | 'pool' | 'chain' | 'mograph' | 'cinema' | 'image'; export interface CinemaQueueCompatibilityTask { externalTaskId: string; kind: CinemaQueueTaskKind; payload: EnqueueCinemaTaskInput['payload']; /** Already-persisted queue tasks that must succeed before this plan task. */ existingDependencies?: string[]; /** Dependencies expressed as externalTaskId values inside this plan. */ dependencies: string[]; routeId: string; shotId?: string; attemptId?: string; lane?: EnqueueCinemaTaskInput['lane']; estimatedCost?: CinemaQueueMoney; spendAuthorizationId?: string; authorizationRequirement?: 'none' | 'exact-quote'; } export interface CinemaQueueCompatibilityReceiptArtifact { schemaVersion: 1; receiptId: string; projectSlug: string; sourceFrontDoor: CinemaQueueFrontDoor; sourceArtifactHash: CinemaSha256; generatedAt: string; mappings: Array<{ externalTaskId: string; queueTaskId: string; executionHash: CinemaSha256; payloadHash: CinemaSha256; dependencies: string[]; kind: CinemaQueueTaskKind; routeId: string; enqueued: boolean; }>; queueHashAtEnqueue: CinemaSha256; providerCalls: 0; spendAuthorized: false; contentHash: CinemaSha256; } export interface CinemaQueueCompatibilityStatus { receiptId: string; projectSlug: string; sourceFrontDoor: CinemaQueueFrontDoor; receiptHash: CinemaSha256; currentQueueHash: CinemaSha256; tasks: Array<{ externalTaskId: string; queueTaskId: string; status: CinemaQueueTaskStatus; evidenceIds: string[]; }>; } export declare function cinemaQueueCompatibilityReceiptPathFor(root: string, projectSlug: string, receiptId: string): string; export declare function enqueueCinemaCompatibilityPlan(root: string, input: { projectSlug: string; sourceFrontDoor: CinemaQueueFrontDoor; generatedAt: string; tasks: CinemaQueueCompatibilityTask[]; }): Promise<{ receipt: CinemaQueueCompatibilityReceiptArtifact; receiptPath: string; }>; export declare function readCinemaQueueCompatibilityReceipt(root: string, projectSlug: string, receiptId: string): Promise; export declare function projectCinemaCompatibilityStatus(root: string, receipt: CinemaQueueCompatibilityReceiptArtifact): Promise; //# sourceMappingURL=cinema-queue-compatibility.d.ts.map