@bscotch/yy
Version:
Stringify, parse, read, and write GameMaker yy and yyp files.
1,152 lines • 465 kB
TypeScript
import { PartialDeep } from 'type-fest';
import { Schema, z } from 'zod';
import { YyResourceType } from './types/YyBase.js';
import { Yyp } from './types/Yyp.js';
export type YySchemaRef = YyResourceType | 'project' | Schema | undefined;
export type YySchemaName = keyof YySchemas;
export type YySchema<T extends YySchemaRef> = T extends YySchemaName ? YySchemas[T] : T extends Schema ? T : unknown;
export type YyDataStrict<T extends YySchemaRef> = T extends undefined ? unknown : z.output<YySchema<Exclude<T, undefined>>>;
export type YyDataLoose<T extends YySchemaRef> = T extends undefined ? unknown : z.input<YySchema<Exclude<T, undefined>>>;
export type YySchemas = typeof yySchemas;
export declare const yySchemas: {
readonly project: z.ZodEffects<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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>;
order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}>, "many">>;
RoomOrderNodes: z.ZodDefault<z.ZodArray<z.ZodObject<{
roomId: z.ZodEffects<z.ZodObject<{
name: z.ZodString;
path: z.ZodString;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>, {
path: string;
name: string;
}, unknown>;
}, "strip", z.ZodTypeAny, {
roomId: {
path: string;
name: string;
};
}, {
roomId?: unknown;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}>, "many">>;
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<Schema<import("./types/Yyp.js").YypConfig, z.ZodTypeDef, import("./types/Yyp.js").YypConfig>, "many">>;
}, "strip", z.ZodTypeAny, {
name: "Default";
children: import("./types/Yyp.js").YypConfig[];
}, {
name?: "Default" | undefined;
children?: import("./types/Yyp.js").YypConfig[] | undefined;
}>;
Folders: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
name: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
folderPath: z.ZodString;
order: z.ZodOptional<z.ZodNumber>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMFolder">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, {
name: string;
folderPath: string;
resourceType?: "GMFolder" | undefined;
tags?: string[] | undefined;
resourceVersion?: string | undefined;
order?: number | undefined;
}>, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, unknown>, "many">>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMAudioGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMAudioGroup";
resourceVersion: string;
targets: bigint;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
resourceType?: "GMAudioGroup" | undefined;
resourceVersion?: string | undefined;
targets?: number | bigint | undefined;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, "many">>; /**
* Synchronous version of {@link Yy.write}.
*
* @param yyp If provided, the yyp will be used to determine format information
*/
IncludedFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{
ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
CopyToMask: z.ZodString;
}, "strip", z.ZodTypeAny, {
CopyToMask: string;
}, {
CopyToMask: string;
}>>>;
name: z.ZodString;
CopyToMask: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
filePath: z.ZodString;
resourceType: z.ZodDefault<z.ZodLiteral<"GMIncludedFile">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMIncludedFile";
resourceVersion: string;
CopyToMask: bigint;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
}, {
name: string;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
resourceType?: "GMIncludedFile" | undefined;
resourceVersion?: string | undefined;
CopyToMask?: number | bigint | undefined;
}>, "many">>;
MetaData: z.ZodObject<{
IDEVersion: z.ZodString;
}, "strip", z.ZodTypeAny, {
IDEVersion: string;
}, {
IDEVersion: string;
}>;
LibraryEmitters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
resourceVersion: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
"%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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>;
order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}>, "many">>;
RoomOrderNodes: z.ZodDefault<z.ZodArray<z.ZodObject<{
roomId: z.ZodEffects<z.ZodObject<{
name: z.ZodString;
path: z.ZodString;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>, {
path: string;
name: string;
}, unknown>;
}, "strip", z.ZodTypeAny, {
roomId: {
path: string;
name: string;
};
}, {
roomId?: unknown;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}>, "many">>;
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<Schema<import("./types/Yyp.js").YypConfig, z.ZodTypeDef, import("./types/Yyp.js").YypConfig>, "many">>;
}, "strip", z.ZodTypeAny, {
name: "Default";
children: import("./types/Yyp.js").YypConfig[];
}, {
name?: "Default" | undefined;
children?: import("./types/Yyp.js").YypConfig[] | undefined;
}>;
Folders: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
name: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
folderPath: z.ZodString;
order: z.ZodOptional<z.ZodNumber>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMFolder">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, {
name: string;
folderPath: string;
resourceType?: "GMFolder" | undefined;
tags?: string[] | undefined;
resourceVersion?: string | undefined;
order?: number | undefined;
}>, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, unknown>, "many">>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMAudioGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMAudioGroup";
resourceVersion: string;
targets: bigint;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
resourceType?: "GMAudioGroup" | undefined;
resourceVersion?: string | undefined;
targets?: number | bigint | undefined;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, "many">>; /**
* Synchronous version of {@link Yy.write}.
*
* @param yyp If provided, the yyp will be used to determine format information
*/
IncludedFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{
ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
CopyToMask: z.ZodString;
}, "strip", z.ZodTypeAny, {
CopyToMask: string;
}, {
CopyToMask: string;
}>>>;
name: z.ZodString;
CopyToMask: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
filePath: z.ZodString;
resourceType: z.ZodDefault<z.ZodLiteral<"GMIncludedFile">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMIncludedFile";
resourceVersion: string;
CopyToMask: bigint;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
}, {
name: string;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
resourceType?: "GMIncludedFile" | undefined;
resourceVersion?: string | undefined;
CopyToMask?: number | bigint | undefined;
}>, "many">>;
MetaData: z.ZodObject<{
IDEVersion: z.ZodString;
}, "strip", z.ZodTypeAny, {
IDEVersion: string;
}, {
IDEVersion: string;
}>;
LibraryEmitters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
resourceVersion: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
"%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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>;
order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}>, "many">>;
RoomOrderNodes: z.ZodDefault<z.ZodArray<z.ZodObject<{
roomId: z.ZodEffects<z.ZodObject<{
name: z.ZodString;
path: z.ZodString;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>, {
path: string;
name: string;
}, unknown>;
}, "strip", z.ZodTypeAny, {
roomId: {
path: string;
name: string;
};
}, {
roomId?: unknown;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}>, "many">>;
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<Schema<import("./types/Yyp.js").YypConfig, z.ZodTypeDef, import("./types/Yyp.js").YypConfig>, "many">>;
}, "strip", z.ZodTypeAny, {
name: "Default";
children: import("./types/Yyp.js").YypConfig[];
}, {
name?: "Default" | undefined;
children?: import("./types/Yyp.js").YypConfig[] | undefined;
}>;
Folders: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
name: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
folderPath: z.ZodString;
order: z.ZodOptional<z.ZodNumber>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMFolder">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, {
name: string;
folderPath: string;
resourceType?: "GMFolder" | undefined;
tags?: string[] | undefined;
resourceVersion?: string | undefined;
order?: number | undefined;
}>, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, unknown>, "many">>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMAudioGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMAudioGroup";
resourceVersion: string;
targets: bigint;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
resourceType?: "GMAudioGroup" | undefined;
resourceVersion?: string | undefined;
targets?: number | bigint | undefined;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, "many">>; /**
* Synchronous version of {@link Yy.write}.
*
* @param yyp If provided, the yyp will be used to determine format information
*/
IncludedFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{
ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
CopyToMask: z.ZodString;
}, "strip", z.ZodTypeAny, {
CopyToMask: string;
}, {
CopyToMask: string;
}>>>;
name: z.ZodString;
CopyToMask: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
filePath: z.ZodString;
resourceType: z.ZodDefault<z.ZodLiteral<"GMIncludedFile">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMIncludedFile";
resourceVersion: string;
CopyToMask: bigint;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
}, {
name: string;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
resourceType?: "GMIncludedFile" | undefined;
resourceVersion?: string | undefined;
CopyToMask?: number | bigint | undefined;
}>, "many">>;
MetaData: z.ZodObject<{
IDEVersion: z.ZodString;
}, "strip", z.ZodTypeAny, {
IDEVersion: string;
}, {
IDEVersion: string;
}>;
LibraryEmitters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
resourceVersion: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, z.ZodTypeAny, "passthrough">>, z.objectOutputType<{
"%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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>;
order: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}, {
id: {
path: string;
name: string;
};
order?: number | undefined;
}>, "many">>;
RoomOrderNodes: z.ZodDefault<z.ZodArray<z.ZodObject<{
roomId: z.ZodEffects<z.ZodObject<{
name: z.ZodString;
path: z.ZodString;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>, {
path: string;
name: string;
}, unknown>;
}, "strip", z.ZodTypeAny, {
roomId: {
path: string;
name: string;
};
}, {
roomId?: unknown;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
path: string;
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}>, "many">>;
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<Schema<import("./types/Yyp.js").YypConfig, z.ZodTypeDef, import("./types/Yyp.js").YypConfig>, "many">>;
}, "strip", z.ZodTypeAny, {
name: "Default";
children: import("./types/Yyp.js").YypConfig[];
}, {
name?: "Default" | undefined;
children?: import("./types/Yyp.js").YypConfig[] | undefined;
}>;
Folders: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodObject<{
name: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
folderPath: z.ZodString;
order: z.ZodOptional<z.ZodNumber>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMFolder">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, {
name: string;
folderPath: string;
resourceType?: "GMFolder" | undefined;
tags?: string[] | undefined;
resourceVersion?: string | undefined;
order?: number | undefined;
}>, {
name: string;
resourceType: "GMFolder";
resourceVersion: string;
folderPath: string;
tags?: string[] | undefined;
order?: number | undefined;
}, unknown>, "many">>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMAudioGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMAudioGroup";
resourceVersion: string;
targets: bigint;
ConfigValues?: Record<string, Record<string, string>> | undefined;
}, {
name: string;
ConfigValues?: Record<string, Record<string, string>> | undefined;
resourceType?: "GMAudioGroup" | undefined;
resourceVersion?: string | undefined;
targets?: number | bigint | undefined;
}>, "many">>;
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
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;
}, "strip", z.ZodTypeAny, {
path: string;
name: string;
}, {
path: string;
name: string;
}>>>;
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.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
loadType: z.ZodDefault<z.ZodEnum<["default", "dynamicpages"]>>;
directory: z.ZodDefault<z.ZodString>;
resourceType: z.ZodDefault<z.ZodLiteral<"GMTextureGroup">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>, "many">>; /**
* Synchronous version of {@link Yy.write}.
*
* @param yyp If provided, the yyp will be used to determine format information
*/
IncludedFiles: z.ZodDefault<z.ZodArray<z.ZodObject<{
ConfigValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
CopyToMask: z.ZodString;
}, "strip", z.ZodTypeAny, {
CopyToMask: string;
}, {
CopyToMask: string;
}>>>;
name: z.ZodString;
CopyToMask: z.ZodDefault<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodBigInt]>, bigint, number | bigint>>;
filePath: z.ZodString;
resourceType: z.ZodDefault<z.ZodLiteral<"GMIncludedFile">>;
resourceVersion: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMIncludedFile";
resourceVersion: string;
CopyToMask: bigint;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
}, {
name: string;
filePath: string;
ConfigValues?: Record<string, {
CopyToMask: string;
}> | undefined;
resourceType?: "GMIncludedFile" | undefined;
resourceVersion?: string | undefined;
CopyToMask?: number | bigint | undefined;
}>, "many">>;
MetaData: z.ZodObject<{
IDEVersion: z.ZodString;
}, "strip", z.ZodTypeAny, {
IDEVersion: string;
}, {
IDEVersion: string;
}>;
LibraryEmitters: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
resourceVersion: z.ZodString;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, z.ZodTypeAny, "passthrough">, unknown>;
readonly animcurves: z.ZodObject<{
"%Name": z.ZodOptional<z.ZodString>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
"%Name": z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
"%Name": z.ZodOptional<z.ZodString>;
}, z.ZodTypeAny, "passthrough">>;
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;
}, "strip", z.ZodTypeAny, {
value: string;
name: string;
resourceType: "GMExtensionConstant";
resourceVersion: string;
hidden: boolean;
}, {
value: string;
name: string;
resourceType?: "GMExtensionConstant" | undefined;
resourceVersion?: string | undefined;
hidden?: boolean | undefined;
}>, "many">>;
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<[z.ZodLiteral<1>, z.ZodLiteral<2>]>, "many">>;
help: z.ZodString;
hidden: z.ZodDefault<z.ZodBoolean>;
kind: z.ZodDefault<z.ZodNumber>;
returnType: z.ZodUnion<[z.ZodLiteral<1>, z.ZodLiteral<2>]>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMExtensionFunction";
resourceVersion: string;
hidden: boolean;
externalName: string;
documentation: string;
argCount: number;
args: (2 | 1)[];
help: string;
kind: number;
returnType: 2 | 1;
}, {
name: string;
externalName: string;
help: string;
returnType: 2 | 1;
resourceType?: "GMExtensionFunction" | undefined;
resourceVersion?: string | undefined;
hidden?: boolean | undefined;
documentation?: string | undefined;
argCount?: number | undefined;
args?: (2 | 1)[] | undefined;
kind?: number | undefined;
}>, "many">>;
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
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;
}, "strip", z.ZodTypeAny, {
value: string;
name: string;
resourceType: "GMExtensionConstant";
resourceVersion: string;
hidden: boolean;
}, {
value: string;
name: string;
resourceType?: "GMExtensionConstant" | undefined;
resourceVersion?: string | undefined;
hidden?: boolean | undefined;
}>, "many">>;
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<[z.ZodLiteral<1>, z.ZodLiteral<2>]>, "many">>;
help: z.ZodString;
hidden: z.ZodDefault<z.ZodBoolean>;
kind: z.ZodDefault<z.ZodNumber>;
returnType: z.ZodUnion<[z.ZodLiteral<1>, z.ZodLiteral<2>]>;
}, "strip", z.ZodTypeAny, {
name: string;
resourceType: "GMExtensionFunction";
resourceVersion: string;
hidden: boolean;
externalName: string;
documentation: string;
argCount: number;
args: (2 | 1)[];
help: string;
kind: number;
returnType: 2 | 1;
}, {
name: string;
externalName: string;
help: string;
returnType: 2 | 1;
resourceType?: "GMExtensionFunction" | undefined;
resourceVersion?: string | undefined;
hidden?: boolean | undefined;
documentation?: string | undefined;
argCount?: number | undefined;
args?: (2 | 1)[] | undefined;
kind?: number | undefined;
}>, "many">>;
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
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;
}, "strip", z.ZodTypeAny, {
value: string;
name: string;
resourceType: "GMExtensionConstant";
resourceVersion: string;
hidden: boolean;
}, {
value: string;
name: string;
resourceType?: "GMExtensionConstant" | undefined;
resourceVersion?: string | undefined;
hidden?: boolean | undefined;
}>, "many">>;
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.ZodUni