UNPKG

@bscotch/yy

Version:

Stringify, parse, read, and write GameMaker yy and yyp files.

923 lines 137 kB
import type { PartialDeep } from 'type-fest'; import { z, ZodType } from 'zod'; import { YyResourceType } from './types/YyBase.js'; import { Yyp } from './types/Yyp.js'; export type YySchemaRef = YyResourceType | 'project' | ZodType | undefined; export type YySchemaName = keyof YySchemas; export type YySchema<T extends YySchemaRef> = T extends YySchemaName ? YySchemas[T] : T extends ZodType ? T : unknown; export type YyData<T extends YySchemaRef> = T extends undefined ? unknown : z.infer<YySchema<Exclude<T, undefined>>>; export type YySchemas = typeof yySchemas; export declare const yySchemas: { readonly project: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; name: z.ZodString; resourceType: z.ZodDefault<z.ZodLiteral<"GMProject">>; resources: z.ZodDefault<z.ZodArray<z.ZodObject<{ id: z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>; order: z.ZodOptional<z.ZodNumber>; }, z.core.$strip>>>; RoomOrderNodes: z.ZodDefault<z.ZodArray<z.ZodObject<{ roomId: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>>>; Options: z.ZodOptional<z.ZodArray<z.ZodObject<{ ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; isDnDProject: z.ZodOptional<z.ZodBoolean>; defaultScriptType: z.ZodDefault<z.ZodNumber>; isEcma: z.ZodDefault<z.ZodBoolean>; tutorialPath: z.ZodOptional<z.ZodString>; configs: z.ZodObject<{ name: z.ZodDefault<z.ZodLiteral<"Default">>; children: z.ZodDefault<z.ZodArray<z.ZodType<import("./types/Yyp.js").YypConfig, unknown, z.core.$ZodTypeInternals<import("./types/Yyp.js").YypConfig, unknown>>>>; }, z.core.$strip>; Folders: z.ZodDefault<z.ZodArray<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ name: z.ZodString; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; folderPath: z.ZodString; order: z.ZodOptional<z.ZodNumber>; resourceType: z.ZodDefault<z.ZodLiteral<"GMFolder">>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>>>>; AudioGroups: z.ZodDefault<z.ZodArray<z.ZodObject<{ ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; name: z.ZodString; targets: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, number | bigint>>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMAudioGroup">>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>>>; TextureGroups: z.ZodDefault<z.ZodArray<z.ZodObject<{ ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; name: z.ZodString; groupParent: z.ZodDefault<z.ZodNullable<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; isScaled: z.ZodDefault<z.ZodBoolean>; customOptions: z.ZodDefault<z.ZodString>; compressFormat: z.ZodDefault<z.ZodString>; autocrop: z.ZodDefault<z.ZodBoolean>; border: z.ZodDefault<z.ZodNumber>; mipsToGenerate: z.ZodDefault<z.ZodNumber>; targets: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, number | bigint>>>; loadType: z.ZodDefault<z.ZodEnum<{ default: "default"; dynamicpages: "dynamicpages"; }>>; directory: z.ZodDefault<z.ZodString>; resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$loose>>>; IncludedFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{ ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{ CopyToMask: z.ZodString; }, z.core.$strip>>>; name: z.ZodString; CopyToMask: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodBigInt]>, z.ZodTransform<bigint, number | bigint>>>; filePath: z.ZodString; resourceType: z.ZodDefault<z.ZodLiteral<"GMIncludedFile">>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>>>; MetaData: z.ZodObject<{ IDEVersion: z.ZodString; }, z.core.$strip>; LibraryEmitters: z.ZodOptional<z.ZodArray<z.ZodAny>>; resourceVersion: z.ZodString; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; }, z.core.$loose>>; readonly animcurves: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly extensions: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; resourceType: z.ZodDefault<z.ZodLiteral<"GMExtension">>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodString; files: z.ZodDefault<z.ZodArray<z.ZodObject<{ resourceType: z.ZodLiteral<"GMExtensionFile">; resourceVersion: z.ZodDefault<z.ZodString>; constants: z.ZodDefault<z.ZodArray<z.ZodObject<{ resourceType: z.ZodDefault<z.ZodLiteral<"GMExtensionConstant">>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodString; hidden: z.ZodDefault<z.ZodBoolean>; value: z.ZodString; }, z.core.$strip>>>; functions: z.ZodDefault<z.ZodArray<z.ZodObject<{ resourceType: z.ZodDefault<z.ZodLiteral<"GMExtensionFunction">>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodString; externalName: z.ZodString; documentation: z.ZodDefault<z.ZodString>; argCount: z.ZodDefault<z.ZodNumber>; args: z.ZodDefault<z.ZodArray<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>>; help: z.ZodString; hidden: z.ZodDefault<z.ZodBoolean>; kind: z.ZodDefault<z.ZodNumber>; returnType: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>; }, z.core.$strip>>>; }, z.core.$loose>>>; parent: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; }, z.core.$loose>; readonly fonts: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly notes: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly objects: 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>; eventNum: z.ZodDefault<z.ZodNumber>; 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<{ name: z.ZodString; varType: z.ZodEnum<typeof import("./types/YyObject.js").YyObjectPropertyVarType>; value: z.ZodString; rangeEnabled: z.ZodDefault<z.ZodBoolean>; rangeMin: z.ZodNumber; rangeMax: z.ZodNumber; listItems: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString>>>; multiselect: z.ZodDefault<z.ZodBoolean>; 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>; readonly particles: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly paths: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly rooms: 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>; layers: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{ effectEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; effectType: z.ZodDefault<z.ZodOptional<z.ZodUnknown>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; properties: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnknown>>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; instances: z.ZodDefault<z.ZodArray<z.ZodObject<{ colour: z.ZodDefault<z.ZodNumber>; frozen: z.ZodDefault<z.ZodBoolean>; hasCreationCode: z.ZodDefault<z.ZodBoolean>; ignore: z.ZodDefault<z.ZodBoolean>; imageIndex: z.ZodDefault<z.ZodNumber>; imageSpeed: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; inheritCode: z.ZodDefault<z.ZodBoolean>; inheritedItemId: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; inheritItemSettings: z.ZodDefault<z.ZodBoolean>; isDnd: z.ZodDefault<z.ZodBoolean>; name: z.ZodDefault<z.ZodString>; objectId: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; properties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMRInstance">>; resourceVersion: z.ZodDefault<z.ZodString>; rotation: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; scaleX: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; scaleY: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; x: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; y: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; }, z.core.$strip>>>; depth: z.ZodDefault<z.ZodNumber>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMRInstanceLayer">>; }, z.core.$loose>, z.ZodObject<{ effectEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>; effectType: z.ZodDefault<z.ZodOptional<z.ZodUnknown>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; animationFPS: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; animationSpeedType: z.ZodDefault<z.ZodNumber>; colour: z.ZodDefault<z.ZodNumber>; depth: z.ZodDefault<z.ZodNumber>; hspeed: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; htiled: z.ZodDefault<z.ZodBoolean>; name: z.ZodDefault<z.ZodString>; properties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMRBackgroundLayer">>; resourceVersion: z.ZodDefault<z.ZodString>; spriteId: z.ZodDefault<z.ZodNullable<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$loose>>>; stretch: z.ZodDefault<z.ZodBoolean>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; userdefinedAnimFPS: z.ZodDefault<z.ZodBoolean>; vspeed: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; vtiled: z.ZodDefault<z.ZodBoolean>; x: z.ZodDefault<z.ZodNumber>; y: z.ZodDefault<z.ZodNumber>; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"GMRTileLayer">; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; depth: z.ZodDefault<z.ZodNumber>; effectEnabled: z.ZodDefault<z.ZodBoolean>; effectType: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodUnknown>>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; properties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; tiles: z.ZodObject<{ SerialiseHeight: z.ZodDefault<z.ZodNumber>; SerialiseWidth: z.ZodDefault<z.ZodNumber>; TileCompressedData: z.ZodOptional<z.ZodUnknown>; TileDataFormat: z.ZodDefault<z.ZodNumber>; }, z.core.$loose>; tilesetId: z.ZodNullable<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$loose>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; x: z.ZodDefault<z.ZodNumber>; y: z.ZodDefault<z.ZodNumber>; }, z.core.$loose>, z.ZodObject<{ resourceType: z.ZodLiteral<"GMRAssetLayer">; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodString; assets: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; depth: z.ZodDefault<z.ZodNumber>; effectEnabled: z.ZodDefault<z.ZodBoolean>; effectType: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; properties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; }, z.core.$loose>, z.ZodObject<{ resourceType: z.ZodLiteral<"GMRPathLayer">; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodString; depth: z.ZodDefault<z.ZodNumber>; effectEnabled: z.ZodDefault<z.ZodBoolean>; effectType: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodUnknown>>>; pathId: z.ZodDefault<z.ZodNullable<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; }, z.core.$loose>, z.ZodObject<{ resourceType: z.ZodLiteral<"GMRLayer">; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; depth: z.ZodDefault<z.ZodNumber>; effectEnabled: z.ZodDefault<z.ZodBoolean>; effectType: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; hierarchyFrozen: z.ZodDefault<z.ZodBoolean>; inheritLayerDepth: z.ZodDefault<z.ZodBoolean>; inheritLayerSettings: z.ZodDefault<z.ZodBoolean>; inheritSubLayers: z.ZodDefault<z.ZodBoolean>; inheritVisibility: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; properties: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; userdefinedDepth: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"GMREffectLayer">; }, z.core.$loose>], "resourceType">>>; instanceCreationOrder: z.ZodDefault<z.ZodArray<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; roomSettings: z.ZodDefault<z.ZodObject<{ inheritRoomSettings: z.ZodDefault<z.ZodBoolean>; Width: z.ZodDefault<z.ZodNumber>; Height: z.ZodDefault<z.ZodNumber>; persistent: z.ZodDefault<z.ZodBoolean>; }, z.core.$strip>>; viewSettings: z.ZodDefault<z.ZodObject<{ inheritViewSettings: z.ZodDefault<z.ZodBoolean>; enableViews: z.ZodDefault<z.ZodBoolean>; clearViewBackground: z.ZodDefault<z.ZodBoolean>; clearDisplayBuffer: z.ZodDefault<z.ZodBoolean>; }, z.core.$strip>>; physicsSettings: z.ZodDefault<z.ZodObject<{ inheritPhysicsSettings: z.ZodDefault<z.ZodBoolean>; PhysicsWorld: z.ZodDefault<z.ZodBoolean>; PhysicsWorldGravityX: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; PhysicsWorldGravityY: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; PhysicsWorldPixToMetres: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; }, z.core.$strip>>; isDnd: z.ZodDefault<z.ZodBoolean>; volume: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; parentRoom: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; views: z.ZodDefault<z.ZodArray<z.ZodObject<{ inherit: z.ZodDefault<z.ZodBoolean>; visible: z.ZodDefault<z.ZodBoolean>; xview: z.ZodDefault<z.ZodNumber>; yview: z.ZodDefault<z.ZodNumber>; wview: z.ZodDefault<z.ZodNumber>; hview: z.ZodDefault<z.ZodNumber>; xport: z.ZodDefault<z.ZodNumber>; yport: z.ZodDefault<z.ZodNumber>; wport: z.ZodDefault<z.ZodNumber>; hport: z.ZodDefault<z.ZodNumber>; hborder: z.ZodDefault<z.ZodNumber>; vborder: z.ZodDefault<z.ZodNumber>; hspeed: z.ZodDefault<z.ZodNumber>; vspeed: z.ZodDefault<z.ZodNumber>; objectId: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; }, z.core.$strip>>>; inheritLayers: z.ZodDefault<z.ZodBoolean>; creationCodeFile: z.ZodDefault<z.ZodString>; inheritCode: z.ZodDefault<z.ZodBoolean>; inheritCreationOrder: z.ZodDefault<z.ZodBoolean>; sequenceId: z.ZodDefault<z.ZodUnknown>; resourceType: z.ZodDefault<z.ZodLiteral<"GMRoom">>; }, z.core.$strip>; readonly roomui: z.ZodObject<{ $GMRoomUI: z.ZodDefault<z.ZodString>; '%Name': z.ZodDefault<z.ZodLiteral<"RoomUI">>; children: z.ZodDefault<z.ZodArray<z.ZodAny>>; locked: z.ZodDefault<z.ZodBoolean>; name: z.ZodDefault<z.ZodLiteral<"RoomUI">>; parent: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMRoomUI">>; resourceVersion: z.ZodDefault<z.ZodString>; viewspaceChildren: z.ZodDefault<z.ZodArray<z.ZodAny>>; visible: z.ZodDefault<z.ZodBoolean>; }, z.core.$loose>; readonly scripts: 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>; isDnD: z.ZodDefault<z.ZodBoolean>; isCompatibility: z.ZodDefault<z.ZodBoolean>; resourceType: z.ZodDefault<z.ZodLiteral<"GMScript">>; }, z.core.$strip>; readonly sequences: z.ZodObject<{ "%Name": z.ZodOptional<z.ZodString>; }, z.core.$loose>; readonly shaders: 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>; resourceType: z.ZodDefault<z.ZodLiteral<"GMShader">>; type: z.ZodDefault<z.ZodNumber>; }, z.core.$loose>; readonly sounds: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDiscriminatedUnion<[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>>; compression: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundCompression>>; conversionMode: z.ZodDefault<z.ZodOptional<z.ZodNumber>>; volume: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; preload: z.ZodDefault<z.ZodBoolean>; bitRate: z.ZodDefault<z.ZodNumber>; sampleRate: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<5512>, z.ZodLiteral<11025>, z.ZodLiteral<22050>, z.ZodLiteral<32000>, z.ZodLiteral<44100>, z.ZodLiteral<48000>]>>; type: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundChannel>>; bitDepth: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundBitDepth>>; audioGroupId: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; soundFile: z.ZodString; duration: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSound">>; resourceVersion: z.ZodDefault<z.ZodLiteral<"1.0">>; }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{ $GMSound: z.ZodLiteral<"">; '%Name': z.ZodString; audioGroupId: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; bitDepth: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundBitDepth>>; bitRate: z.ZodDefault<z.ZodNumber>; compression: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundCompression>>; conversionMode: z.ZodDefault<z.ZodOptional<z.ZodNumber>>; duration: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; name: z.ZodString; parent: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; preload: z.ZodDefault<z.ZodBoolean>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSound">>; resourceVersion: z.ZodDefault<z.ZodLiteral<"2.0">>; sampleRate: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<5512>, z.ZodLiteral<11025>, z.ZodLiteral<22050>, z.ZodLiteral<32000>, z.ZodLiteral<44100>, z.ZodLiteral<48000>]>>; soundFile: z.ZodString; type: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundChannel>>; volume: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; }, z.core.$strip>, z.ZodObject<{ $GMSound: z.ZodLiteral<"v2">; '%Name': z.ZodString; audioGroupId: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; bitDepth: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundBitDepth>>; channelFormat: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundChannel>>; compression: z.ZodDefault<z.ZodEnum<typeof import("./types/YySound.js").SoundCompression>>; compressionQuality: z.ZodDefault<z.ZodNumber>; ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>; conversionMode: z.ZodDefault<z.ZodOptional<z.ZodNumber>>; duration: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; exportDir: z.ZodDefault<z.ZodString>; name: z.ZodString; parent: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; preload: z.ZodDefault<z.ZodBoolean>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSound">>; resourceVersion: z.ZodDefault<z.ZodLiteral<"2.0">>; sampleRate: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<5512>, z.ZodLiteral<11025>, z.ZodLiteral<22050>, z.ZodLiteral<32000>, z.ZodLiteral<44100>, z.ZodLiteral<48000>]>>; soundFile: z.ZodString; volume: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; }, z.core.$loose>], "$GMSound">], "resourceVersion">>; readonly sprites: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodPipe<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>; bboxMode: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteBoundingBoxMode>>; collisionKind: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteCollisionKind>>; type: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteType>>; origin: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteOrigin>>; preMultiplyAlpha: z.ZodDefault<z.ZodBoolean>; edgeFiltering: z.ZodDefault<z.ZodBoolean>; collisionTolerance: z.ZodDefault<z.ZodNumber>; swfPrecision: z.ZodDefault<z.ZodNumber>; bbox_left: z.ZodDefault<z.ZodNumber>; bbox_right: z.ZodDefault<z.ZodNumber>; bbox_top: z.ZodDefault<z.ZodNumber>; bbox_bottom: z.ZodDefault<z.ZodNumber>; HTile: z.ZodDefault<z.ZodBoolean>; VTile: z.ZodDefault<z.ZodBoolean>; For3D: z.ZodDefault<z.ZodBoolean>; DynamicTexturePage: z.ZodDefault<z.ZodBoolean>; width: z.ZodDefault<z.ZodNumber>; height: z.ZodDefault<z.ZodNumber>; textureGroupId: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; swatchColours: z.ZodDefault<z.ZodUnknown>; gridX: z.ZodDefault<z.ZodNumber>; gridY: z.ZodDefault<z.ZodNumber>; frames: z.ZodDefault<z.ZodArray<z.ZodObject<{ name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSpriteFrame">>; compositeImage: z.ZodOptional<z.ZodObject<{ FrameId: z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>; resourceVersion: z.ZodDefault<z.ZodLiteral<"1.0">>; name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSpriteBitmap">>; LayerId: z.ZodNull; }, z.core.$strip>>; images: z.ZodOptional<z.ZodArray<z.ZodObject<{ FrameId: z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>; resourceVersion: z.ZodDefault<z.ZodLiteral<"1.0">>; name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSpriteBitmap">>; LayerId: z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>; }, z.core.$strip>>>; parent: z.ZodOptional<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>>>; sequence: z.ZodPrefault<z.ZodObject<{ timeUnits: z.ZodDefault<z.ZodNumber>; playback: z.ZodDefault<z.ZodNumber>; playbackSpeed: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; playbackSpeedType: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpritePlaybackSpeedType>>; autoRecord: z.ZodDefault<z.ZodBoolean>; volume: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; length: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; visibleRange: z.ZodDefault<z.ZodNullable<z.ZodObject<{ x: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>; y: z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>; }, z.core.$strip>>>; lockOrigin: z.ZodDefault<z.ZodBoolean>; showBackdrop: z.ZodDefault<z.ZodBoolean>; showBackdropImage: z.ZodDefault<z.ZodBoolean>; backdropImagePath: z.ZodDefault<z.ZodString>; backdropImageOpacity: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; backdropWidth: z.ZodDefault<z.ZodNumber>; backdropHeight: z.ZodDefault<z.ZodNumber>; backdropXOffset: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; backdropYOffset: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; xorigin: z.ZodDefault<z.ZodNumber>; yorigin: z.ZodDefault<z.ZodNumber>; eventToFunction: z.ZodDefault<z.ZodUnknown>; eventStubScript: z.ZodDefault<z.ZodUnknown>; name: z.ZodOptional<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSequence">>; resourceVersion: z.ZodDefault<z.ZodString>; events: z.ZodDefault<z.ZodIntersection<z.ZodObject<{ Keyframes: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore<MessageEventKeyframe>">; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore`1">; elementType: z.ZodLiteral<"MessageEventKeyframe">; }, z.core.$strip>], "resourceType">>>; moments: z.ZodDefault<z.ZodIntersection<z.ZodObject<{ Keyframes: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore<MomentsEventKeyframe>">; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore`1">; elementType: z.ZodLiteral<"MomentsEventKeyframe">; }, z.core.$strip>], "resourceType">>>; tracks: z.ZodPrefault<z.ZodArray<z.ZodObject<{ name: z.ZodDefault<z.ZodString>; spriteId: z.ZodDefault<z.ZodNullable<z.ZodUnknown>>; trackColour: z.ZodDefault<z.ZodNumber>; inheritsTrackColour: z.ZodDefault<z.ZodBoolean>; builtinName: z.ZodDefault<z.ZodNumber>; traits: z.ZodDefault<z.ZodNumber>; interpolation: z.ZodDefault<z.ZodNumber>; tracks: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; events: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; modifiers: z.ZodDefault<z.ZodArray<z.ZodUnknown>>; isCreationTrack: z.ZodDefault<z.ZodBoolean>; resourceVersion: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSpriteFramesTrack">>; keyframes: z.ZodPipe<z.ZodTransform<{} | null, unknown>, z.ZodPipe<z.ZodIntersection<z.ZodObject<{ Keyframes: z.ZodPipe<z.ZodTransform<{} | null, unknown>, z.ZodDefault<z.ZodArray<z.ZodIntersection<z.ZodObject<{ id: z.ZodDefault<z.ZodString>; Key: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; Length: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; Stretch: z.ZodDefault<z.ZodBoolean>; Disabled: z.ZodDefault<z.ZodBoolean>; IsCreationKey: z.ZodDefault<z.ZodBoolean>; Channels: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{ Id: z.ZodDefault<z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>; resourceVersion: z.ZodDefault<z.ZodString>; resourceType: z.ZodDefault<z.ZodLiteral<"SpriteFrameKeyframe">>; }, z.core.$strip>>>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>, z.ZodDiscriminatedUnion<[z.ZodObject<{ resourceType: z.ZodLiteral<"Keyframe`1">; elementType: z.ZodLiteral<"SpriteFrameKeyframe">; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"Keyframe<SpriteFrameKeyframe>">; }, z.core.$strip>], "resourceType">>>>>; resourceVersion: z.ZodDefault<z.ZodString>; }, z.core.$strip>, z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore<SpriteFrameKeyframe>">; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodLiteral<"KeyframeStore`1">; elementType: z.ZodLiteral<"SpriteFrameKeyframe">; }, z.core.$strip>], "resourceType">>>, z.ZodTransform<({ Keyframes: ({ id: string; Key: import("./index.js").FixedNumber; Length: import("./index.js").FixedNumber; Stretch: boolean; Disabled: boolean; IsCreationKey: boolean; Channels: Record<string, { Id: { name: string; path: string; }; resourceVersion: string; resourceType: "SpriteFrameKeyframe"; }>; resourceVersion: string; } & ({ resourceType: "Keyframe`1"; elementType: "SpriteFrameKeyframe"; } | { resourceType: "Keyframe<SpriteFrameKeyframe>"; }))[]; resourceVersion: string; } & { resourceType: "KeyframeStore<SpriteFrameKeyframe>"; }) | ({ Keyframes: ({ id: string; Key: import("./index.js").FixedNumber; Length: import("./index.js").FixedNumber; Stretch: boolean; Disabled: boolean; IsCreationKey: boolean; Channels: Record<string, { Id: { name: string; path: string; }; resourceVersion: string; resourceType: "SpriteFrameKeyframe"; }>; resourceVersion: string; } & ({ resourceType: "Keyframe`1"; elementType: "SpriteFrameKeyframe"; } | { resourceType: "Keyframe<SpriteFrameKeyframe>"; }))[]; resourceVersion: string; } & { resourceType: "KeyframeStore`1"; elementType: "SpriteFrameKeyframe"; }), { Keyframes: ({ id: string; Key: import("./index.js").FixedNumber; Length: import("./index.js").FixedNumber; Stretch: boolean; Disabled: boolean; IsCreationKey: boolean; Channels: Record<string, { Id: { name: string; path: string; }; resourceVersion: string; resourceType: "SpriteFrameKeyframe"; }>; resourceVersion: string; } & ({ resourceType: "Keyframe`1"; elementType: "SpriteFrameKeyframe"; } | { resourceType: "Keyframe<SpriteFrameKeyframe>"; }))[]; resourceVersion: string; } & ({ resourceType: "KeyframeStore<SpriteFrameKeyframe>"; } | { resourceType: "KeyframeStore`1"; elementType: "SpriteFrameKeyframe"; })>>>; }, z.core.$strip>>>; spriteId: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; parent: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{ name: z.ZodString; path: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>>; layers: z.ZodPrefault<z.ZodArray<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDiscriminatedUnion<[z.ZodObject<{ visible: z.ZodDefault<z.ZodBoolean>; isLocked: z.ZodDefault<z.ZodBoolean>; blendMode: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteLayerBlendMode>>; opacity: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; displayName: z.ZodDefault<z.ZodString>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMImageLayer">>; }, z.core.$strip>, z.ZodObject<{ resourceType: z.ZodDefault<z.ZodLiteral<"GMImageFolderLayer">>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; blendMode: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteLayerBlendMode>>; displayName: z.ZodDefault<z.ZodString>; isLocked: z.ZodDefault<z.ZodBoolean>; opacity: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; visible: z.ZodDefault<z.ZodBoolean>; layers: z.ZodDefault<z.ZodArray<z.ZodObject<{ visible: z.ZodDefault<z.ZodBoolean>; isLocked: z.ZodDefault<z.ZodBoolean>; blendMode: z.ZodDefault<z.ZodEnum<typeof import("./types/YySprite.js").SpriteLayerBlendMode>>; opacity: z.ZodDefault<z.ZodPipe<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>, z.ZodTransform<import("./index.js").FixedNumber, number>>>; displayName: z.ZodDefault<z.ZodString>; resourceVersion: z.ZodDefault<z.ZodString>; name: z.ZodDefault<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMImageLayer">>; }, z.core.$strip>>>; }, z.core.$strip>], "resourceType">>>>; resourceType: z.ZodDefault<z.ZodLiteral<"GMSprite">>; nineSlice: z.ZodDefault<z.ZodOptional<z.ZodUnknown>>; }, z.core.$strip>, z.ZodTransform<{ name: string; parent: { name: string; path: string; }; resourceVersion: string; bboxMode: import("./types/YySprite.js").SpriteBoundingBoxMode; collisionKind: import("./types/YySprite.js").SpriteCollisionKind; type: import("./types/YySprite.js").SpriteType; origin: import("./types/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: { name: string; path: string; }; swatchColours: unknown; gridX: number; gridY: number; frames: { name: string; resourceType: "GMSpriteFrame"; resourceVersion: string; tags?: string[] | undefined; compositeImage?: { FrameId: { name: string; path: string; }; resourceVersion: "1.0"; name: string; resourceType: "GMSpriteBitmap"; LayerId: null; tags?: string[] | undefined; } | undefined; images?: { FrameId: { name: string; path: string; }; resourceVersion: "1.0"; name: string; resourceType: "GMSpriteBitmap"; LayerId: { name: string; path: string; }; tags?: string[] | undefined; }[] | undefined; parent?: { name: string; path: string; } | undefined; }[]; sequence: { timeUnits: number; playback: number