import { z } from 'zod';
export declare const yyObjectEventNums: {
    Create: 0;
    Destroy: 1;
    Alarm: 2;
    Step: 3;
    Draw: 8;
    Cleanup: 12;
};
export declare const yyObjectEventNames: import("@bscotch/utility").Inverted<{
    Create: 0;
    Destroy: 1;
    Alarm: 2;
    Step: 3;
    Draw: 8;
    Cleanup: 12;
}>;
export type YyObjectEventNumbers = typeof yyObjectEventNums;
export type YyObjectEventNames = typeof yyObjectEventNames;
export type YyObjectEventName = keyof YyObjectEventNumbers;
export type YyObjectEventNumber = keyof YyObjectEventNames;
export declare enum YyObjectPropertyVarType {
    Real = 0,
    Integer = 1,
    String = 2,
    Boolean = 3,
    Expression = 4,
    Asset = 5,
    List = 6,
    Colour = 7
}
export type YyObjectEvent = z.infer<typeof yyObjectEventSchema>;
export declare const yyObjectEventSchema: z.ZodObject<{
    isDnD: z.ZodDefault<z.ZodBoolean>;
    /**
     * Numeric identifier for an event subtype.
     * E.g. "Step End" has eventType for Step and
     * eventNum for End.
     */
    eventNum: z.ZodDefault<z.ZodNumber>;
    /**
     * Numeric identifier representing the event type (e.g. for the Create or Draw events)
     */
    eventType: z.ZodNumber;
    collisionObjectId: z.ZodDefault<z.ZodNullable<z.ZodObject<{
        name: z.ZodString;
        path: z.ZodString;
    }, z.core.$strip>>>;
    name: z.ZodDefault<z.ZodString>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
    resourceVersion: z.ZodDefault<z.ZodString>;
    resourceType: z.ZodDefault<z.ZodLiteral<"GMEvent">>;
    parent: z.ZodOptional<z.ZodUnknown>;
}, z.core.$strip>;
export type YyObjectProperty = z.infer<typeof yyObjectPropertySchema>;
export declare const yyObjectPropertySchema: z.ZodObject<{
    /** The variable's name */
    name: z.ZodString;
    varType: z.ZodEnum<typeof YyObjectPropertyVarType>;
    /** Stringified starting value. If a color, prefixed with a '$' (unkown format). */
    value: z.ZodString;
    rangeEnabled: z.ZodDefault<z.ZodBoolean>;
    /** (Unknown parameter) */
    rangeMin: z.ZodNumber;
    /** (Unknown parameter) */
    rangeMax: z.ZodNumber;
    /**
     * Always exists, but only meaningful for Lists
     */
    listItems: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString>>>;
    /**
     * Always exists, but only meaningful for Lists
     */
    multiselect: z.ZodDefault<z.ZodBoolean>;
    /**
     * (Unknown parameter)
     */
    filters: z.ZodDefault<z.ZodArray<z.ZodUnknown>>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
    resourceVersion: z.ZodDefault<z.ZodString>;
    resourceType: z.ZodDefault<z.ZodLiteral<"GMObjectProperty">>;
}, z.core.$strip>;
export type YyObject = z.infer<typeof yyObjectSchema>;
export declare const yyObjectSchema: z.ZodObject<{
    "%Name": z.ZodOptional<z.ZodString>;
    ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
    name: z.ZodString;
    tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
    parent: z.ZodDefault<z.ZodObject<{
        name: z.ZodString;
        path: z.ZodString;
    }, z.core.$strip>>;
    resourceVersion: z.ZodDefault<z.ZodString>;
    spriteId: z.ZodDefault<z.ZodNullable<z.ZodObject<{
        name: z.ZodString;
        path: z.ZodString;
    }, z.core.$strip>>>;
    solid: z.ZodDefault<z.ZodBoolean>;
    visible: z.ZodDefault<z.ZodBoolean>;
    spriteMaskId: z.ZodDefault<z.ZodNullable<z.ZodObject<{
        name: z.ZodString;
        path: z.ZodString;
    }, z.core.$strip>>>;
    persistent: z.ZodDefault<z.ZodBoolean>;
    parentObjectId: z.ZodDefault<z.ZodNullable<z.ZodObject<{
        name: z.ZodString;
        path: z.ZodString;
    }, z.core.$strip>>>;
    physicsObject: z.ZodDefault<z.ZodBoolean>;
    physicsSensor: z.ZodDefault<z.ZodBoolean>;
    physicsShape: z.ZodDefault<z.ZodNumber>;
    physicsGroup: z.ZodDefault<z.ZodNumber>;
    physicsDensity: z.ZodDefault<z.ZodNumber>;
    physicsRestitution: z.ZodDefault<z.ZodNumber>;
    physicsLinearDamping: z.ZodDefault<z.ZodNumber>;
    physicsAngularDamping: z.ZodDefault<z.ZodNumber>;
    physicsFriction: z.ZodDefault<z.ZodNumber>;
    physicsStartAwake: z.ZodDefault<z.ZodBoolean>;
    physicsKinematic: z.ZodDefault<z.ZodBoolean>;
    physicsShapePoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
        x: z.ZodNumber;
        y: z.ZodNumber;
    }, z.core.$strip>>>;
    eventList: z.ZodDefault<z.ZodArray<z.ZodObject<{
        isDnD: z.ZodDefault<z.ZodBoolean>;
        /**
         * Numeric identifier for an event subtype.
         * E.g. "Step End" has eventType for Step and
         * eventNum for End.
         */
        eventNum: z.ZodDefault<z.ZodNumber>;
        /**
         * Numeric identifier representing the event type (e.g. for the Create or Draw events)
         */
        eventType: z.ZodNumber;
        collisionObjectId: z.ZodDefault<z.ZodNullable<z.ZodObject<{
            name: z.ZodString;
            path: z.ZodString;
        }, z.core.$strip>>>;
        name: z.ZodDefault<z.ZodString>;
        tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
        resourceVersion: z.ZodDefault<z.ZodString>;
        resourceType: z.ZodDefault<z.ZodLiteral<"GMEvent">>;
        parent: z.ZodOptional<z.ZodUnknown>;
    }, z.core.$strip>>>;
    properties: z.ZodDefault<z.ZodArray<z.ZodObject<{
        /** The variable's name */
        name: z.ZodString;
        varType: z.ZodEnum<typeof YyObjectPropertyVarType>;
        /** Stringified starting value. If a color, prefixed with a '$' (unkown format). */
        value: z.ZodString;
        rangeEnabled: z.ZodDefault<z.ZodBoolean>;
        /** (Unknown parameter) */
        rangeMin: z.ZodNumber;
        /** (Unknown parameter) */
        rangeMax: z.ZodNumber;
        /**
         * Always exists, but only meaningful for Lists
         */
        listItems: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString>>>;
        /**
         * Always exists, but only meaningful for Lists
         */
        multiselect: z.ZodDefault<z.ZodBoolean>;
        /**
         * (Unknown parameter)
         */
        filters: z.ZodDefault<z.ZodArray<z.ZodUnknown>>;
        tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
        resourceVersion: z.ZodDefault<z.ZodString>;
        resourceType: z.ZodDefault<z.ZodLiteral<"GMObjectProperty">>;
    }, z.core.$strip>>>;
    overriddenProperties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>;
    managed: z.ZodDefault<z.ZodBoolean>;
    resourceType: z.ZodDefault<z.ZodLiteral<"GMObject">>;
}, z.core.$strip>;
//# sourceMappingURL=YyObject.d.ts.map