/**
 * Multibin trainable linear unit layer
 */
export default class MultibinTrainableLinearUnitLayer extends Layer {
    /**
     * @param {object} config config
     * @param {number | number[]} [config.a] a
     * @param {number | number[]} [config.b] b
     * @param {number | number[]} [config.c] c
     * @param {number} [config.k] Number of units
     */
    constructor({ a, b, c, k, ...rest }: {
        a?: number | number[];
        b?: number | number[];
        c?: number | number[];
        k?: number;
    });
    _k: number;
    _a: any[];
    _b: any[];
    _c: number | any[];
    calc(x: any): any;
    _i: any;
    grad(bo: any): any;
    _bo: any;
    update(optimizer: any): void;
    toObject(): {
        type: string;
        a: any[];
        b: any[];
        c: number | any[];
        k: number;
    };
}
import Layer from './base.js';
