/** * TerrainBrush.ts * * Editor tools for sculpting and painting terrain heightmaps. * Supports raise, lower, flatten, smooth, and texture paint brushes. * * @module environment */ import { TerrainSystem } from './TerrainSystem'; export type BrushMode = 'raise' | 'lower' | 'flatten' | 'smooth' | 'paint'; export interface BrushConfig { mode: BrushMode; radius: number; strength: number; falloff: number; flattenHeight?: number; paintLayerId?: string; } export interface BrushStroke { terrainId: string; gridX: number; gridZ: number; config: BrushConfig; affectedCells: { x: number; z: number; oldHeight: number; newHeight: number; }[]; } export declare class TerrainBrush { private config; private terrain; private undoStack; private redoStack; constructor(terrain: TerrainSystem, config?: Partial); setConfig(config: Partial): void; getConfig(): BrushConfig; setMode(mode: BrushMode): void; setRadius(radius: number): void; setStrength(strength: number): void; /** * Apply the brush at a grid position on a terrain. */ apply(terrainId: string, gridX: number, gridZ: number): BrushStroke; undo(): BrushStroke | null; redo(): BrushStroke | null; getUndoCount(): number; getRedoCount(): number; } //# sourceMappingURL=TerrainBrush.d.ts.map