Interface VideoClip

    interface VideoClip {
        _fields: <T extends BaseNode>(this: T) => NodeFieldDef<T, keyof T>[];
        _is_edit_view?: boolean;
        "[dispose]": () => void;
        asset: MediaAsset | undefined;
        color?: string;
        delete: (deep?: boolean) => void;
        dispose: (deep?: boolean) => void;
        doc: Document;
        duration: Rational;
        effects: { assetId: string; id: string; intensity: number }[];
        enabled: boolean;
        expectedMediaTime: number;
        gap: Rational;
        getGap: (prevClipId: string | undefined) => Rational;
        id: string;
        index: number;
        isAudio: () => this is AnyAudioNode;
        isClip: () => this is AnyClip;
        isDisposed: boolean;
        isInClipTime: boolean;
        isMediaClip: () => this is AnyMediaClip;
        isNode: true;
        isReady: boolean;
        isTextClip: () => this is TextClip;
        isTimeline: () => this is Timeline;
        isTrack: () => this is Track;
        isTrackChild: () => this is AnyClip;
        isVideo: () => this is AnyVideoNode;
        markers?: never[];
        mediaRef?: MediaAssetRef | MediaAssetPlaceholderRef;
        mediaSize: { height: number; width: number };
        metadata?: Record<string, unknown>;
        move: (position: ChildNodePosition | undefined) => void;
        name: string;
        next?: AnyClip;
        nextAudio: AnyAudioNode | undefined;
        nextVideo: AnyVideoNode | undefined;
        parent?: Track;
        playableTime: ClipTime;
        presentationTime: ClipTime;
        prev?: AnyClip;
        prevAudio: AnyAudioNode | undefined;
        prevVideo: AnyVideoNode | undefined;
        remove: () => void;
        rotate: number;
        scaleX: number;
        scaleY: number;
        setGap: (prevClipId: string | undefined, duration: Schema.Rational) => void;
        sourceStart: Rational;
        time: ClipTime;
        timeRational: ClipTimeRational;
        toJSON: () => Schema.VideoClip;
        transition?: { assetId: string; duration: Schema.Rational };
        translateX: number;
        translateY: number;
        type: "clip:video";
    }

    Hierarchy (View Summary)

    Index
    _fields: <T extends BaseNode>(this: T) => NodeFieldDef<T, keyof T>[]
    _is_edit_view?: boolean
    "[dispose]": () => void
    asset: MediaAsset | undefined
    color?: string
    delete: (deep?: boolean) => void
    dispose: (deep?: boolean) => void
    duration: Rational
    effects: { assetId: string; id: string; intensity: number }[]
    enabled: boolean
    expectedMediaTime: number
    getGap: (prevClipId: string | undefined) => Rational
    id: string
    index: number
    isAudio: () => this is AnyAudioNode
    isClip: () => this is AnyClip
    isDisposed: boolean
    isInClipTime: boolean
    isMediaClip: () => this is AnyMediaClip
    isNode: true
    isReady: boolean
    isTextClip: () => this is TextClip
    isTimeline: () => this is Timeline
    isTrack: () => this is Track
    isTrackChild: () => this is AnyClip
    isVideo: () => this is AnyVideoNode
    markers?: never[]
    mediaSize: { height: number; width: number }
    metadata?: Record<string, unknown>
    move: (position: ChildNodePosition | undefined) => void
    name: string
    next?: AnyClip
    nextAudio: AnyAudioNode | undefined
    nextVideo: AnyVideoNode | undefined
    parent?: Track
    playableTime: ClipTime
    presentationTime: ClipTime
    prev?: AnyClip
    prevAudio: AnyAudioNode | undefined
    prevVideo: AnyVideoNode | undefined
    remove: () => void
    rotate: number
    scaleX: number
    scaleY: number
    setGap: (prevClipId: string | undefined, duration: Schema.Rational) => void
    sourceStart: Rational
    time: ClipTime
    timeRational: ClipTimeRational
    toJSON: () => Schema.VideoClip
    transition?: { assetId: string; duration: Schema.Rational }
    translateX: number
    translateY: number
    type: "clip:video"