/**
 * Adaptive Metric Nearest Neighbor
 */
export default class ADAMENN {
    /**
     * @param {number} [k0] The number of neighbors of the test point
     * @param {number} [k1] The number of neighbors in N1 for estimation
     * @param {number} [k2] The size of the neighborhood N2 for each of the k0 neighbors for estimation
     * @param {number} [l] The number of points within the delta intervals
     * @param {number} [k] The number of neighbors in the final nearest neighbor rule
     * @param {number} [c] The positive factor for the exponential weighting scheme
     */
    constructor(k0?: number, k1?: number, k2?: number, l?: number, k?: number, c?: number);
    _k0: number;
    _k1: number;
    _k2: number;
    _l: number;
    _k: number;
    _c: number;
    _itr: number;
    _d(a: any, b: any, w: any): number;
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     * @param {*[]} y Target values
     */
    fit(x: Array<Array<number>>, y: any[]): void;
    _x: number[][];
    _y: any[];
    _classes: any[];
    /**
     * Returns predicted categories.
     * @param {Array<Array<number>>} datas Sample data
     * @returns {*[]} Predicted values
     */
    predict(datas: Array<Array<number>>): any[];
}
