import { z } from 'zod'; /** * Travel terrain types for navigation and movement */ export declare const TravelTerrainSchema: z.ZodEnum<["paved", "dirt", "wilderness", "indoor"]>; export type TravelTerrain = z.infer; /** * Exit represents a connection between two rooms */ export declare const ExitSchema: z.ZodObject<{ direction: z.ZodEnum<["north", "south", "east", "west", "up", "down", "northeast", "northwest", "southeast", "southwest"]>; targetNodeId: z.ZodString; type: z.ZodEnum<["OPEN", "LOCKED", "HIDDEN"]>; dc: z.ZodOptional; description: z.ZodOptional; travelTime: z.ZodOptional; terrain: z.ZodOptional>; difficulty: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }, { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }>; export type Exit = z.infer; export declare const BiomeTypeSchema: z.ZodEnum<["forest", "mountain", "urban", "dungeon", "coastal", "cavern", "divine", "arcane"]>; export type BiomeType = z.infer; export declare const AtmosphericSchema: z.ZodEnum<["DARKNESS", "FOG", "ANTIMAGIC", "SILENCE", "BRIGHT", "MAGICAL"]>; export type Atmospheric = z.infer; /** * RoomNode represents a persistent location in the world * Rooms are semantic locations (tavern, forest clearing, dungeon chamber) * distinct from physical grid tiles in the worldgen system */ export declare const RoomNodeSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodEffects; baseDescription: z.ZodEffects; biomeContext: z.ZodEnum<["forest", "mountain", "urban", "dungeon", "coastal", "cavern", "divine", "arcane"]>; atmospherics: z.ZodDefault, "many">>; networkId: z.ZodOptional; localX: z.ZodOptional; localY: z.ZodOptional; exits: z.ZodDefault; targetNodeId: z.ZodString; type: z.ZodEnum<["OPEN", "LOCKED", "HIDDEN"]>; dc: z.ZodOptional; description: z.ZodOptional; travelTime: z.ZodOptional; terrain: z.ZodOptional>; difficulty: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }, { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }>, "many">>; entityIds: z.ZodDefault>; createdAt: z.ZodString; updatedAt: z.ZodString; visitedCount: z.ZodDefault; lastVisitedAt: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; name: string; createdAt: string; updatedAt: string; baseDescription: string; biomeContext: "divine" | "forest" | "dungeon" | "mountain" | "urban" | "coastal" | "cavern" | "arcane"; atmospherics: ("DARKNESS" | "FOG" | "ANTIMAGIC" | "SILENCE" | "BRIGHT" | "MAGICAL")[]; exits: { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }[]; entityIds: string[]; visitedCount: number; networkId?: string | undefined; localX?: number | undefined; localY?: number | undefined; lastVisitedAt?: string | undefined; }, { id: string; name: string; createdAt: string; updatedAt: string; baseDescription: string; biomeContext: "divine" | "forest" | "dungeon" | "mountain" | "urban" | "coastal" | "cavern" | "arcane"; atmospherics?: ("DARKNESS" | "FOG" | "ANTIMAGIC" | "SILENCE" | "BRIGHT" | "MAGICAL")[] | undefined; networkId?: string | undefined; localX?: number | undefined; localY?: number | undefined; exits?: { type: "OPEN" | "LOCKED" | "HIDDEN"; direction: "north" | "south" | "east" | "west" | "up" | "down" | "northeast" | "northwest" | "southeast" | "southwest"; targetNodeId: string; dc?: number | undefined; description?: string | undefined; terrain?: "paved" | "dirt" | "wilderness" | "indoor" | undefined; travelTime?: number | undefined; difficulty?: number | undefined; }[] | undefined; entityIds?: string[] | undefined; visitedCount?: number | undefined; lastVisitedAt?: string | undefined; }>; export type RoomNode = z.infer; /** * NodeNetwork represents a collection of connected rooms forming a location * Examples: towns (cluster), roads (linear), dungeons (cluster) */ export declare const NodeNetworkSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; type: z.ZodEnum<["cluster", "linear"]>; worldId: z.ZodString; centerX: z.ZodNumber; centerY: z.ZodNumber; boundingBox: z.ZodOptional>; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { type: "cluster" | "linear"; id: string; worldId: string; name: string; createdAt: string; updatedAt: string; centerX: number; centerY: number; boundingBox?: { minX: number; maxX: number; minY: number; maxY: number; } | undefined; }, { type: "cluster" | "linear"; id: string; worldId: string; name: string; createdAt: string; updatedAt: string; centerX: number; centerY: number; boundingBox?: { minX: number; maxX: number; minY: number; maxY: number; } | undefined; }>; export type NodeNetwork = z.infer; //# sourceMappingURL=spatial.d.ts.map