import { Model3d, type THREE, type Viewer3d } from "@x-viewer/core"; import type { SceneNodeSnapshot } from "./SceneNodeSnapshot"; export declare function isSceneModelRoot(object: THREE.Object3D): boolean; /** Finds the {@link Model3d} that owns {@link object} in the scene graph. */ export declare function findModel3dOwning(viewer: Viewer3d, object: THREE.Object3D): Model3d | undefined; /** @deprecated Use {@link findModel3dOwning}. */ export declare function findModel3dForSceneRoot(viewer: Viewer3d, object: THREE.Object3D): Model3d | undefined; /** Whether deleting {@link object} should remove the entire loaded model (tree root / model wrapper). */ export declare function isWholeModelDeleteTarget(object: THREE.Object3D, model: Model3d): boolean; /** Builds a snapshot for undoing removal of a non-model-root node. */ export declare function createSceneNodeSnapshot(object: THREE.Object3D): SceneNodeSnapshot | undefined;