import { PartialDeep } from 'type-fest';
import { YySprite } from './YySprite.js';
export declare function ensureTrackKeyFrames(sprite: PartialDeep<YySprite, {
    recurseIntoArrays: true;
}>): import("type-fest/source/partial-deep.js").PartialObjectDeep<{
    type: import("./YySprite.js").SpriteType;
    name: string;
    resourceType: "GMSprite";
    parent: {
        path: string;
        name: string;
    };
    resourceVersion: string;
    gridX: number;
    gridY: number;
    layers: any[];
    bboxMode: import("./YySprite.js").SpriteBoundingBoxMode;
    collisionKind: import("./YySprite.js").SpriteCollisionKind;
    origin: import("./YySprite.js").SpriteOrigin;
    preMultiplyAlpha: boolean;
    edgeFiltering: boolean;
    collisionTolerance: number;
    swfPrecision: number;
    bbox_left: number;
    bbox_right: number;
    bbox_top: number;
    bbox_bottom: number;
    HTile: boolean;
    VTile: boolean;
    For3D: boolean;
    DynamicTexturePage: boolean;
    width: number;
    height: number;
    textureGroupId: {
        path: string;
        name: string;
    };
    frames: {
        name: string;
        resourceType: "GMSpriteFrame";
        resourceVersion: string;
        tags?: string[] | undefined;
        parent?: {
            path: string;
            name: string;
        } | undefined;
        compositeImage?: {
            name: string;
            resourceType: "GMSpriteBitmap";
            resourceVersion: "1.0";
            FrameId: {
                path: string;
                name: string;
            };
            LayerId: null;
            tags?: string[] | undefined;
        } | undefined;
        images?: {
            name: string;
            resourceType: "GMSpriteBitmap";
            resourceVersion: "1.0";
            FrameId: {
                path: string;
                name: string;
            };
            LayerId: {
                path: string;
                name: string;
            };
            tags?: string[] | undefined;
        }[] | undefined;
    }[];
    sequence: {
        length: import("./utility.js").FixedNumber;
        resourceType: "GMSequence";
        resourceVersion: string;
        volume: import("./utility.js").FixedNumber;
        timeUnits: number;
        playback: number;
        playbackSpeed: import("./utility.js").FixedNumber;
        playbackSpeedType: import("./YySprite.js").SpritePlaybackSpeedType;
        autoRecord: boolean;
        visibleRange: {
            x: import("./utility.js").FixedNumber;
            y: import("./utility.js").FixedNumber;
        } | null;
        lockOrigin: boolean;
        showBackdrop: boolean;
        showBackdropImage: boolean;
        backdropImagePath: string;
        backdropImageOpacity: import("./utility.js").FixedNumber;
        backdropWidth: number;
        backdropHeight: number;
        backdropXOffset: import("./utility.js").FixedNumber;
        backdropYOffset: import("./utility.js").FixedNumber;
        xorigin: number;
        yorigin: number;
        events: {
            resourceVersion: string;
            Keyframes: unknown[];
        } & ({
            resourceType: "KeyframeStore<MessageEventKeyframe>";
        } | {
            resourceType: "KeyframeStore`1";
            elementType: "MessageEventKeyframe";
        });
        moments: {
            resourceVersion: string;
            Keyframes: unknown[];
        } & ({
            resourceType: "KeyframeStore<MomentsEventKeyframe>";
        } | {
            resourceType: "KeyframeStore`1";
            elementType: "MomentsEventKeyframe";
        });
        tracks: any[];
        name?: string | undefined;
        tags?: string[] | undefined;
        parent?: {
            path: string;
            name: string;
        } | undefined;
        spriteId?: {
            path: string;
            name: string;
        } | undefined;
        eventToFunction?: unknown;
        eventStubScript?: unknown;
    };
    "%Name"?: string | undefined;
    ConfigValues?: Record<string, Record<string, string>> | undefined;
    tags?: string[] | undefined;
    swatchColours?: unknown;
    nineSlice?: unknown;
}, {
    recurseIntoArrays: true;
}>;
//# sourceMappingURL=YySprite.lib.d.ts.map