/**
 * Discriminant adaptive nearest neighbor
 */
export default class DiscriminantAdaptiveNearestNeighbor {
    /**
     * @param {number} [k] Number of neighborhoods
     * @param {number} [iteration] Iteration count
     */
    constructor(k?: number, iteration?: number);
    _k: number;
    _iteration: number;
    _e: number;
    _phi: (d: any, h: any) => number;
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     * @param {*[]} y Target values
     */
    fit(x: Array<Array<number>>, y: any[]): void;
    _x: Matrix<number[]>;
    _y: any[];
    _c: any[];
    _mean: Matrix<number>;
    _cmean: any[];
    /**
     * Returns predicted categories.
     * @param {Array<Array<number>>} data Sample data
     * @returns {*[]} Predicted values
     */
    predict(data: Array<Array<number>>): any[];
}
import Matrix from '../util/matrix.js';
