import type { ExchangeAdapter } from "../exchanges/index.js"; import type { Condition } from "./config.js"; export interface MarketSnapshot { price: number; high24h: number; low24h: number; volume24h: number; fundingRate: number; volatility24h: number; rsi: number; spreadPct: number; } /** * Calculate RSI from an array of closing prices using Wilder's smoothing method. * @param closes Array of closing prices, oldest first. * @param period RSI period (default 14). * @returns RSI value between 0 and 100, or NaN if insufficient data. */ export declare function calculateRSI(closes: number[], period?: number): number; export declare function getMarketSnapshot(adapter: ExchangeAdapter, symbol: string): Promise; export declare function evaluateCondition(condition: Condition, snapshot: MarketSnapshot, context: { equity: number; startTime: number; peakEquity: number; dailyPnl: number; }): boolean; export declare function evaluateAllConditions(conditions: Condition[], snapshot: MarketSnapshot, context: { equity: number; startTime: number; peakEquity: number; dailyPnl: number; }, mode?: "all" | "any"): boolean;