import { Object3D, Raycaster, Mesh } from 'three';
import { MeshBVH, BufferGeometryWithBVH } from './three-mesh-bvh';
export interface ThreeMeshBVHHelperOptions {
    strategy: number;
    maxLeafTris: number;
    maxDepth: number;
    verbose: boolean;
}
export interface MeshWithBVHGeometry extends Mesh {
    geometry: BufferGeometryWithBVH;
}
export declare class ThreeMeshBVHHelper {
    static assignBVH(mesh: Mesh, bvh: MeshBVH): void;
    static assignDefaultBVHIfNone(mesh: Mesh): void;
    static createBVH(mesh: Mesh, options: ThreeMeshBVHHelperOptions): MeshBVH;
    private static defaultBVH;
    static copyBVH(meshDest: Mesh, meshSrc: Object3D): void;
    static updateRaycaster(raycaster: Raycaster): void;
}
