import { THREE } from "@x-viewer/core"; import type { Viewer3d } from "@x-viewer/core"; import type { SceneMaterialSnapshot, SceneMeshSnapshot } from "./SceneMeshSnapshot"; /** Captures geometry clones and local TRS for every drawable mesh under {@link root}. */ export declare function captureSceneMeshSnapshot(root: THREE.Object3D): SceneMeshSnapshot; /** Restores mesh geometry and local TRS from {@link snapshot}. */ export declare function applySceneMeshSnapshot(viewer: Viewer3d, snapshot: SceneMeshSnapshot): boolean; /** Captures material references (cloned) for meshes under {@link root}. */ export declare function captureSceneMaterialSnapshot(root: THREE.Object3D): SceneMaterialSnapshot; /** Restores mesh materials from {@link snapshot}. */ export declare function applySceneMaterialSnapshot(viewer: Viewer3d, snapshot: SceneMaterialSnapshot): boolean;