/**
 * Diffusion map
 */
export default class DiffusionMap {
    /**
     * @param {number} t Power parameter
     * @param {number} rd Reduced dimension
     * @param {'gaussian' | { name: 'gaussian' } | function (number[], number[]): number} [kernel] Kernel name
     */
    constructor(t: number, rd: number, kernel?: "gaussian" | {
        name: "gaussian";
    } | ((arg0: number[], arg1: number[]) => number));
    _t: number;
    _rd: number;
    _k: (x: any, y: any) => number;
    /**
     * Returns reduced values.
     * @param {Array<Array<number>>} x Training data
     * @returns {Array<Array<number>>} Predicted values
     */
    predict(x: Array<Array<number>>): Array<Array<number>>;
}
