import { z } from 'zod'; import { StructureType } from '../../schema/structure.js'; import { BiomeType } from '../../schema/biome.js'; /** * Command Types */ export declare enum CommandType { ADD_STRUCTURE = "ADD_STRUCTURE", SET_BIOME = "SET_BIOME", EDIT_TILE = "EDIT_TILE", ADD_ROAD = "ADD_ROAD", MOVE_STRUCTURE = "MOVE_STRUCTURE", ADD_ANNOTATION = "ADD_ANNOTATION" } export declare const AddStructureSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ type: z.ZodNativeEnum; x: z.ZodNumber; y: z.ZodNumber; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: StructureType; name: string; x: number; y: number; }, { type: StructureType; name: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { type: StructureType; name: string; x: number; y: number; }; command: CommandType.ADD_STRUCTURE; }, { args: { type: StructureType; name: string; x: number; y: number; }; command: CommandType.ADD_STRUCTURE; }>; export declare const SetBiomeSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; type: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: BiomeType; x: number; y: number; }, { type: BiomeType; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { type: BiomeType; x: number; y: number; }; command: CommandType.SET_BIOME; }, { args: { type: BiomeType; x: number; y: number; }; command: CommandType.SET_BIOME; }>; export declare const EditTileSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; elevation: z.ZodOptional; moisture: z.ZodOptional; temperature: z.ZodOptional; }, "strip", z.ZodTypeAny, { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }, { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }>; }, "strip", z.ZodTypeAny, { args: { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }; command: CommandType.EDIT_TILE; }, { args: { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }; command: CommandType.EDIT_TILE; }>; export declare const AddRoadSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ from_x: z.ZodNumber; from_y: z.ZodNumber; to_x: z.ZodNumber; to_y: z.ZodNumber; }, "strip", z.ZodTypeAny, { from_x: number; from_y: number; to_x: number; to_y: number; }, { from_x: number; from_y: number; to_x: number; to_y: number; }>; }, "strip", z.ZodTypeAny, { args: { from_x: number; from_y: number; to_x: number; to_y: number; }; command: CommandType.ADD_ROAD; }, { args: { from_x: number; from_y: number; to_x: number; to_y: number; }; command: CommandType.ADD_ROAD; }>; export declare const MoveStructureSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ id: z.ZodString; x: z.ZodNumber; y: z.ZodNumber; }, "strip", z.ZodTypeAny, { id: string; x: number; y: number; }, { id: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { id: string; x: number; y: number; }; command: CommandType.MOVE_STRUCTURE; }, { args: { id: string; x: number; y: number; }; command: CommandType.MOVE_STRUCTURE; }>; export declare const AddAnnotationSchema: z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; text: z.ZodString; }, "strip", z.ZodTypeAny, { text: string; x: number; y: number; }, { text: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { text: string; x: number; y: number; }; command: CommandType.ADD_ANNOTATION; }, { args: { text: string; x: number; y: number; }; command: CommandType.ADD_ANNOTATION; }>; /** * Union of all command schemas */ export declare const PatchCommandSchema: z.ZodDiscriminatedUnion<"command", [z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ type: z.ZodNativeEnum; x: z.ZodNumber; y: z.ZodNumber; name: z.ZodString; }, "strip", z.ZodTypeAny, { type: StructureType; name: string; x: number; y: number; }, { type: StructureType; name: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { type: StructureType; name: string; x: number; y: number; }; command: CommandType.ADD_STRUCTURE; }, { args: { type: StructureType; name: string; x: number; y: number; }; command: CommandType.ADD_STRUCTURE; }>, z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; type: z.ZodNativeEnum; }, "strip", z.ZodTypeAny, { type: BiomeType; x: number; y: number; }, { type: BiomeType; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { type: BiomeType; x: number; y: number; }; command: CommandType.SET_BIOME; }, { args: { type: BiomeType; x: number; y: number; }; command: CommandType.SET_BIOME; }>, z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; elevation: z.ZodOptional; moisture: z.ZodOptional; temperature: z.ZodOptional; }, "strip", z.ZodTypeAny, { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }, { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }>; }, "strip", z.ZodTypeAny, { args: { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }; command: CommandType.EDIT_TILE; }, { args: { x: number; y: number; temperature?: number | undefined; moisture?: number | undefined; elevation?: number | undefined; }; command: CommandType.EDIT_TILE; }>, z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ from_x: z.ZodNumber; from_y: z.ZodNumber; to_x: z.ZodNumber; to_y: z.ZodNumber; }, "strip", z.ZodTypeAny, { from_x: number; from_y: number; to_x: number; to_y: number; }, { from_x: number; from_y: number; to_x: number; to_y: number; }>; }, "strip", z.ZodTypeAny, { args: { from_x: number; from_y: number; to_x: number; to_y: number; }; command: CommandType.ADD_ROAD; }, { args: { from_x: number; from_y: number; to_x: number; to_y: number; }; command: CommandType.ADD_ROAD; }>, z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ id: z.ZodString; x: z.ZodNumber; y: z.ZodNumber; }, "strip", z.ZodTypeAny, { id: string; x: number; y: number; }, { id: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { id: string; x: number; y: number; }; command: CommandType.MOVE_STRUCTURE; }, { args: { id: string; x: number; y: number; }; command: CommandType.MOVE_STRUCTURE; }>, z.ZodObject<{ command: z.ZodLiteral; args: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; text: z.ZodString; }, "strip", z.ZodTypeAny, { text: string; x: number; y: number; }, { text: string; x: number; y: number; }>; }, "strip", z.ZodTypeAny, { args: { text: string; x: number; y: number; }; command: CommandType.ADD_ANNOTATION; }, { args: { text: string; x: number; y: number; }; command: CommandType.ADD_ANNOTATION; }>]>; export type PatchCommand = z.infer; //# sourceMappingURL=schema.d.ts.map