/**
 * Online gradient descent
 */
export default class OnlineGradientDescent {
    /**
     * @param {number} [c] Tuning parameter
     * @param {'zero_one'} [loss] Loss type name
     */
    constructor(c?: number, loss?: 'zero_one');
    _c: number;
    _w: any[];
    _w0: number;
    _t: number;
    _loss: (t: any, y: any) => 0 | 1;
    /**
     * Update model parameters with one data.
     * @param {number[]} x Training data
     * @param {1 | -1} y Target value
     */
    update(x: number[], y: 1 | -1): void;
    /**
     * Fit model parameters.
     * @param {Array<Array<number>>} x Training data
     * @param {Array<1 | -1>} y Target values
     */
    fit(x: Array<Array<number>>, y: Array<1 | -1>): void;
    /**
     * Returns predicted datas.
     * @param {Array<Array<number>>} data Sample data
     * @returns {(1 | -1)[]} Predicted values
     */
    predict(data: Array<Array<number>>): (1 | -1)[];
}
