import { YyRoom } from '@bscotch/yy';
import { StitchProjectComms } from '../../StitchProject.types.js';
import type { Gms2Object } from './Gms2Object.js';
import { Gms2ResourceBase, Gms2ResourceBaseParameters } from './Gms2ResourceBase.js';
export declare class Gms2Room extends Gms2ResourceBase<YyRoom> {
    constructor(...setup: Gms2ResourceBaseParameters);
    get instanceLayers(): import("zod").objectOutputType<{
        visible: import("zod").ZodDefault<import("zod").ZodBoolean>;
        properties: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnknown, "many">>>;
        effectEnabled: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
        effectType: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodUnknown>>;
        userdefinedDepth: import("zod").ZodDefault<import("zod").ZodBoolean>;
        inheritLayerDepth: import("zod").ZodDefault<import("zod").ZodBoolean>;
        inheritLayerSettings: import("zod").ZodDefault<import("zod").ZodBoolean>;
        inheritVisibility: import("zod").ZodDefault<import("zod").ZodBoolean>;
        inheritSubLayers: import("zod").ZodDefault<import("zod").ZodBoolean>;
        gridX: import("zod").ZodDefault<import("zod").ZodNumber>;
        gridY: import("zod").ZodDefault<import("zod").ZodNumber>;
        layers: import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnknown, "many">>;
        hierarchyFrozen: import("zod").ZodDefault<import("zod").ZodBoolean>;
        instances: import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodObject<{
            name: import("zod").ZodDefault<import("zod").ZodString>;
            properties: import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodUnknown, "many">>;
            isDnd: import("zod").ZodDefault<import("zod").ZodBoolean>;
            objectId: import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodObject<{
                name: import("zod").ZodString;
                path: import("zod").ZodString;
            }, "strip", import("zod").ZodTypeAny, {
                path: string;
                name: string;
            }, {
                path: string;
                name: string;
            }>, {
                path: string;
                name: string;
            }, {
                path: string;
                name: string;
            }>, {
                path: string;
                name: string;
            }, unknown>;
            inheritCode: import("zod").ZodDefault<import("zod").ZodBoolean>;
            hasCreationCode: import("zod").ZodDefault<import("zod").ZodBoolean>;
            colour: import("zod").ZodDefault<import("zod").ZodNumber>;
            rotation: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            scaleX: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            scaleY: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            imageIndex: import("zod").ZodDefault<import("zod").ZodNumber>;
            imageSpeed: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            inheritedItemId: import("zod").ZodDefault<import("zod").ZodNullable<import("zod").ZodUnknown>>;
            frozen: import("zod").ZodDefault<import("zod").ZodBoolean>;
            ignore: import("zod").ZodDefault<import("zod").ZodBoolean>;
            inheritItemSettings: import("zod").ZodDefault<import("zod").ZodBoolean>;
            x: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            y: import("zod").ZodDefault<import("zod").ZodEffects<import("zod").ZodEffects<import("zod").ZodNumber, number, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>, import("@bscotch/yy/dist/types/utility.js").FixedNumber, number | import("@bscotch/yy/dist/types/utility.js").FixedNumber>>;
            resourceVersion: import("zod").ZodDefault<import("zod").ZodString>;
            tags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
            resourceType: import("zod").ZodDefault<import("zod").ZodLiteral<"GMRInstance">>;
        }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, {
            name: string;
            resourceType: "GMRInstance";
            resourceVersion: string;
            x: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            y: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            properties: unknown[];
            objectId: {
                path: string;
                name: string;
            };
            isDnd: boolean;
            inheritCode: boolean;
            hasCreationCode: boolean;
            colour: number;
            rotation: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            scaleX: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            scaleY: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            imageIndex: number;
            imageSpeed: import("@bscotch/yy/dist/types/utility.js").FixedNumber;
            frozen: boolean;
            ignore: boolean;
            inheritItemSettings: boolean;
            inheritedItemId?: unknown;
            tags?: string[] | undefined;
        }, {
            name?: string | undefined;
            properties?: unknown[] | undefined;
            isDnd?: boolean | undefined;
            objectId?: unknown;
            inheritCode?: boolean | undefined;
            hasCreationCode?: boolean | undefined;
            colour?: number | undefined;
            rotation?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            scaleX?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            scaleY?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            imageIndex?: number | undefined;
            imageSpeed?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            inheritedItemId?: unknown;
            frozen?: boolean | undefined;
            ignore?: boolean | undefined;
            inheritItemSettings?: boolean | undefined;
            x?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            y?: number | import("@bscotch/yy/dist/types/utility.js").FixedNumber | undefined;
            resourceVersion?: string | undefined;
            tags?: string[] | undefined;
            resourceType?: "GMRInstance" | undefined;
        }>, "many">>;
        depth: import("zod").ZodDefault<import("zod").ZodNumber>;
        resourceVersion: import("zod").ZodDefault<import("zod").ZodString>;
        name: import("zod").ZodDefault<import("zod").ZodString>;
        tags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
        resourceType: import("zod").ZodLiteral<"GMRInstanceLayer">;
    }, import("zod").ZodTypeAny, "passthrough">[];
    hasObjectInstance(object: Gms2Object | string): boolean;
    addObjectInstance(object: Gms2Object, x?: number, y?: number): this;
    static create(name: string, comms: StitchProjectComms): Promise<Gms2Room>;
}
//# sourceMappingURL=Gms2Room.d.ts.map