/**
 * Primal Estimated sub-GrAdientSOlver for SVM
 */
export default class Pegasos {
    /**
     * @param {number} rate Learning rate
     * @param {number} [k] Batch size
     */
    constructor(rate: number, k?: number);
    _r: number;
    _k: number;
    _itr: number;
    _do_projection: boolean;
    /**
     * Initialize this model.
     * @param {Array<Array<number>>} train_x Training data
     * @param {Array<1 | -1>} train_y Target values
     */
    init(train_x: Array<Array<number>>, train_y: Array<1 | -1>): void;
    _x: number[][];
    _y: (1 | -1)[];
    _t: number;
    _w: any;
    _b: any;
    /**
     * Update model parameters with some data.
     * @param {Array<Array<number>>} x Training data
     * @param {Array<1 | -1>} y Target value
     */
    update(x: Array<Array<number>>, y: Array<1 | -1>): void;
    /**
     * Fit model parameters.
     */
    fit(): void;
    /**
     * Returns predicted values.
     * @param {Array<Array<number>>} data Sample data
     * @returns {(1 | -1)[]} Predicted values
     */
    predict(data: Array<Array<number>>): (1 | -1)[];
}
