/**
 * Pipeline executor — maps YAML actions to CLI execute functions.
 */
import type { PipelineManifest, PipelineAction, PipelineBudget, PipelineResult } from "./types.js";
export interface PipelineActionMetadata {
    id: PipelineAction;
    title: string;
    category: "generate" | "edit" | "audio" | "detect" | "analyze" | "scene" | "export";
    command?: string;
    outputs: readonly string[];
    requiredKeys?: readonly string[];
}
export declare function getPipelineActionMetadata(action?: PipelineAction): PipelineActionMetadata[] | PipelineActionMetadata | undefined;
export declare function loadPipeline(filePath: string): Promise<PipelineManifest>;
export interface ExecutePipelineOptions {
    /** Output directory for all step outputs */
    outputDir?: string;
    /** Only validate and show plan, don't execute */
    dryRun?: boolean;
    /** Resume from checkpoint (skip completed steps) */
    resume?: boolean;
    /** Stop on first failure */
    failFast?: boolean;
    /** Override manifest.budget (partial merge) */
    budget?: PipelineBudget;
}
export declare function executePipeline(manifest: PipelineManifest, options?: ExecutePipelineOptions): Promise<PipelineResult>;
