import type { Axios } from 'axios'; import type { Store } from '../../store/store.interface'; import { OrderSide, OrderType } from '../../types'; import type { Balance, Candle, ExchangeOptions, Market, OHLCVOptions, Order, OrderBook, PlaceOrderOpts, Position, Ticker } from '../../types'; import { BaseExchange } from '../base'; import { BitgetPrivateWebsocket } from './bitget.ws-private'; import { BitgetPublicWebsocket } from './bitget.ws-public'; export declare class BitgetExchange extends BaseExchange { name: string; xhr: Axios; unlimitedXHR: Axios; publicWebsocket: BitgetPublicWebsocket; privateWebsocket: BitgetPrivateWebsocket; private leverageHash; constructor(opts: ExchangeOptions, store: Store); get apiProductType(): "sumcbl" | "umcbl"; get apiMarginCoin(): "USDT" | "SUSDT"; getAccount: () => Promise<{ userId: string; subId: string | null; affiliateId: string | null; }>; validateAccount: () => Promise; dispose: () => void; start: () => Promise; tick: () => Promise; fetchBalance: () => Promise; fetchPositions: () => Promise; fetchMarkets: () => Promise; fetchCurrentLeverage: () => Promise; fetchLeverageBrackets: () => Promise; fetchTickers: () => Promise; fetchOrders: () => Promise<{ id: string; parentId?: string | undefined; status: import("../../types").OrderStatus; symbol: string; type: OrderType; side: OrderSide; price: number; amount: number; filled: number; remaining: number; reduceOnly: boolean; }[]>; fetchNormalOrders: () => Promise<{ id: string; parentId?: string | undefined; status: import("../../types").OrderStatus; symbol: string; type: OrderType; side: OrderSide; price: number; amount: number; filled: number; remaining: number; reduceOnly: boolean; }[]>; fetchAlgoOrders: () => Promise<{ id: string; parentId?: string | undefined; status: import("../../types").OrderStatus; symbol: string; type: OrderType; side: OrderSide; price: number; amount: number; filled: number; remaining: number; reduceOnly: boolean; }[]>; fetchTrailingStopOrders: () => Promise<{ id: string; parentId?: string | undefined; status: import("../../types").OrderStatus; symbol: string; type: OrderType; side: OrderSide; price: number; amount: number; filled: number; remaining: number; reduceOnly: boolean; }[]>; fetchOHLCV: (opts: OHLCVOptions) => Promise; listenOHLCV: (opts: OHLCVOptions, callback: (candle: Candle) => void) => () => void; listenOrderBook: (symbol: string, callback: (orderBook: OrderBook) => void) => () => void; cancelAllOrders: () => Promise; cancelOrders: (orders: Order[]) => Promise; cancelNormalOrders: (orders: Order[]) => Promise; cancelAlgoOrders: (orders: Order[]) => Promise; cancelSymbolOrders: (symbol: string) => Promise; placeOrder: (opts: PlaceOrderOpts) => Promise; placeOrders: (orders: PlaceOrderOpts[]) => Promise; formatCreateOrder: (opts: PlaceOrderOpts) => Record[]; formatAlgoOrder: (opts: PlaceOrderOpts) => Record; placeOrderBatch: (payloads: Array>) => Promise; placeAlgoOrders: (payloads: Array>) => Promise; setLeverage: (symbol: string, inputLeverage: number) => Promise; changePositionMode: (hedged: boolean) => Promise; mapOrder: (o: Record) => { id: string; parentId?: string | undefined; status: import("../../types").OrderStatus; symbol: string; type: OrderType; side: OrderSide; price: number; amount: number; filled: number; remaining: number; reduceOnly: boolean; }; private getOrderSide; private getAlgoOrderSide; private isAlgoOrder; private getOrderPlanType; }