import type { MovingAverage } from '../../trend/MA/MovingAverage.js';
import type { MovingAverageTypes } from '../../trend/MA/MovingAverageTypes.js';
import type { HighLow } from '../../base/Candle.type.js';
import { TrendIndicatorSeries } from '../../base/Indicator.js';
export declare class AO extends TrendIndicatorSeries<HighLow<number>> {
    readonly long: MovingAverage;
    readonly short: MovingAverage;
    readonly shortInterval: number;
    readonly longInterval: number;
    constructor(shortInterval: number, longInterval: number, SmoothingIndicator?: MovingAverageTypes);
    getRequiredInputs(): number;
    update({ high, low }: HighLow<number>, replace: boolean): number | null;
    protected calculateSignalState(result: number | null | undefined): "BEARISH" | "BULLISH" | "SIDEWAYS" | "UNKNOWN";
}
