/**
 * Ridge regressioin
 */
export class Ridge {
    /**
     * @param {number} [lambda] Regularization strength
     */
    constructor(lambda?: number);
    _w: any;
    _lambda: number;
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     * @param {Array<Array<number>>} y Target values
     */
    fit(x: Array<Array<number>>, y: Array<Array<number>>): void;
    /**
     * Returns predicted values.
     * @param {Array<Array<number>>} x Sample data
     * @returns {Array<Array<number>>} Predicted values
     */
    predict(x: Array<Array<number>>): Array<Array<number>>;
    /**
     * Returns importances of the features.
     * @returns {number[]} Importances
     */
    importance(): number[];
}
/**
 * Multiclass ridge regressioin
 */
export class MulticlassRidge {
    /**
     * @param {number} [lambda] Regularization strength
     */
    constructor(lambda?: number);
    _w: any;
    _lambda: number;
    _classes: any[];
    /**
     * Category list
     * @type {*[]}
     */
    get categories(): any[];
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     * @param {*[]} y Target values
     */
    fit(x: Array<Array<number>>, y: any[]): void;
    /**
     * Returns predicted values.
     * @param {Array<Array<number>>} x Sample data
     * @returns {*[]} Predicted values
     */
    predict(x: Array<Array<number>>): any[];
    /**
     * Returns importances of the features.
     * @returns {number[][]} Importances
     */
    importance(): number[][];
}
/**
 * Kernel ridge regression
 */
export class KernelRidge {
    /**
     * @param {number} [lambda] Regularization strength
     * @param {'gaussian' | { name: 'gaussian', s?: number } | function (number[], number[]): number} [kernel] Kernel name
     */
    constructor(lambda?: number, kernel?: "gaussian" | {
        name: "gaussian";
        s?: number;
    } | ((arg0: number[], arg1: number[]) => number));
    _w: Matrix<number>;
    _x: any[];
    _lambda: number;
    _kernel: (a: any, b: any) => any;
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     * @param {Array<Array<number>>} y Target values
     */
    fit(x: Array<Array<number>>, y: Array<Array<number>>): void;
    /**
     * Returns predicted values.
     * @param {Array<Array<number>>} x Sample data
     * @returns {Array<Array<number>>} Predicted values
     */
    predict(x: Array<Array<number>>): Array<Array<number>>;
    /**
     * Returns importances of the features.
     * @returns {number[]} Importances
     */
    importance(): number[];
}
import Matrix from '../util/matrix.js';
