import * as THREE from "three"; import { type IIntersectionEngine, RaycasterParameters, SelectionBox } from "@shapediver/viewer.rendering-engine.intersection-engine"; import { type IIntersectionDefinition, type IIntersectionFilter, type IRay } from "@shapediver/viewer.shared.types"; export declare class IntersectionManager implements IIntersectionEngine { private readonly _eventEngine; private readonly _intersectionEngine; private readonly _tree; private static _instance; private _intersectNodes; private constructor(); static get instance(): IntersectionManager; intersect(ray: IRay, viewportId: string, filterCriteria?: IIntersectionFilter[], options?: { rayCasterParams?: THREE.RaycasterParameters; selectionBox?: SelectionBox; }): IIntersectionDefinition[]; /** * Returns the distance to the closest piece of scene geometry hit by the * ray, regardless of whether it has InteractionData. Used to occlude * interactive intersections that are behind solid non-interactive geometry. */ closestSceneGeometryDistance(ray: IRay, viewportId: string, rayCasterParams?: RaycasterParameters): number; private gatherGeometryData; private gatherNodes; private intersectNodes; } //# sourceMappingURL=IntersectionManager.d.ts.map