import type { ProviderRouteId, VideoOperationKind } from './provider-platform/types.js'; import type { VideoExecutionPlan, VideoProductionMode } from './types.js'; import type { BriefArtifact } from './artifacts.js'; type ExecutionProfile = VideoExecutionPlan['executionProfile']; export declare const ACCEPTED_VEO_MODELS: string[]; /** * Operator-facing profile input. Identical to a partial profile except that * `flowResolution` may be `null`, meaning CLEAR IT: the omni-flash generation * tier is refused on every Veo model, so an operator who set 360p and then * switches `--veo-model` to a Veo tier would otherwise be stuck with a project * that cannot render and no CLI way out short of editing brief.json by hand. */ export type ExecutionProfileInput = Omit, 'flowResolution'> & { flowResolution?: NonNullable | null; }; export declare function setExecutionProfileOverrides(projectSlug: string, input: ExecutionProfileInput, root?: string): Promise<{ artifactPath: string; brief: BriefArtifact; }>; export declare function parseExecutionProfileInput(input: { aspectRatio?: unknown; quality?: unknown; resolution?: unknown; generateAudio?: unknown; outputCount?: unknown; veoModel?: unknown; flowResolution?: unknown; }): ExecutionProfileInput; /** * Whether a route renders its own audio unless something says otherwise. The * Seedance-family API routes generate speech and ambience natively, and on * every run measured so far they bill the same per second either way, so * silence there is a loss. It is false elsewhere because the flag has nothing * to switch: Flow renders its own audio whatever this says, Runway explore * takes it only through its own guard, and the Dreamina Seedance-2 family * refuses the parameter outright. One declaration, because the batch lane * compiles its own profile and hardcoding `false` there rendered the same * prompt silent through `batch-submit` and with audio through `produce` (#617). */ export declare function defaultGenerateAudioForRoute(routeId: ProviderRouteId | null): boolean; export declare function buildExecutionProfile(input: { projectSlug: string; root?: string; productionMode: VideoProductionMode; routeId: ProviderRouteId | null; operationKind: VideoOperationKind; }): Promise; export {}; //# sourceMappingURL=execution-profile.d.ts.map