import { type MinimapBakeBounds, type MinimapBakeOptions, type MinimapBakeZone } from "../world/minimapBake.js"; import type { EditorDocument } from "./types.js"; /** * The biome-tint zones a document contributes to a bake: every volume carrying a `color` becomes a * polygon tint over its footprint. (The optional stretch from #1036 — a bare bake still reads as * terrain without any.) * @capability minimap-bake derive biome-tint zones for a bake from the scene document */ export declare function documentBakeZones(doc: EditorDocument): MinimapBakeZone[]; /** Options for {@link bakeMinimapFromDocument}. */ export interface DocumentBakeOptions extends MinimapBakeOptions { /** Explicit bounds; default = the document's object bounds padded by `padding`. */ bounds?: MinimapBakeBounds; /** Padding (m) around the derived bounds when `bounds` is omitted. Default 16. */ padding?: number; /** Ground normal sampler for slope shading (optional). */ sampleNormal?: (x: number, z: number) => readonly [number, number, number]; /** Water level — ground at or below renders as water. */ waterLevel?: number; } /** * Bakes a minimap image from a scene document plus a terrain height sampler: sizes the footprint to * the authored objects (or an explicit `bounds`), tints biome-colored volumes, and rasterizes the * terrain top-down. Returns `{ background, mapBounds }` for the `Minimap` props. The editor runs this * as its bake action and stores the result on the document. * @capability minimap-bake bake a minimap PNG + bounds from the authored scene document */ export declare function bakeMinimapFromDocument(doc: EditorDocument, sampleHeight: (x: number, z: number) => number, options?: DocumentBakeOptions): { background: string; mapBounds: MinimapBakeBounds; };