import { Camera, Object3D, Ray, Vector3 } from 'three'; /** * A type definition representing a collection of 3D nodes where each node is identified by a unique string key. */ export type Nodes = { [x: string]: Object3D; }; /** * * A utility class providing helper methods for various operations. */ export declare class Utils { private static readonly _plane; private static readonly _temp; /** * Calculates the intersection point of a ray with a plane in world coordinates. * @param ray - The ray to intersect with the plane. * @param camera - The camera used as a reference for the plane's orientation. * @param distance - The distance from the camera to the plane. * @returns The intersection point as Vector3. */ static getSceneIntersection(ray: Ray, camera: Camera, distance: number): Vector3; /** * Set for all children of the target, the draggable flag to true and a dragTarget. * @param target - The Object3D whose children you want to enable as draggable elements. * @param dragTarget - The Object3D that will act as the drag target for the children. */ static setChildrenDragTarget(target: Object3D, dragTarget: Object3D): void; /** * Computes bounding spheres for child objects within the specified Object3D hierarchy. * @param target - The root Object3D from which to start computing bounding spheres for children. */ static computeBoundingSphereChildren(target: Object3D): void; /** * Retrieves a map of objects in the scene graph (Object3D) starting from a root object. * Each object is mapped using its unique name as the key in the resulting object. * @param target - The root object to begin generating the object map from. * @returns An object containing objects mapped by their names. */ static getNodes(target: Object3D): Nodes; protected static generateNodesFromObject(object: Object3D, nodes: Nodes, nameCollision: { [x: string]: number; }): Nodes; protected static getNodeName(object: Object3D, nameCollision: { [x: string]: number; }): string; } //# sourceMappingURL=Utils.d.ts.map