import { z } from 'zod'; /** * The schema of a detected scene within an video. */ export declare const SceneSchema: z.ZodObject<{ /** * The index of the scene. */ index: z.ZodNumber; /** * The type of the scene. * Can be either `technical-cue` or `shot`. */ type: z.ZodUnion<[z.ZodLiteral<"technical-cue">, z.ZodLiteral<"shot">]>; /** * The timestamp in milliseconds when the scene starts * in the video. */ startTime: z.ZodNumber; /** * The timestamp in milliseconds when the scene ends * in the video. */ endTime: z.ZodNumber; /** * The duration of the scene in milliseconds. */ duration: z.ZodNumber; /** * The start timecode of the scene. * The timecode is in the format `HH:MM:SS:FF`. * @optional */ startTimecode: z.ZodOptional; /** * The end timecode of the scene. * The timecode is in the format `HH:MM:SS:FF`. * @optional */ endTimecode: z.ZodOptional; /** * The duration timecode of the scene. * The timecode is in the format `HH:MM:SS:FF`. * @optional */ durationTimecode: z.ZodOptional; /** * The index of the first frame of the scene. */ startFrame: z.ZodNumber; /** * The index of the last frame of the scene. */ endFrame: z.ZodNumber; /** * The number of frames in the scene. */ durationFrames: z.ZodNumber; }, "strip", z.ZodTypeAny, { index: number; duration: number; type: "technical-cue" | "shot"; startTime: number; endTime: number; startFrame: number; endFrame: number; durationFrames: number; startTimecode?: string | undefined; endTimecode?: string | undefined; durationTimecode?: string | undefined; }, { index: number; duration: number; type: "technical-cue" | "shot"; startTime: number; endTime: number; startFrame: number; endFrame: number; durationFrames: number; startTimecode?: string | undefined; endTimecode?: string | undefined; durationTimecode?: string | undefined; }>; export type SceneSchemaProps = z.infer; /** * Represents a detected scene within an video. */ export declare class Scene { props: SceneSchemaProps; /** * Scene constructor. * @param props the properties of the scene. */ constructor(props: SceneSchemaProps); /** * @returns a new scene. */ static from(data: any): Scene; /** * @returns the index of the scene. */ index(): number; /** * @returns the type of the scene. */ type(): "technical-cue" | "shot"; /** * @returns the start time of the scene in milliseconds. */ startTime(): number; /** * @returns the end time of the scene in milliseconds. */ endTime(): number; /** * @returns the duration of the scene in milliseconds. */ duration(): number; /** * @returns the start timecode of the scene. */ startTimecode(): string | undefined; /** * @returns the end timecode of the scene. */ endTimecode(): string | undefined; /** * @returns the duration timecode of the scene. */ durationTimecode(): string | undefined; /** * @returns the index of the first frame of the scene. */ startFrame(): number; /** * @returns the index of the last frame of the scene. */ endFrame(): number; /** * @returns the number of frames in the scene. */ durationFrames(): number; /** * @returns a JSON representation of the detected object. */ toJSON(): { index: number; duration: number; type: "technical-cue" | "shot"; startTime: number; endTime: number; startFrame: number; endFrame: number; durationFrames: number; startTimecode?: string | undefined; endTimecode?: string | undefined; durationTimecode?: string | undefined; }; }