/**
 * Independent component analysis
 */
export default class ICA {
    /**
     * @param {number | null} [rd] Reduced dimension
     */
    constructor(rd?: number | null);
    _w: Matrix<number>;
    _alpha: number;
    _rd: number;
    /**
     * Fit model.
     * @param {Array<Array<number>>} x Training data
     */
    fit(x: Array<Array<number>>): void;
    /**
     * Returns reduced datas.
     * @param {Array<Array<number>>} x Training data
     * @returns {Array<Array<number>>} Predicted values
     */
    predict(x: Array<Array<number>>): Array<Array<number>>;
}
import Matrix from '../util/matrix.js';
