import { Distance } from '../metrics'; export type IWeightType = 'uniform' | 'distance'; export interface NeighborHit { index: number; distance: number; } export declare function validateFitData(X: number[][], y: number[]): void; export declare function validatePredictData(X: number[][], nFeatures: number): void; export declare function getDistance(metric: Distance.IDistanceType): Distance.IDistance; export declare function getNeighborHits(trainX: number[][], sample: number[], metric: Distance.IDistanceType, p: number): NeighborHit[]; export declare function getRadiusHits(trainX: number[][], sample: number[], radius: number, metric: Distance.IDistanceType, p: number): NeighborHit[]; export declare function weightedAverage(values: number[], weights: number[]): number; export declare function weightedMode(labels: number[], weights: number[]): number; export declare function resolveDistanceWeights(distances: number[]): number[];