import { AxiosRequestConfig } from 'axios'; import { BasicAssetPaginatedParams, BasicAssetParam, BasicSymbolParam, BinanceBaseUrlKey, CancelOCOParams, CancelOrderParams, ExchangeSymbol, GetAllOrdersParams, GetOrderParams, HistoricalTradesParams, KlinesParams, Kline, NewOCOParams, OrderBookParams, RecentTradesParams, SymbolFromPaginatedRequestFromId, SymbolPrice, RowsWithTotal, CoinStartEndLimit, SymbolArrayParam } from './types/shared'; import { AccountInformation, AddBSwapLiquidityParams, AggregateTrade, AllCoinsInformationResponse, ApiKeyBrokerSubAccount, APIPermissions, APITradingStatus, AssetDetail, BasicBSwapResp, BasicFromPaginatedParams, BasicFuturesSubAccountParams, BasicMarginAssetParams, BasicSubAccount, BasicTimeRangeParam, BrokerSubAccount, BrokerSubAccountHistory, BSwapLiquidity, BSwapOperations, BSwapOperationsParams, CancelSpotOrderResult, ChangePermissionApiKeyBrokerSubAccountParams, ChangePermissionApiKeyBrokerSubAccountResponse, ConvertDustParams, CreateApiKeyBrokerSubAccountParams, CreateApiKeyBrokerSubAccountResponse, CreateBrokerSubAccountParams, CreateSubAccountParams, CrossMarginAccountTransferParams, CurrentAvgPrice, DailyAccountSnapshot, DailyAccountSnapshotParams, DailyChangeStatistic, DeleteApiKeyBrokerSubAccountParams, DepositAddressParams, DepositAddressResponse, DepositHistory, DepositHistoryParams, DustConversion, DustInfo, DustLog, EnableFuturesBrokerSubAccountParams, EnableFuturesBrokerSubAccountResponse, EnableMarginApiKeyBrokerSubAccountParams, EnableMarginBrokerSubAccountParams, EnableMarginBrokerSubAccountResponse, EnableOrDisableIPRestrictionForSubAccountParams, EnableUniversalTransferApiKeyBrokerSubAccountParams, EnableUniversalTransferApiKeyBrokerSubAccountResponse, ExchangeInfo, ExchangeInfoParams, FixedAndActivityProjectParams, FixedAndActivityProjectPositionParams, FlexibleSavingBasicParams, FuturesPositionRisk, GetApiKeyBrokerSubAccountParams, GetBrokerInfoResponse, GetBrokerSubAccountParams, GetBrokerSubAccountHistoryParams, GetBrokerSubAccountDepositHistoryParams, GetOCOParams, GetUniversalTransferBrokerParams, IsolatedMarginAccountInfo, IsolatedMarginAccountTransferParams, LeftDailyPurchaseQuotaFlexibleProductResponse, MarginAccountLoanParams, MarginRecordResponse, MarginTransactionResponse, NewSpotOrderParams, OrderBookResponse, OrderResponseACK, OrderResponseFull, OrderResponseResult, TransferBrokerSubAccountParams, TransferBrokerSubAccount, PurchaseFlexibleProductParams, PurchaseFlexibleProductResponse, PurchaseRecordParams, QueryCrossMarginAccountDetailsParams, QueryCrossMarginPairParams, QueryCrossMarginPairResponse, QueryMarginAssetParams, QueryMarginAssetResponse, QueryMarginPriceIndexResponse, QueryMarginRecordParams, QueryMaxBorrowResponse, QueryMaxTransferOutAmountResponse, RawAccountTrade, RawTrade, RedeemFlexibleProductParams, RemoveBSwapLiquidityParams, SpotOrder, StakingBasicParams, StakingHistory, StakingHistoryParams, StakingPersonalLeftQuota, StakingProduct, StakingProductPosition, StakingProductType, SubAccountAddOrDeleteIPList, SubAccountAssetDetails, SubAccountAssets, SubAccountAssetsParams, SubAccountCOINMDetail, SubAccountCOINMPositionRisk, SubAccountCOINMSummary, SubAccountDepositAddress, SubAccountDepositAddressParams, SubAccountDepositHistoryParams, SubAccountEnableFutures, SubAccountEnableLeverageToken, SubAccountEnableMargin, SubAccountFuturesAccountDetail, SubAccountFuturesAccountSummary, SubAccountFuturesAssetTransfer, SubAccountFuturesAssetTransferHistory, SubAccountFuturesAssetTransferHistoryParams, SubAccountFuturesAssetTransferParams, SubAccountListParams, SubAccountListResponse, SubAccountMarginAccountDetail, SubAccountnableOrDisableIPRestriction, SubAccountsMarginAccountSummary, SubAccountSpotAssetsSummary, SubAccountSpotAssetsSummaryParams, SubAccountSpotAssetTransferHistory, SubAccountSpotAssetTransferHistoryParams, SubAccountStatus, SubAccountSummaryOnFuturesAccountV2Params, SubAccountTransfer, SubAccountTransferHistory, SubAccountTransferHistoryParams, SubAccountTransferParams, SubAccountTransferToMasterParams, SubAccountTransferToSameMasterParams, SubAccountUniversalTransfer, SubAccountUniversalTransferHistoryParams, SubAccountUniversalTransferHistoryResponse, SubAccountUniversalTransferParams, SubAccountUSDMDetail, SubAccountUSDMPositionRisk, SubAccountUSDMSummary, SymbolOrderBookTicker, SymbolTradeFee, SystemStatusResponse, UniversalTransferBrokerParams, UniversalTransferHistoryParams, UniversalTransferParams, VirtualSubAccount, WithdrawAssetsFromManagedSubAccountParams, WithdrawHistory, WithdrawHistoryParams, WithdrawParams, NewFutureAccountTransferParams, GetFutureAccountTransferHistoryParams, FutureAccountTransfer, GetLoanCoinPaginatedHistoryParams, SubAccountDepositHistoryList, ConvertQuoteRequestParams, GetConvertTradeHistoryParams, GetOrderStatusParams, EnableConvertSubAccountParams, AcceptQuoteRequestParams, ReplaceSpotOrderParams, ReplaceSpotOrderResultSuccess, NewSpotSOROrderParams, SOROrderResponseFull, SORTestOrderResponse } from './types/spot'; import { RestClientOptions } from './util/requestUtils'; import BaseRestClient from './util/BaseRestClient'; export declare class MainClient extends BaseRestClient { constructor(restClientOptions?: RestClientOptions, requestOptions?: AxiosRequestConfig); /** * Abstraction required by each client to aid with time sync / drift handling */ getServerTime(baseUrlKeyOverride?: BinanceBaseUrlKey): Promise; /** * * Wallet Endpoints * **/ getSystemStatus(): Promise; getBalances(): Promise; getDailyAccountSnapshot(params: DailyAccountSnapshotParams): Promise; disableFastWithdrawSwitch(): Promise<{}>; enableFastWithdrawSwitch(): Promise<{}>; withdraw(params: WithdrawParams): Promise<{ id: string; }>; getDepositHistory(params?: DepositHistoryParams): Promise; getWithdrawHistory(params?: WithdrawHistoryParams): Promise; getDepositAddress(params: DepositAddressParams): Promise; getAccountStatus(): Promise<{ data: string; }>; getDustLog(params?: BasicTimeRangeParam): Promise; convertDustToBnb(params: ConvertDustParams): Promise; getDust(): Promise; getAssetDividendRecord(params?: BasicAssetPaginatedParams): Promise; getAssetDetail(params?: Partial): Promise>; getTradeFee(params?: Partial): Promise; submitUniversalTransfer(params: UniversalTransferParams): Promise<{ tranId: number; }>; getUniversalTransferHistory(params: UniversalTransferHistoryParams): Promise; getApiTradingStatus(): Promise; getApiKeyPermissions(): Promise; acceptQuoteRequest(params: AcceptQuoteRequestParams): Promise; enableConvertSubAccount(params: EnableConvertSubAccountParams): Promise; convertQuoteRequest(params: ConvertQuoteRequestParams): Promise; getOrderStatus(params: GetOrderStatusParams): Promise; getConvertTradeHistory(params: GetConvertTradeHistoryParams): Promise; /** * * Sub-Account Endpoints * **/ createVirtualSubAccount(params: CreateSubAccountParams): Promise; getSubAccountList(params?: SubAccountListParams): Promise; getSubAccountSpotAssetTransferHistory(params?: SubAccountSpotAssetTransferHistoryParams): Promise; getSubAccountFuturesAssetTransferHistory(params: SubAccountFuturesAssetTransferHistoryParams): Promise; subAccountFuturesAssetTransfer(params: SubAccountFuturesAssetTransferParams): Promise; getSubAccountAssets(params: SubAccountAssetsParams): Promise; getSubAccountSpotAssetsSummary(params?: SubAccountSpotAssetsSummaryParams): Promise; getSubAccountDepositAddress(params: SubAccountDepositAddressParams): Promise; getSubAccountDepositHistory(params: SubAccountDepositHistoryParams): Promise; getSubAccountStatusOnMarginOrFutures(params?: { email?: string; }): Promise; subAccountEnableMargin(email: string): Promise; getSubAccountDetailOnMarginAccount(email: string): Promise; getSubAccountsSummaryOfMarginAccount(): Promise; subAccountEnableFutures(email: string): Promise; getSubAccountFuturesAccountDetail(email: string): Promise; getSubAccountFuturesAccountSummary(): Promise; getSubAccountFuturesPositionRisk(email: string): Promise; subAccountFuturesTransfer(params: SubAccountTransferParams): Promise; subAccountMarginTransfer(params: SubAccountTransferParams): Promise; subAccountTransferToSameMaster(params: SubAccountTransferToSameMasterParams): Promise; subAccountTransferToMaster(params: SubAccountTransferToMasterParams): Promise; subAccountTransferHistory(params?: SubAccountTransferHistoryParams): Promise; subAccountUniversalTransfer(params: SubAccountUniversalTransferParams): Promise; getSubAccountUniversalTransferHistory(params?: SubAccountUniversalTransferHistoryParams): Promise; getSubAccountDetailOnFuturesAccountV2(params: BasicFuturesSubAccountParams): Promise; getSubAccountSummaryOnFuturesAccountV2(params: SubAccountSummaryOnFuturesAccountV2Params): Promise; getSubAccountFuturesPositionRiskV2(params: BasicFuturesSubAccountParams): Promise; subAccountEnableLeverageToken(params: SubAccountEnableLeverageToken): Promise; subAccountEnableOrDisableIPRestriction(params: EnableOrDisableIPRestrictionForSubAccountParams): Promise; subAccountAddIPList(params: SubAccountnableOrDisableIPRestriction): Promise; getSubAccountIPRestriction(params: BasicSubAccount): Promise; subAccountDeleteIPList(params: SubAccountnableOrDisableIPRestriction): Promise; depositAssetsIntoManagedSubAccount(params: SubAccountTransferToSameMasterParams): Promise; getManagedSubAccountAssetDetails(email: string): Promise; withdrawAssetsFromManagedSubAccount(params: WithdrawAssetsFromManagedSubAccountParams): Promise; /** * Broker Endpoints */ getBrokerIfNewSpotUser(): Promise<{ rebateWorking: boolean; ifNewUser: boolean; }>; getBrokerSubAccountDepositHistory(params?: GetBrokerSubAccountDepositHistoryParams): Promise; getBrokerUserCustomisedId(market: 'spot' | 'futures'): import("./util/requestUtils").GenericAPIResponse; createBrokerSubAccount(params: CreateBrokerSubAccountParams): Promise; getBrokerSubAccountHistory(params: GetBrokerSubAccountHistoryParams): Promise; getBrokerSubAccount(params: GetBrokerSubAccountParams): Promise; getApiKeyBrokerSubAccount(params: GetApiKeyBrokerSubAccountParams): Promise; createApiKeyBrokerSubAccount(params: CreateApiKeyBrokerSubAccountParams): Promise; deleteApiKeyBrokerSubAccount(params: DeleteApiKeyBrokerSubAccountParams): Promise<{}>; changePermissionApiKeyBrokerSubAccount(params: ChangePermissionApiKeyBrokerSubAccountParams): Promise; changeComissionBrokerSubAccount(params: ChangePermissionApiKeyBrokerSubAccountParams): Promise; enableUniversalTransferApiKeyBrokerSubAccount(params: EnableUniversalTransferApiKeyBrokerSubAccountParams): Promise; enableMarginBrokerSubAccount(params: EnableMarginBrokerSubAccountParams): Promise; enableFuturesBrokerSubAccount(params: EnableFuturesBrokerSubAccountParams): Promise; enableMarginApiKeyBrokerSubAccount(params: EnableMarginApiKeyBrokerSubAccountParams): Promise; transferBrokerSubAccount(params: TransferBrokerSubAccountParams): Promise; universalTransferBroker(params: UniversalTransferBrokerParams): Promise; getUniversalTransferBroker(params: GetUniversalTransferBrokerParams): Promise; getBrokerInfo(): Promise; getBrokerSpotRebateHistory(days: 7 | 30, customerId?: string): import("./util/requestUtils").GenericAPIResponse | undefined; /** * * Market Data Endpoints * **/ testConnectivity(): Promise<{}>; getExchangeInfo(params?: ExchangeInfoParams): Promise; getOrderBook(params: OrderBookParams): Promise; getRecentTrades(params: RecentTradesParams): Promise; getHistoricalTrades(params: HistoricalTradesParams): Promise; getAggregateTrades(params: SymbolFromPaginatedRequestFromId): Promise; getKlines(params: KlinesParams): Promise; getAvgPrice(params: BasicSymbolParam): Promise; get24hrChangeStatististics(params: BasicSymbolParam): Promise; get24hrChangeStatististics(params?: SymbolArrayParam): Promise; getSymbolPriceTicker(params?: Partial): Promise; getSymbolOrderBookTicker(params?: Partial): Promise; /** * * Spot Account/Trade Endpoints * **/ testNewOrder(params: NewSpotOrderParams): Promise<{}>; replaceOrder(params: ReplaceSpotOrderParams): Promise; submitNewOrder(params: NewSpotOrderParams): Promise; cancelOrder(params: CancelOrderParams): Promise; cancelAllSymbolOrders(params: BasicSymbolParam): Promise; getOrder(params: GetOrderParams): Promise; getOpenOrders(params?: Partial): Promise; getAllOrders(params: GetAllOrdersParams): Promise; submitNewOCO(params: NewOCOParams): Promise; cancelOCO(params: CancelOCOParams): Promise; getOCO(params?: GetOCOParams): Promise; getAllOCO(params?: BasicFromPaginatedParams): Promise; /** * Query open OCO */ getAllOpenOCO(): Promise; /** * Places an order using smart order routing (SOR). */ submitNewSOROrder(params: NewSpotSOROrderParams): Promise; /** * Test new order creation and signature/recvWindow using smart order routing (SOR). * Creates and validates a new order but does not send it into the matching engine. */ testNewSOROrder(params: NewSpotSOROrderParams & { computeCommissionRates?: boolean; }): Promise<{} | SORTestOrderResponse>; /** * * * Spot Account Endpoints * * */ /** * Get current account information */ getAccountInformation(): Promise; getAccountTradeList(params: SymbolFromPaginatedRequestFromId & { orderId?: number; }): Promise; /** * * Margin Account/Trade Endpoints * **/ crossMarginAccountTransfer(params: CrossMarginAccountTransferParams): Promise; marginAccountBorrow(params: MarginAccountLoanParams): Promise; marginAccountRepay(params: MarginAccountLoanParams): Promise; queryMarginAsset(params: QueryMarginAssetParams): Promise; queryCrossMarginPair(params: QueryCrossMarginPairParams): Promise; getAllMarginAssets(): Promise; getAllCrossMarginPairs(): Promise; queryMarginPriceIndex(params: BasicSymbolParam): Promise; marginAccountNewOrder(params: NewSpotOrderParams): Promise; marginAccountCancelOrder(params: CancelOrderParams): Promise; marginAccountCancelOpenOrders(params: BasicSymbolParam): Promise; queryLoanRecord(params: QueryMarginRecordParams): Promise; queryRepayRecord(params: QueryMarginRecordParams): Promise; queryCrossMarginAccountDetails(): Promise; queryMarginAccountOrder(params: GetOrderParams): Promise; queryMarginAccountOpenOrders(params: BasicSymbolParam): Promise; queryMarginAccountAllOrders(params: GetAllOrdersParams): Promise; marginAccountNewOCO(params: NewOCOParams): Promise; marginAccountCancelOCO(params: CancelOCOParams): Promise; queryMarginAccountOCO(params: GetOCOParams): Promise; queryMaxBorrow(params: BasicMarginAssetParams): Promise; queryMaxTransferOutAmount(params: BasicMarginAssetParams): Promise; isolatedMarginAccountTransfer(params: IsolatedMarginAccountTransferParams): Promise; getIsolatedMarginAccountInfo(params?: { symbols?: string; }): Promise; /** * * User Data Stream Endpoints * **/ getSpotUserDataListenKey(): Promise<{ listenKey: string; }>; keepAliveSpotUserDataListenKey(listenKey: string): Promise<{}>; closeSpotUserDataListenKey(listenKey: string): Promise<{}>; getMarginUserDataListenKey(): Promise<{ listenKey: string; }>; keepAliveMarginUserDataListenKey(listenKey: string): Promise<{}>; closeMarginUserDataListenKey(listenKey: string): Promise<{}>; getIsolatedMarginUserDataListenKey(params: { symbol: string; }): Promise<{ listenKey: string; }>; keepAliveIsolatedMarginUserDataListenKey(params: { symbol: string; listenKey: string; }): Promise<{}>; closeIsolatedMarginUserDataListenKey(params: { symbol: string; listenKey: string; }): Promise<{}>; /** * * Staking Endpoints * **/ getStakingProducts(params: StakingBasicParams & { asset?: string; }): Promise; getStakingProductPosition(params: StakingBasicParams & { productId?: string; asset?: string; }): Promise; getStakingHistory(params: StakingHistoryParams): Promise; getPersonalLeftQuotaOfStakingProduct(params: { product: StakingProductType; productId: string; }): Promise; /** * * Savings Endpoints * **/ getFlexibleSavingProducts(params: FlexibleSavingBasicParams): Promise; purchaseFlexibleProduct(params: PurchaseFlexibleProductParams): Promise; redeemFlexibleProduct(params: RedeemFlexibleProductParams): Promise<{}>; getFlexibleProductPosition(params: { asset?: string; }): Promise; getLeftDailyPurchaseQuotaFlexibleProduct(params: { productId: string; }): Promise; getLeftDailyRedemptionQuotaFlexibleProduct(params: { productId: string; }): Promise; purchaseFixedAndActivityProject(params: { projectId: string; lot: number; }): Promise; getFixedAndActivityProjects(params: FixedAndActivityProjectParams): Promise; getFixedAndActivityProductPosition(params: FixedAndActivityProjectPositionParams): Promise; getLendingAccount(): Promise; getPurchaseRecord(params: PurchaseRecordParams): Promise; getRedemptionRecord(params: PurchaseRecordParams): Promise; getInterestHistory(params: PurchaseRecordParams): Promise; changeFixedAndActivityPositionToDailyPosition(params: { projectId: string; lot: number; positionId?: number; }): Promise; /** * * Mining Endpoints * **/ /** * * Futures Management Endpoints: * https://binance-docs.github.io/apidocs/spot/en/#futures * * Note: to trade futures use the usdm-client or coinm-client. * MainClient only has the futures endpoints listed in the "spot" docs category, primarily used for transfers. * **/ /** * Execute transfer between spot account and futures account. * * Type: * - 1: transfer from spot account to USDT-Ⓜ futures account. * - 2: transfer from USDT-Ⓜ futures account to spot account. * - 3: transfer from spot account to COIN-Ⓜ futures account. * - 4: transfer from COIN-Ⓜ futures account to spot account. */ submitNewFutureAccountTransfer(params: NewFutureAccountTransferParams): Promise<{ tranId: number; }>; getFutureAccountTransferHistory(params: GetFutureAccountTransferHistoryParams): Promise>; getCrossCollateralBorrowHistory(params?: CoinStartEndLimit): Promise; getCrossCollateralRepaymentHistory(params?: CoinStartEndLimit): Promise; getCrossCollateralWalletV2(): Promise; getAdjustCrossCollateralLTVHistory(params?: GetLoanCoinPaginatedHistoryParams): Promise; getCrossCollateralLiquidationHistory(params?: GetLoanCoinPaginatedHistoryParams): Promise; getCrossCollateralInterestHistory(params?: GetLoanCoinPaginatedHistoryParams): Promise; /** * * BLVT Endpoints * **/ /** * * BSwap Endpoints * **/ getBSwapLiquidity(params?: { poolId: number; }): Promise; addBSwapLiquidity(params: AddBSwapLiquidityParams): Promise; removeBSwapLiquidity(params: RemoveBSwapLiquidityParams): Promise; getBSwapOperations(params?: BSwapOperationsParams): Promise; /** * Validate syntax meets requirements set by binance. Log warning if not. */ private validateOrderId; } /** * @deprecated use MainClient instead of SpotClient (it is the same) */ export declare const SpotClient: typeof MainClient;