/** * Copyright (c) 2018-2024 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal * @author Alexander Rose */ import { Box3D } from '../primitives/box3d.js'; import { Sphere3D } from '../primitives/sphere3d.js'; export interface Result { count: number; indices: T[]; squaredDistances: number[]; } export declare namespace Result { function add(result: Result, index: T, distSq: number): void; function reset(result: Result): void; function create(): Result; function copy(out: Result, result: Result): Result; } export interface Lookup3D { find(x: number, y: number, z: number, radius: number, result?: Result): Result; nearest(x: number, y: number, z: number, k: number, stopIf?: Function, result?: Result): Result; check(x: number, y: number, z: number, radius: number): boolean; approxNearest(x: number, y: number, z: number, radius: number, result?: Result): Result; readonly boundary: { readonly box: Box3D; readonly sphere: Sphere3D; }; /** transient result */ readonly result: Result; }