import { type SceneMaterial, type SceneMaterialId, type WallFace, type WallNode, type WallTrimConfig, type WallTrimKind, type WallTrimSlotId } from '@pascal-app/core'; import { type RenderShading } from '@pascal-app/viewer'; import * as THREE from 'three'; import { type WallTreatmentLevelData } from './treatment-level-data.js'; type OpeningLike = { type: string; width?: number; height?: number; position?: [number, number, number]; }; type TrimKind = WallTrimKind; type WallSide = WallFace; type SceneMaterials = Record; type WallTreatmentSlotId = WallTrimSlotId; export declare function hasWallTreatments(node: WallNode): boolean; export declare function wallTreatmentProudOffsets(node: WallNode): number[]; export declare function buildTrimGeometry(node: WallNode, side: WallSide, trim: WallTrimConfig, kind: TrimKind, childrenNodes: OpeningLike[], levelData: WallTreatmentLevelData): THREE.BufferGeometry | null; export declare function createWallExtraSlotMaterials(node: WallNode, shading: RenderShading, sceneMaterials: SceneMaterials): { aSkirting: THREE.Material; bSkirting: THREE.Material; aCrown: THREE.Material; bCrown: THREE.Material; aChairRail: THREE.Material; bChairRail: THREE.Material; }; export declare const WallTreatments: import("react").MemoExoticComponent<({ node, childrenNodes, levelData, materials, }: { node: WallNode; childrenNodes: OpeningLike[]; levelData: WallTreatmentLevelData; materials: Record; }) => import("react").JSX.Element>; export {}; //# sourceMappingURL=treatments.d.ts.map