import { TechnicalIndicator, TradingSignal } from '../../base/Indicator.js';
import type { BandsResult } from '../../base/BandsResult.type.js';
export declare class BollingerBands extends TechnicalIndicator<BandsResult, number> {
    #private;
    readonly prices: number[];
    readonly interval: number;
    readonly deviationMultiplier: number;
    constructor(interval: number, deviationMultiplier?: number);
    getRequiredInputs(): number;
    update(price: number, replace: boolean): {
        lower: number;
        middle: number;
        upper: number;
    } | null;
    protected calculateSignal(result?: BandsResult | null, price?: number): "BEARISH" | "BULLISH" | "SIDEWAYS" | "UNKNOWN";
    getSignal(): {
        state: (typeof TradingSignal)[keyof typeof TradingSignal];
        hasChanged: boolean;
    };
}
