import type { ExchangeAdapter } from "../exchanges/index.js"; import type { BotConfig } from "./config.js"; import "./strategies/grid-strategy.js"; import "./strategies/dca-strategy.js"; import "./strategies/funding-arb-strategy.js"; import "./strategies/simple-mm.js"; import "./strategies/engine-mm.js"; import "./strategies/avellaneda-mm.js"; import "./strategies/momentum-breakout.js"; import "./strategies/mean-reversion.js"; import "./strategies/aggressive-taker.js"; import "./strategies/funding-arb-v2.js"; import "./strategies/basis-arb.js"; import "./strategies/regime-mm.js"; import "./strategies/grid-mm.js"; import "./strategies/liquidation-mm.js"; import "./strategies/hedge-agent.js"; import "./strategies/rfq-agent.js"; import "./strategies/claude-agent.js"; import "./strategies/apex-strategy.js"; import "./strategies/funding-auto.js"; import "./strategies/spot-perp-arb-strategy.js"; export type BotLog = (msg: string) => void; export type BotOutputMode = "tui" | "json" | "headless"; export declare function runBot(adapter: ExchangeAdapter, config: BotConfig, jobId?: string, log?: BotLog, extraAdapters?: Map, // for funding-arb (multi-exchange) mode?: BotOutputMode): Promise<{ fills: number; totalPnl: number; runtime: number; }>;