import { AxiosRequestConfig } from 'axios'; import { CancelPortfolioCMConditionalOrderReq, CancelPortfolioCMOrderReq, CancelPortfolioMarginOCOReq, CancelPortfolioMarginOrderReq, CancelPortfolioUMConditionalOrderReq, CancelPortfolioUMOrderReq, DownloadLinkResponse, GetMarginInterestHistoryReq, GetMarginLoanRecordsReq, GetMarginRepayRecordsReq, GetPortfolioInterestHistoryReq, ModifyPortfolioCMOrderReq, ModifyPortfolioUMOrderReq, NewPortfolioCMConditionalOrderReq, NewPortfolioCMConditionalOrderResponse, NewPortfolioCMOrderReq, NewPortfolioCMOrderResponse, NewPortfolioConditionalOrderResponse, NewPortfolioMarginOCOReq, NewPortfolioMarginOCOResponse, NewPortfolioMarginOrderReq, NewPortfolioMarginOrderResponse, NewPortfolioUMConditionalOrderReq, NewPortfolioUMOrderReq, NewPortfolioUMOrderResponse, PortfolioAccountInformation, PortfolioADLQuantile, PortfolioBalance, PortfolioCMAccountAsset, PortfolioCMAccountPosition, PortfolioCMCancelConditionalOrderResponse, PortfolioCMCancelOrderResponse, PortfolioCMConditionalHistoryOrder, PortfolioCMConditionalOrder, PortfolioCMForceOrder, PortfolioCMIncome, PortfolioCMLeverageBracket, PortfolioCMModifyOrderResponse, PortfolioCMOrder, PortfolioCMOrderModificationHistory, PortfolioCMPosition, PortfolioCMTrade, PortfolioMarginCancelAllOrdersResponse, PortfolioMarginCancelOrderResponse, PortfolioMarginForceOrder, PortfolioMarginInterestRecord, PortfolioMarginLoanRecord, PortfolioMarginOCO, PortfolioMarginOCOCancelResponse, PortfolioMarginOrder, PortfolioMarginRepayDebtReq, PortfolioMarginRepayDebtResponse, PortfolioMarginRepayRecord, PortfolioMarginTrade, PortfolioNegativeBalanceInterestRecord, PortfolioTradingStatus, PortfolioUMAccountAsset, PortfolioUMAccountAssetV2, PortfolioUMAccountConfig, PortfolioUMAccountPosition, PortfolioUMAccountPositionV2, PortfolioUMCancelConditionalOrderResponse, PortfolioUMCancelOrderResponse, PortfolioUMConditionalOrder, PortfolioUMForceOrder, PortfolioUMIncome, PortfolioUMLeverageBracket, PortfolioUMModifyOrderResponse, PortfolioUMOrder, PortfolioUMOrderModificationHistory, PortfolioUMPosition, PortfolioUMSymbolConfig, PortfolioUMTrade, QueryPortfolioAllCMConditionalOrdersReq, QueryPortfolioAllCMOrdersReq, QueryPortfolioAllUMConditionalOrdersReq, QueryPortfolioAllUMOrdersReq, QueryPortfolioCMConditionalOrderHistoryReq, QueryPortfolioCMForceOrdersReq, QueryPortfolioCMIncomeReq, QueryPortfolioCMOpenOrderReq, QueryPortfolioCMOrderAmendmentReq, QueryPortfolioCMOrderReq, QueryPortfolioCMTradesReq, QueryPortfolioMarginAllOCOReq, QueryPortfolioMarginAllOrdersReq, QueryPortfolioMarginForceOrdersReq, QueryPortfolioMarginOCOReq, QueryPortfolioMarginOrderReq, QueryPortfolioMarginTradesReq, QueryPortfolioUMConditionalOrderHistoryReq, QueryPortfolioUMForceOrdersReq, QueryPortfolioUMIncomeReq, QueryPortfolioUMOpenConditionalOrderReq, QueryPortfolioUMOpenOrderReq, QueryPortfolioUMOrderAmendmentReq, QueryPortfolioUMOrderReq, QueryPortfolioUMTradesReq } from './types/portfolio-margin'; import { BinanceBaseUrlKey } from './types/shared'; import BaseRestClient from './util/BaseRestClient'; import { RestClientOptions } from './util/requestUtils'; /** * REST client for Portfolio Margin APIs (papi) * * https://developers.binance.com/docs/derivatives/portfolio-margin/general-info */ export declare class PortfolioClient extends BaseRestClient { private clientId; constructor(restClientOptions?: RestClientOptions, requestOptions?: AxiosRequestConfig); getClientId(): BinanceBaseUrlKey; /** * Abstraction required by each client to aid with time sync / drift handling */ getServerTime(): Promise; /** * * Misc Endpoints * **/ testConnectivity(): Promise; /** * * DERIVATIVES -TRADE endpoints * **/ submitNewUMOrder(params: NewPortfolioUMOrderReq): Promise; submitNewUMConditionalOrder(params: NewPortfolioUMConditionalOrderReq): Promise; submitNewCMOrder(params: NewPortfolioCMOrderReq): Promise; submitNewCMConditionalOrder(params: NewPortfolioCMConditionalOrderReq): Promise; submitNewMarginOrder(params: NewPortfolioMarginOrderReq): Promise; submitMarginLoan(params: { asset: string; amount: string; }): Promise<{ tranId: number; }>; submitMarginRepay(params: { asset: string; amount: string; }): Promise<{ tranId: number; }>; submitNewMarginOCO(params: NewPortfolioMarginOCOReq): Promise; cancelUMOrder(params: CancelPortfolioUMOrderReq): Promise; cancelAllUMOrders(params: { symbol: string; }): Promise<{ code: number; msg: string; }>; cancelUMConditionalOrder(params: CancelPortfolioUMConditionalOrderReq): Promise; cancelAllUMConditionalOrders(params: { symbol: string; }): Promise<{ code: number; msg: string; }>; cancelCMOrder(params: CancelPortfolioCMOrderReq): Promise; cancelAllCMOrders(params: { symbol: string; }): Promise<{ code: number; msg: string; }>; cancelCMConditionalOrder(params: CancelPortfolioCMConditionalOrderReq): Promise; cancelAllCMConditionalOrders(params: { symbol: string; }): Promise<{ code: number; msg: string; }>; cancelMarginOrder(params: CancelPortfolioMarginOrderReq): Promise; cancelMarginOCO(params: CancelPortfolioMarginOCOReq): Promise; cancelAllMarginOrders(params: { symbol: string; }): Promise; modifyUMOrder(params: ModifyPortfolioUMOrderReq): Promise; modifyCMOrder(params: ModifyPortfolioCMOrderReq): Promise; getUMOrder(params: QueryPortfolioUMOrderReq): Promise; getAllUMOrders(params: QueryPortfolioAllUMOrdersReq): Promise; getUMOpenOrder(params: QueryPortfolioUMOpenOrderReq): Promise; getAllUMOpenOrders(params: { symbol?: string; }): Promise; getAllUMConditionalOrders(params: QueryPortfolioAllUMConditionalOrdersReq): Promise; getUMOpenConditionalOrders(params: { symbol?: string; }): Promise; getUMOpenConditionalOrder(params: QueryPortfolioUMOpenConditionalOrderReq): Promise; getUMConditionalOrderHistory(params: QueryPortfolioUMConditionalOrderHistoryReq): Promise; getCMOrder(params: QueryPortfolioCMOrderReq): Promise; getAllCMOrders(params: QueryPortfolioAllCMOrdersReq): Promise; getCMOpenOrder(params: QueryPortfolioCMOpenOrderReq): Promise; getAllCMOpenOrders(params: { symbol?: string; pair?: string; }): Promise; getCMOpenConditionalOrders(params: { symbol?: string; }): Promise; getCMOpenConditionalOrder(params: { symbol: string; strategyId?: number; newClientStrategyId?: string; }): Promise; getAllCMConditionalOrders(params: QueryPortfolioAllCMConditionalOrdersReq): Promise; getCMConditionalOrderHistory(params: QueryPortfolioCMConditionalOrderHistoryReq): Promise; getUMForceOrders(params: QueryPortfolioUMForceOrdersReq): Promise; getCMForceOrders(params: QueryPortfolioCMForceOrdersReq): Promise; getUMOrderModificationHistory(params: QueryPortfolioUMOrderAmendmentReq): Promise; getCMOrderModificationHistory(params: QueryPortfolioCMOrderAmendmentReq): Promise; getMarginForceOrders(params: QueryPortfolioMarginForceOrdersReq): Promise<{ rows: PortfolioMarginForceOrder[]; total: number; }>; getUMTrades(params: QueryPortfolioUMTradesReq): Promise; getCMTrades(params: QueryPortfolioCMTradesReq): Promise; getUMADLQuantile(params: { symbol?: string; }): Promise<{ symbol: string; adlQuantile: PortfolioADLQuantile; }[]>; getCMADLQuantile(params: { symbol?: string; }): Promise<{ symbol: string; adlQuantile: PortfolioADLQuantile; }[]>; toggleUMFeeBurn(params: { feeBurn: 'true' | 'false'; }): Promise<{ code: number; msg: string; }>; getUMFeeBurnStatus(): Promise<{ feeBurn: boolean; }>; getMarginOrder(params: QueryPortfolioMarginOrderReq): Promise; getMarginOpenOrders(params: { symbol: string; }): Promise; getAllMarginOrders(params: QueryPortfolioMarginAllOrdersReq): Promise; getMarginOCO(params: QueryPortfolioMarginOCOReq): Promise; getAllMarginOCO(params: QueryPortfolioMarginAllOCOReq): Promise; getMarginOpenOCO(): Promise; getMarginTrades(params: QueryPortfolioMarginTradesReq): Promise; repayMarginDebt(params: PortfolioMarginRepayDebtReq): Promise; /** * * DERIVATIVES - ACCOUNT endpoints * **/ getBalance(params?: { asset?: string; }): Promise; getAccountInfo(): Promise; getMarginMaxBorrow(params: { asset: string; }): Promise<{ amount: string; borrowLimit: string; }>; getMarginMaxWithdraw(params: { asset: string; }): Promise<{ amount: string; }>; getUMPosition(params?: { symbol?: string; }): Promise; getCMPosition(params?: { marginAsset?: string; pair?: string; }): Promise; updateUMLeverage(params: { symbol: string; leverage: number; }): Promise<{ leverage: number; maxNotionalValue: string; symbol: string; }>; updateCMLeverage(params: { symbol: string; leverage: number; }): Promise<{ leverage: number; maxQty: string; symbol: string; }>; updateUMPositionMode(params: { dualSidePosition: 'true' | 'false'; }): Promise<{ code: number; msg: string; }>; updateCMPositionMode(params: { dualSidePosition: 'true' | 'false'; }): Promise<{ code: number; msg: string; }>; getUMPositionMode(): Promise<{ dualSidePosition: boolean; }>; getCMPositionMode(): Promise<{ dualSidePosition: boolean; }>; getUMLeverageBrackets(params?: { symbol?: string; }): Promise<{ symbol: string; notionalCoef: string; brackets: PortfolioUMLeverageBracket[]; }[]>; getCMLeverageBrackets(params?: { symbol?: string; }): Promise<{ symbol: string; brackets: PortfolioCMLeverageBracket[]; }[]>; getUMTradingStatus(params?: { symbol?: string; }): Promise; getUMCommissionRate(params: { symbol: string; }): Promise<{ symbol: string; makerCommissionRate: string; takerCommissionRate: string; }>; getCMCommissionRate(params: { symbol: string; }): Promise<{ symbol: string; makerCommissionRate: string; takerCommissionRate: string; }>; getMarginLoanRecords(params: GetMarginLoanRecordsReq): Promise<{ rows: PortfolioMarginLoanRecord[]; total: number; }>; getMarginRepayRecords(params: GetMarginRepayRecordsReq): Promise<{ rows: PortfolioMarginRepayRecord[]; total: number; }>; getAutoRepayFuturesStatus(): Promise<{ autoRepay: boolean; }>; updateAutoRepayFuturesStatus(params: { autoRepay: 'true' | 'false'; }): Promise<{ msg: string; }>; getMarginInterestHistory(params?: GetMarginInterestHistoryReq): Promise<{ rows: PortfolioMarginInterestRecord[]; total: number; }>; repayFuturesNegativeBalance(): Promise<{ msg: string; }>; getPortfolioNegativeBalanceInterestHistory(params?: GetPortfolioInterestHistoryReq): Promise; autoCollectFunds(): Promise<{ msg: string; }>; transferAssetFuturesMargin(params: { asset: string; }): Promise<{ msg: string; }>; transferBNB(params: { amount: string; transferSide: 'TO_UM' | 'FROM_UM'; }): Promise<{ tranId: number; }>; getUMIncomeHistory(params?: QueryPortfolioUMIncomeReq): Promise; getCMIncomeHistory(params?: QueryPortfolioCMIncomeReq): Promise; getUMAccount(): Promise<{ assets: PortfolioUMAccountAsset[]; positions: PortfolioUMAccountPosition[]; }>; getCMAccount(): Promise<{ assets: PortfolioCMAccountAsset[]; positions: PortfolioCMAccountPosition[]; }>; getUMAccountConfig(): Promise; getUMSymbolConfig(params?: { symbol?: string; }): Promise; getUMAccountV2(): Promise<{ assets: PortfolioUMAccountAssetV2[]; positions: PortfolioUMAccountPositionV2[]; }>; getUMTradeHistoryDownloadId(params: { startTime: number; endTime: number; }): Promise<{ avgCostTimestampOfLast30d: number; downloadId: string; }>; getUMTradeDownloadLink(params: { downloadId: string; }): Promise; getUMOrderHistoryDownloadId(params: { startTime: number; endTime: number; }): Promise<{ avgCostTimestampOfLast30d: number; downloadId: string; }>; getUMOrderDownloadLink(params: { downloadId: string; }): Promise; getUMTransactionHistoryDownloadId(params: { startTime: number; endTime: number; }): Promise<{ avgCostTimestampOfLast30d: number; downloadId: string; }>; getUMTransactionDownloadLink(params: { downloadId: string; }): Promise; /** * Validate syntax meets requirements set by binance. Log warning if not. */ private validateOrderId; /** * * User Data Stream Endpoints * **/ getPMUserDataListenKey(): Promise<{ listenKey: string; }>; keepAlivePMUserDataListenKey(): Promise; closePMUserDataListenKey(): Promise; }