import { type AnyNode, type AnyNodeId, type WallMiterData, type WallNode, type WallSlabSupportSegment } from '@pascal-app/core'; import * as THREE from 'three'; import { Brush } from 'three-bvh-csg'; export { isWallInitialBuildActive } from './wall-build-lifecycle'; export { drainRebuiltWalls } from './wall-rebuild-notifications'; export declare function mergeWallCutoutBrushes(brushes: readonly Brush[]): { cutter: Brush | null; fallbackBrushes: Brush[]; droppedCount: number; }; export declare function shouldDeferWallRebuild(wallId: string, nodes: Record, rebuiltThisFrame: number, elapsedMs: number): boolean; /** Rebuilds this system still owes — neighbours deferred during a drag. */ export declare function getPendingWallRebuildCount(): number; export declare const WallSystem: () => null; export declare function runWallBuildFrame(): void; type WallTerrainBottomSampler = (x: number, z: number) => number | null; export declare function generateExtrudedWall(wallNode: WallNode, childrenNodes: AnyNode[], miterData: WallMiterData, slabElevation?: number, baseElevation?: number, baseSegments?: readonly WallSlabSupportSegment[], storeyHeight?: number, terrainBottomAt?: WallTerrainBottomSampler): THREE.BufferGeometry; //# sourceMappingURL=wall-system.d.ts.map