export type FilterSettings = { sps: number; useSMA4?: boolean; useNotch50?: boolean; useNotch60?: boolean; useLowpass?: boolean; lowpassHz?: number; useBandpass?: boolean; bandpassLower?: number; bandpassUpper?: number; useDCBlock?: boolean; DCBresonance?: number; useScaling?: boolean; scalar?: number; trimOutliers?: boolean; outlierTolerance?: number; }; export declare class BiquadChannelFilterer { idx: number; sps: number; bandpassLower: number; bandpassUpper: number; useSMA4: boolean; last4: number[]; filtered: number; trimOutliers: boolean; outlierTolerance: number; useNotch50: boolean; useNotch60: boolean; useLowpass: boolean; lowpassHz: number; useBandpass: boolean; useDCBlock: boolean; DCBresonance: number; useScaling: boolean; scalar: number; notch50: any; notch60: any; lp1: any; bp1: any; dcb: any; constructor(options?: FilterSettings); reset(sps?: number): void; setBandpass(bandpassLower?: number, bandpassUpper?: number, sps?: number): void; apply(latestData?: number): number; } export declare class Biquad { type: string; freq: number; sps: number; Q: number; dbGain: number; a0: number; a1: number; a2: number; b0: number; b1: number; b2: number; x1: number; x2: number; y1: number; y2: number; constructor(type: 'lowpass' | 'highpass' | 'bandpass' | 'notch' | 'peak' | 'lowshelf' | 'highshelf', freq: number, sps: number, Q?: number, dbGain?: number); ad: any; lowpass(A: any, sn: any, cs: any, alpha: any, beta: any): void; highpass(A: any, sn: any, cs: any, alpha: any, beta: any): void; bandpass(A: any, sn: any, cs: any, alpha: any, beta: any): void; notch(A: any, sn: any, cs: any, alpha: any, beta: any): void; peak(A: any, sn: any, cs: any, alpha: any, beta: any): void; lowshelf(A: any, sn: any, cs: any, alpha: any, beta: any): void; highshelf(A: any, sn: any, cs: any, alpha: any, beta: any): void; applyFilter(signal_step: any): number; zResult(freq: any): number; static calcCenterFrequency(freqStart: any, freqEnd: any): number; static calcBandwidth(freqStart: any, freqEnd: any): number; static calcBandpassQ(frequency: any, bandwidth: any, resonance?: number): number; static calcNotchQ(frequency: any, bandwidth: any, resonance?: number): number; } export declare class DCBlocker { r: number; x1: number; x2: number; y1: number; y2: number; constructor(r?: number); applyFilter(signal_step: any): number; } export declare const makeNotchFilter: (frequency: any, sps: any, bandwidth: any) => Biquad; export declare const makeBandpassFilter: (freqStart: any, freqEnd: any, sps: any, resonance?: number) => Biquad;