import type { AgentMessage } from "../../agent/types.js";
import { type ComposerProvider } from "./composer-resolve.js";
import { type StoryboardValidationResult } from "./storyboard-edit.js";
export type StoryboardRevisionChat = (messages: AgentMessage[]) => Promise<string>;
export interface StoryboardRevisionOptions {
    projectDir: string;
    request: string;
    durationSec?: number;
    composer?: ComposerProvider;
    dryRun?: boolean;
    chat?: StoryboardRevisionChat;
}
export interface StoryboardRevisionResult {
    schemaVersion: "1";
    kind: "storyboard-revision";
    success: boolean;
    projectDir: string;
    storyboardPath: string;
    provider?: ComposerProvider;
    summary: string;
    changedBeats: string[];
    validation: StoryboardValidationResult;
    warnings: string[];
    wrote: boolean;
    retryWith: string[];
    storyboard?: string;
    code?: string;
    message?: string;
    suggestion?: string;
    recoverable?: boolean;
}
export declare function executeStoryboardRevision(opts: StoryboardRevisionOptions): Promise<StoryboardRevisionResult>;
