Interface ImageClip

    interface ImageClip {
        _fields: <T extends BaseNode>(
            this: T,
        ) => NodeFieldDef<T, Extract<keyof T, string>>[];
        _fieldsByKey: <T extends BaseNode>(
            this: T,
        ) => Partial<Record<string | number | symbol, NodeFieldDef<T>>>;
        _insertKeyframeAtTime: (
            key: string,
            value: unknown,
            time: Rational,
            index?: number,
        ) => void;
        _is_edit_view?: boolean;
        _toggleKeyframesAt: (keys: string[], time: Rational) => void;
        "[dispose]": () => void;
        animationMap: Map<string, Animation<unknown>>;
        animations: Partial<Record<string, Animation>>;
        asset: ImageAsset | undefined;
        color?: string;
        delete: (deep?: boolean) => void;
        dispose: (deep?: boolean) => void;
        doc: Document;
        duration: Rational;
        effects: EffectList;
        enabled: boolean;
        expectedMediaTime: number;
        gap: Rational;
        getGap: (prevClipId: string | undefined) => Rational;
        getLocalTimeOffset: () => Rational;
        id: string;
        index: number;
        isAudio: () => this is AnyAudioNode;
        isClip: () => this is AnyClip;
        isDisposed: boolean;
        isImageClip: () => this is ImageClip;
        isInClipTime: boolean;
        isInPlayableTime: boolean;
        isInPresentationTime: boolean;
        isMediaClip: () => this is AnyMediaClip;
        isNode: true;
        isReady: boolean;
        isTextClip: () => this is TextClip;
        isTimeline: () => this is Timeline;
        isTrack: () => this is AnyTrack;
        isTrackChild: () => this is AnyClip;
        isVideo: () => this is AnyVideoNode;
        link: NodeLink | undefined;
        markers?: never[];
        mediaRef?: AssetRef | MediaAssetPlaceholderRef;
        mediaSize: { height: number; width: number };
        metadata?: Record<string, unknown>;
        move: (position: ChildNodePosition | undefined) => void;
        name: string;
        next: AnyClip | undefined;
        opacity: number;
        parent?: AnyTrack;
        playableTime: ClipTime;
        presentationTime: ClipTime;
        prev: AnyClip | 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.ImageClip;
        transition?: { assetId: string; duration: Schema.Rational };
        translateX: number;
        translateY: number;
        type: "clip:image";
    }

    Hierarchy (View Summary)

    Index
    _fields: <T extends BaseNode>(
        this: T,
    ) => NodeFieldDef<T, Extract<keyof T, string>>[]
    _fieldsByKey: <T extends BaseNode>(
        this: T,
    ) => Partial<Record<string | number | symbol, NodeFieldDef<T>>>
    _insertKeyframeAtTime: (
        key: string,
        value: unknown,
        time: Rational,
        index?: number,
    ) => void
    _is_edit_view?: boolean
    _toggleKeyframesAt: (keys: string[], time: Rational) => void
    "[dispose]": () => void
    animationMap: Map<string, Animation<unknown>>
    animations: Partial<Record<string, Animation>>
    asset: ImageAsset | undefined
    color?: string
    delete: (deep?: boolean) => void
    dispose: (deep?: boolean) => void
    duration: Rational
    effects: EffectList
    enabled: boolean
    expectedMediaTime: number
    getGap: (prevClipId: string | undefined) => Rational
    getLocalTimeOffset: () => Rational
    id: string
    index: number
    isAudio: () => this is AnyAudioNode
    isClip: () => this is AnyClip
    isDisposed: boolean
    isImageClip: () => this is ImageClip
    isInClipTime: boolean
    isInPlayableTime: boolean
    isInPresentationTime: boolean
    isMediaClip: () => this is AnyMediaClip
    isNode: true
    isReady: boolean
    isTextClip: () => this is TextClip
    isTimeline: () => this is Timeline
    isTrack: () => this is AnyTrack
    isTrackChild: () => this is AnyClip
    isVideo: () => this is AnyVideoNode
    link: NodeLink | undefined
    markers?: never[]
    mediaSize: { height: number; width: number }
    metadata?: Record<string, unknown>
    move: (position: ChildNodePosition | undefined) => void
    name: string
    next: AnyClip | undefined
    opacity: number
    parent?: AnyTrack
    playableTime: ClipTime
    presentationTime: ClipTime
    prev: AnyClip | 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.ImageClip
    transition?: { assetId: string; duration: Schema.Rational }
    translateX: number
    translateY: number
    type: "clip:image"