export type FFTArrayTypes = number[] | Float32Array | Float64Array;
export declare class FFT {
    readonly size: number;
    private csize;
    private width;
    private table;
    private bitrev;
    private data;
    private out;
    private inv;
    constructor(size: number);
    fromComplexArray(complex: FFTArrayTypes, storage?: FFTArrayTypes): FFTArrayTypes;
    createComplexArray(): Float64Array<ArrayBuffer>;
    toComplexArray(input: FFTArrayTypes, storage?: FFTArrayTypes): FFTArrayTypes;
    completeSpectrum(spectrum: FFTArrayTypes): void;
    transform(out: FFTArrayTypes, data: FFTArrayTypes): void;
    realTransform(out: FFTArrayTypes, data: FFTArrayTypes): void;
    inverseTransform(out: FFTArrayTypes, data: FFTArrayTypes): void;
    private transform4;
    private singleTransform2;
    private singleTransform4;
    private realTransform4;
    private singleRealTransform2;
    private singleRealTransform4;
}
