/**
 * Self-Organizing Map
 */
export default class SOM {
    /**
     * @param {number} input_size Input size
     * @param {number} output_size Output size
     * @param {number} [resolution] Resolution of output
     */
    constructor(input_size: number, output_size: number, resolution?: number);
    in_size: number;
    out_size: number;
    resolution: number;
    _sigma0: number;
    _init_method: string;
    _epoch: number;
    _z: any[][];
    _y: number[][];
    get _sigma(): number;
    _z_distance(i: any, j: any): number;
    _find_near_idx(x: any): number[];
    /**
     * Fit model.
     * @param {Array<Array<number>>} data Training data
     */
    fit(data: Array<Array<number>>): void;
    /**
     * Returns predicted categories.
     * @param {Array<Array<number>>} x Sample data
     * @returns {Array<Array<number>>} Predicted values
     */
    predict(x: Array<Array<number>>): Array<Array<number>>;
}
