import { ApiService, AuthService, LoggerService, ExchangeAnalyzer, ExchangeTrader, ExchangeWatcher } from './modules'; import { AbstractExchangeClient, AbstractTradeAlgorithm } from './abstract'; export declare type TradeBotInitOptions = { mode: 'production'; exchangeClient: ExchangeClient; botToken?: string; initAlgorithmsCallback?: (analyzer: ExchangeAnalyzer) => AbstractTradeAlgorithm[]; } | { /** * Option for creation of `TradeBot` instance without running processes under hood. * Used to extract types for api client. */ mode: 'no_setup'; }; export declare class TradeBot { private _exchangeClient; private _analyzer; private _trader; private _watcher; private _api; private _logger; private _auth; get exchangeClient(): ExchangeClient; get analyzer(): ExchangeAnalyzer; get trader(): ExchangeTrader; get watcher(): ExchangeWatcher; get api(): ApiService; get logger(): LoggerService; get auth(): AuthService; constructor(options: TradeBotInitOptions); private setup; }