import { TrendIndicator } from '../../base/Indicator.js'; import type { HighLowClose } from '../../base/Candle.type.js'; export type KeltnerChannelsResult = { lower: number; middle: number; upper: number; }; export type KeltnerChannelsConfig = { atrInterval?: number; emaInterval?: number; multiplier?: number; }; export declare class KeltnerChannels extends TrendIndicator> { #private; readonly inputShape: "high-low-close"; readonly atrInterval: number; readonly emaInterval: number; readonly multiplier: number; constructor({ atrInterval, emaInterval, multiplier }?: KeltnerChannelsConfig); getRequiredInputs(): number; update(candle: HighLowClose, replace: boolean): KeltnerChannelsResult | null; protected calculateSignalState(result?: { lower: number; upper: number; } | null): "BEARISH" | "BULLISH" | "SIDEWAYS" | "UNKNOWN"; }