/** * CMX 3600 EDL writer. * * One event per kept segment. The agent supplies a list of (source-in, * source-out) pairs in source order; we lay them out contiguously on the * record timeline, which is exactly the "rebuilt timeline after silence * removal" pattern. * * CMX 3600 is the lowest-common-denominator interchange format — both * DaVinci Resolve and Premiere Pro import it. */ export interface EdlEvent { /** Reel name (≤8 chars in strict CMX 3600; we'll truncate). Most NLEs map this to the source clip. */ reel: string; /** Track type. "V" video only, "A" audio, "B" both, "A1"/"A2" individual audio tracks. */ track: "V" | "A" | "B" | "A1" | "A2"; /** Source IN (frames into the source clip). */ sourceInFrame: number; /** Source OUT (exclusive). */ sourceOutFrame: number; /** Optional human label, written as a "* FROM CLIP NAME:" comment. */ clipName?: string; } export interface EdlOptions { title: string; frameRate: number; events: EdlEvent[]; /** Drop-frame timecode? Default false. NDF is correct for 30/60 fps; DF only for 29.97/59.94. */ dropFrame?: boolean; } /** * Build a CMX 3600 EDL string. Events are placed contiguously on the record * timeline (event N starts where event N-1 ended). */ export declare function buildEdl(opts: EdlOptions): string; /** * Total record-side duration of an EDL in frames. Useful for the agent to * verify the rebuild matches its plan. */ export declare function totalRecordFrames(events: EdlEvent[]): number; //# sourceMappingURL=edl.d.ts.map