/** * @file Spatial Hash * @author Alexander Rose * @private */ import { Box3 } from 'three'; export declare type Positions = { x: ArrayLike; y: ArrayLike; z: ArrayLike; count?: number; }; export default class SpatialHash { exp: number; minX: number; minY: number; minZ: number; boundX: number; boundY: number; boundZ: number; grid: Uint32Array; bucketCount: Uint16Array; bucketOffset: Uint32Array; bucketArray: Int32Array; xArray: ArrayLike; yArray: ArrayLike; zArray: ArrayLike; constructor(positions: Positions, boundingBox?: Box3); within(x: number, y: number, z: number, r: number): number[]; eachWithin(x: number, y: number, z: number, r: number, callback: (atomIndex: number, dSq: number) => void): void; }