import * as THREE from 'three'; import type { OrbitControls } from 'three/examples/jsm/controls/OrbitControls'; export declare class FocusManager { private static readonly ANIMATION_DURATION; private static readonly ROTATION_STEP; private static readonly FULL_ROTATION; private static readonly VECTOR_SCALE; private readonly _raycaster; private readonly _tempVector; private readonly _tempVector2; private readonly _tempVector3; private readonly _axis; private readonly _startPosition; private readonly _targetPosition; private readonly _startTarget; private readonly _endTarget; private _isAnimating; private _animationStartTime; private _camera; private _orbit; private readonly _box; private readonly _center; update(): void; focus(selection: Record, findObjectById: (id: string) => THREE.Object3D | undefined, camera: THREE.Camera, orbit: OrbitControls, scene: THREE.Scene): void; private _findSuitablePosition; private _resetCameraAndOrbit; private _allIntersectionsInSelection; private _findIDOfObject; private _startAnimation; private _easeInOutCubic; }