/** * World Generation Module * * Integrates heightmap, climate, and biome generation into a unified API. * Follows TDD principles with deterministic, seed-based generation. */ export * from './heightmap.js'; export * from './climate.js'; export * from './biome.js'; export * from './river.js'; export * from './lakes.js'; export * from './regions.js'; export * from './structures.js'; export * from './validation.js'; import { Region } from './regions.js'; import { StructureLocation } from './structures.js'; import { BiomeType } from '../../schema/biome.js'; /** * Complete world generation output */ export interface GeneratedWorld { seed: string; width: number; height: number; /** Elevation map (0-100, sea level at 20) */ elevation: Uint8Array; /** Temperature map (Celsius, -20 to 40) */ temperature: Int8Array; /** Moisture map (percentage, 0-100) */ moisture: Uint8Array; /** Biome assignment */ biomes: BiomeType[][]; /** River map (1 = river, 0 = no river) */ rivers: Uint8Array; /** Region definitions */ regions: Region[]; /** Region ID map */ regionMap: Int32Array; /** Placed structures */ structures: StructureLocation[]; } /** * World generation options */ export interface WorldGenOptions { /** Deterministic seed */ seed: string; /** Map width in cells */ width: number; /** Map height in cells */ height: number; /** Target land ratio (default 0.3 for 30% land) */ landRatio?: number; /** Number of noise octaves (default 6) */ octaves?: number; /** Equator temperature in Celsius (default 30) */ equatorTemp?: number; /** Pole temperature in Celsius (default -10) */ poleTemp?: number; /** Number of regions (default 10) */ numRegions?: number; /** Number of cities (default 5) */ numCities?: number; /** Number of towns (default 10) */ numTowns?: number; /** Number of dungeons (default 5) */ /** Number of dungeons (default 5) */ numDungeons?: number; /** Global temperature offset (shift entire map hotter/colder) */ temperatureOffset?: number; /** Global moisture offset (shift entire map wetter/drier) */ moistureOffset?: number; } /** * Generate a complete world * * This is the primary entry point for world generation. * Produces a deterministic world from a seed. * * @example * ```typescript * const world = generateWorld({ * seed: 'my-world-42', * width: 100, * height: 100, * }); * * console.log(world.biomes[50][50]); // BiomeType at equator, center * ``` */ export declare function generateWorld(options: WorldGenOptions): GeneratedWorld; /** * Quick world generation with defaults * * @example * ```typescript * const world = quickWorld('seed123', 50, 50); * ``` */ export declare function quickWorld(seed: string, width?: number, height?: number): GeneratedWorld; //# sourceMappingURL=index.d.ts.map