import { type StoryboardManifest } from "./types.js";
/**
 * Lenient parser for `STORYBOARD.md`.
 *
 * The canonical (structured) format is:
 *
 * ```markdown
 * ---
 * format: 1920x1080
 * message: "Ship a launch video in an afternoon"
 * arc: Problem → Solution
 * audience: indie devs on X
 * ---
 *
 * ## Frame 3 — The feature in action
 * - duration: 6s
 * - transition_in: crossfade
 * - status: animated
 * - src: compositions/frames/03-feature.html
 *
 * The diff animates line by line as the narration says "...".
 * ```
 *
 * The parser is deliberately tolerant: it never throws, it accepts freeform
 * narrative, it recognizes `Frame` / `Beat` / `Scene` section headings at H2 or
 * H3, and it records anything surprising as a {@link StoryboardWarning} rather
 * than failing. Unknown frontmatter / metadata keys are preserved in `extra`.
 */
export declare function parseStoryboard(source: string): StoryboardManifest;
export declare const FRAME_HEADING_RE: RegExp;
/**
 * Aliases that all map to the voiceover/narration line. The single source of
 * truth — `editStoryboard.ts` imports this so the read and write sides can't
 * drift (one would silently fail to match the other's field name).
 */
export declare const VOICEOVER_ALIASES: readonly ["voiceover", "vo", "voice_over", "narration"];
//# sourceMappingURL=parseStoryboard.d.ts.map