import { DrawingID, ScgObject } from '@buerli.io/core'; import { Material, Object3D } from 'three'; /** * We traverse recursively over structure tree, starting with object and create THREE objects * for the scene. Each part or assembly will be turned into groups and subgroups. Solids which are children of the * parts will be turned into groups as well. Children of solids will be merged to meshes. Faces of a solid with different color * or transparency will get its own mesh. * @param object root object where we start building the three scene * @param drawingId id of the drawing * @param root the root of the scene * @param result object containing all the current collected nodes, solids, meshes * @param options e.g. meshPerGeometry controls if each geometry element gets a own mesh or if they will be combined/merged */ export declare const createRecursiveScene: (object: ScgObject, drawingId: DrawingID, root: Object3D, result: { nodes: { [key: string]: Object3D; }; materials: { [key: string]: Material; }; }, options?: { meshPerGeometry?: boolean; structureOnly?: boolean; }) => Promise;