@binance/derivatives-trading-portfolio-margin 4.0.2 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/derivatives-trading-portfolio-margin.ts","../package.json","../src/rest-api/index.ts","../src/rest-api/modules/account-api.ts","../src/rest-api/modules/market-data-api.ts","../src/rest-api/modules/trade-api.ts","../src/rest-api/modules/user-data-streams-api.ts","../src/rest-api/rest-api.ts"],"sourcesContent":["export {\n DerivativesTradingPortfolioMargin,\n ConfigurationDerivativesTradingPortfolioMargin,\n} from './derivatives-trading-portfolio-margin';\nexport * as DerivativesTradingPortfolioMarginRestAPI from './rest-api';\n\nexport {\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_TESTNET_URL,\n ConnectorClientError,\n RequiredError,\n UnauthorizedError,\n ForbiddenError,\n TooManyRequestsError,\n RateLimitBanError,\n ServerError,\n NetworkError,\n NotFoundError,\n BadRequestError,\n} from '@binance/common';\n","import {\n buildUserAgent,\n ConfigurationRestAPI,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL,\n} from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nexport interface ConfigurationDerivativesTradingPortfolioMargin {\n configurationRestAPI?: ConfigurationRestAPI;\n}\n\nexport class DerivativesTradingPortfolioMargin {\n public restAPI!: RestAPI;\n\n constructor(config: ConfigurationDerivativesTradingPortfolioMargin) {\n const userAgent = buildUserAgent(name, version);\n\n if (config?.configurationRestAPI) {\n const configRestAPI = new ConfigurationRestAPI(\n config.configurationRestAPI\n ) as ConfigurationRestAPI & {\n baseOptions: Record<string, unknown>;\n };\n configRestAPI.basePath =\n configRestAPI.basePath || DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL;\n configRestAPI.baseOptions = configRestAPI.baseOptions || {};\n configRestAPI.baseOptions.headers = {\n ...(configRestAPI.baseOptions.headers || {}),\n 'User-Agent': userAgent,\n };\n this.restAPI = new RestAPI(configRestAPI);\n }\n }\n}\n","{\n \"name\": \"@binance/derivatives-trading-portfolio-margin\",\n \"description\": \"Official Binance Derivatives Trading (COIN-M Futures) Connector - A lightweight library that provides a convenient interface to Binance's COINN-M Futures REST API, WebSocket API and WebSocket Streams.\",\n \"version\": \"4.0.2\",\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"require\": \"./dist/index.js\",\n \"import\": \"./dist/index.mjs\"\n }\n },\n \"scripts\": {\n \"prepublishOnly\": \"npm run build\",\n \"build\": \"npm run clean && tsup\",\n \"typecheck\": \"tsc --noEmit\",\n \"clean\": \"rm -rf dist\",\n \"test\": \"npx jest --maxWorkers=4 --bail\",\n \"test:watch\": \"npx jest --watch\",\n \"format\": \"npx prettier --ignore-path .prettierignore --write .\",\n \"lint\": \"npx eslint '**/*.ts' --fix\"\n },\n \"keywords\": [\n \"Binance\",\n \"API\",\n \"Derivatives\",\n \"Futures\",\n \"Coin-M\",\n \"Connector\",\n \"REST\",\n \"WebSocket\",\n \"Trading\"\n ],\n \"author\": \"Binance\",\n \"license\": \"MIT\",\n \"files\": [\n \"dist\"\n ],\n \"devDependencies\": {\n \"@types/jest\": \"^29.5.4\",\n \"@types/node\": \"^20.17.24\",\n \"eslint\": \"8.57.0\",\n \"jest\": \"^29.6.4\",\n \"prettier\": \"^3.3.3\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.1\",\n \"tsup\": \"^8.4.0\",\n \"typescript\": \"^5.7.2\",\n \"typescript-eslint\": \"^8.24.0\"\n },\n \"dependencies\": {\n \"@binance/common\": \"^1.1.2\",\n \"@types/ws\": \"^8.5.5\",\n \"axios\": \"^1.7.4\",\n \"ws\": \"^8.17.1\"\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nexport * from './types';\nexport * from './modules';\nexport * from './rest-api';\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n assertParamExists,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {\n AccountBalanceResponse,\n AccountInformationResponse,\n BnbTransferResponse,\n ChangeAutoRepayFuturesStatusResponse,\n ChangeCmInitialLeverageResponse,\n ChangeCmPositionModeResponse,\n ChangeUmInitialLeverageResponse,\n ChangeUmPositionModeResponse,\n CmNotionalAndLeverageBracketsResponse,\n FundAutoCollectionResponse,\n FundCollectionByAssetResponse,\n GetAutoRepayFuturesStatusResponse,\n GetCmAccountDetailResponse,\n GetCmCurrentPositionModeResponse,\n GetCmIncomeHistoryResponse,\n GetDownloadIdForUmFuturesOrderHistoryResponse,\n GetDownloadIdForUmFuturesTradeHistoryResponse,\n GetDownloadIdForUmFuturesTransactionHistoryResponse,\n GetMarginBorrowLoanInterestHistoryResponse,\n GetUmAccountDetailResponse,\n GetUmAccountDetailV2Response,\n GetUmCurrentPositionModeResponse,\n GetUmFuturesOrderDownloadLinkByIdResponse,\n GetUmFuturesTradeDownloadLinkByIdResponse,\n GetUmFuturesTransactionDownloadLinkByIdResponse,\n GetUmIncomeHistoryResponse,\n GetUserCommissionRateForCmResponse,\n GetUserCommissionRateForUmResponse,\n MarginMaxBorrowResponse,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse,\n QueryCmPositionInformationResponse,\n QueryMarginLoanRecordResponse,\n QueryMarginMaxWithdrawResponse,\n QueryMarginRepayRecordResponse,\n QueryPortfolioMarginNegativeBalanceInterestHistoryResponse,\n QueryUmPositionInformationResponse,\n QueryUserNegativeBalanceAutoExchangeRecordResponse,\n QueryUserRateLimitResponse,\n RepayFuturesNegativeBalanceResponse,\n UmFuturesAccountConfigurationResponse,\n UmFuturesSymbolConfigurationResponse,\n UmNotionalAndLeverageBracketsResponse,\n} from '../types';\n\n/**\n * AccountApi - axios parameter creator\n */\nconst AccountApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {string} [asset]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n accountBalance: async (asset?: string, recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/balance',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n accountInformation: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {number} amount\n * @param {string} transferSide \"TO_UM\",\"FROM_UM\"\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n bnbTransfer: async (\n amount: number,\n transferSide: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('bnbTransfer', 'amount', amount);\n // verify required parameter 'transferSide' is not null or undefined\n assertParamExists('bnbTransfer', 'transferSide', transferSide);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (transferSide !== undefined && transferSide !== null) {\n localVarQueryParameter['transferSide'] = transferSide;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/bnb-transfer',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {string} autoRepay Default: `true`; `false` for turn off the auto-repay futures negative balance function\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeAutoRepayFuturesStatus: async (\n autoRepay: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'autoRepay' is not null or undefined\n assertParamExists('changeAutoRepayFuturesStatus', 'autoRepay', autoRepay);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (autoRepay !== undefined && autoRepay !== null) {\n localVarQueryParameter['autoRepay'] = autoRepay;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-switch',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {string} symbol\n * @param {number} leverage target initial leverage: int from 1 to 125\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeCmInitialLeverage: async (\n symbol: string,\n leverage: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('changeCmInitialLeverage', 'symbol', symbol);\n // verify required parameter 'leverage' is not null or undefined\n assertParamExists('changeCmInitialLeverage', 'leverage', leverage);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (leverage !== undefined && leverage !== null) {\n localVarQueryParameter['leverage'] = leverage;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/leverage',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {string} dualSidePosition \"true\": Hedge Mode; \"false\": One-way Mode\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeCmPositionMode: async (\n dualSidePosition: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'dualSidePosition' is not null or undefined\n assertParamExists('changeCmPositionMode', 'dualSidePosition', dualSidePosition);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (dualSidePosition !== undefined && dualSidePosition !== null) {\n localVarQueryParameter['dualSidePosition'] = dualSidePosition;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionSide/dual',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {string} symbol\n * @param {number} leverage target initial leverage: int from 1 to 125\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeUmInitialLeverage: async (\n symbol: string,\n leverage: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('changeUmInitialLeverage', 'symbol', symbol);\n // verify required parameter 'leverage' is not null or undefined\n assertParamExists('changeUmInitialLeverage', 'leverage', leverage);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (leverage !== undefined && leverage !== null) {\n localVarQueryParameter['leverage'] = leverage;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/leverage',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {string} dualSidePosition \"true\": Hedge Mode; \"false\": One-way Mode\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeUmPositionMode: async (\n dualSidePosition: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'dualSidePosition' is not null or undefined\n assertParamExists('changeUmPositionMode', 'dualSidePosition', dualSidePosition);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (dualSidePosition !== undefined && dualSidePosition !== null) {\n localVarQueryParameter['dualSidePosition'] = dualSidePosition;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionSide/dual',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmNotionalAndLeverageBrackets: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/leverageBracket',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n fundAutoCollection: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/auto-collection',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n fundCollectionByAsset: async (asset: string, recvWindow?: number): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('fundCollectionByAsset', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/asset-collection',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getAutoRepayFuturesStatus: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-switch',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmAccountDetail: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmCurrentPositionMode: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionSide/dual',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [incomeType] TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [page]\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmIncomeHistory: async (\n symbol?: string,\n incomeType?: string,\n startTime?: number,\n endTime?: number,\n page?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (incomeType !== undefined && incomeType !== null) {\n localVarQueryParameter['incomeType'] = incomeType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/income',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesOrderHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesOrderHistory', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesOrderHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesTradeHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTradeHistory', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTradeHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/trade/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesTransactionHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists(\n 'getDownloadIdForUmFuturesTransactionHistory',\n 'startTime',\n startTime\n );\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTransactionHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {string} [asset]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getMarginBorrowLoanInterestHistory: async (\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/marginInterestHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmAccountDetail: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmAccountDetailV2: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v2/um/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmCurrentPositionMode: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionSide/dual',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesOrderDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesOrderDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesTradeDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesTradeDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/trade/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesTransactionDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesTransactionDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [incomeType] TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [page]\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmIncomeHistory: async (\n symbol?: string,\n incomeType?: string,\n startTime?: number,\n endTime?: number,\n page?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (incomeType !== undefined && incomeType !== null) {\n localVarQueryParameter['incomeType'] = incomeType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUserCommissionRateForCm: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('getUserCommissionRateForCm', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/commissionRate',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUserCommissionRateForUm: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('getUserCommissionRateForUm', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/commissionRate',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginMaxBorrow: async (asset: string, recvWindow?: number): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginMaxBorrow', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/maxBorrowable',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/apiTradingStatus',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {string} [marginAsset]\n * @param {string} [pair]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmPositionInformation: async (\n marginAsset?: string,\n pair?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (marginAsset !== undefined && marginAsset !== null) {\n localVarQueryParameter['marginAsset'] = marginAsset;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionRisk',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {string} asset\n * @param {number} [txId] the `tranId` in `POST/papi/v1/marginLoan`\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginLoanRecord: async (\n asset: string,\n txId?: number,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginLoanRecord', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (txId !== undefined && txId !== null) {\n localVarQueryParameter['txId'] = txId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/marginLoan',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginMaxWithdraw: async (\n asset: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginMaxWithdraw', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/maxWithdraw',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {string} asset\n * @param {number} [txId] the `tranId` in `POST/papi/v1/marginLoan`\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginRepayRecord: async (\n asset: string,\n txId?: number,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginRepayRecord', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (txId !== undefined && txId !== null) {\n localVarQueryParameter['txId'] = txId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/repayLoan',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {string} [asset]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [size] Default:10 Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryPortfolioMarginNegativeBalanceInterestHistory: async (\n asset?: string,\n startTime?: number,\n endTime?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/portfolio/interest-history',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmPositionInformation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionRisk',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUserNegativeBalanceAutoExchangeRecord: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('queryUserNegativeBalanceAutoExchangeRecord', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('queryUserNegativeBalanceAutoExchangeRecord', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/portfolio/negative-balance-exchange-record',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUserRateLimit: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/rateLimit/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n repayFuturesNegativeBalance: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-negative-balance',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umFuturesAccountConfiguration: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/accountConfig',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umFuturesSymbolConfiguration: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/symbolConfig',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umNotionalAndLeverageBrackets: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/leverageBracket',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * AccountApi - interface\n * @interface AccountApi\n */\nexport interface AccountApiInterface {\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n accountBalance(\n requestParameters?: AccountBalanceRequest\n ): Promise<RestApiResponse<AccountBalanceResponse>>;\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n accountInformation(\n requestParameters?: AccountInformationRequest\n ): Promise<RestApiResponse<AccountInformationResponse>>;\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>>;\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>;\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>;\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>>;\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>;\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>>;\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n cmNotionalAndLeverageBrackets(\n requestParameters?: CmNotionalAndLeverageBracketsRequest\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>;\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n fundAutoCollection(\n requestParameters?: FundAutoCollectionRequest\n ): Promise<RestApiResponse<FundAutoCollectionResponse>>;\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>>;\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getAutoRepayFuturesStatus(\n requestParameters?: GetAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>;\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmAccountDetail(\n requestParameters?: GetCmAccountDetailRequest\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>>;\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmCurrentPositionMode(\n requestParameters?: GetCmCurrentPositionModeRequest\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>;\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmIncomeHistory(\n requestParameters?: GetCmIncomeHistoryRequest\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>>;\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>;\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>;\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>;\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getMarginBorrowLoanInterestHistory(\n requestParameters?: GetMarginBorrowLoanInterestHistoryRequest\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>;\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmAccountDetail(\n requestParameters?: GetUmAccountDetailRequest\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>>;\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmAccountDetailV2(\n requestParameters?: GetUmAccountDetailV2Request\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>>;\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmCurrentPositionMode(\n requestParameters?: GetUmCurrentPositionModeRequest\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>;\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>;\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>;\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>;\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmIncomeHistory(\n requestParameters?: GetUmIncomeHistoryRequest\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>>;\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>;\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>;\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>>;\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters?: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>;\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryCmPositionInformation(\n requestParameters?: QueryCmPositionInformationRequest\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>>;\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>>;\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>;\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>>;\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters?: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>;\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUmPositionInformation(\n requestParameters?: QueryUmPositionInformationRequest\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>>;\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>;\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUserRateLimit(\n requestParameters?: QueryUserRateLimitRequest\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>>;\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n repayFuturesNegativeBalance(\n requestParameters?: RepayFuturesNegativeBalanceRequest\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>;\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umFuturesAccountConfiguration(\n requestParameters?: UmFuturesAccountConfigurationRequest\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>;\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umFuturesSymbolConfiguration(\n requestParameters?: UmFuturesSymbolConfigurationRequest\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>;\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umNotionalAndLeverageBrackets(\n requestParameters?: UmNotionalAndLeverageBracketsRequest\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>;\n}\n\n/**\n * Request parameters for accountBalance operation in AccountApi.\n * @interface AccountBalanceRequest\n */\nexport interface AccountBalanceRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiAccountBalance\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiAccountBalance\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for accountInformation operation in AccountApi.\n * @interface AccountInformationRequest\n */\nexport interface AccountInformationRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiAccountInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for bnbTransfer operation in AccountApi.\n * @interface BnbTransferRequest\n */\nexport interface BnbTransferRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiBnbTransfer\n */\n readonly amount: number;\n\n /**\n * \"TO_UM\",\"FROM_UM\"\n * @type {string}\n * @memberof AccountApiBnbTransfer\n */\n readonly transferSide: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiBnbTransfer\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeAutoRepayFuturesStatus operation in AccountApi.\n * @interface ChangeAutoRepayFuturesStatusRequest\n */\nexport interface ChangeAutoRepayFuturesStatusRequest {\n /**\n * Default: `true`; `false` for turn off the auto-repay futures negative balance function\n * @type {string}\n * @memberof AccountApiChangeAutoRepayFuturesStatus\n */\n readonly autoRepay: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeAutoRepayFuturesStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeCmInitialLeverage operation in AccountApi.\n * @interface ChangeCmInitialLeverageRequest\n */\nexport interface ChangeCmInitialLeverageRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly symbol: string;\n\n /**\n * target initial leverage: int from 1 to 125\n * @type {number}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly leverage: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeCmPositionMode operation in AccountApi.\n * @interface ChangeCmPositionModeRequest\n */\nexport interface ChangeCmPositionModeRequest {\n /**\n * \"true\": Hedge Mode; \"false\": One-way Mode\n * @type {string}\n * @memberof AccountApiChangeCmPositionMode\n */\n readonly dualSidePosition: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeCmPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeUmInitialLeverage operation in AccountApi.\n * @interface ChangeUmInitialLeverageRequest\n */\nexport interface ChangeUmInitialLeverageRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly symbol: string;\n\n /**\n * target initial leverage: int from 1 to 125\n * @type {number}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly leverage: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeUmPositionMode operation in AccountApi.\n * @interface ChangeUmPositionModeRequest\n */\nexport interface ChangeUmPositionModeRequest {\n /**\n * \"true\": Hedge Mode; \"false\": One-way Mode\n * @type {string}\n * @memberof AccountApiChangeUmPositionMode\n */\n readonly dualSidePosition: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeUmPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmNotionalAndLeverageBrackets operation in AccountApi.\n * @interface CmNotionalAndLeverageBracketsRequest\n */\nexport interface CmNotionalAndLeverageBracketsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiCmNotionalAndLeverageBrackets\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiCmNotionalAndLeverageBrackets\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for fundAutoCollection operation in AccountApi.\n * @interface FundAutoCollectionRequest\n */\nexport interface FundAutoCollectionRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiFundAutoCollection\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for fundCollectionByAsset operation in AccountApi.\n * @interface FundCollectionByAssetRequest\n */\nexport interface FundCollectionByAssetRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiFundCollectionByAsset\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiFundCollectionByAsset\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getAutoRepayFuturesStatus operation in AccountApi.\n * @interface GetAutoRepayFuturesStatusRequest\n */\nexport interface GetAutoRepayFuturesStatusRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetAutoRepayFuturesStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmAccountDetail operation in AccountApi.\n * @interface GetCmAccountDetailRequest\n */\nexport interface GetCmAccountDetailRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmAccountDetail\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmCurrentPositionMode operation in AccountApi.\n * @interface GetCmCurrentPositionModeRequest\n */\nexport interface GetCmCurrentPositionModeRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmCurrentPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmIncomeHistory operation in AccountApi.\n * @interface GetCmIncomeHistoryRequest\n */\nexport interface GetCmIncomeHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly symbol?: string;\n\n /**\n * TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @type {string}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly incomeType?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly endTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly page?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesOrderHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesOrderHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesOrderHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesTradeHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesTradeHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesTradeHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesTransactionHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesTransactionHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesTransactionHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getMarginBorrowLoanInterestHistory operation in AccountApi.\n * @interface GetMarginBorrowLoanInterestHistoryRequest\n */\nexport interface GetMarginBorrowLoanInterestHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly asset?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmAccountDetail operation in AccountApi.\n * @interface GetUmAccountDetailRequest\n */\nexport interface GetUmAccountDetailRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmAccountDetail\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmAccountDetailV2 operation in AccountApi.\n * @interface GetUmAccountDetailV2Request\n */\nexport interface GetUmAccountDetailV2Request {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmAccountDetailV2\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmCurrentPositionMode operation in AccountApi.\n * @interface GetUmCurrentPositionModeRequest\n */\nexport interface GetUmCurrentPositionModeRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmCurrentPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesOrderDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesOrderDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesOrderDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesOrderDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesOrderDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesTradeDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesTradeDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesTradeDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesTradeDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesTradeDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesTransactionDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesTransactionDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesTransactionDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesTransactionDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesTransactionDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmIncomeHistory operation in AccountApi.\n * @interface GetUmIncomeHistoryRequest\n */\nexport interface GetUmIncomeHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly symbol?: string;\n\n /**\n * TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @type {string}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly incomeType?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly endTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly page?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUserCommissionRateForCm operation in AccountApi.\n * @interface GetUserCommissionRateForCmRequest\n */\nexport interface GetUserCommissionRateForCmRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUserCommissionRateForCm\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUserCommissionRateForCm\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUserCommissionRateForUm operation in AccountApi.\n * @interface GetUserCommissionRateForUmRequest\n */\nexport interface GetUserCommissionRateForUmRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUserCommissionRateForUm\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUserCommissionRateForUm\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginMaxBorrow operation in AccountApi.\n * @interface MarginMaxBorrowRequest\n */\nexport interface MarginMaxBorrowRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiMarginMaxBorrow\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiMarginMaxBorrow\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for portfolioMarginUmTradingQuantitativeRulesIndicators operation in AccountApi.\n * @interface PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest\n */\nexport interface PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiPortfolioMarginUmTradingQuantitativeRulesIndicators\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiPortfolioMarginUmTradingQuantitativeRulesIndicators\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmPositionInformation operation in AccountApi.\n * @interface QueryCmPositionInformationRequest\n */\nexport interface QueryCmPositionInformationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly marginAsset?: string;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginLoanRecord operation in AccountApi.\n * @interface QueryMarginLoanRecordRequest\n */\nexport interface QueryMarginLoanRecordRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly asset: string;\n\n /**\n * the `tranId` in `POST/papi/v1/marginLoan`\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly txId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginMaxWithdraw operation in AccountApi.\n * @interface QueryMarginMaxWithdrawRequest\n */\nexport interface QueryMarginMaxWithdrawRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginMaxWithdraw\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginMaxWithdraw\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginRepayRecord operation in AccountApi.\n * @interface QueryMarginRepayRecordRequest\n */\nexport interface QueryMarginRepayRecordRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly asset: string;\n\n /**\n * the `tranId` in `POST/papi/v1/marginLoan`\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly txId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryPortfolioMarginNegativeBalanceInterestHistory operation in AccountApi.\n * @interface QueryPortfolioMarginNegativeBalanceInterestHistoryRequest\n */\nexport interface QueryPortfolioMarginNegativeBalanceInterestHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly asset?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly endTime?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmPositionInformation operation in AccountApi.\n * @interface QueryUmPositionInformationRequest\n */\nexport interface QueryUmPositionInformationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryUmPositionInformation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUmPositionInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserNegativeBalanceAutoExchangeRecord operation in AccountApi.\n * @interface QueryUserNegativeBalanceAutoExchangeRecordRequest\n */\nexport interface QueryUserNegativeBalanceAutoExchangeRecordRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserRateLimit operation in AccountApi.\n * @interface QueryUserRateLimitRequest\n */\nexport interface QueryUserRateLimitRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserRateLimit\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for repayFuturesNegativeBalance operation in AccountApi.\n * @interface RepayFuturesNegativeBalanceRequest\n */\nexport interface RepayFuturesNegativeBalanceRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiRepayFuturesNegativeBalance\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umFuturesAccountConfiguration operation in AccountApi.\n * @interface UmFuturesAccountConfigurationRequest\n */\nexport interface UmFuturesAccountConfigurationRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiUmFuturesAccountConfiguration\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umFuturesSymbolConfiguration operation in AccountApi.\n * @interface UmFuturesSymbolConfigurationRequest\n */\nexport interface UmFuturesSymbolConfigurationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiUmFuturesSymbolConfiguration\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiUmFuturesSymbolConfiguration\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umNotionalAndLeverageBrackets operation in AccountApi.\n * @interface UmNotionalAndLeverageBracketsRequest\n */\nexport interface UmNotionalAndLeverageBracketsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiUmNotionalAndLeverageBrackets\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiUmNotionalAndLeverageBrackets\n */\n readonly recvWindow?: number;\n}\n\n/**\n * AccountApi - object-oriented interface\n * @class AccountApi\n */\nexport class AccountApi implements AccountApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = AccountApiAxiosParamCreator(configuration);\n }\n\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Balance Binance API Documentation}\n */\n public async accountBalance(\n requestParameters: AccountBalanceRequest = {}\n ): Promise<RestApiResponse<AccountBalanceResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountBalance(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<AccountBalanceResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Information Binance API Documentation}\n */\n public async accountInformation(\n requestParameters: AccountInformationRequest = {}\n ): Promise<RestApiResponse<AccountInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountInformation(\n requestParameters?.recvWindow\n );\n return sendRequest<AccountInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<BnbTransferResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/BNB-transfer Binance API Documentation}\n */\n public async bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.bnbTransfer(\n requestParameters?.amount,\n requestParameters?.transferSide,\n requestParameters?.recvWindow\n );\n return sendRequest<BnbTransferResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-Auto-repay-futures-Status Binance API Documentation}\n */\n public async changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeAutoRepayFuturesStatus(\n requestParameters?.autoRepay,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeAutoRepayFuturesStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Initial-Leverage Binance API Documentation}\n */\n public async changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeCmInitialLeverage(\n requestParameters?.symbol,\n requestParameters?.leverage,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeCmInitialLeverageResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Position-Mode Binance API Documentation}\n */\n public async changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeCmPositionMode(\n requestParameters?.dualSidePosition,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeCmPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Initial-Leverage Binance API Documentation}\n */\n public async changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeUmInitialLeverage(\n requestParameters?.symbol,\n requestParameters?.leverage,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeUmInitialLeverageResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Position-Mode Binance API Documentation}\n */\n public async changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeUmPositionMode(\n requestParameters?.dualSidePosition,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeUmPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/CM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n public async cmNotionalAndLeverageBrackets(\n requestParameters: CmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cmNotionalAndLeverageBrackets(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CmNotionalAndLeverageBracketsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundAutoCollectionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Auto-collection Binance API Documentation}\n */\n public async fundAutoCollection(\n requestParameters: FundAutoCollectionRequest = {}\n ): Promise<RestApiResponse<FundAutoCollectionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.fundAutoCollection(\n requestParameters?.recvWindow\n );\n return sendRequest<FundAutoCollectionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundCollectionByAssetResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Collection-by-Asset Binance API Documentation}\n */\n public async fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.fundCollectionByAsset(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<FundCollectionByAssetResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Auto-repay-futures-Status Binance API Documentation}\n */\n public async getAutoRepayFuturesStatus(\n requestParameters: GetAutoRepayFuturesStatusRequest = {}\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getAutoRepayFuturesStatus(\n requestParameters?.recvWindow\n );\n return sendRequest<GetAutoRepayFuturesStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Account-Detail Binance API Documentation}\n */\n public async getCmAccountDetail(\n requestParameters: GetCmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmAccountDetail(\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmAccountDetailResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Current-Position-Mode Binance API Documentation}\n */\n public async getCmCurrentPositionMode(\n requestParameters: GetCmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmCurrentPositionMode(\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmCurrentPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Income-History Binance API Documentation}\n */\n public async getCmIncomeHistory(\n requestParameters: GetCmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmIncomeHistory(\n requestParameters?.symbol,\n requestParameters?.incomeType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmIncomeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Order-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesOrderHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Trade-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesTradeHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesTradeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Transaction-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesTransactionHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesTransactionHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Margin-BorrowLoan-Interest-History Binance API Documentation}\n */\n public async getMarginBorrowLoanInterestHistory(\n requestParameters: GetMarginBorrowLoanInterestHistoryRequest = {}\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getMarginBorrowLoanInterestHistory(\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<GetMarginBorrowLoanInterestHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail Binance API Documentation}\n */\n public async getUmAccountDetail(\n requestParameters: GetUmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmAccountDetail(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmAccountDetailResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailV2Response>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail-V2 Binance API Documentation}\n */\n public async getUmAccountDetailV2(\n requestParameters: GetUmAccountDetailV2Request = {}\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmAccountDetailV2(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmAccountDetailV2Response>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Current-Position-Mode Binance API Documentation}\n */\n public async getUmCurrentPositionMode(\n requestParameters: GetUmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmCurrentPositionMode(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmCurrentPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Order-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesOrderDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesOrderDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Trade-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesTradeDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesTradeDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Transaction-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesTransactionDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesTransactionDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Income-History Binance API Documentation}\n */\n public async getUmIncomeHistory(\n requestParameters: GetUmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmIncomeHistory(\n requestParameters?.symbol,\n requestParameters?.incomeType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmIncomeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-CM Binance API Documentation}\n */\n public async getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUserCommissionRateForCm(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUserCommissionRateForCmResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-UM Binance API Documentation}\n */\n public async getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUserCommissionRateForUm(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUserCommissionRateForUmResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginMaxBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Margin-Max-Borrow Binance API Documentation}\n */\n public async marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginMaxBorrow(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginMaxBorrowResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Portfolio-Margin-UM-Trading-Quantitative-Rules-Indicators Binance API Documentation}\n */\n public async portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest = {}\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-CM-Position-Information Binance API Documentation}\n */\n public async queryCmPositionInformation(\n requestParameters: QueryCmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmPositionInformation(\n requestParameters?.marginAsset,\n requestParameters?.pair,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmPositionInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginLoanRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Loan-Record Binance API Documentation}\n */\n public async queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginLoanRecord(\n requestParameters?.asset,\n requestParameters?.txId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginLoanRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Max-Withdraw Binance API Documentation}\n */\n public async queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginMaxWithdraw(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginMaxWithdrawResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginRepayRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-repay-Record Binance API Documentation}\n */\n public async queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginRepayRecord(\n requestParameters?.asset,\n requestParameters?.txId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginRepayRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Portfolio-Margin-Negative-Balance-Interest-History Binance API Documentation}\n */\n public async queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest = {}\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-UM-Position-Information Binance API Documentation}\n */\n public async queryUmPositionInformation(\n requestParameters: QueryUmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmPositionInformation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmPositionInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Negative-Balance-Auto-Exchange-Record Binance API Documentation}\n */\n public async queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUserNegativeBalanceAutoExchangeRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserRateLimitResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Rate-Limit Binance API Documentation}\n */\n public async queryUserRateLimit(\n requestParameters: QueryUserRateLimitRequest = {}\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUserRateLimit(\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUserRateLimitResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Repay-futures-Negative-Balance Binance API Documentation}\n */\n public async repayFuturesNegativeBalance(\n requestParameters: RepayFuturesNegativeBalanceRequest = {}\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.repayFuturesNegativeBalance(\n requestParameters?.recvWindow\n );\n return sendRequest<RepayFuturesNegativeBalanceResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Account-Config Binance API Documentation}\n */\n public async umFuturesAccountConfiguration(\n requestParameters: UmFuturesAccountConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umFuturesAccountConfiguration(\n requestParameters?.recvWindow\n );\n return sendRequest<UmFuturesAccountConfigurationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Symbol-Config Binance API Documentation}\n */\n public async umFuturesSymbolConfiguration(\n requestParameters: UmFuturesSymbolConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.umFuturesSymbolConfiguration(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmFuturesSymbolConfigurationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/UM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n public async umNotionalAndLeverageBrackets(\n requestParameters: UmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umNotionalAndLeverageBrackets(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmNotionalAndLeverageBracketsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {} from '../types';\n\n/**\n * MarketDataApi - axios parameter creator\n */\nconst MarketDataApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n *\n * @throws {RequiredError}\n */\n testConnectivity: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/ping',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * MarketDataApi - interface\n * @interface MarketDataApi\n */\nexport interface MarketDataApiInterface {\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof MarketDataApiInterface\n */\n testConnectivity(): Promise<RestApiResponse<void>>;\n}\n\n/**\n * MarketDataApi - object-oriented interface\n * @class MarketDataApi\n */\nexport class MarketDataApi implements MarketDataApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = MarketDataApiAxiosParamCreator(configuration);\n }\n\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof MarketDataApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/market-data/Test-Connectivity Binance API Documentation}\n */\n public async testConnectivity(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.testConnectivity();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n assertParamExists,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {\n CancelAllCmOpenConditionalOrdersResponse,\n CancelAllCmOpenOrdersResponse,\n CancelAllUmOpenConditionalOrdersResponse,\n CancelAllUmOpenOrdersResponse,\n CancelCmConditionalOrderResponse,\n CancelCmOrderResponse,\n CancelMarginAccountAllOpenOrdersOnASymbolResponse,\n CancelMarginAccountOcoOrdersResponse,\n CancelMarginAccountOrderResponse,\n CancelUmConditionalOrderResponse,\n CancelUmOrderResponse,\n CmAccountTradeListResponse,\n CmPositionAdlQuantileEstimationResponse,\n GetUmFuturesBnbBurnStatusResponse,\n MarginAccountBorrowResponse,\n MarginAccountNewOcoResponse,\n MarginAccountRepayDebtResponse,\n MarginAccountRepayResponse,\n MarginAccountTradeListResponse,\n ModifyCmOrderResponse,\n ModifyUmOrderResponse,\n NewCmConditionalOrderResponse,\n NewCmOrderResponse,\n NewMarginOrderResponse,\n NewUmConditionalOrderResponse,\n NewUmOrderResponse,\n QueryAllCmConditionalOrdersResponse,\n QueryAllCmOrdersResponse,\n QueryAllCurrentCmOpenConditionalOrdersResponse,\n QueryAllCurrentCmOpenOrdersResponse,\n QueryAllCurrentUmOpenConditionalOrdersResponse,\n QueryAllCurrentUmOpenOrdersResponse,\n QueryAllMarginAccountOrdersResponse,\n QueryAllUmConditionalOrdersResponse,\n QueryAllUmOrdersResponse,\n QueryCmConditionalOrderHistoryResponse,\n QueryCmModifyOrderHistoryResponse,\n QueryCmOrderResponse,\n QueryCurrentCmOpenConditionalOrderResponse,\n QueryCurrentCmOpenOrderResponse,\n QueryCurrentMarginOpenOrderResponse,\n QueryCurrentUmOpenConditionalOrderResponse,\n QueryCurrentUmOpenOrderResponse,\n QueryMarginAccountOrderResponse,\n QueryMarginAccountsAllOcoResponse,\n QueryMarginAccountsOcoResponse,\n QueryMarginAccountsOpenOcoResponse,\n QueryUmConditionalOrderHistoryResponse,\n QueryUmModifyOrderHistoryResponse,\n QueryUmOrderResponse,\n QueryUsersCmForceOrdersResponse,\n QueryUsersMarginForceOrdersResponse,\n QueryUsersUmForceOrdersResponse,\n ToggleBnbBurnOnUmFuturesTradeResponse,\n UmAccountTradeListResponse,\n UmPositionAdlQuantileEstimationResponse,\n} from '../types';\n\n/**\n * TradeApi - axios parameter creator\n */\nconst TradeApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllCmOpenConditionalOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllCmOpenConditionalOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllCmOpenOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllCmOpenOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllUmOpenConditionalOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllUmOpenConditionalOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllUmOpenOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllUmOpenOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelCmConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelCmConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelCmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelCmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountAllOpenOrdersOnASymbol: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountAllOpenOrdersOnASymbol', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {string} symbol\n * @param {number} [orderListId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [listClientOrderId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountOcoOrders: async (\n symbol: string,\n orderListId?: number,\n listClientOrderId?: string,\n newClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountOcoOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderListId !== undefined && orderListId !== null) {\n localVarQueryParameter['orderListId'] = orderListId;\n }\n\n if (listClientOrderId !== undefined && listClientOrderId !== null) {\n localVarQueryParameter['listClientOrderId'] = listClientOrderId;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/orderList',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n newClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelUmConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelUmConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelUmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelUmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [pair]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmAccountTradeList: async (\n symbol?: string,\n pair?: string,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/userTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmPositionAdlQuantileEstimation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/adlQuantile',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesBnbBurnStatus: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/feeBurn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {string} asset\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountBorrow: async (\n asset: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountBorrow', 'asset', asset);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('marginAccountBorrow', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/marginLoan',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {string} symbol\n * @param {MarginAccountNewOcoSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} stopPrice\n * @param {string} [listClientOrderId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [limitClientOrderId] A unique Id for the limit order\n * @param {number} [limitIcebergQty]\n * @param {string} [stopClientOrderId] A unique Id for the stop loss/stop loss limit leg\n * @param {number} [stopLimitPrice] If provided, stopLimitTimeInForce is required.\n * @param {number} [stopIcebergQty]\n * @param {MarginAccountNewOcoStopLimitTimeInForceEnum} [stopLimitTimeInForce] Valid values are `GTC/FOK/IOC`\n * @param {MarginAccountNewOcoNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {MarginAccountNewOcoSideEffectTypeEnum} [sideEffectType] NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountNewOco: async (\n symbol: string,\n side: MarginAccountNewOcoSideEnum,\n quantity: number,\n price: number,\n stopPrice: number,\n listClientOrderId?: string,\n limitClientOrderId?: string,\n limitIcebergQty?: number,\n stopClientOrderId?: string,\n stopLimitPrice?: number,\n stopIcebergQty?: number,\n stopLimitTimeInForce?: MarginAccountNewOcoStopLimitTimeInForceEnum,\n newOrderRespType?: MarginAccountNewOcoNewOrderRespTypeEnum,\n sideEffectType?: MarginAccountNewOcoSideEffectTypeEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('marginAccountNewOco', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('marginAccountNewOco', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('marginAccountNewOco', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('marginAccountNewOco', 'price', price);\n // verify required parameter 'stopPrice' is not null or undefined\n assertParamExists('marginAccountNewOco', 'stopPrice', stopPrice);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (listClientOrderId !== undefined && listClientOrderId !== null) {\n localVarQueryParameter['listClientOrderId'] = listClientOrderId;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (limitClientOrderId !== undefined && limitClientOrderId !== null) {\n localVarQueryParameter['limitClientOrderId'] = limitClientOrderId;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (limitIcebergQty !== undefined && limitIcebergQty !== null) {\n localVarQueryParameter['limitIcebergQty'] = limitIcebergQty;\n }\n\n if (stopClientOrderId !== undefined && stopClientOrderId !== null) {\n localVarQueryParameter['stopClientOrderId'] = stopClientOrderId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (stopLimitPrice !== undefined && stopLimitPrice !== null) {\n localVarQueryParameter['stopLimitPrice'] = stopLimitPrice;\n }\n\n if (stopIcebergQty !== undefined && stopIcebergQty !== null) {\n localVarQueryParameter['stopIcebergQty'] = stopIcebergQty;\n }\n\n if (stopLimitTimeInForce !== undefined && stopLimitTimeInForce !== null) {\n localVarQueryParameter['stopLimitTimeInForce'] = stopLimitTimeInForce;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (sideEffectType !== undefined && sideEffectType !== null) {\n localVarQueryParameter['sideEffectType'] = sideEffectType;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order/oco',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {string} asset\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountRepay: async (\n asset: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountRepay', 'asset', asset);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('marginAccountRepay', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repayLoan',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {string} asset\n * @param {string} [amount]\n * @param {string} [specifyRepayAssets] Specific asset list to repay debt; Can be added in batch, separated by commas\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountRepayDebt: async (\n asset: string,\n amount?: string,\n specifyRepayAssets?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountRepayDebt', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (specifyRepayAssets !== undefined && specifyRepayAssets !== null) {\n localVarQueryParameter['specifyRepayAssets'] = specifyRepayAssets;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/repay-debt',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountTradeList: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('marginAccountTradeList', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/myTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {string} symbol\n * @param {ModifyCmOrderSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {ModifyCmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n modifyCmOrder: async (\n symbol: string,\n side: ModifyCmOrderSideEnum,\n quantity: number,\n price: number,\n orderId?: number,\n origClientOrderId?: string,\n priceMatch?: ModifyCmOrderPriceMatchEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('modifyCmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('modifyCmOrder', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('modifyCmOrder', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('modifyCmOrder', 'price', price);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {string} symbol\n * @param {ModifyUmOrderSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {ModifyUmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n modifyUmOrder: async (\n symbol: string,\n side: ModifyUmOrderSideEnum,\n quantity: number,\n price: number,\n orderId?: number,\n origClientOrderId?: string,\n priceMatch?: ModifyUmOrderPriceMatchEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('modifyUmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('modifyUmOrder', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('modifyUmOrder', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('modifyUmOrder', 'price', price);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {NewCmConditionalOrderSideEnum} side\n * @param {NewCmConditionalOrderStrategyTypeEnum} strategyType \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @param {NewCmConditionalOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewCmConditionalOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewCmConditionalOrderWorkingTypeEnum} [workingType] stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @param {string} [priceProtect] \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @param {string} [newClientStrategyId]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {number} [activationPrice] Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @param {number} [callbackRate] Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newCmConditionalOrder: async (\n symbol: string,\n side: NewCmConditionalOrderSideEnum,\n strategyType: NewCmConditionalOrderStrategyTypeEnum,\n positionSide?: NewCmConditionalOrderPositionSideEnum,\n timeInForce?: NewCmConditionalOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n workingType?: NewCmConditionalOrderWorkingTypeEnum,\n priceProtect?: string,\n newClientStrategyId?: string,\n stopPrice?: number,\n activationPrice?: number,\n callbackRate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'side', side);\n // verify required parameter 'strategyType' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'strategyType', strategyType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (strategyType !== undefined && strategyType !== null) {\n localVarQueryParameter['strategyType'] = strategyType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (workingType !== undefined && workingType !== null) {\n localVarQueryParameter['workingType'] = workingType;\n }\n\n if (priceProtect !== undefined && priceProtect !== null) {\n localVarQueryParameter['priceProtect'] = priceProtect;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (activationPrice !== undefined && activationPrice !== null) {\n localVarQueryParameter['activationPrice'] = activationPrice;\n }\n\n if (callbackRate !== undefined && callbackRate !== null) {\n localVarQueryParameter['callbackRate'] = callbackRate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {string} symbol\n * @param {NewCmOrderSideEnum} side\n * @param {NewCmOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {NewCmOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewCmOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewCmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewCmOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newCmOrder: async (\n symbol: string,\n side: NewCmOrderSideEnum,\n type: NewCmOrderTypeEnum,\n positionSide?: NewCmOrderPositionSideEnum,\n timeInForce?: NewCmOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n priceMatch?: NewCmOrderPriceMatchEnum,\n newClientOrderId?: string,\n newOrderRespType?: NewCmOrderNewOrderRespTypeEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newCmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newCmOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newCmOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {string} symbol\n * @param {NewMarginOrderSideEnum} side\n * @param {NewMarginOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {number} [quantity]\n * @param {number} [quoteOrderQty]\n * @param {number} [price]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewMarginOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {number} [icebergQty] Used with `LIMIT`, `STOP_LOSS_LIMIT`, and `TAKE_PROFIT_LIMIT` to create an iceberg order\n * @param {NewMarginOrderSideEffectTypeEnum} [sideEffectType] NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @param {NewMarginOrderTimeInForceEnum} [timeInForce]\n * @param {NewMarginOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {boolean} [autoRepayAtCancel] 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newMarginOrder: async (\n symbol: string,\n side: NewMarginOrderSideEnum,\n type: NewMarginOrderTypeEnum,\n quantity?: number,\n quoteOrderQty?: number,\n price?: number,\n stopPrice?: number,\n newClientOrderId?: string,\n newOrderRespType?: NewMarginOrderNewOrderRespTypeEnum,\n icebergQty?: number,\n sideEffectType?: NewMarginOrderSideEffectTypeEnum,\n timeInForce?: NewMarginOrderTimeInForceEnum,\n selfTradePreventionMode?: NewMarginOrderSelfTradePreventionModeEnum,\n autoRepayAtCancel?: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newMarginOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newMarginOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newMarginOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (quoteOrderQty !== undefined && quoteOrderQty !== null) {\n localVarQueryParameter['quoteOrderQty'] = quoteOrderQty;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (icebergQty !== undefined && icebergQty !== null) {\n localVarQueryParameter['icebergQty'] = icebergQty;\n }\n\n if (sideEffectType !== undefined && sideEffectType !== null) {\n localVarQueryParameter['sideEffectType'] = sideEffectType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (autoRepayAtCancel !== undefined && autoRepayAtCancel !== null) {\n localVarQueryParameter['autoRepayAtCancel'] = autoRepayAtCancel;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {string} symbol\n * @param {NewUmConditionalOrderSideEnum} side\n * @param {NewUmConditionalOrderStrategyTypeEnum} strategyType \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @param {NewUmConditionalOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewUmConditionalOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewUmConditionalOrderWorkingTypeEnum} [workingType] stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @param {string} [priceProtect] \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @param {string} [newClientStrategyId]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {number} [activationPrice] Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @param {number} [callbackRate] Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @param {NewUmConditionalOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {NewUmConditionalOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {number} [goodTillDate] order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newUmConditionalOrder: async (\n symbol: string,\n side: NewUmConditionalOrderSideEnum,\n strategyType: NewUmConditionalOrderStrategyTypeEnum,\n positionSide?: NewUmConditionalOrderPositionSideEnum,\n timeInForce?: NewUmConditionalOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n workingType?: NewUmConditionalOrderWorkingTypeEnum,\n priceProtect?: string,\n newClientStrategyId?: string,\n stopPrice?: number,\n activationPrice?: number,\n callbackRate?: number,\n priceMatch?: NewUmConditionalOrderPriceMatchEnum,\n selfTradePreventionMode?: NewUmConditionalOrderSelfTradePreventionModeEnum,\n goodTillDate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'side', side);\n // verify required parameter 'strategyType' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'strategyType', strategyType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (strategyType !== undefined && strategyType !== null) {\n localVarQueryParameter['strategyType'] = strategyType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (workingType !== undefined && workingType !== null) {\n localVarQueryParameter['workingType'] = workingType;\n }\n\n if (priceProtect !== undefined && priceProtect !== null) {\n localVarQueryParameter['priceProtect'] = priceProtect;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (activationPrice !== undefined && activationPrice !== null) {\n localVarQueryParameter['activationPrice'] = activationPrice;\n }\n\n if (callbackRate !== undefined && callbackRate !== null) {\n localVarQueryParameter['callbackRate'] = callbackRate;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (goodTillDate !== undefined && goodTillDate !== null) {\n localVarQueryParameter['goodTillDate'] = goodTillDate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {string} symbol\n * @param {NewUmOrderSideEnum} side\n * @param {NewUmOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {NewUmOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewUmOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewUmOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {NewUmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {NewUmOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {number} [goodTillDate] order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newUmOrder: async (\n symbol: string,\n side: NewUmOrderSideEnum,\n type: NewUmOrderTypeEnum,\n positionSide?: NewUmOrderPositionSideEnum,\n timeInForce?: NewUmOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n newClientOrderId?: string,\n newOrderRespType?: NewUmOrderNewOrderRespTypeEnum,\n priceMatch?: NewUmOrderPriceMatchEnum,\n selfTradePreventionMode?: NewUmOrderSelfTradePreventionModeEnum,\n goodTillDate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newUmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newUmOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newUmOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (goodTillDate !== undefined && goodTillDate !== null) {\n localVarQueryParameter['goodTillDate'] = goodTillDate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [strategyId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCmConditionalOrders: async (\n symbol?: string,\n strategyId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {string} symbol\n * @param {string} [pair]\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCmOrders: async (\n symbol: string,\n pair?: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllCmOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentCmOpenConditionalOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [pair]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentCmOpenOrders: async (\n symbol?: string,\n pair?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentUmOpenConditionalOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentUmOpenOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllMarginAccountOrders: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllMarginAccountOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [strategyId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllUmConditionalOrders: async (\n symbol?: string,\n strategyId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllUmOrders: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllUmOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmConditionalOrderHistory: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmConditionalOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/orderHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmModifyOrderHistory: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmModifyOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/orderAmendment',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentCmOpenConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentCmOpenConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentCmOpenOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentCmOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentMarginOpenOrder: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentMarginOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentUmOpenConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentUmOpenConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentUmOpenOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentUmOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryMarginAccountOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsAllOco: async (\n fromId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOrderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {number} [orderListId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsOco: async (\n orderListId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderListId !== undefined && orderListId !== null) {\n localVarQueryParameter['orderListId'] = orderListId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/orderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsOpenOco: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/openOrderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmConditionalOrderHistory: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmConditionalOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/orderHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmModifyOrderHistory: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmModifyOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/orderAmendment',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {QueryUsersCmForceOrdersAutoCloseTypeEnum} [autoCloseType] `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersCmForceOrders: async (\n symbol?: string,\n autoCloseType?: QueryUsersCmForceOrdersAutoCloseTypeEnum,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (autoCloseType !== undefined && autoCloseType !== null) {\n localVarQueryParameter['autoCloseType'] = autoCloseType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersMarginForceOrders: async (\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {string} [symbol]\n * @param {QueryUsersUmForceOrdersAutoCloseTypeEnum} [autoCloseType] `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersUmForceOrders: async (\n symbol?: string,\n autoCloseType?: QueryUsersUmForceOrdersAutoCloseTypeEnum,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (autoCloseType !== undefined && autoCloseType !== null) {\n localVarQueryParameter['autoCloseType'] = autoCloseType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {string} feeBurn \"true\": Fee Discount On; \"false\": Fee Discount Off\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n toggleBnbBurnOnUmFuturesTrade: async (\n feeBurn: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'feeBurn' is not null or undefined\n assertParamExists('toggleBnbBurnOnUmFuturesTrade', 'feeBurn', feeBurn);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (feeBurn !== undefined && feeBurn !== null) {\n localVarQueryParameter['feeBurn'] = feeBurn;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/feeBurn',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {string} symbol\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umAccountTradeList: async (\n symbol: string,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('umAccountTradeList', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/userTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umPositionAdlQuantileEstimation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/adlQuantile',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * TradeApi - interface\n * @interface TradeApi\n */\nexport interface TradeApiInterface {\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>;\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>;\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>;\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>;\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>>;\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>>;\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>;\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>;\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>>;\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>>;\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>>;\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cmAccountTradeList(\n requestParameters?: CmAccountTradeListRequest\n ): Promise<RestApiResponse<CmAccountTradeListResponse>>;\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cmPositionAdlQuantileEstimation(\n requestParameters?: CmPositionAdlQuantileEstimationRequest\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>;\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n getUmFuturesBnbBurnStatus(\n requestParameters?: GetUmFuturesBnbBurnStatusRequest\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>;\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>>;\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>>;\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>>;\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>>;\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>>;\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>>;\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>>;\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>>;\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newCmOrder(requestParameters: NewCmOrderRequest): Promise<RestApiResponse<NewCmOrderResponse>>;\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>>;\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>>;\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newUmOrder(requestParameters: NewUmOrderRequest): Promise<RestApiResponse<NewUmOrderResponse>>;\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCmConditionalOrders(\n requestParameters?: QueryAllCmConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>;\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>>;\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentCmOpenConditionalOrders(\n requestParameters?: QueryAllCurrentCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>;\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentCmOpenOrders(\n requestParameters?: QueryAllCurrentCmOpenOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>;\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentUmOpenConditionalOrders(\n requestParameters?: QueryAllCurrentUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>;\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentUmOpenOrders(\n requestParameters?: QueryAllCurrentUmOpenOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>;\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>;\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllUmConditionalOrders(\n requestParameters?: QueryAllUmConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>;\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>>;\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>;\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>;\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>>;\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>;\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>;\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>;\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>;\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>;\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>>;\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsAllOco(\n requestParameters?: QueryMarginAccountsAllOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>;\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsOco(\n requestParameters?: QueryMarginAccountsOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>;\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsOpenOco(\n requestParameters?: QueryMarginAccountsOpenOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>;\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>;\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>;\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>>;\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersCmForceOrders(\n requestParameters?: QueryUsersCmForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>;\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersMarginForceOrders(\n requestParameters?: QueryUsersMarginForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>;\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersUmForceOrders(\n requestParameters?: QueryUsersUmForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>;\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>;\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>>;\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n umPositionAdlQuantileEstimation(\n requestParameters?: UmPositionAdlQuantileEstimationRequest\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>;\n}\n\n/**\n * Request parameters for cancelAllCmOpenConditionalOrders operation in TradeApi.\n * @interface CancelAllCmOpenConditionalOrdersRequest\n */\nexport interface CancelAllCmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllCmOpenConditionalOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllCmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllCmOpenOrders operation in TradeApi.\n * @interface CancelAllCmOpenOrdersRequest\n */\nexport interface CancelAllCmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllCmOpenOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllCmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllUmOpenConditionalOrders operation in TradeApi.\n * @interface CancelAllUmOpenConditionalOrdersRequest\n */\nexport interface CancelAllUmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllUmOpenConditionalOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllUmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllUmOpenOrders operation in TradeApi.\n * @interface CancelAllUmOpenOrdersRequest\n */\nexport interface CancelAllUmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllUmOpenOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllUmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelCmConditionalOrder operation in TradeApi.\n * @interface CancelCmConditionalOrderRequest\n */\nexport interface CancelCmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelCmOrder operation in TradeApi.\n * @interface CancelCmOrderRequest\n */\nexport interface CancelCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountAllOpenOrdersOnASymbol operation in TradeApi.\n * @interface CancelMarginAccountAllOpenOrdersOnASymbolRequest\n */\nexport interface CancelMarginAccountAllOpenOrdersOnASymbolRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountAllOpenOrdersOnASymbol\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountAllOpenOrdersOnASymbol\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountOcoOrders operation in TradeApi.\n * @interface CancelMarginAccountOcoOrdersRequest\n */\nexport interface CancelMarginAccountOcoOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly symbol: string;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly orderListId?: number;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly listClientOrderId?: string;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly newClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountOrder operation in TradeApi.\n * @interface CancelMarginAccountOrderRequest\n */\nexport interface CancelMarginAccountOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelUmConditionalOrder operation in TradeApi.\n * @interface CancelUmConditionalOrderRequest\n */\nexport interface CancelUmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelUmOrder operation in TradeApi.\n * @interface CancelUmOrderRequest\n */\nexport interface CancelUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmAccountTradeList operation in TradeApi.\n * @interface CmAccountTradeListRequest\n */\nexport interface CmAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly pair?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmPositionAdlQuantileEstimation operation in TradeApi.\n * @interface CmPositionAdlQuantileEstimationRequest\n */\nexport interface CmPositionAdlQuantileEstimationRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCmPositionAdlQuantileEstimation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCmPositionAdlQuantileEstimation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesBnbBurnStatus operation in TradeApi.\n * @interface GetUmFuturesBnbBurnStatusRequest\n */\nexport interface GetUmFuturesBnbBurnStatusRequest {\n /**\n *\n * @type {number}\n * @memberof TradeApiGetUmFuturesBnbBurnStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountBorrow operation in TradeApi.\n * @interface MarginAccountBorrowRequest\n */\nexport interface MarginAccountBorrowRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountNewOco operation in TradeApi.\n * @interface MarginAccountNewOcoRequest\n */\nexport interface MarginAccountNewOcoRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly side: MarginAccountNewOcoSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopPrice: number;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly listClientOrderId?: string;\n\n /**\n * A unique Id for the limit order\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly limitClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly limitIcebergQty?: number;\n\n /**\n * A unique Id for the stop loss/stop loss limit leg\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopClientOrderId?: string;\n\n /**\n * If provided, stopLimitTimeInForce is required.\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopLimitPrice?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopIcebergQty?: number;\n\n /**\n * Valid values are `GTC/FOK/IOC`\n * @type {'GTC' | 'IOC' | 'FOK'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopLimitTimeInForce?: MarginAccountNewOcoStopLimitTimeInForceEnum;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly newOrderRespType?: MarginAccountNewOcoNewOrderRespTypeEnum;\n\n /**\n * NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @type {'NO_SIDE_EFFECT' | 'MARGIN_BUY' | 'AUTO_REPAY'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly sideEffectType?: MarginAccountNewOcoSideEffectTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountRepay operation in TradeApi.\n * @interface MarginAccountRepayRequest\n */\nexport interface MarginAccountRepayRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountRepayDebt operation in TradeApi.\n * @interface MarginAccountRepayDebtRequest\n */\nexport interface MarginAccountRepayDebtRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly asset: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly amount?: string;\n\n /**\n * Specific asset list to repay debt; Can be added in batch, separated by commas\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly specifyRepayAssets?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountTradeList operation in TradeApi.\n * @interface MarginAccountTradeListRequest\n */\nexport interface MarginAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for modifyCmOrder operation in TradeApi.\n * @interface ModifyCmOrderRequest\n */\nexport interface ModifyCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiModifyCmOrder\n */\n readonly side: ModifyCmOrderSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiModifyCmOrder\n */\n readonly priceMatch?: ModifyCmOrderPriceMatchEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for modifyUmOrder operation in TradeApi.\n * @interface ModifyUmOrderRequest\n */\nexport interface ModifyUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiModifyUmOrder\n */\n readonly side: ModifyUmOrderSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiModifyUmOrder\n */\n readonly priceMatch?: ModifyUmOrderPriceMatchEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newCmConditionalOrder operation in TradeApi.\n * @interface NewCmConditionalOrderRequest\n */\nexport interface NewCmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly side: NewCmConditionalOrderSideEnum;\n\n /**\n * \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @type {'STOP' | 'STOP_MARKET' | 'TAKE_PROFIT' | 'TAKE_PROFIT_MARKET' | 'TRAILING_STOP_MARKET'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly strategyType: NewCmConditionalOrderStrategyTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly positionSide?: NewCmConditionalOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly timeInForce?: NewCmConditionalOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly price?: number;\n\n /**\n * stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @type {'MARK_PRICE'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly workingType?: NewCmConditionalOrderWorkingTypeEnum;\n\n /**\n * \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly priceProtect?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly activationPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly callbackRate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newCmOrder operation in TradeApi.\n * @interface NewCmOrderRequest\n */\nexport interface NewCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewCmOrder\n */\n readonly side: NewCmOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewCmOrder\n */\n readonly type: NewCmOrderTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewCmOrder\n */\n readonly positionSide?: NewCmOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewCmOrder\n */\n readonly timeInForce?: NewCmOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly price?: number;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewCmOrder\n */\n readonly priceMatch?: NewCmOrderPriceMatchEnum;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewCmOrder\n */\n readonly newOrderRespType?: NewCmOrderNewOrderRespTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newMarginOrder operation in TradeApi.\n * @interface NewMarginOrderRequest\n */\nexport interface NewMarginOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewMarginOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly side: NewMarginOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly type: NewMarginOrderTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly quantity?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly quoteOrderQty?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly price?: number;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewMarginOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly newOrderRespType?: NewMarginOrderNewOrderRespTypeEnum;\n\n /**\n * Used with `LIMIT`, `STOP_LOSS_LIMIT`, and `TAKE_PROFIT_LIMIT` to create an iceberg order\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly icebergQty?: number;\n\n /**\n * NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @type {'NO_SIDE_EFFECT' | 'MARGIN_BUY' | 'AUTO_REPAY'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly sideEffectType?: NewMarginOrderSideEffectTypeEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly timeInForce?: NewMarginOrderTimeInForceEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly selfTradePreventionMode?: NewMarginOrderSelfTradePreventionModeEnum;\n\n /**\n * 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true\n * @type {boolean}\n * @memberof TradeApiNewMarginOrder\n */\n readonly autoRepayAtCancel?: boolean;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newUmConditionalOrder operation in TradeApi.\n * @interface NewUmConditionalOrderRequest\n */\nexport interface NewUmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly side: NewUmConditionalOrderSideEnum;\n\n /**\n * \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @type {'STOP' | 'STOP_MARKET' | 'TAKE_PROFIT' | 'TAKE_PROFIT_MARKET' | 'TRAILING_STOP_MARKET'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly strategyType: NewUmConditionalOrderStrategyTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly positionSide?: NewUmConditionalOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly timeInForce?: NewUmConditionalOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly price?: number;\n\n /**\n * stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @type {'MARK_PRICE'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly workingType?: NewUmConditionalOrderWorkingTypeEnum;\n\n /**\n * \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly priceProtect?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly activationPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly callbackRate?: number;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly priceMatch?: NewUmConditionalOrderPriceMatchEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly selfTradePreventionMode?: NewUmConditionalOrderSelfTradePreventionModeEnum;\n\n /**\n * order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly goodTillDate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newUmOrder operation in TradeApi.\n * @interface NewUmOrderRequest\n */\nexport interface NewUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewUmOrder\n */\n readonly side: NewUmOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewUmOrder\n */\n readonly type: NewUmOrderTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewUmOrder\n */\n readonly positionSide?: NewUmOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewUmOrder\n */\n readonly timeInForce?: NewUmOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly price?: number;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewUmOrder\n */\n readonly newOrderRespType?: NewUmOrderNewOrderRespTypeEnum;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewUmOrder\n */\n readonly priceMatch?: NewUmOrderPriceMatchEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewUmOrder\n */\n readonly selfTradePreventionMode?: NewUmOrderSelfTradePreventionModeEnum;\n\n /**\n * order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly goodTillDate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCmConditionalOrders operation in TradeApi.\n * @interface QueryAllCmConditionalOrdersRequest\n */\nexport interface QueryAllCmConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly strategyId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCmOrders operation in TradeApi.\n * @interface QueryAllCmOrdersRequest\n */\nexport interface QueryAllCmOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentCmOpenConditionalOrders operation in TradeApi.\n * @interface QueryAllCurrentCmOpenConditionalOrdersRequest\n */\nexport interface QueryAllCurrentCmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentCmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentCmOpenOrders operation in TradeApi.\n * @interface QueryAllCurrentCmOpenOrdersRequest\n */\nexport interface QueryAllCurrentCmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentUmOpenConditionalOrders operation in TradeApi.\n * @interface QueryAllCurrentUmOpenConditionalOrdersRequest\n */\nexport interface QueryAllCurrentUmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentUmOpenConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentUmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentUmOpenOrders operation in TradeApi.\n * @interface QueryAllCurrentUmOpenOrdersRequest\n */\nexport interface QueryAllCurrentUmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentUmOpenOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentUmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllMarginAccountOrders operation in TradeApi.\n * @interface QueryAllMarginAccountOrdersRequest\n */\nexport interface QueryAllMarginAccountOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllUmConditionalOrders operation in TradeApi.\n * @interface QueryAllUmConditionalOrdersRequest\n */\nexport interface QueryAllUmConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly strategyId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllUmOrders operation in TradeApi.\n * @interface QueryAllUmOrdersRequest\n */\nexport interface QueryAllUmOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmConditionalOrderHistory operation in TradeApi.\n * @interface QueryCmConditionalOrderHistoryRequest\n */\nexport interface QueryCmConditionalOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmModifyOrderHistory operation in TradeApi.\n * @interface QueryCmModifyOrderHistoryRequest\n */\nexport interface QueryCmModifyOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly origClientOrderId?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmOrder operation in TradeApi.\n * @interface QueryCmOrderRequest\n */\nexport interface QueryCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentCmOpenConditionalOrder operation in TradeApi.\n * @interface QueryCurrentCmOpenConditionalOrderRequest\n */\nexport interface QueryCurrentCmOpenConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentCmOpenOrder operation in TradeApi.\n * @interface QueryCurrentCmOpenOrderRequest\n */\nexport interface QueryCurrentCmOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentMarginOpenOrder operation in TradeApi.\n * @interface QueryCurrentMarginOpenOrderRequest\n */\nexport interface QueryCurrentMarginOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentMarginOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentMarginOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentUmOpenConditionalOrder operation in TradeApi.\n * @interface QueryCurrentUmOpenConditionalOrderRequest\n */\nexport interface QueryCurrentUmOpenConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentUmOpenOrder operation in TradeApi.\n * @interface QueryCurrentUmOpenOrderRequest\n */\nexport interface QueryCurrentUmOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountOrder operation in TradeApi.\n * @interface QueryMarginAccountOrderRequest\n */\nexport interface QueryMarginAccountOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsAllOco operation in TradeApi.\n * @interface QueryMarginAccountsAllOcoRequest\n */\nexport interface QueryMarginAccountsAllOcoRequest {\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly fromId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsOco operation in TradeApi.\n * @interface QueryMarginAccountsOcoRequest\n */\nexport interface QueryMarginAccountsOcoRequest {\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly orderListId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsOpenOco operation in TradeApi.\n * @interface QueryMarginAccountsOpenOcoRequest\n */\nexport interface QueryMarginAccountsOpenOcoRequest {\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOpenOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmConditionalOrderHistory operation in TradeApi.\n * @interface QueryUmConditionalOrderHistoryRequest\n */\nexport interface QueryUmConditionalOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmModifyOrderHistory operation in TradeApi.\n * @interface QueryUmModifyOrderHistoryRequest\n */\nexport interface QueryUmModifyOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly origClientOrderId?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmOrder operation in TradeApi.\n * @interface QueryUmOrderRequest\n */\nexport interface QueryUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersCmForceOrders operation in TradeApi.\n * @interface QueryUsersCmForceOrdersRequest\n */\nexport interface QueryUsersCmForceOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly symbol?: string;\n\n /**\n * `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @type {'LIQUIDATION' | 'ADL'}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly autoCloseType?: QueryUsersCmForceOrdersAutoCloseTypeEnum;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersMarginForceOrders operation in TradeApi.\n * @interface QueryUsersMarginForceOrdersRequest\n */\nexport interface QueryUsersMarginForceOrdersRequest {\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersUmForceOrders operation in TradeApi.\n * @interface QueryUsersUmForceOrdersRequest\n */\nexport interface QueryUsersUmForceOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly symbol?: string;\n\n /**\n * `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @type {'LIQUIDATION' | 'ADL'}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly autoCloseType?: QueryUsersUmForceOrdersAutoCloseTypeEnum;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for toggleBnbBurnOnUmFuturesTrade operation in TradeApi.\n * @interface ToggleBnbBurnOnUmFuturesTradeRequest\n */\nexport interface ToggleBnbBurnOnUmFuturesTradeRequest {\n /**\n * \"true\": Fee Discount On; \"false\": Fee Discount Off\n * @type {string}\n * @memberof TradeApiToggleBnbBurnOnUmFuturesTrade\n */\n readonly feeBurn: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiToggleBnbBurnOnUmFuturesTrade\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umAccountTradeList operation in TradeApi.\n * @interface UmAccountTradeListRequest\n */\nexport interface UmAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly symbol: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umPositionAdlQuantileEstimation operation in TradeApi.\n * @interface UmPositionAdlQuantileEstimationRequest\n */\nexport interface UmPositionAdlQuantileEstimationRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiUmPositionAdlQuantileEstimation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiUmPositionAdlQuantileEstimation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * TradeApi - object-oriented interface\n * @class TradeApi\n */\nexport class TradeApi implements TradeApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = TradeApiAxiosParamCreator(configuration);\n }\n\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Conditional-Orders Binance API Documentation}\n */\n public async cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelAllCmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllCmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Orders Binance API Documentation}\n */\n public async cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelAllCmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllCmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Conditional-Orders Binance API Documentation}\n */\n public async cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelAllUmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllUmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Orders Binance API Documentation}\n */\n public async cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelAllUmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllUmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Conditional-Order Binance API Documentation}\n */\n public async cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelCmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelCmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Order Binance API Documentation}\n */\n public async cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelCmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-All-Open-Orders-on-a-Symbol Binance API Documentation}\n */\n public async cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountAllOpenOrdersOnASymbolResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-OCO-Orders Binance API Documentation}\n */\n public async cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelMarginAccountOcoOrders(\n requestParameters?.symbol,\n requestParameters?.orderListId,\n requestParameters?.listClientOrderId,\n requestParameters?.newClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountOcoOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-Order Binance API Documentation}\n */\n public async cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelMarginAccountOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.newClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Conditional-Order Binance API Documentation}\n */\n public async cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelUmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelUmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Order Binance API Documentation}\n */\n public async cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelUmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Account-Trade-List Binance API Documentation}\n */\n public async cmAccountTradeList(\n requestParameters: CmAccountTradeListRequest = {}\n ): Promise<RestApiResponse<CmAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cmAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<CmAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n public async cmPositionAdlQuantileEstimation(\n requestParameters: CmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cmPositionAdlQuantileEstimation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CmPositionAdlQuantileEstimationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Get-UM-Futures-BNB-Burn-Status Binance API Documentation}\n */\n public async getUmFuturesBnbBurnStatus(\n requestParameters: GetUmFuturesBnbBurnStatusRequest = {}\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmFuturesBnbBurnStatus(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesBnbBurnStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Borrow Binance API Documentation}\n */\n public async marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountBorrow(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountBorrowResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountNewOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-New-OCO Binance API Documentation}\n */\n public async marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountNewOco(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.stopPrice,\n requestParameters?.listClientOrderId,\n requestParameters?.limitClientOrderId,\n requestParameters?.limitIcebergQty,\n requestParameters?.stopClientOrderId,\n requestParameters?.stopLimitPrice,\n requestParameters?.stopIcebergQty,\n requestParameters?.stopLimitTimeInForce,\n requestParameters?.newOrderRespType,\n requestParameters?.sideEffectType,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountNewOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay Binance API Documentation}\n */\n public async marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountRepay(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountRepayResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayDebtResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay-Debt Binance API Documentation}\n */\n public async marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountRepayDebt(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.specifyRepayAssets,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountRepayDebtResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Trade-List Binance API Documentation}\n */\n public async marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-CM-Order Binance API Documentation}\n */\n public async modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.modifyCmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.priceMatch,\n requestParameters?.recvWindow\n );\n return sendRequest<ModifyCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-UM-Order Binance API Documentation}\n */\n public async modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.modifyUmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.priceMatch,\n requestParameters?.recvWindow\n );\n return sendRequest<ModifyUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Conditional-Order Binance API Documentation}\n */\n public async newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newCmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.strategyType,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.workingType,\n requestParameters?.priceProtect,\n requestParameters?.newClientStrategyId,\n requestParameters?.stopPrice,\n requestParameters?.activationPrice,\n requestParameters?.callbackRate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewCmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Order Binance API Documentation}\n */\n public async newCmOrder(\n requestParameters: NewCmOrderRequest\n ): Promise<RestApiResponse<NewCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newCmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.priceMatch,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.recvWindow\n );\n return sendRequest<NewCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewMarginOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-Margin-Order Binance API Documentation}\n */\n public async newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newMarginOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.quantity,\n requestParameters?.quoteOrderQty,\n requestParameters?.price,\n requestParameters?.stopPrice,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.icebergQty,\n requestParameters?.sideEffectType,\n requestParameters?.timeInForce,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.autoRepayAtCancel,\n requestParameters?.recvWindow\n );\n return sendRequest<NewMarginOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Conditional-Order Binance API Documentation}\n */\n public async newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newUmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.strategyType,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.workingType,\n requestParameters?.priceProtect,\n requestParameters?.newClientStrategyId,\n requestParameters?.stopPrice,\n requestParameters?.activationPrice,\n requestParameters?.callbackRate,\n requestParameters?.priceMatch,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.goodTillDate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewUmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Order Binance API Documentation}\n */\n public async newUmOrder(\n requestParameters: NewUmOrderRequest\n ): Promise<RestApiResponse<NewUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newUmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.priceMatch,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.goodTillDate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCmConditionalOrders(\n requestParameters: QueryAllCmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCmConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCmConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Orders Binance API Documentation}\n */\n public async queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCmOrders(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCmOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCurrentCmOpenConditionalOrders(\n requestParameters: QueryAllCurrentCmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryAllCurrentCmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentCmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Orders Binance API Documentation}\n */\n public async queryAllCurrentCmOpenOrders(\n requestParameters: QueryAllCurrentCmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCurrentCmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentCmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCurrentUmOpenConditionalOrders(\n requestParameters: QueryAllCurrentUmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryAllCurrentUmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentUmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Orders Binance API Documentation}\n */\n public async queryAllCurrentUmOpenOrders(\n requestParameters: QueryAllCurrentUmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCurrentUmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentUmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Margin-Account-Orders Binance API Documentation}\n */\n public async queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllMarginAccountOrders(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllMarginAccountOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Conditional-Orders Binance API Documentation}\n */\n public async queryAllUmConditionalOrders(\n requestParameters: QueryAllUmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllUmConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllUmConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Orders Binance API Documentation}\n */\n public async queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllUmOrders(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllUmOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Conditional-Order-History Binance API Documentation}\n */\n public async queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCmConditionalOrderHistory(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmConditionalOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Modify-Order-History Binance API Documentation}\n */\n public async queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmModifyOrderHistory(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmModifyOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Order Binance API Documentation}\n */\n public async queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Conditional-Order Binance API Documentation}\n */\n public async queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCurrentCmOpenConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentCmOpenConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Order Binance API Documentation}\n */\n public async queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentCmOpenOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentCmOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-Margin-Open-Order Binance API Documentation}\n */\n public async queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentMarginOpenOrder(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentMarginOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Conditional-Order Binance API Documentation}\n */\n public async queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCurrentUmOpenConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentUmOpenConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Order Binance API Documentation}\n */\n public async queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentUmOpenOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentUmOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Order Binance API Documentation}\n */\n public async queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-all-OCO Binance API Documentation}\n */\n public async queryMarginAccountsAllOco(\n requestParameters: QueryMarginAccountsAllOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsAllOco(\n requestParameters?.fromId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsAllOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-OCO Binance API Documentation}\n */\n public async queryMarginAccountsOco(\n requestParameters: QueryMarginAccountsOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsOco(\n requestParameters?.orderListId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Open-OCO Binance API Documentation}\n */\n public async queryMarginAccountsOpenOco(\n requestParameters: QueryMarginAccountsOpenOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsOpenOco(\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsOpenOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Conditional-Order-History Binance API Documentation}\n */\n public async queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryUmConditionalOrderHistory(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmConditionalOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Modify-Order-History Binance API Documentation}\n */\n public async queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmModifyOrderHistory(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmModifyOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Order Binance API Documentation}\n */\n public async queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-CM-Force-Orders Binance API Documentation}\n */\n public async queryUsersCmForceOrders(\n requestParameters: QueryUsersCmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersCmForceOrders(\n requestParameters?.symbol,\n requestParameters?.autoCloseType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersCmForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-Margin-Force-Orders Binance API Documentation}\n */\n public async queryUsersMarginForceOrders(\n requestParameters: QueryUsersMarginForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersMarginForceOrders(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersMarginForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-UM-Force-Orders Binance API Documentation}\n */\n public async queryUsersUmForceOrders(\n requestParameters: QueryUsersUmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersUmForceOrders(\n requestParameters?.symbol,\n requestParameters?.autoCloseType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersUmForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Toggle-BNB-Burn-On-UM-Futures-Trade Binance API Documentation}\n */\n public async toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.toggleBnbBurnOnUmFuturesTrade(\n requestParameters?.feeBurn,\n requestParameters?.recvWindow\n );\n return sendRequest<ToggleBnbBurnOnUmFuturesTradeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Account-Trade-List Binance API Documentation}\n */\n public async umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.umAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<UmAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n public async umPositionAdlQuantileEstimation(\n requestParameters: UmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umPositionAdlQuantileEstimation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmPositionAdlQuantileEstimationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n\nexport enum MarginAccountNewOcoSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum MarginAccountNewOcoStopLimitTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n}\n\nexport enum MarginAccountNewOcoNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum MarginAccountNewOcoSideEffectTypeEnum {\n NO_SIDE_EFFECT = 'NO_SIDE_EFFECT',\n MARGIN_BUY = 'MARGIN_BUY',\n AUTO_REPAY = 'AUTO_REPAY',\n}\n\nexport enum ModifyCmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum ModifyCmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum ModifyUmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum ModifyUmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewCmConditionalOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewCmConditionalOrderStrategyTypeEnum {\n STOP = 'STOP',\n STOP_MARKET = 'STOP_MARKET',\n TAKE_PROFIT = 'TAKE_PROFIT',\n TAKE_PROFIT_MARKET = 'TAKE_PROFIT_MARKET',\n TRAILING_STOP_MARKET = 'TRAILING_STOP_MARKET',\n}\n\nexport enum NewCmConditionalOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewCmConditionalOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewCmConditionalOrderWorkingTypeEnum {\n MARK_PRICE = 'MARK_PRICE',\n}\n\nexport enum NewCmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewCmOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewCmOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewCmOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewCmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewCmOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewMarginOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewMarginOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewMarginOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewMarginOrderSideEffectTypeEnum {\n NO_SIDE_EFFECT = 'NO_SIDE_EFFECT',\n MARGIN_BUY = 'MARGIN_BUY',\n AUTO_REPAY = 'AUTO_REPAY',\n}\n\nexport enum NewMarginOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewMarginOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum NewUmConditionalOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewUmConditionalOrderStrategyTypeEnum {\n STOP = 'STOP',\n STOP_MARKET = 'STOP_MARKET',\n TAKE_PROFIT = 'TAKE_PROFIT',\n TAKE_PROFIT_MARKET = 'TAKE_PROFIT_MARKET',\n TRAILING_STOP_MARKET = 'TRAILING_STOP_MARKET',\n}\n\nexport enum NewUmConditionalOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewUmConditionalOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewUmConditionalOrderWorkingTypeEnum {\n MARK_PRICE = 'MARK_PRICE',\n}\n\nexport enum NewUmConditionalOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewUmConditionalOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum NewUmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewUmOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewUmOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewUmOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewUmOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewUmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewUmOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum QueryUsersCmForceOrdersAutoCloseTypeEnum {\n LIQUIDATION = 'LIQUIDATION',\n ADL = 'ADL',\n}\n\nexport enum QueryUsersUmForceOrdersAutoCloseTypeEnum {\n LIQUIDATION = 'LIQUIDATION',\n ADL = 'ADL',\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type { StartUserDataStreamResponse } from '../types';\n\n/**\n * UserDataStreamsApi - axios parameter creator\n */\nconst UserDataStreamsApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError}\n */\n closeUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n *\n * @throws {RequiredError}\n */\n keepaliveUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError}\n */\n startUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * UserDataStreamsApi - interface\n * @interface UserDataStreamsApi\n */\nexport interface UserDataStreamsApiInterface {\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n closeUserDataStream(): Promise<RestApiResponse<void>>;\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n keepaliveUserDataStream(): Promise<RestApiResponse<void>>;\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>>;\n}\n\n/**\n * UserDataStreamsApi - object-oriented interface\n * @class UserDataStreamsApi\n */\nexport class UserDataStreamsApi implements UserDataStreamsApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = UserDataStreamsApiAxiosParamCreator(configuration);\n }\n\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Close-User-Data-Stream Binance API Documentation}\n */\n public async closeUserDataStream(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.closeUserDataStream();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}\n */\n public async keepaliveUserDataStream(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.keepaliveUserDataStream();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Start-User-Data-Stream Binance API Documentation}\n */\n public async startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.startUserDataStream();\n return sendRequest<StartUserDataStreamResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { ConfigurationRestAPI, RestApiResponse, sendRequest } from '@binance/common';\nimport { AccountApi } from './modules/account-api';\nimport { MarketDataApi } from './modules/market-data-api';\nimport { TradeApi } from './modules/trade-api';\nimport { UserDataStreamsApi } from './modules/user-data-streams-api';\n\nimport type {\n AccountBalanceRequest,\n AccountInformationRequest,\n BnbTransferRequest,\n ChangeAutoRepayFuturesStatusRequest,\n ChangeCmInitialLeverageRequest,\n ChangeCmPositionModeRequest,\n ChangeUmInitialLeverageRequest,\n ChangeUmPositionModeRequest,\n CmNotionalAndLeverageBracketsRequest,\n FundAutoCollectionRequest,\n FundCollectionByAssetRequest,\n GetAutoRepayFuturesStatusRequest,\n GetCmAccountDetailRequest,\n GetCmCurrentPositionModeRequest,\n GetCmIncomeHistoryRequest,\n GetDownloadIdForUmFuturesOrderHistoryRequest,\n GetDownloadIdForUmFuturesTradeHistoryRequest,\n GetDownloadIdForUmFuturesTransactionHistoryRequest,\n GetMarginBorrowLoanInterestHistoryRequest,\n GetUmAccountDetailRequest,\n GetUmAccountDetailV2Request,\n GetUmCurrentPositionModeRequest,\n GetUmFuturesOrderDownloadLinkByIdRequest,\n GetUmFuturesTradeDownloadLinkByIdRequest,\n GetUmFuturesTransactionDownloadLinkByIdRequest,\n GetUmIncomeHistoryRequest,\n GetUserCommissionRateForCmRequest,\n GetUserCommissionRateForUmRequest,\n MarginMaxBorrowRequest,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest,\n QueryCmPositionInformationRequest,\n QueryMarginLoanRecordRequest,\n QueryMarginMaxWithdrawRequest,\n QueryMarginRepayRecordRequest,\n QueryPortfolioMarginNegativeBalanceInterestHistoryRequest,\n QueryUmPositionInformationRequest,\n QueryUserNegativeBalanceAutoExchangeRecordRequest,\n QueryUserRateLimitRequest,\n RepayFuturesNegativeBalanceRequest,\n UmFuturesAccountConfigurationRequest,\n UmFuturesSymbolConfigurationRequest,\n UmNotionalAndLeverageBracketsRequest,\n} from './modules/account-api';\nimport type {} from './modules/market-data-api';\nimport type {\n CancelAllCmOpenConditionalOrdersRequest,\n CancelAllCmOpenOrdersRequest,\n CancelAllUmOpenConditionalOrdersRequest,\n CancelAllUmOpenOrdersRequest,\n CancelCmConditionalOrderRequest,\n CancelCmOrderRequest,\n CancelMarginAccountAllOpenOrdersOnASymbolRequest,\n CancelMarginAccountOcoOrdersRequest,\n CancelMarginAccountOrderRequest,\n CancelUmConditionalOrderRequest,\n CancelUmOrderRequest,\n CmAccountTradeListRequest,\n CmPositionAdlQuantileEstimationRequest,\n GetUmFuturesBnbBurnStatusRequest,\n MarginAccountBorrowRequest,\n MarginAccountNewOcoRequest,\n MarginAccountRepayRequest,\n MarginAccountRepayDebtRequest,\n MarginAccountTradeListRequest,\n ModifyCmOrderRequest,\n ModifyUmOrderRequest,\n NewCmConditionalOrderRequest,\n NewCmOrderRequest,\n NewMarginOrderRequest,\n NewUmConditionalOrderRequest,\n NewUmOrderRequest,\n QueryAllCmConditionalOrdersRequest,\n QueryAllCmOrdersRequest,\n QueryAllCurrentCmOpenConditionalOrdersRequest,\n QueryAllCurrentCmOpenOrdersRequest,\n QueryAllCurrentUmOpenConditionalOrdersRequest,\n QueryAllCurrentUmOpenOrdersRequest,\n QueryAllMarginAccountOrdersRequest,\n QueryAllUmConditionalOrdersRequest,\n QueryAllUmOrdersRequest,\n QueryCmConditionalOrderHistoryRequest,\n QueryCmModifyOrderHistoryRequest,\n QueryCmOrderRequest,\n QueryCurrentCmOpenConditionalOrderRequest,\n QueryCurrentCmOpenOrderRequest,\n QueryCurrentMarginOpenOrderRequest,\n QueryCurrentUmOpenConditionalOrderRequest,\n QueryCurrentUmOpenOrderRequest,\n QueryMarginAccountOrderRequest,\n QueryMarginAccountsAllOcoRequest,\n QueryMarginAccountsOcoRequest,\n QueryMarginAccountsOpenOcoRequest,\n QueryUmConditionalOrderHistoryRequest,\n QueryUmModifyOrderHistoryRequest,\n QueryUmOrderRequest,\n QueryUsersCmForceOrdersRequest,\n QueryUsersMarginForceOrdersRequest,\n QueryUsersUmForceOrdersRequest,\n ToggleBnbBurnOnUmFuturesTradeRequest,\n UmAccountTradeListRequest,\n UmPositionAdlQuantileEstimationRequest,\n} from './modules/trade-api';\nimport type {} from './modules/user-data-streams-api';\n\nimport type {\n AccountBalanceResponse,\n AccountInformationResponse,\n BnbTransferResponse,\n ChangeAutoRepayFuturesStatusResponse,\n ChangeCmInitialLeverageResponse,\n ChangeCmPositionModeResponse,\n ChangeUmInitialLeverageResponse,\n ChangeUmPositionModeResponse,\n CmNotionalAndLeverageBracketsResponse,\n FundAutoCollectionResponse,\n FundCollectionByAssetResponse,\n GetAutoRepayFuturesStatusResponse,\n GetCmAccountDetailResponse,\n GetCmCurrentPositionModeResponse,\n GetCmIncomeHistoryResponse,\n GetDownloadIdForUmFuturesOrderHistoryResponse,\n GetDownloadIdForUmFuturesTradeHistoryResponse,\n GetDownloadIdForUmFuturesTransactionHistoryResponse,\n GetMarginBorrowLoanInterestHistoryResponse,\n GetUmAccountDetailResponse,\n GetUmAccountDetailV2Response,\n GetUmCurrentPositionModeResponse,\n GetUmFuturesOrderDownloadLinkByIdResponse,\n GetUmFuturesTradeDownloadLinkByIdResponse,\n GetUmFuturesTransactionDownloadLinkByIdResponse,\n GetUmIncomeHistoryResponse,\n GetUserCommissionRateForCmResponse,\n GetUserCommissionRateForUmResponse,\n MarginMaxBorrowResponse,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse,\n QueryCmPositionInformationResponse,\n QueryMarginLoanRecordResponse,\n QueryMarginMaxWithdrawResponse,\n QueryMarginRepayRecordResponse,\n QueryPortfolioMarginNegativeBalanceInterestHistoryResponse,\n QueryUmPositionInformationResponse,\n QueryUserNegativeBalanceAutoExchangeRecordResponse,\n QueryUserRateLimitResponse,\n RepayFuturesNegativeBalanceResponse,\n UmFuturesAccountConfigurationResponse,\n UmFuturesSymbolConfigurationResponse,\n UmNotionalAndLeverageBracketsResponse,\n} from './types';\nimport type {} from './types';\nimport type {\n CancelAllCmOpenConditionalOrdersResponse,\n CancelAllCmOpenOrdersResponse,\n CancelAllUmOpenConditionalOrdersResponse,\n CancelAllUmOpenOrdersResponse,\n CancelCmConditionalOrderResponse,\n CancelCmOrderResponse,\n CancelMarginAccountAllOpenOrdersOnASymbolResponse,\n CancelMarginAccountOcoOrdersResponse,\n CancelMarginAccountOrderResponse,\n CancelUmConditionalOrderResponse,\n CancelUmOrderResponse,\n CmAccountTradeListResponse,\n CmPositionAdlQuantileEstimationResponse,\n GetUmFuturesBnbBurnStatusResponse,\n MarginAccountBorrowResponse,\n MarginAccountNewOcoResponse,\n MarginAccountRepayResponse,\n MarginAccountRepayDebtResponse,\n MarginAccountTradeListResponse,\n ModifyCmOrderResponse,\n ModifyUmOrderResponse,\n NewCmConditionalOrderResponse,\n NewCmOrderResponse,\n NewMarginOrderResponse,\n NewUmConditionalOrderResponse,\n NewUmOrderResponse,\n QueryAllCmConditionalOrdersResponse,\n QueryAllCmOrdersResponse,\n QueryAllCurrentCmOpenConditionalOrdersResponse,\n QueryAllCurrentCmOpenOrdersResponse,\n QueryAllCurrentUmOpenConditionalOrdersResponse,\n QueryAllCurrentUmOpenOrdersResponse,\n QueryAllMarginAccountOrdersResponse,\n QueryAllUmConditionalOrdersResponse,\n QueryAllUmOrdersResponse,\n QueryCmConditionalOrderHistoryResponse,\n QueryCmModifyOrderHistoryResponse,\n QueryCmOrderResponse,\n QueryCurrentCmOpenConditionalOrderResponse,\n QueryCurrentCmOpenOrderResponse,\n QueryCurrentMarginOpenOrderResponse,\n QueryCurrentUmOpenConditionalOrderResponse,\n QueryCurrentUmOpenOrderResponse,\n QueryMarginAccountOrderResponse,\n QueryMarginAccountsAllOcoResponse,\n QueryMarginAccountsOcoResponse,\n QueryMarginAccountsOpenOcoResponse,\n QueryUmConditionalOrderHistoryResponse,\n QueryUmModifyOrderHistoryResponse,\n QueryUmOrderResponse,\n QueryUsersCmForceOrdersResponse,\n QueryUsersMarginForceOrdersResponse,\n QueryUsersUmForceOrdersResponse,\n ToggleBnbBurnOnUmFuturesTradeResponse,\n UmAccountTradeListResponse,\n UmPositionAdlQuantileEstimationResponse,\n} from './types';\nimport type { StartUserDataStreamResponse } from './types';\n\nexport class RestAPI {\n private configuration: ConfigurationRestAPI;\n private accountApi: AccountApi;\n private marketDataApi: MarketDataApi;\n private tradeApi: TradeApi;\n private userDataStreamsApi: UserDataStreamsApi;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.accountApi = new AccountApi(configuration);\n this.marketDataApi = new MarketDataApi(configuration);\n this.tradeApi = new TradeApi(configuration);\n this.userDataStreamsApi = new UserDataStreamsApi(configuration);\n }\n\n /**\n * Generic function to send a request.\n * @param endpoint - The API endpoint to call.\n * @param method - HTTP method to use (GET, POST, DELETE, etc.).\n * @param params - Query parameters for the request.\n *\n * @returns A promise resolving to the response data object.\n */\n sendRequest<T>(\n endpoint: string,\n method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH',\n params: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(this.configuration, endpoint, method, params, undefined);\n }\n\n /**\n * Generic function to send a signed request.\n * @param endpoint - The API endpoint to call.\n * @param method - HTTP method to use (GET, POST, DELETE, etc.).\n * @param params - Query parameters for the request.\n *\n * @returns A promise resolving to the response data object.\n */\n sendSignedRequest<T>(\n endpoint: string,\n method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH',\n params: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(this.configuration, endpoint, method, params, undefined, {\n isSigned: true,\n });\n }\n\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Balance Binance API Documentation}\n */\n accountBalance(\n requestParameters: AccountBalanceRequest = {}\n ): Promise<RestApiResponse<AccountBalanceResponse>> {\n return this.accountApi.accountBalance(requestParameters);\n }\n\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Information Binance API Documentation}\n */\n accountInformation(\n requestParameters: AccountInformationRequest = {}\n ): Promise<RestApiResponse<AccountInformationResponse>> {\n return this.accountApi.accountInformation(requestParameters);\n }\n\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<BnbTransferResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/BNB-transfer Binance API Documentation}\n */\n bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>> {\n return this.accountApi.bnbTransfer(requestParameters);\n }\n\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-Auto-repay-futures-Status Binance API Documentation}\n */\n changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>> {\n return this.accountApi.changeAutoRepayFuturesStatus(requestParameters);\n }\n\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Initial-Leverage Binance API Documentation}\n */\n changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>> {\n return this.accountApi.changeCmInitialLeverage(requestParameters);\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Position-Mode Binance API Documentation}\n */\n changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>> {\n return this.accountApi.changeCmPositionMode(requestParameters);\n }\n\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Initial-Leverage Binance API Documentation}\n */\n changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>> {\n return this.accountApi.changeUmInitialLeverage(requestParameters);\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Position-Mode Binance API Documentation}\n */\n changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>> {\n return this.accountApi.changeUmPositionMode(requestParameters);\n }\n\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/CM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n cmNotionalAndLeverageBrackets(\n requestParameters: CmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>> {\n return this.accountApi.cmNotionalAndLeverageBrackets(requestParameters);\n }\n\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundAutoCollectionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Auto-collection Binance API Documentation}\n */\n fundAutoCollection(\n requestParameters: FundAutoCollectionRequest = {}\n ): Promise<RestApiResponse<FundAutoCollectionResponse>> {\n return this.accountApi.fundAutoCollection(requestParameters);\n }\n\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundCollectionByAssetResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Collection-by-Asset Binance API Documentation}\n */\n fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>> {\n return this.accountApi.fundCollectionByAsset(requestParameters);\n }\n\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Auto-repay-futures-Status Binance API Documentation}\n */\n getAutoRepayFuturesStatus(\n requestParameters: GetAutoRepayFuturesStatusRequest = {}\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>> {\n return this.accountApi.getAutoRepayFuturesStatus(requestParameters);\n }\n\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Account-Detail Binance API Documentation}\n */\n getCmAccountDetail(\n requestParameters: GetCmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>> {\n return this.accountApi.getCmAccountDetail(requestParameters);\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Current-Position-Mode Binance API Documentation}\n */\n getCmCurrentPositionMode(\n requestParameters: GetCmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>> {\n return this.accountApi.getCmCurrentPositionMode(requestParameters);\n }\n\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Income-History Binance API Documentation}\n */\n getCmIncomeHistory(\n requestParameters: GetCmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>> {\n return this.accountApi.getCmIncomeHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Order-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesOrderHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Trade-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesTradeHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Transaction-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesTransactionHistory(requestParameters);\n }\n\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Margin-BorrowLoan-Interest-History Binance API Documentation}\n */\n getMarginBorrowLoanInterestHistory(\n requestParameters: GetMarginBorrowLoanInterestHistoryRequest = {}\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>> {\n return this.accountApi.getMarginBorrowLoanInterestHistory(requestParameters);\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail Binance API Documentation}\n */\n getUmAccountDetail(\n requestParameters: GetUmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>> {\n return this.accountApi.getUmAccountDetail(requestParameters);\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailV2Response>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail-V2 Binance API Documentation}\n */\n getUmAccountDetailV2(\n requestParameters: GetUmAccountDetailV2Request = {}\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>> {\n return this.accountApi.getUmAccountDetailV2(requestParameters);\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Current-Position-Mode Binance API Documentation}\n */\n getUmCurrentPositionMode(\n requestParameters: GetUmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>> {\n return this.accountApi.getUmCurrentPositionMode(requestParameters);\n }\n\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Order-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesOrderDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Trade-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesTradeDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Transaction-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesTransactionDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Income-History Binance API Documentation}\n */\n getUmIncomeHistory(\n requestParameters: GetUmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>> {\n return this.accountApi.getUmIncomeHistory(requestParameters);\n }\n\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-CM Binance API Documentation}\n */\n getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>> {\n return this.accountApi.getUserCommissionRateForCm(requestParameters);\n }\n\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-UM Binance API Documentation}\n */\n getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>> {\n return this.accountApi.getUserCommissionRateForUm(requestParameters);\n }\n\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginMaxBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Margin-Max-Borrow Binance API Documentation}\n */\n marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>> {\n return this.accountApi.marginMaxBorrow(requestParameters);\n }\n\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Portfolio-Margin-UM-Trading-Quantitative-Rules-Indicators Binance API Documentation}\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest = {}\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>> {\n return this.accountApi.portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters\n );\n }\n\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-CM-Position-Information Binance API Documentation}\n */\n queryCmPositionInformation(\n requestParameters: QueryCmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>> {\n return this.accountApi.queryCmPositionInformation(requestParameters);\n }\n\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginLoanRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Loan-Record Binance API Documentation}\n */\n queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>> {\n return this.accountApi.queryMarginLoanRecord(requestParameters);\n }\n\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Max-Withdraw Binance API Documentation}\n */\n queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>> {\n return this.accountApi.queryMarginMaxWithdraw(requestParameters);\n }\n\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginRepayRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-repay-Record Binance API Documentation}\n */\n queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>> {\n return this.accountApi.queryMarginRepayRecord(requestParameters);\n }\n\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Portfolio-Margin-Negative-Balance-Interest-History Binance API Documentation}\n */\n queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest = {}\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>> {\n return this.accountApi.queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters\n );\n }\n\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-UM-Position-Information Binance API Documentation}\n */\n queryUmPositionInformation(\n requestParameters: QueryUmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>> {\n return this.accountApi.queryUmPositionInformation(requestParameters);\n }\n\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Negative-Balance-Auto-Exchange-Record Binance API Documentation}\n */\n queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>> {\n return this.accountApi.queryUserNegativeBalanceAutoExchangeRecord(requestParameters);\n }\n\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserRateLimitResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Rate-Limit Binance API Documentation}\n */\n queryUserRateLimit(\n requestParameters: QueryUserRateLimitRequest = {}\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>> {\n return this.accountApi.queryUserRateLimit(requestParameters);\n }\n\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Repay-futures-Negative-Balance Binance API Documentation}\n */\n repayFuturesNegativeBalance(\n requestParameters: RepayFuturesNegativeBalanceRequest = {}\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>> {\n return this.accountApi.repayFuturesNegativeBalance(requestParameters);\n }\n\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Account-Config Binance API Documentation}\n */\n umFuturesAccountConfiguration(\n requestParameters: UmFuturesAccountConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>> {\n return this.accountApi.umFuturesAccountConfiguration(requestParameters);\n }\n\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Symbol-Config Binance API Documentation}\n */\n umFuturesSymbolConfiguration(\n requestParameters: UmFuturesSymbolConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>> {\n return this.accountApi.umFuturesSymbolConfiguration(requestParameters);\n }\n\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/UM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n umNotionalAndLeverageBrackets(\n requestParameters: UmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>> {\n return this.accountApi.umNotionalAndLeverageBrackets(requestParameters);\n }\n\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/market-data/Test-Connectivity Binance API Documentation}\n */\n testConnectivity(): Promise<RestApiResponse<void>> {\n return this.marketDataApi.testConnectivity();\n }\n\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Conditional-Orders Binance API Documentation}\n */\n cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>> {\n return this.tradeApi.cancelAllCmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Orders Binance API Documentation}\n */\n cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>> {\n return this.tradeApi.cancelAllCmOpenOrders(requestParameters);\n }\n\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Conditional-Orders Binance API Documentation}\n */\n cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>> {\n return this.tradeApi.cancelAllUmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Orders Binance API Documentation}\n */\n cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>> {\n return this.tradeApi.cancelAllUmOpenOrders(requestParameters);\n }\n\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Conditional-Order Binance API Documentation}\n */\n cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>> {\n return this.tradeApi.cancelCmConditionalOrder(requestParameters);\n }\n\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Order Binance API Documentation}\n */\n cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>> {\n return this.tradeApi.cancelCmOrder(requestParameters);\n }\n\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-All-Open-Orders-on-a-Symbol Binance API Documentation}\n */\n cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>> {\n return this.tradeApi.cancelMarginAccountAllOpenOrdersOnASymbol(requestParameters);\n }\n\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-OCO-Orders Binance API Documentation}\n */\n cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>> {\n return this.tradeApi.cancelMarginAccountOcoOrders(requestParameters);\n }\n\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-Order Binance API Documentation}\n */\n cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>> {\n return this.tradeApi.cancelMarginAccountOrder(requestParameters);\n }\n\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Conditional-Order Binance API Documentation}\n */\n cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>> {\n return this.tradeApi.cancelUmConditionalOrder(requestParameters);\n }\n\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Order Binance API Documentation}\n */\n cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>> {\n return this.tradeApi.cancelUmOrder(requestParameters);\n }\n\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Account-Trade-List Binance API Documentation}\n */\n cmAccountTradeList(\n requestParameters: CmAccountTradeListRequest = {}\n ): Promise<RestApiResponse<CmAccountTradeListResponse>> {\n return this.tradeApi.cmAccountTradeList(requestParameters);\n }\n\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n cmPositionAdlQuantileEstimation(\n requestParameters: CmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>> {\n return this.tradeApi.cmPositionAdlQuantileEstimation(requestParameters);\n }\n\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Get-UM-Futures-BNB-Burn-Status Binance API Documentation}\n */\n getUmFuturesBnbBurnStatus(\n requestParameters: GetUmFuturesBnbBurnStatusRequest = {}\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>> {\n return this.tradeApi.getUmFuturesBnbBurnStatus(requestParameters);\n }\n\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Borrow Binance API Documentation}\n */\n marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>> {\n return this.tradeApi.marginAccountBorrow(requestParameters);\n }\n\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountNewOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-New-OCO Binance API Documentation}\n */\n marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>> {\n return this.tradeApi.marginAccountNewOco(requestParameters);\n }\n\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay Binance API Documentation}\n */\n marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>> {\n return this.tradeApi.marginAccountRepay(requestParameters);\n }\n\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayDebtResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay-Debt Binance API Documentation}\n */\n marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>> {\n return this.tradeApi.marginAccountRepayDebt(requestParameters);\n }\n\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Trade-List Binance API Documentation}\n */\n marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>> {\n return this.tradeApi.marginAccountTradeList(requestParameters);\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-CM-Order Binance API Documentation}\n */\n modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>> {\n return this.tradeApi.modifyCmOrder(requestParameters);\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-UM-Order Binance API Documentation}\n */\n modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>> {\n return this.tradeApi.modifyUmOrder(requestParameters);\n }\n\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Conditional-Order Binance API Documentation}\n */\n newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>> {\n return this.tradeApi.newCmConditionalOrder(requestParameters);\n }\n\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Order Binance API Documentation}\n */\n newCmOrder(requestParameters: NewCmOrderRequest): Promise<RestApiResponse<NewCmOrderResponse>> {\n return this.tradeApi.newCmOrder(requestParameters);\n }\n\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewMarginOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-Margin-Order Binance API Documentation}\n */\n newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>> {\n return this.tradeApi.newMarginOrder(requestParameters);\n }\n\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Conditional-Order Binance API Documentation}\n */\n newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>> {\n return this.tradeApi.newUmConditionalOrder(requestParameters);\n }\n\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Order Binance API Documentation}\n */\n newUmOrder(requestParameters: NewUmOrderRequest): Promise<RestApiResponse<NewUmOrderResponse>> {\n return this.tradeApi.newUmOrder(requestParameters);\n }\n\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Conditional-Orders Binance API Documentation}\n */\n queryAllCmConditionalOrders(\n requestParameters: QueryAllCmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCmConditionalOrders(requestParameters);\n }\n\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Orders Binance API Documentation}\n */\n queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>> {\n return this.tradeApi.queryAllCmOrders(requestParameters);\n }\n\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Conditional-Orders Binance API Documentation}\n */\n queryAllCurrentCmOpenConditionalOrders(\n requestParameters: QueryAllCurrentCmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCurrentCmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Orders Binance API Documentation}\n */\n queryAllCurrentCmOpenOrders(\n requestParameters: QueryAllCurrentCmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>> {\n return this.tradeApi.queryAllCurrentCmOpenOrders(requestParameters);\n }\n\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Conditional-Orders Binance API Documentation}\n */\n queryAllCurrentUmOpenConditionalOrders(\n requestParameters: QueryAllCurrentUmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCurrentUmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Orders Binance API Documentation}\n */\n queryAllCurrentUmOpenOrders(\n requestParameters: QueryAllCurrentUmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>> {\n return this.tradeApi.queryAllCurrentUmOpenOrders(requestParameters);\n }\n\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Margin-Account-Orders Binance API Documentation}\n */\n queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>> {\n return this.tradeApi.queryAllMarginAccountOrders(requestParameters);\n }\n\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Conditional-Orders Binance API Documentation}\n */\n queryAllUmConditionalOrders(\n requestParameters: QueryAllUmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>> {\n return this.tradeApi.queryAllUmConditionalOrders(requestParameters);\n }\n\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Orders Binance API Documentation}\n */\n queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>> {\n return this.tradeApi.queryAllUmOrders(requestParameters);\n }\n\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Conditional-Order-History Binance API Documentation}\n */\n queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>> {\n return this.tradeApi.queryCmConditionalOrderHistory(requestParameters);\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Modify-Order-History Binance API Documentation}\n */\n queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>> {\n return this.tradeApi.queryCmModifyOrderHistory(requestParameters);\n }\n\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Order Binance API Documentation}\n */\n queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>> {\n return this.tradeApi.queryCmOrder(requestParameters);\n }\n\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Conditional-Order Binance API Documentation}\n */\n queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>> {\n return this.tradeApi.queryCurrentCmOpenConditionalOrder(requestParameters);\n }\n\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Order Binance API Documentation}\n */\n queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>> {\n return this.tradeApi.queryCurrentCmOpenOrder(requestParameters);\n }\n\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-Margin-Open-Order Binance API Documentation}\n */\n queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>> {\n return this.tradeApi.queryCurrentMarginOpenOrder(requestParameters);\n }\n\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Conditional-Order Binance API Documentation}\n */\n queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>> {\n return this.tradeApi.queryCurrentUmOpenConditionalOrder(requestParameters);\n }\n\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Order Binance API Documentation}\n */\n queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>> {\n return this.tradeApi.queryCurrentUmOpenOrder(requestParameters);\n }\n\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Order Binance API Documentation}\n */\n queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>> {\n return this.tradeApi.queryMarginAccountOrder(requestParameters);\n }\n\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-all-OCO Binance API Documentation}\n */\n queryMarginAccountsAllOco(\n requestParameters: QueryMarginAccountsAllOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>> {\n return this.tradeApi.queryMarginAccountsAllOco(requestParameters);\n }\n\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-OCO Binance API Documentation}\n */\n queryMarginAccountsOco(\n requestParameters: QueryMarginAccountsOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>> {\n return this.tradeApi.queryMarginAccountsOco(requestParameters);\n }\n\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Open-OCO Binance API Documentation}\n */\n queryMarginAccountsOpenOco(\n requestParameters: QueryMarginAccountsOpenOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>> {\n return this.tradeApi.queryMarginAccountsOpenOco(requestParameters);\n }\n\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Conditional-Order-History Binance API Documentation}\n */\n queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>> {\n return this.tradeApi.queryUmConditionalOrderHistory(requestParameters);\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Modify-Order-History Binance API Documentation}\n */\n queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>> {\n return this.tradeApi.queryUmModifyOrderHistory(requestParameters);\n }\n\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Order Binance API Documentation}\n */\n queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>> {\n return this.tradeApi.queryUmOrder(requestParameters);\n }\n\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-CM-Force-Orders Binance API Documentation}\n */\n queryUsersCmForceOrders(\n requestParameters: QueryUsersCmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>> {\n return this.tradeApi.queryUsersCmForceOrders(requestParameters);\n }\n\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-Margin-Force-Orders Binance API Documentation}\n */\n queryUsersMarginForceOrders(\n requestParameters: QueryUsersMarginForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>> {\n return this.tradeApi.queryUsersMarginForceOrders(requestParameters);\n }\n\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-UM-Force-Orders Binance API Documentation}\n */\n queryUsersUmForceOrders(\n requestParameters: QueryUsersUmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>> {\n return this.tradeApi.queryUsersUmForceOrders(requestParameters);\n }\n\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Toggle-BNB-Burn-On-UM-Futures-Trade Binance API Documentation}\n */\n toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>> {\n return this.tradeApi.toggleBnbBurnOnUmFuturesTrade(requestParameters);\n }\n\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Account-Trade-List Binance API Documentation}\n */\n umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>> {\n return this.tradeApi.umAccountTradeList(requestParameters);\n }\n\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n umPositionAdlQuantileEstimation(\n requestParameters: UmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>> {\n return this.tradeApi.umPositionAdlQuantileEstimation(requestParameters);\n }\n\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Close-User-Data-Stream Binance API Documentation}\n */\n closeUserDataStream(): Promise<RestApiResponse<void>> {\n return this.userDataStreamsApi.closeUserDataStream();\n }\n\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}\n */\n keepaliveUserDataStream(): Promise<RestApiResponse<void>> {\n return this.userDataStreamsApi.keepaliveUserDataStream();\n }\n\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Start-User-Data-Stream Binance API Documentation}\n */\n startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>> {\n return this.userDataStreamsApi.startUserDataStream();\n }\n}\n"],"mappings":"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","names":["import_common","import_common","import_common","MarginAccountNewOcoSideEnum","MarginAccountNewOcoStopLimitTimeInForceEnum","MarginAccountNewOcoNewOrderRespTypeEnum","MarginAccountNewOcoSideEffectTypeEnum","ModifyCmOrderSideEnum","ModifyCmOrderPriceMatchEnum","ModifyUmOrderSideEnum","ModifyUmOrderPriceMatchEnum","NewCmConditionalOrderSideEnum","NewCmConditionalOrderStrategyTypeEnum","NewCmConditionalOrderPositionSideEnum","NewCmConditionalOrderTimeInForceEnum","NewCmConditionalOrderWorkingTypeEnum","NewCmOrderSideEnum","NewCmOrderTypeEnum","NewCmOrderPositionSideEnum","NewCmOrderTimeInForceEnum","NewCmOrderPriceMatchEnum","NewCmOrderNewOrderRespTypeEnum","NewMarginOrderSideEnum","NewMarginOrderTypeEnum","NewMarginOrderNewOrderRespTypeEnum","NewMarginOrderSideEffectTypeEnum","NewMarginOrderTimeInForceEnum","NewMarginOrderSelfTradePreventionModeEnum","NewUmConditionalOrderSideEnum","NewUmConditionalOrderStrategyTypeEnum","NewUmConditionalOrderPositionSideEnum","NewUmConditionalOrderTimeInForceEnum","NewUmConditionalOrderWorkingTypeEnum","NewUmConditionalOrderPriceMatchEnum","NewUmConditionalOrderSelfTradePreventionModeEnum","NewUmOrderSideEnum","NewUmOrderTypeEnum","NewUmOrderPositionSideEnum","NewUmOrderTimeInForceEnum","NewUmOrderNewOrderRespTypeEnum","NewUmOrderPriceMatchEnum","NewUmOrderSelfTradePreventionModeEnum","QueryUsersCmForceOrdersAutoCloseTypeEnum","QueryUsersUmForceOrdersAutoCloseTypeEnum","import_common","import_common","import_common"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/derivatives-trading-portfolio-margin.ts","../package.json","../src/rest-api/index.ts","../src/rest-api/modules/account-api.ts","../src/rest-api/modules/market-data-api.ts","../src/rest-api/modules/trade-api.ts","../src/rest-api/modules/user-data-streams-api.ts","../src/rest-api/rest-api.ts","../src/websocket-streams/index.ts","../src/websocket-streams/websocket-streams.ts","../src/websocket-streams/websocket-streams-connection.ts"],"sourcesContent":["export {\n DerivativesTradingPortfolioMargin,\n ConfigurationDerivativesTradingPortfolioMargin,\n} from './derivatives-trading-portfolio-margin';\nexport * as DerivativesTradingPortfolioMarginRestAPI from './rest-api';\n\nexport * as DerivativesTradingPortfolioMarginWebsocketStreams from './websocket-streams';\n\nexport {\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_TESTNET_URL,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_WS_STREAMS_PROD_URL,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_WS_STREAMS_TESTNET_URL,\n ConnectorClientError,\n RequiredError,\n UnauthorizedError,\n ForbiddenError,\n TooManyRequestsError,\n RateLimitBanError,\n ServerError,\n NetworkError,\n NotFoundError,\n BadRequestError,\n} from '@binance/common';\n","import {\n buildUserAgent,\n ConfigurationRestAPI,\n ConfigurationWebsocketStreams,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL,\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_WS_STREAMS_PROD_URL,\n} from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nimport { WebsocketStreams } from './websocket-streams';\n\nexport interface ConfigurationDerivativesTradingPortfolioMargin {\n configurationRestAPI?: ConfigurationRestAPI;\n\n configurationWebsocketStreams?: ConfigurationWebsocketStreams;\n}\n\nexport class DerivativesTradingPortfolioMargin {\n public restAPI!: RestAPI;\n\n public websocketStreams!: WebsocketStreams;\n\n constructor(config: ConfigurationDerivativesTradingPortfolioMargin) {\n const userAgent = buildUserAgent(name, version);\n\n if (config?.configurationRestAPI) {\n const configRestAPI = new ConfigurationRestAPI(\n config.configurationRestAPI\n ) as ConfigurationRestAPI & {\n baseOptions: Record<string, unknown>;\n };\n configRestAPI.basePath =\n configRestAPI.basePath || DERIVATIVES_TRADING_PORTFOLIO_MARGIN_REST_API_PROD_URL;\n configRestAPI.baseOptions = configRestAPI.baseOptions || {};\n configRestAPI.baseOptions.headers = {\n ...(configRestAPI.baseOptions.headers || {}),\n 'User-Agent': userAgent,\n };\n this.restAPI = new RestAPI(configRestAPI);\n }\n if (config?.configurationWebsocketStreams) {\n const configWebsocketStreams = new ConfigurationWebsocketStreams(\n config.configurationWebsocketStreams\n ) as ConfigurationWebsocketStreams & {\n userAgent: string;\n };\n configWebsocketStreams.wsURL =\n configWebsocketStreams.wsURL ||\n DERIVATIVES_TRADING_PORTFOLIO_MARGIN_WS_STREAMS_PROD_URL;\n configWebsocketStreams.userAgent = userAgent;\n this.websocketStreams = new WebsocketStreams(configWebsocketStreams);\n }\n }\n}\n","{\n \"name\": \"@binance/derivatives-trading-portfolio-margin\",\n \"description\": \"Official Binance Derivatives Trading (COIN-M Futures) Connector - A lightweight library that provides a convenient interface to Binance's COINN-M Futures REST API, WebSocket API and WebSocket Streams.\",\n \"version\": \"5.0.0\",\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"require\": \"./dist/index.js\",\n \"import\": \"./dist/index.mjs\"\n }\n },\n \"scripts\": {\n \"prepublishOnly\": \"npm run build\",\n \"build\": \"npm run clean && tsup\",\n \"typecheck\": \"tsc --noEmit\",\n \"clean\": \"rm -rf dist\",\n \"test\": \"npx jest --maxWorkers=4 --bail\",\n \"test:watch\": \"npx jest --watch\",\n \"format\": \"npx prettier --ignore-path .prettierignore --write .\",\n \"lint\": \"npx eslint '**/*.ts' --fix\"\n },\n \"keywords\": [\n \"Binance\",\n \"API\",\n \"Derivatives\",\n \"Futures\",\n \"Coin-M\",\n \"Connector\",\n \"REST\",\n \"WebSocket\",\n \"Trading\"\n ],\n \"author\": \"Binance\",\n \"license\": \"MIT\",\n \"files\": [\n \"dist\"\n ],\n \"devDependencies\": {\n \"@types/jest\": \"^29.5.4\",\n \"@types/node\": \"^20.17.24\",\n \"eslint\": \"8.57.0\",\n \"jest\": \"^29.6.4\",\n \"prettier\": \"^3.3.3\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.1\",\n \"tsup\": \"^8.4.0\",\n \"typescript\": \"^5.7.2\",\n \"typescript-eslint\": \"^8.24.0\"\n },\n \"dependencies\": {\n \"@binance/common\": \"1.1.3\",\n \"@types/ws\": \"^8.5.5\",\n \"axios\": \"^1.7.4\",\n \"ws\": \"^8.17.1\"\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nexport * from './types';\nexport * from './modules';\nexport * from './rest-api';\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n assertParamExists,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {\n AccountBalanceResponse,\n AccountInformationResponse,\n BnbTransferResponse,\n ChangeAutoRepayFuturesStatusResponse,\n ChangeCmInitialLeverageResponse,\n ChangeCmPositionModeResponse,\n ChangeUmInitialLeverageResponse,\n ChangeUmPositionModeResponse,\n CmNotionalAndLeverageBracketsResponse,\n FundAutoCollectionResponse,\n FundCollectionByAssetResponse,\n GetAutoRepayFuturesStatusResponse,\n GetCmAccountDetailResponse,\n GetCmCurrentPositionModeResponse,\n GetCmIncomeHistoryResponse,\n GetDownloadIdForUmFuturesOrderHistoryResponse,\n GetDownloadIdForUmFuturesTradeHistoryResponse,\n GetDownloadIdForUmFuturesTransactionHistoryResponse,\n GetMarginBorrowLoanInterestHistoryResponse,\n GetUmAccountDetailResponse,\n GetUmAccountDetailV2Response,\n GetUmCurrentPositionModeResponse,\n GetUmFuturesOrderDownloadLinkByIdResponse,\n GetUmFuturesTradeDownloadLinkByIdResponse,\n GetUmFuturesTransactionDownloadLinkByIdResponse,\n GetUmIncomeHistoryResponse,\n GetUserCommissionRateForCmResponse,\n GetUserCommissionRateForUmResponse,\n MarginMaxBorrowResponse,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse,\n QueryCmPositionInformationResponse,\n QueryMarginLoanRecordResponse,\n QueryMarginMaxWithdrawResponse,\n QueryMarginRepayRecordResponse,\n QueryPortfolioMarginNegativeBalanceInterestHistoryResponse,\n QueryUmPositionInformationResponse,\n QueryUserNegativeBalanceAutoExchangeRecordResponse,\n QueryUserRateLimitResponse,\n RepayFuturesNegativeBalanceResponse,\n UmFuturesAccountConfigurationResponse,\n UmFuturesSymbolConfigurationResponse,\n UmNotionalAndLeverageBracketsResponse,\n} from '../types';\n\n/**\n * AccountApi - axios parameter creator\n */\nconst AccountApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {string} [asset]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n accountBalance: async (asset?: string, recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/balance',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n accountInformation: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {number} amount\n * @param {string} transferSide \"TO_UM\",\"FROM_UM\"\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n bnbTransfer: async (\n amount: number,\n transferSide: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('bnbTransfer', 'amount', amount);\n // verify required parameter 'transferSide' is not null or undefined\n assertParamExists('bnbTransfer', 'transferSide', transferSide);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (transferSide !== undefined && transferSide !== null) {\n localVarQueryParameter['transferSide'] = transferSide;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/bnb-transfer',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {string} autoRepay Default: `true`; `false` for turn off the auto-repay futures negative balance function\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeAutoRepayFuturesStatus: async (\n autoRepay: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'autoRepay' is not null or undefined\n assertParamExists('changeAutoRepayFuturesStatus', 'autoRepay', autoRepay);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (autoRepay !== undefined && autoRepay !== null) {\n localVarQueryParameter['autoRepay'] = autoRepay;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-switch',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {string} symbol\n * @param {number} leverage target initial leverage: int from 1 to 125\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeCmInitialLeverage: async (\n symbol: string,\n leverage: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('changeCmInitialLeverage', 'symbol', symbol);\n // verify required parameter 'leverage' is not null or undefined\n assertParamExists('changeCmInitialLeverage', 'leverage', leverage);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (leverage !== undefined && leverage !== null) {\n localVarQueryParameter['leverage'] = leverage;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/leverage',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {string} dualSidePosition \"true\": Hedge Mode; \"false\": One-way Mode\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeCmPositionMode: async (\n dualSidePosition: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'dualSidePosition' is not null or undefined\n assertParamExists('changeCmPositionMode', 'dualSidePosition', dualSidePosition);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (dualSidePosition !== undefined && dualSidePosition !== null) {\n localVarQueryParameter['dualSidePosition'] = dualSidePosition;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionSide/dual',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {string} symbol\n * @param {number} leverage target initial leverage: int from 1 to 125\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeUmInitialLeverage: async (\n symbol: string,\n leverage: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('changeUmInitialLeverage', 'symbol', symbol);\n // verify required parameter 'leverage' is not null or undefined\n assertParamExists('changeUmInitialLeverage', 'leverage', leverage);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (leverage !== undefined && leverage !== null) {\n localVarQueryParameter['leverage'] = leverage;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/leverage',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {string} dualSidePosition \"true\": Hedge Mode; \"false\": One-way Mode\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n changeUmPositionMode: async (\n dualSidePosition: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'dualSidePosition' is not null or undefined\n assertParamExists('changeUmPositionMode', 'dualSidePosition', dualSidePosition);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (dualSidePosition !== undefined && dualSidePosition !== null) {\n localVarQueryParameter['dualSidePosition'] = dualSidePosition;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionSide/dual',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmNotionalAndLeverageBrackets: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/leverageBracket',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n fundAutoCollection: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/auto-collection',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n fundCollectionByAsset: async (asset: string, recvWindow?: number): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('fundCollectionByAsset', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/asset-collection',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getAutoRepayFuturesStatus: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-switch',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmAccountDetail: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmCurrentPositionMode: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionSide/dual',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [incomeType] TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [page]\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCmIncomeHistory: async (\n symbol?: string,\n incomeType?: string,\n startTime?: number,\n endTime?: number,\n page?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (incomeType !== undefined && incomeType !== null) {\n localVarQueryParameter['incomeType'] = incomeType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/income',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesOrderHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesOrderHistory', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesOrderHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesTradeHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTradeHistory', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTradeHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/trade/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getDownloadIdForUmFuturesTransactionHistory: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists(\n 'getDownloadIdForUmFuturesTransactionHistory',\n 'startTime',\n startTime\n );\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('getDownloadIdForUmFuturesTransactionHistory', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income/asyn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {string} [asset]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getMarginBorrowLoanInterestHistory: async (\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/marginInterestHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmAccountDetail: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmAccountDetailV2: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v2/um/account',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmCurrentPositionMode: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionSide/dual',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesOrderDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesOrderDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesTradeDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesTradeDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/trade/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {string} downloadId get by download id api\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesTransactionDownloadLinkById: async (\n downloadId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'downloadId' is not null or undefined\n assertParamExists('getUmFuturesTransactionDownloadLinkById', 'downloadId', downloadId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (downloadId !== undefined && downloadId !== null) {\n localVarQueryParameter['downloadId'] = downloadId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income/asyn/id',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [incomeType] TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [page]\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmIncomeHistory: async (\n symbol?: string,\n incomeType?: string,\n startTime?: number,\n endTime?: number,\n page?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (incomeType !== undefined && incomeType !== null) {\n localVarQueryParameter['incomeType'] = incomeType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/income',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUserCommissionRateForCm: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('getUserCommissionRateForCm', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/commissionRate',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUserCommissionRateForUm: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('getUserCommissionRateForUm', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/commissionRate',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginMaxBorrow: async (asset: string, recvWindow?: number): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginMaxBorrow', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/maxBorrowable',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/apiTradingStatus',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {string} [marginAsset]\n * @param {string} [pair]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmPositionInformation: async (\n marginAsset?: string,\n pair?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (marginAsset !== undefined && marginAsset !== null) {\n localVarQueryParameter['marginAsset'] = marginAsset;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/positionRisk',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {string} asset\n * @param {number} [txId] the `tranId` in `POST/papi/v1/marginLoan`\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginLoanRecord: async (\n asset: string,\n txId?: number,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginLoanRecord', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (txId !== undefined && txId !== null) {\n localVarQueryParameter['txId'] = txId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/marginLoan',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {string} asset\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginMaxWithdraw: async (\n asset: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginMaxWithdraw', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/maxWithdraw',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {string} asset\n * @param {number} [txId] the `tranId` in `POST/papi/v1/marginLoan`\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {string} [archived] Default: `false`. Set to `true` for archived data from 6 months ago\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginRepayRecord: async (\n asset: string,\n txId?: number,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n archived?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('queryMarginRepayRecord', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (txId !== undefined && txId !== null) {\n localVarQueryParameter['txId'] = txId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (archived !== undefined && archived !== null) {\n localVarQueryParameter['archived'] = archived;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/repayLoan',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {string} [asset]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [size] Default:10 Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryPortfolioMarginNegativeBalanceInterestHistory: async (\n asset?: string,\n startTime?: number,\n endTime?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/portfolio/interest-history',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmPositionInformation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/positionRisk',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {number} startTime\n * @param {number} endTime\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUserNegativeBalanceAutoExchangeRecord: async (\n startTime: number,\n endTime: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'startTime' is not null or undefined\n assertParamExists('queryUserNegativeBalanceAutoExchangeRecord', 'startTime', startTime);\n // verify required parameter 'endTime' is not null or undefined\n assertParamExists('queryUserNegativeBalanceAutoExchangeRecord', 'endTime', endTime);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/portfolio/negative-balance-exchange-record',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUserRateLimit: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/rateLimit/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n repayFuturesNegativeBalance: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repay-futures-negative-balance',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umFuturesAccountConfiguration: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/accountConfig',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umFuturesSymbolConfiguration: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/symbolConfig',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umNotionalAndLeverageBrackets: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/leverageBracket',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * AccountApi - interface\n * @interface AccountApi\n */\nexport interface AccountApiInterface {\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n accountBalance(\n requestParameters?: AccountBalanceRequest\n ): Promise<RestApiResponse<AccountBalanceResponse>>;\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n accountInformation(\n requestParameters?: AccountInformationRequest\n ): Promise<RestApiResponse<AccountInformationResponse>>;\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>>;\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>;\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>;\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>>;\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>;\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>>;\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n cmNotionalAndLeverageBrackets(\n requestParameters?: CmNotionalAndLeverageBracketsRequest\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>;\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n fundAutoCollection(\n requestParameters?: FundAutoCollectionRequest\n ): Promise<RestApiResponse<FundAutoCollectionResponse>>;\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>>;\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getAutoRepayFuturesStatus(\n requestParameters?: GetAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>;\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmAccountDetail(\n requestParameters?: GetCmAccountDetailRequest\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>>;\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmCurrentPositionMode(\n requestParameters?: GetCmCurrentPositionModeRequest\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>;\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getCmIncomeHistory(\n requestParameters?: GetCmIncomeHistoryRequest\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>>;\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>;\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>;\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>;\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getMarginBorrowLoanInterestHistory(\n requestParameters?: GetMarginBorrowLoanInterestHistoryRequest\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>;\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmAccountDetail(\n requestParameters?: GetUmAccountDetailRequest\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>>;\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmAccountDetailV2(\n requestParameters?: GetUmAccountDetailV2Request\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>>;\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmCurrentPositionMode(\n requestParameters?: GetUmCurrentPositionModeRequest\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>;\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>;\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>;\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>;\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUmIncomeHistory(\n requestParameters?: GetUmIncomeHistoryRequest\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>>;\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>;\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>;\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>>;\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters?: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>;\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryCmPositionInformation(\n requestParameters?: QueryCmPositionInformationRequest\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>>;\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>>;\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>;\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>>;\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters?: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>;\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUmPositionInformation(\n requestParameters?: QueryUmPositionInformationRequest\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>>;\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>;\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n queryUserRateLimit(\n requestParameters?: QueryUserRateLimitRequest\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>>;\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n repayFuturesNegativeBalance(\n requestParameters?: RepayFuturesNegativeBalanceRequest\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>;\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umFuturesAccountConfiguration(\n requestParameters?: UmFuturesAccountConfigurationRequest\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>;\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umFuturesSymbolConfiguration(\n requestParameters?: UmFuturesSymbolConfigurationRequest\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>;\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n umNotionalAndLeverageBrackets(\n requestParameters?: UmNotionalAndLeverageBracketsRequest\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>;\n}\n\n/**\n * Request parameters for accountBalance operation in AccountApi.\n * @interface AccountBalanceRequest\n */\nexport interface AccountBalanceRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiAccountBalance\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiAccountBalance\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for accountInformation operation in AccountApi.\n * @interface AccountInformationRequest\n */\nexport interface AccountInformationRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiAccountInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for bnbTransfer operation in AccountApi.\n * @interface BnbTransferRequest\n */\nexport interface BnbTransferRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiBnbTransfer\n */\n readonly amount: number;\n\n /**\n * \"TO_UM\",\"FROM_UM\"\n * @type {string}\n * @memberof AccountApiBnbTransfer\n */\n readonly transferSide: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiBnbTransfer\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeAutoRepayFuturesStatus operation in AccountApi.\n * @interface ChangeAutoRepayFuturesStatusRequest\n */\nexport interface ChangeAutoRepayFuturesStatusRequest {\n /**\n * Default: `true`; `false` for turn off the auto-repay futures negative balance function\n * @type {string}\n * @memberof AccountApiChangeAutoRepayFuturesStatus\n */\n readonly autoRepay: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeAutoRepayFuturesStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeCmInitialLeverage operation in AccountApi.\n * @interface ChangeCmInitialLeverageRequest\n */\nexport interface ChangeCmInitialLeverageRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly symbol: string;\n\n /**\n * target initial leverage: int from 1 to 125\n * @type {number}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly leverage: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeCmInitialLeverage\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeCmPositionMode operation in AccountApi.\n * @interface ChangeCmPositionModeRequest\n */\nexport interface ChangeCmPositionModeRequest {\n /**\n * \"true\": Hedge Mode; \"false\": One-way Mode\n * @type {string}\n * @memberof AccountApiChangeCmPositionMode\n */\n readonly dualSidePosition: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeCmPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeUmInitialLeverage operation in AccountApi.\n * @interface ChangeUmInitialLeverageRequest\n */\nexport interface ChangeUmInitialLeverageRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly symbol: string;\n\n /**\n * target initial leverage: int from 1 to 125\n * @type {number}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly leverage: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeUmInitialLeverage\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for changeUmPositionMode operation in AccountApi.\n * @interface ChangeUmPositionModeRequest\n */\nexport interface ChangeUmPositionModeRequest {\n /**\n * \"true\": Hedge Mode; \"false\": One-way Mode\n * @type {string}\n * @memberof AccountApiChangeUmPositionMode\n */\n readonly dualSidePosition: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiChangeUmPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmNotionalAndLeverageBrackets operation in AccountApi.\n * @interface CmNotionalAndLeverageBracketsRequest\n */\nexport interface CmNotionalAndLeverageBracketsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiCmNotionalAndLeverageBrackets\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiCmNotionalAndLeverageBrackets\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for fundAutoCollection operation in AccountApi.\n * @interface FundAutoCollectionRequest\n */\nexport interface FundAutoCollectionRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiFundAutoCollection\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for fundCollectionByAsset operation in AccountApi.\n * @interface FundCollectionByAssetRequest\n */\nexport interface FundCollectionByAssetRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiFundCollectionByAsset\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiFundCollectionByAsset\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getAutoRepayFuturesStatus operation in AccountApi.\n * @interface GetAutoRepayFuturesStatusRequest\n */\nexport interface GetAutoRepayFuturesStatusRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetAutoRepayFuturesStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmAccountDetail operation in AccountApi.\n * @interface GetCmAccountDetailRequest\n */\nexport interface GetCmAccountDetailRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmAccountDetail\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmCurrentPositionMode operation in AccountApi.\n * @interface GetCmCurrentPositionModeRequest\n */\nexport interface GetCmCurrentPositionModeRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmCurrentPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCmIncomeHistory operation in AccountApi.\n * @interface GetCmIncomeHistoryRequest\n */\nexport interface GetCmIncomeHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly symbol?: string;\n\n /**\n * TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @type {string}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly incomeType?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly endTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly page?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetCmIncomeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesOrderHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesOrderHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesOrderHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesTradeHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesTradeHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesTradeHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTradeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getDownloadIdForUmFuturesTransactionHistory operation in AccountApi.\n * @interface GetDownloadIdForUmFuturesTransactionHistoryRequest\n */\nexport interface GetDownloadIdForUmFuturesTransactionHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetDownloadIdForUmFuturesTransactionHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getMarginBorrowLoanInterestHistory operation in AccountApi.\n * @interface GetMarginBorrowLoanInterestHistoryRequest\n */\nexport interface GetMarginBorrowLoanInterestHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly asset?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetMarginBorrowLoanInterestHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmAccountDetail operation in AccountApi.\n * @interface GetUmAccountDetailRequest\n */\nexport interface GetUmAccountDetailRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmAccountDetail\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmAccountDetailV2 operation in AccountApi.\n * @interface GetUmAccountDetailV2Request\n */\nexport interface GetUmAccountDetailV2Request {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmAccountDetailV2\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmCurrentPositionMode operation in AccountApi.\n * @interface GetUmCurrentPositionModeRequest\n */\nexport interface GetUmCurrentPositionModeRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmCurrentPositionMode\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesOrderDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesOrderDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesOrderDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesOrderDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesOrderDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesTradeDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesTradeDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesTradeDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesTradeDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesTradeDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesTransactionDownloadLinkById operation in AccountApi.\n * @interface GetUmFuturesTransactionDownloadLinkByIdRequest\n */\nexport interface GetUmFuturesTransactionDownloadLinkByIdRequest {\n /**\n * get by download id api\n * @type {string}\n * @memberof AccountApiGetUmFuturesTransactionDownloadLinkById\n */\n readonly downloadId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmFuturesTransactionDownloadLinkById\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmIncomeHistory operation in AccountApi.\n * @interface GetUmIncomeHistoryRequest\n */\nexport interface GetUmIncomeHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly symbol?: string;\n\n /**\n * TRANSFER, WELCOME_BONUS, REALIZED_PNL, FUNDING_FEE, COMMISSION, INSURANCE_CLEAR, REFERRAL_KICKBACK, COMMISSION_REBATE, API_REBATE, CONTEST_REWARD, CROSS_COLLATERAL_TRANSFER, OPTIONS_PREMIUM_FEE, OPTIONS_SETTLE_PROFIT, INTERNAL_TRANSFER, AUTO_EXCHANGE, DELIVERED_SETTELMENT, COIN_SWAP_DEPOSIT, COIN_SWAP_WITHDRAW, POSITION_LIMIT_INCREASE_FEE\n * @type {string}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly incomeType?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly endTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly page?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUmIncomeHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUserCommissionRateForCm operation in AccountApi.\n * @interface GetUserCommissionRateForCmRequest\n */\nexport interface GetUserCommissionRateForCmRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUserCommissionRateForCm\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUserCommissionRateForCm\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUserCommissionRateForUm operation in AccountApi.\n * @interface GetUserCommissionRateForUmRequest\n */\nexport interface GetUserCommissionRateForUmRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetUserCommissionRateForUm\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetUserCommissionRateForUm\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginMaxBorrow operation in AccountApi.\n * @interface MarginMaxBorrowRequest\n */\nexport interface MarginMaxBorrowRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiMarginMaxBorrow\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiMarginMaxBorrow\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for portfolioMarginUmTradingQuantitativeRulesIndicators operation in AccountApi.\n * @interface PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest\n */\nexport interface PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiPortfolioMarginUmTradingQuantitativeRulesIndicators\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiPortfolioMarginUmTradingQuantitativeRulesIndicators\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmPositionInformation operation in AccountApi.\n * @interface QueryCmPositionInformationRequest\n */\nexport interface QueryCmPositionInformationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly marginAsset?: string;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryCmPositionInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginLoanRecord operation in AccountApi.\n * @interface QueryMarginLoanRecordRequest\n */\nexport interface QueryMarginLoanRecordRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly asset: string;\n\n /**\n * the `tranId` in `POST/papi/v1/marginLoan`\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly txId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginLoanRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginMaxWithdraw operation in AccountApi.\n * @interface QueryMarginMaxWithdrawRequest\n */\nexport interface QueryMarginMaxWithdrawRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginMaxWithdraw\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginMaxWithdraw\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginRepayRecord operation in AccountApi.\n * @interface QueryMarginRepayRecordRequest\n */\nexport interface QueryMarginRepayRecordRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly asset: string;\n\n /**\n * the `tranId` in `POST/papi/v1/marginLoan`\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly txId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly size?: number;\n\n /**\n * Default: `false`. Set to `true` for archived data from 6 months ago\n * @type {string}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly archived?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryMarginRepayRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryPortfolioMarginNegativeBalanceInterestHistory operation in AccountApi.\n * @interface QueryPortfolioMarginNegativeBalanceInterestHistoryRequest\n */\nexport interface QueryPortfolioMarginNegativeBalanceInterestHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly asset?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly endTime?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryPortfolioMarginNegativeBalanceInterestHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmPositionInformation operation in AccountApi.\n * @interface QueryUmPositionInformationRequest\n */\nexport interface QueryUmPositionInformationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiQueryUmPositionInformation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUmPositionInformation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserNegativeBalanceAutoExchangeRecord operation in AccountApi.\n * @interface QueryUserNegativeBalanceAutoExchangeRecordRequest\n */\nexport interface QueryUserNegativeBalanceAutoExchangeRecordRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly startTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly endTime: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserNegativeBalanceAutoExchangeRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserRateLimit operation in AccountApi.\n * @interface QueryUserRateLimitRequest\n */\nexport interface QueryUserRateLimitRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiQueryUserRateLimit\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for repayFuturesNegativeBalance operation in AccountApi.\n * @interface RepayFuturesNegativeBalanceRequest\n */\nexport interface RepayFuturesNegativeBalanceRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiRepayFuturesNegativeBalance\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umFuturesAccountConfiguration operation in AccountApi.\n * @interface UmFuturesAccountConfigurationRequest\n */\nexport interface UmFuturesAccountConfigurationRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiUmFuturesAccountConfiguration\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umFuturesSymbolConfiguration operation in AccountApi.\n * @interface UmFuturesSymbolConfigurationRequest\n */\nexport interface UmFuturesSymbolConfigurationRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiUmFuturesSymbolConfiguration\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiUmFuturesSymbolConfiguration\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umNotionalAndLeverageBrackets operation in AccountApi.\n * @interface UmNotionalAndLeverageBracketsRequest\n */\nexport interface UmNotionalAndLeverageBracketsRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiUmNotionalAndLeverageBrackets\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiUmNotionalAndLeverageBrackets\n */\n readonly recvWindow?: number;\n}\n\n/**\n * AccountApi - object-oriented interface\n * @class AccountApi\n */\nexport class AccountApi implements AccountApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = AccountApiAxiosParamCreator(configuration);\n }\n\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Balance Binance API Documentation}\n */\n public async accountBalance(\n requestParameters: AccountBalanceRequest = {}\n ): Promise<RestApiResponse<AccountBalanceResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountBalance(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<AccountBalanceResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Information Binance API Documentation}\n */\n public async accountInformation(\n requestParameters: AccountInformationRequest = {}\n ): Promise<RestApiResponse<AccountInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountInformation(\n requestParameters?.recvWindow\n );\n return sendRequest<AccountInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<BnbTransferResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/BNB-transfer Binance API Documentation}\n */\n public async bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.bnbTransfer(\n requestParameters?.amount,\n requestParameters?.transferSide,\n requestParameters?.recvWindow\n );\n return sendRequest<BnbTransferResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-Auto-repay-futures-Status Binance API Documentation}\n */\n public async changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeAutoRepayFuturesStatus(\n requestParameters?.autoRepay,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeAutoRepayFuturesStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Initial-Leverage Binance API Documentation}\n */\n public async changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeCmInitialLeverage(\n requestParameters?.symbol,\n requestParameters?.leverage,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeCmInitialLeverageResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Position-Mode Binance API Documentation}\n */\n public async changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeCmPositionMode(\n requestParameters?.dualSidePosition,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeCmPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Initial-Leverage Binance API Documentation}\n */\n public async changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeUmInitialLeverage(\n requestParameters?.symbol,\n requestParameters?.leverage,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeUmInitialLeverageResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Position-Mode Binance API Documentation}\n */\n public async changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.changeUmPositionMode(\n requestParameters?.dualSidePosition,\n requestParameters?.recvWindow\n );\n return sendRequest<ChangeUmPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/CM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n public async cmNotionalAndLeverageBrackets(\n requestParameters: CmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cmNotionalAndLeverageBrackets(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CmNotionalAndLeverageBracketsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundAutoCollectionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Auto-collection Binance API Documentation}\n */\n public async fundAutoCollection(\n requestParameters: FundAutoCollectionRequest = {}\n ): Promise<RestApiResponse<FundAutoCollectionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.fundAutoCollection(\n requestParameters?.recvWindow\n );\n return sendRequest<FundAutoCollectionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundCollectionByAssetResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Collection-by-Asset Binance API Documentation}\n */\n public async fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.fundCollectionByAsset(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<FundCollectionByAssetResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Auto-repay-futures-Status Binance API Documentation}\n */\n public async getAutoRepayFuturesStatus(\n requestParameters: GetAutoRepayFuturesStatusRequest = {}\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getAutoRepayFuturesStatus(\n requestParameters?.recvWindow\n );\n return sendRequest<GetAutoRepayFuturesStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Account-Detail Binance API Documentation}\n */\n public async getCmAccountDetail(\n requestParameters: GetCmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmAccountDetail(\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmAccountDetailResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Current-Position-Mode Binance API Documentation}\n */\n public async getCmCurrentPositionMode(\n requestParameters: GetCmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmCurrentPositionMode(\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmCurrentPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Income-History Binance API Documentation}\n */\n public async getCmIncomeHistory(\n requestParameters: GetCmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCmIncomeHistory(\n requestParameters?.symbol,\n requestParameters?.incomeType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<GetCmIncomeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Order-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesOrderHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Trade-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesTradeHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesTradeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Transaction-History Binance API Documentation}\n */\n public async getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getDownloadIdForUmFuturesTransactionHistory(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<GetDownloadIdForUmFuturesTransactionHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Margin-BorrowLoan-Interest-History Binance API Documentation}\n */\n public async getMarginBorrowLoanInterestHistory(\n requestParameters: GetMarginBorrowLoanInterestHistoryRequest = {}\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getMarginBorrowLoanInterestHistory(\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<GetMarginBorrowLoanInterestHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail Binance API Documentation}\n */\n public async getUmAccountDetail(\n requestParameters: GetUmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmAccountDetail(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmAccountDetailResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailV2Response>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail-V2 Binance API Documentation}\n */\n public async getUmAccountDetailV2(\n requestParameters: GetUmAccountDetailV2Request = {}\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmAccountDetailV2(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmAccountDetailV2Response>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Current-Position-Mode Binance API Documentation}\n */\n public async getUmCurrentPositionMode(\n requestParameters: GetUmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmCurrentPositionMode(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmCurrentPositionModeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Order-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesOrderDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesOrderDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Trade-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesTradeDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesTradeDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Transaction-Download-Link-by-Id Binance API Documentation}\n */\n public async getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getUmFuturesTransactionDownloadLinkById(\n requestParameters?.downloadId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesTransactionDownloadLinkByIdResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Income-History Binance API Documentation}\n */\n public async getUmIncomeHistory(\n requestParameters: GetUmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmIncomeHistory(\n requestParameters?.symbol,\n requestParameters?.incomeType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmIncomeHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-CM Binance API Documentation}\n */\n public async getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUserCommissionRateForCm(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUserCommissionRateForCmResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-UM Binance API Documentation}\n */\n public async getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUserCommissionRateForUm(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<GetUserCommissionRateForUmResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginMaxBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Margin-Max-Borrow Binance API Documentation}\n */\n public async marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginMaxBorrow(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginMaxBorrowResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Portfolio-Margin-UM-Trading-Quantitative-Rules-Indicators Binance API Documentation}\n */\n public async portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest = {}\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-CM-Position-Information Binance API Documentation}\n */\n public async queryCmPositionInformation(\n requestParameters: QueryCmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmPositionInformation(\n requestParameters?.marginAsset,\n requestParameters?.pair,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmPositionInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginLoanRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Loan-Record Binance API Documentation}\n */\n public async queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginLoanRecord(\n requestParameters?.asset,\n requestParameters?.txId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginLoanRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Max-Withdraw Binance API Documentation}\n */\n public async queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginMaxWithdraw(\n requestParameters?.asset,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginMaxWithdrawResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginRepayRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-repay-Record Binance API Documentation}\n */\n public async queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginRepayRecord(\n requestParameters?.asset,\n requestParameters?.txId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.archived,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginRepayRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Portfolio-Margin-Negative-Balance-Interest-History Binance API Documentation}\n */\n public async queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest = {}\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-UM-Position-Information Binance API Documentation}\n */\n public async queryUmPositionInformation(\n requestParameters: QueryUmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmPositionInformation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmPositionInformationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Negative-Balance-Auto-Exchange-Record Binance API Documentation}\n */\n public async queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUserNegativeBalanceAutoExchangeRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserRateLimitResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Rate-Limit Binance API Documentation}\n */\n public async queryUserRateLimit(\n requestParameters: QueryUserRateLimitRequest = {}\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUserRateLimit(\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUserRateLimitResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Repay-futures-Negative-Balance Binance API Documentation}\n */\n public async repayFuturesNegativeBalance(\n requestParameters: RepayFuturesNegativeBalanceRequest = {}\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.repayFuturesNegativeBalance(\n requestParameters?.recvWindow\n );\n return sendRequest<RepayFuturesNegativeBalanceResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Account-Config Binance API Documentation}\n */\n public async umFuturesAccountConfiguration(\n requestParameters: UmFuturesAccountConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umFuturesAccountConfiguration(\n requestParameters?.recvWindow\n );\n return sendRequest<UmFuturesAccountConfigurationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Symbol-Config Binance API Documentation}\n */\n public async umFuturesSymbolConfiguration(\n requestParameters: UmFuturesSymbolConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.umFuturesSymbolConfiguration(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmFuturesSymbolConfigurationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/UM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n public async umNotionalAndLeverageBrackets(\n requestParameters: UmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umNotionalAndLeverageBrackets(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmNotionalAndLeverageBracketsResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {} from '../types';\n\n/**\n * MarketDataApi - axios parameter creator\n */\nconst MarketDataApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n *\n * @throws {RequiredError}\n */\n testConnectivity: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/ping',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * MarketDataApi - interface\n * @interface MarketDataApi\n */\nexport interface MarketDataApiInterface {\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof MarketDataApiInterface\n */\n testConnectivity(): Promise<RestApiResponse<void>>;\n}\n\n/**\n * MarketDataApi - object-oriented interface\n * @class MarketDataApi\n */\nexport class MarketDataApi implements MarketDataApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = MarketDataApiAxiosParamCreator(configuration);\n }\n\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof MarketDataApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/market-data/Test-Connectivity Binance API Documentation}\n */\n public async testConnectivity(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.testConnectivity();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n assertParamExists,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type {\n CancelAllCmOpenConditionalOrdersResponse,\n CancelAllCmOpenOrdersResponse,\n CancelAllUmOpenConditionalOrdersResponse,\n CancelAllUmOpenOrdersResponse,\n CancelCmConditionalOrderResponse,\n CancelCmOrderResponse,\n CancelMarginAccountAllOpenOrdersOnASymbolResponse,\n CancelMarginAccountOcoOrdersResponse,\n CancelMarginAccountOrderResponse,\n CancelUmConditionalOrderResponse,\n CancelUmOrderResponse,\n CmAccountTradeListResponse,\n CmPositionAdlQuantileEstimationResponse,\n GetUmFuturesBnbBurnStatusResponse,\n MarginAccountBorrowResponse,\n MarginAccountNewOcoResponse,\n MarginAccountRepayDebtResponse,\n MarginAccountRepayResponse,\n MarginAccountTradeListResponse,\n ModifyCmOrderResponse,\n ModifyUmOrderResponse,\n NewCmConditionalOrderResponse,\n NewCmOrderResponse,\n NewMarginOrderResponse,\n NewUmConditionalOrderResponse,\n NewUmOrderResponse,\n QueryAllCmConditionalOrdersResponse,\n QueryAllCmOrdersResponse,\n QueryAllCurrentCmOpenConditionalOrdersResponse,\n QueryAllCurrentCmOpenOrdersResponse,\n QueryAllCurrentUmOpenConditionalOrdersResponse,\n QueryAllCurrentUmOpenOrdersResponse,\n QueryAllMarginAccountOrdersResponse,\n QueryAllUmConditionalOrdersResponse,\n QueryAllUmOrdersResponse,\n QueryCmConditionalOrderHistoryResponse,\n QueryCmModifyOrderHistoryResponse,\n QueryCmOrderResponse,\n QueryCurrentCmOpenConditionalOrderResponse,\n QueryCurrentCmOpenOrderResponse,\n QueryCurrentMarginOpenOrderResponse,\n QueryCurrentUmOpenConditionalOrderResponse,\n QueryCurrentUmOpenOrderResponse,\n QueryMarginAccountOrderResponse,\n QueryMarginAccountsAllOcoResponse,\n QueryMarginAccountsOcoResponse,\n QueryMarginAccountsOpenOcoResponse,\n QueryUmConditionalOrderHistoryResponse,\n QueryUmModifyOrderHistoryResponse,\n QueryUmOrderResponse,\n QueryUsersCmForceOrdersResponse,\n QueryUsersMarginForceOrdersResponse,\n QueryUsersUmForceOrdersResponse,\n ToggleBnbBurnOnUmFuturesTradeResponse,\n UmAccountTradeListResponse,\n UmPositionAdlQuantileEstimationResponse,\n} from '../types';\n\n/**\n * TradeApi - axios parameter creator\n */\nconst TradeApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllCmOpenConditionalOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllCmOpenConditionalOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllCmOpenOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllCmOpenOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllUmOpenConditionalOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllUmOpenConditionalOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelAllUmOpenOrders: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelAllUmOpenOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelCmConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelCmConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelCmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelCmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountAllOpenOrdersOnASymbol: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountAllOpenOrdersOnASymbol', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOpenOrders',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {string} symbol\n * @param {number} [orderListId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [listClientOrderId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountOcoOrders: async (\n symbol: string,\n orderListId?: number,\n listClientOrderId?: string,\n newClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountOcoOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderListId !== undefined && orderListId !== null) {\n localVarQueryParameter['orderListId'] = orderListId;\n }\n\n if (listClientOrderId !== undefined && listClientOrderId !== null) {\n localVarQueryParameter['listClientOrderId'] = listClientOrderId;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/orderList',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelMarginAccountOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n newClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelMarginAccountOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelUmConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelUmConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cancelUmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('cancelUmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [pair]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmAccountTradeList: async (\n symbol?: string,\n pair?: string,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/userTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n cmPositionAdlQuantileEstimation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/adlQuantile',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getUmFuturesBnbBurnStatus: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/feeBurn',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {string} asset\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountBorrow: async (\n asset: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountBorrow', 'asset', asset);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('marginAccountBorrow', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/marginLoan',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {string} symbol\n * @param {MarginAccountNewOcoSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} stopPrice\n * @param {string} [listClientOrderId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [limitClientOrderId] A unique Id for the limit order\n * @param {number} [limitIcebergQty]\n * @param {string} [stopClientOrderId] A unique Id for the stop loss/stop loss limit leg\n * @param {number} [stopLimitPrice] If provided, stopLimitTimeInForce is required.\n * @param {number} [stopIcebergQty]\n * @param {MarginAccountNewOcoStopLimitTimeInForceEnum} [stopLimitTimeInForce] Valid values are `GTC/FOK/IOC`\n * @param {MarginAccountNewOcoNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {MarginAccountNewOcoSideEffectTypeEnum} [sideEffectType] NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountNewOco: async (\n symbol: string,\n side: MarginAccountNewOcoSideEnum,\n quantity: number,\n price: number,\n stopPrice: number,\n listClientOrderId?: string,\n limitClientOrderId?: string,\n limitIcebergQty?: number,\n stopClientOrderId?: string,\n stopLimitPrice?: number,\n stopIcebergQty?: number,\n stopLimitTimeInForce?: MarginAccountNewOcoStopLimitTimeInForceEnum,\n newOrderRespType?: MarginAccountNewOcoNewOrderRespTypeEnum,\n sideEffectType?: MarginAccountNewOcoSideEffectTypeEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('marginAccountNewOco', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('marginAccountNewOco', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('marginAccountNewOco', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('marginAccountNewOco', 'price', price);\n // verify required parameter 'stopPrice' is not null or undefined\n assertParamExists('marginAccountNewOco', 'stopPrice', stopPrice);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (listClientOrderId !== undefined && listClientOrderId !== null) {\n localVarQueryParameter['listClientOrderId'] = listClientOrderId;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (limitClientOrderId !== undefined && limitClientOrderId !== null) {\n localVarQueryParameter['limitClientOrderId'] = limitClientOrderId;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (limitIcebergQty !== undefined && limitIcebergQty !== null) {\n localVarQueryParameter['limitIcebergQty'] = limitIcebergQty;\n }\n\n if (stopClientOrderId !== undefined && stopClientOrderId !== null) {\n localVarQueryParameter['stopClientOrderId'] = stopClientOrderId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (stopLimitPrice !== undefined && stopLimitPrice !== null) {\n localVarQueryParameter['stopLimitPrice'] = stopLimitPrice;\n }\n\n if (stopIcebergQty !== undefined && stopIcebergQty !== null) {\n localVarQueryParameter['stopIcebergQty'] = stopIcebergQty;\n }\n\n if (stopLimitTimeInForce !== undefined && stopLimitTimeInForce !== null) {\n localVarQueryParameter['stopLimitTimeInForce'] = stopLimitTimeInForce;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (sideEffectType !== undefined && sideEffectType !== null) {\n localVarQueryParameter['sideEffectType'] = sideEffectType;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order/oco',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {string} asset\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountRepay: async (\n asset: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountRepay', 'asset', asset);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('marginAccountRepay', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/repayLoan',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {string} asset\n * @param {string} [amount]\n * @param {string} [specifyRepayAssets] Specific asset list to repay debt; Can be added in batch, separated by commas\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountRepayDebt: async (\n asset: string,\n amount?: string,\n specifyRepayAssets?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'asset' is not null or undefined\n assertParamExists('marginAccountRepayDebt', 'asset', asset);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (specifyRepayAssets !== undefined && specifyRepayAssets !== null) {\n localVarQueryParameter['specifyRepayAssets'] = specifyRepayAssets;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/repay-debt',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n marginAccountTradeList: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('marginAccountTradeList', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/myTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {string} symbol\n * @param {ModifyCmOrderSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {ModifyCmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n modifyCmOrder: async (\n symbol: string,\n side: ModifyCmOrderSideEnum,\n quantity: number,\n price: number,\n orderId?: number,\n origClientOrderId?: string,\n priceMatch?: ModifyCmOrderPriceMatchEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('modifyCmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('modifyCmOrder', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('modifyCmOrder', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('modifyCmOrder', 'price', price);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {string} symbol\n * @param {ModifyUmOrderSideEnum} side\n * @param {number} quantity Order quantity\n * @param {number} price\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {ModifyUmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n modifyUmOrder: async (\n symbol: string,\n side: ModifyUmOrderSideEnum,\n quantity: number,\n price: number,\n orderId?: number,\n origClientOrderId?: string,\n priceMatch?: ModifyUmOrderPriceMatchEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('modifyUmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('modifyUmOrder', 'side', side);\n // verify required parameter 'quantity' is not null or undefined\n assertParamExists('modifyUmOrder', 'quantity', quantity);\n // verify required parameter 'price' is not null or undefined\n assertParamExists('modifyUmOrder', 'price', price);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {string} symbol\n * @param {NewCmConditionalOrderSideEnum} side\n * @param {NewCmConditionalOrderStrategyTypeEnum} strategyType \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @param {NewCmConditionalOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewCmConditionalOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewCmConditionalOrderWorkingTypeEnum} [workingType] stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @param {string} [priceProtect] \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @param {string} [newClientStrategyId]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {number} [activationPrice] Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @param {number} [callbackRate] Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newCmConditionalOrder: async (\n symbol: string,\n side: NewCmConditionalOrderSideEnum,\n strategyType: NewCmConditionalOrderStrategyTypeEnum,\n positionSide?: NewCmConditionalOrderPositionSideEnum,\n timeInForce?: NewCmConditionalOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n workingType?: NewCmConditionalOrderWorkingTypeEnum,\n priceProtect?: string,\n newClientStrategyId?: string,\n stopPrice?: number,\n activationPrice?: number,\n callbackRate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'side', side);\n // verify required parameter 'strategyType' is not null or undefined\n assertParamExists('newCmConditionalOrder', 'strategyType', strategyType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (strategyType !== undefined && strategyType !== null) {\n localVarQueryParameter['strategyType'] = strategyType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (workingType !== undefined && workingType !== null) {\n localVarQueryParameter['workingType'] = workingType;\n }\n\n if (priceProtect !== undefined && priceProtect !== null) {\n localVarQueryParameter['priceProtect'] = priceProtect;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (activationPrice !== undefined && activationPrice !== null) {\n localVarQueryParameter['activationPrice'] = activationPrice;\n }\n\n if (callbackRate !== undefined && callbackRate !== null) {\n localVarQueryParameter['callbackRate'] = callbackRate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {string} symbol\n * @param {NewCmOrderSideEnum} side\n * @param {NewCmOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {NewCmOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewCmOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewCmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewCmOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newCmOrder: async (\n symbol: string,\n side: NewCmOrderSideEnum,\n type: NewCmOrderTypeEnum,\n positionSide?: NewCmOrderPositionSideEnum,\n timeInForce?: NewCmOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n priceMatch?: NewCmOrderPriceMatchEnum,\n newClientOrderId?: string,\n newOrderRespType?: NewCmOrderNewOrderRespTypeEnum,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newCmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newCmOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newCmOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {string} symbol\n * @param {NewMarginOrderSideEnum} side\n * @param {NewMarginOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {number} [quantity]\n * @param {number} [quoteOrderQty]\n * @param {number} [price]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewMarginOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {number} [icebergQty] Used with `LIMIT`, `STOP_LOSS_LIMIT`, and `TAKE_PROFIT_LIMIT` to create an iceberg order\n * @param {NewMarginOrderSideEffectTypeEnum} [sideEffectType] NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @param {NewMarginOrderTimeInForceEnum} [timeInForce]\n * @param {NewMarginOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {boolean} [autoRepayAtCancel] 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newMarginOrder: async (\n symbol: string,\n side: NewMarginOrderSideEnum,\n type: NewMarginOrderTypeEnum,\n quantity?: number,\n quoteOrderQty?: number,\n price?: number,\n stopPrice?: number,\n newClientOrderId?: string,\n newOrderRespType?: NewMarginOrderNewOrderRespTypeEnum,\n icebergQty?: number,\n sideEffectType?: NewMarginOrderSideEffectTypeEnum,\n timeInForce?: NewMarginOrderTimeInForceEnum,\n selfTradePreventionMode?: NewMarginOrderSelfTradePreventionModeEnum,\n autoRepayAtCancel?: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newMarginOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newMarginOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newMarginOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (quoteOrderQty !== undefined && quoteOrderQty !== null) {\n localVarQueryParameter['quoteOrderQty'] = quoteOrderQty;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (icebergQty !== undefined && icebergQty !== null) {\n localVarQueryParameter['icebergQty'] = icebergQty;\n }\n\n if (sideEffectType !== undefined && sideEffectType !== null) {\n localVarQueryParameter['sideEffectType'] = sideEffectType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (autoRepayAtCancel !== undefined && autoRepayAtCancel !== null) {\n localVarQueryParameter['autoRepayAtCancel'] = autoRepayAtCancel;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {string} symbol\n * @param {NewUmConditionalOrderSideEnum} side\n * @param {NewUmConditionalOrderStrategyTypeEnum} strategyType \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @param {NewUmConditionalOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewUmConditionalOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {NewUmConditionalOrderWorkingTypeEnum} [workingType] stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @param {string} [priceProtect] \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @param {string} [newClientStrategyId]\n * @param {number} [stopPrice] Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @param {number} [activationPrice] Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @param {number} [callbackRate] Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @param {NewUmConditionalOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {NewUmConditionalOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {number} [goodTillDate] order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newUmConditionalOrder: async (\n symbol: string,\n side: NewUmConditionalOrderSideEnum,\n strategyType: NewUmConditionalOrderStrategyTypeEnum,\n positionSide?: NewUmConditionalOrderPositionSideEnum,\n timeInForce?: NewUmConditionalOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n workingType?: NewUmConditionalOrderWorkingTypeEnum,\n priceProtect?: string,\n newClientStrategyId?: string,\n stopPrice?: number,\n activationPrice?: number,\n callbackRate?: number,\n priceMatch?: NewUmConditionalOrderPriceMatchEnum,\n selfTradePreventionMode?: NewUmConditionalOrderSelfTradePreventionModeEnum,\n goodTillDate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'side', side);\n // verify required parameter 'strategyType' is not null or undefined\n assertParamExists('newUmConditionalOrder', 'strategyType', strategyType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (strategyType !== undefined && strategyType !== null) {\n localVarQueryParameter['strategyType'] = strategyType;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (workingType !== undefined && workingType !== null) {\n localVarQueryParameter['workingType'] = workingType;\n }\n\n if (priceProtect !== undefined && priceProtect !== null) {\n localVarQueryParameter['priceProtect'] = priceProtect;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (stopPrice !== undefined && stopPrice !== null) {\n localVarQueryParameter['stopPrice'] = stopPrice;\n }\n\n if (activationPrice !== undefined && activationPrice !== null) {\n localVarQueryParameter['activationPrice'] = activationPrice;\n }\n\n if (callbackRate !== undefined && callbackRate !== null) {\n localVarQueryParameter['callbackRate'] = callbackRate;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (goodTillDate !== undefined && goodTillDate !== null) {\n localVarQueryParameter['goodTillDate'] = goodTillDate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {string} symbol\n * @param {NewUmOrderSideEnum} side\n * @param {NewUmOrderTypeEnum} type `LIMIT`, `MARKET`\n * @param {NewUmOrderPositionSideEnum} [positionSide] Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @param {NewUmOrderTimeInForceEnum} [timeInForce]\n * @param {number} [quantity]\n * @param {string} [reduceOnly] \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @param {number} [price]\n * @param {string} [newClientOrderId] Used to uniquely identify this cancel. Automatically generated by default\n * @param {NewUmOrderNewOrderRespTypeEnum} [newOrderRespType] \"ACK\", \"RESULT\", default \"ACK\"\n * @param {NewUmOrderPriceMatchEnum} [priceMatch] only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @param {NewUmOrderSelfTradePreventionModeEnum} [selfTradePreventionMode] `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @param {number} [goodTillDate] order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n newUmOrder: async (\n symbol: string,\n side: NewUmOrderSideEnum,\n type: NewUmOrderTypeEnum,\n positionSide?: NewUmOrderPositionSideEnum,\n timeInForce?: NewUmOrderTimeInForceEnum,\n quantity?: number,\n reduceOnly?: string,\n price?: number,\n newClientOrderId?: string,\n newOrderRespType?: NewUmOrderNewOrderRespTypeEnum,\n priceMatch?: NewUmOrderPriceMatchEnum,\n selfTradePreventionMode?: NewUmOrderSelfTradePreventionModeEnum,\n goodTillDate?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('newUmOrder', 'symbol', symbol);\n // verify required parameter 'side' is not null or undefined\n assertParamExists('newUmOrder', 'side', side);\n // verify required parameter 'type' is not null or undefined\n assertParamExists('newUmOrder', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (side !== undefined && side !== null) {\n localVarQueryParameter['side'] = side;\n }\n\n if (positionSide !== undefined && positionSide !== null) {\n localVarQueryParameter['positionSide'] = positionSide;\n }\n\n if (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\n }\n\n if (timeInForce !== undefined && timeInForce !== null) {\n localVarQueryParameter['timeInForce'] = timeInForce;\n }\n\n if (quantity !== undefined && quantity !== null) {\n localVarQueryParameter['quantity'] = quantity;\n }\n\n if (reduceOnly !== undefined && reduceOnly !== null) {\n localVarQueryParameter['reduceOnly'] = reduceOnly;\n }\n\n if (price !== undefined && price !== null) {\n localVarQueryParameter['price'] = price;\n }\n\n if (newClientOrderId !== undefined && newClientOrderId !== null) {\n localVarQueryParameter['newClientOrderId'] = newClientOrderId;\n }\n\n if (newOrderRespType !== undefined && newOrderRespType !== null) {\n localVarQueryParameter['newOrderRespType'] = newOrderRespType;\n }\n\n if (priceMatch !== undefined && priceMatch !== null) {\n localVarQueryParameter['priceMatch'] = priceMatch;\n }\n\n if (selfTradePreventionMode !== undefined && selfTradePreventionMode !== null) {\n localVarQueryParameter['selfTradePreventionMode'] = selfTradePreventionMode;\n }\n\n if (goodTillDate !== undefined && goodTillDate !== null) {\n localVarQueryParameter['goodTillDate'] = goodTillDate;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [strategyId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCmConditionalOrders: async (\n symbol?: string,\n strategyId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {string} symbol\n * @param {string} [pair]\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCmOrders: async (\n symbol: string,\n pair?: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllCmOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentCmOpenConditionalOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {string} [pair]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentCmOpenOrders: async (\n symbol?: string,\n pair?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (pair !== undefined && pair !== null) {\n localVarQueryParameter['pair'] = pair;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentUmOpenConditionalOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllCurrentUmOpenOrders: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllMarginAccountOrders: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllMarginAccountOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [strategyId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllUmConditionalOrders: async (\n symbol?: string,\n strategyId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryAllUmOrders: async (\n symbol: string,\n orderId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryAllUmOrders', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/allOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmConditionalOrderHistory: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmConditionalOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/orderHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmModifyOrderHistory: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmModifyOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/orderAmendment',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentCmOpenConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentCmOpenConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/conditional/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentCmOpenOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentCmOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentMarginOpenOrder: async (\n symbol: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentMarginOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/openOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentUmOpenConditionalOrder: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentUmOpenConditionalOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryCurrentUmOpenOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryCurrentUmOpenOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/openOrder',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryMarginAccountOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsAllOco: async (\n fromId?: number,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/allOrderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {number} [orderListId] Either `orderListId` or `listClientOrderId` must be provided\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsOco: async (\n orderListId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (orderListId !== undefined && orderListId !== null) {\n localVarQueryParameter['orderListId'] = orderListId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/orderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryMarginAccountsOpenOco: async (recvWindow?: number): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/openOrderList',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {string} symbol\n * @param {number} [strategyId]\n * @param {string} [newClientStrategyId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmConditionalOrderHistory: async (\n symbol: string,\n strategyId?: number,\n newClientStrategyId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmConditionalOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (strategyId !== undefined && strategyId !== null) {\n localVarQueryParameter['strategyId'] = strategyId;\n }\n\n if (newClientStrategyId !== undefined && newClientStrategyId !== null) {\n localVarQueryParameter['newClientStrategyId'] = newClientStrategyId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/conditional/orderHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmModifyOrderHistory: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmModifyOrderHistory', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/orderAmendment',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {string} symbol\n * @param {number} [orderId]\n * @param {string} [origClientOrderId]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUmOrder: async (\n symbol: string,\n orderId?: number,\n origClientOrderId?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('queryUmOrder', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (orderId !== undefined && orderId !== null) {\n localVarQueryParameter['orderId'] = orderId;\n }\n\n if (origClientOrderId !== undefined && origClientOrderId !== null) {\n localVarQueryParameter['origClientOrderId'] = origClientOrderId;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/order',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {string} [symbol]\n * @param {QueryUsersCmForceOrdersAutoCloseTypeEnum} [autoCloseType] `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersCmForceOrders: async (\n symbol?: string,\n autoCloseType?: QueryUsersCmForceOrdersAutoCloseTypeEnum,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (autoCloseType !== undefined && autoCloseType !== null) {\n localVarQueryParameter['autoCloseType'] = autoCloseType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/cm/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [current] Currently querying page. Start from 1. Default:1\n * @param {number} [size] Default:10 Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersMarginForceOrders: async (\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (current !== undefined && current !== null) {\n localVarQueryParameter['current'] = current;\n }\n\n if (size !== undefined && size !== null) {\n localVarQueryParameter['size'] = size;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/margin/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {string} [symbol]\n * @param {QueryUsersUmForceOrdersAutoCloseTypeEnum} [autoCloseType] `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n queryUsersUmForceOrders: async (\n symbol?: string,\n autoCloseType?: QueryUsersUmForceOrdersAutoCloseTypeEnum,\n startTime?: number,\n endTime?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (autoCloseType !== undefined && autoCloseType !== null) {\n localVarQueryParameter['autoCloseType'] = autoCloseType;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/forceOrders',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {string} feeBurn \"true\": Fee Discount On; \"false\": Fee Discount Off\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n toggleBnbBurnOnUmFuturesTrade: async (\n feeBurn: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'feeBurn' is not null or undefined\n assertParamExists('toggleBnbBurnOnUmFuturesTrade', 'feeBurn', feeBurn);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (feeBurn !== undefined && feeBurn !== null) {\n localVarQueryParameter['feeBurn'] = feeBurn;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/feeBurn',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '7 days' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 7 days.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {string} symbol\n * @param {number} [startTime] Timestamp in ms to get funding from INCLUSIVE.\n * @param {number} [endTime] Timestamp in ms to get funding until INCLUSIVE.\n * @param {number} [fromId] Trade id to fetch from. Default gets most recent trades.\n * @param {number} [limit] Default 100; max 1000\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umAccountTradeList: async (\n symbol: string,\n startTime?: number,\n endTime?: number,\n fromId?: number,\n limit?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'symbol' is not null or undefined\n assertParamExists('umAccountTradeList', 'symbol', symbol);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (startTime !== undefined && startTime !== null) {\n localVarQueryParameter['startTime'] = startTime;\n }\n\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n\n if (fromId !== undefined && fromId !== null) {\n localVarQueryParameter['fromId'] = fromId;\n }\n\n if (limit !== undefined && limit !== null) {\n localVarQueryParameter['limit'] = limit;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/userTrades',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {string} [symbol]\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n umPositionAdlQuantileEstimation: async (\n symbol?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (symbol !== undefined && symbol !== null) {\n localVarQueryParameter['symbol'] = symbol;\n }\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/um/adlQuantile',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * TradeApi - interface\n * @interface TradeApi\n */\nexport interface TradeApiInterface {\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>;\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>;\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>;\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>;\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>>;\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>>;\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>;\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>;\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>>;\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>>;\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>>;\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cmAccountTradeList(\n requestParameters?: CmAccountTradeListRequest\n ): Promise<RestApiResponse<CmAccountTradeListResponse>>;\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n cmPositionAdlQuantileEstimation(\n requestParameters?: CmPositionAdlQuantileEstimationRequest\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>;\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n getUmFuturesBnbBurnStatus(\n requestParameters?: GetUmFuturesBnbBurnStatusRequest\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>;\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>>;\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>>;\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>>;\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>>;\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>>;\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>>;\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>>;\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>>;\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newCmOrder(requestParameters: NewCmOrderRequest): Promise<RestApiResponse<NewCmOrderResponse>>;\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>>;\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>>;\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n newUmOrder(requestParameters: NewUmOrderRequest): Promise<RestApiResponse<NewUmOrderResponse>>;\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCmConditionalOrders(\n requestParameters?: QueryAllCmConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>;\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>>;\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentCmOpenConditionalOrders(\n requestParameters?: QueryAllCurrentCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>;\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentCmOpenOrders(\n requestParameters?: QueryAllCurrentCmOpenOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>;\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentUmOpenConditionalOrders(\n requestParameters?: QueryAllCurrentUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>;\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllCurrentUmOpenOrders(\n requestParameters?: QueryAllCurrentUmOpenOrdersRequest\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>;\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>;\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllUmConditionalOrders(\n requestParameters?: QueryAllUmConditionalOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>;\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>>;\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>;\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>;\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>>;\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>;\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>;\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>;\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>;\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>;\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>>;\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsAllOco(\n requestParameters?: QueryMarginAccountsAllOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>;\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsOco(\n requestParameters?: QueryMarginAccountsOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>;\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryMarginAccountsOpenOco(\n requestParameters?: QueryMarginAccountsOpenOcoRequest\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>;\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>;\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>;\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>>;\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersCmForceOrders(\n requestParameters?: QueryUsersCmForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>;\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersMarginForceOrders(\n requestParameters?: QueryUsersMarginForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>;\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n queryUsersUmForceOrders(\n requestParameters?: QueryUsersUmForceOrdersRequest\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>;\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>;\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '7 days' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 7 days.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>>;\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApiInterface\n */\n umPositionAdlQuantileEstimation(\n requestParameters?: UmPositionAdlQuantileEstimationRequest\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>;\n}\n\n/**\n * Request parameters for cancelAllCmOpenConditionalOrders operation in TradeApi.\n * @interface CancelAllCmOpenConditionalOrdersRequest\n */\nexport interface CancelAllCmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllCmOpenConditionalOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllCmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllCmOpenOrders operation in TradeApi.\n * @interface CancelAllCmOpenOrdersRequest\n */\nexport interface CancelAllCmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllCmOpenOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllCmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllUmOpenConditionalOrders operation in TradeApi.\n * @interface CancelAllUmOpenConditionalOrdersRequest\n */\nexport interface CancelAllUmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllUmOpenConditionalOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllUmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelAllUmOpenOrders operation in TradeApi.\n * @interface CancelAllUmOpenOrdersRequest\n */\nexport interface CancelAllUmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelAllUmOpenOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelAllUmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelCmConditionalOrder operation in TradeApi.\n * @interface CancelCmConditionalOrderRequest\n */\nexport interface CancelCmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelCmOrder operation in TradeApi.\n * @interface CancelCmOrderRequest\n */\nexport interface CancelCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountAllOpenOrdersOnASymbol operation in TradeApi.\n * @interface CancelMarginAccountAllOpenOrdersOnASymbolRequest\n */\nexport interface CancelMarginAccountAllOpenOrdersOnASymbolRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountAllOpenOrdersOnASymbol\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountAllOpenOrdersOnASymbol\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountOcoOrders operation in TradeApi.\n * @interface CancelMarginAccountOcoOrdersRequest\n */\nexport interface CancelMarginAccountOcoOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly symbol: string;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly orderListId?: number;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly listClientOrderId?: string;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly newClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOcoOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelMarginAccountOrder operation in TradeApi.\n * @interface CancelMarginAccountOrderRequest\n */\nexport interface CancelMarginAccountOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelMarginAccountOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelUmConditionalOrder operation in TradeApi.\n * @interface CancelUmConditionalOrderRequest\n */\nexport interface CancelUmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cancelUmOrder operation in TradeApi.\n * @interface CancelUmOrderRequest\n */\nexport interface CancelUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCancelUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCancelUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmAccountTradeList operation in TradeApi.\n * @interface CmAccountTradeListRequest\n */\nexport interface CmAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly pair?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCmAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for cmPositionAdlQuantileEstimation operation in TradeApi.\n * @interface CmPositionAdlQuantileEstimationRequest\n */\nexport interface CmPositionAdlQuantileEstimationRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiCmPositionAdlQuantileEstimation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiCmPositionAdlQuantileEstimation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getUmFuturesBnbBurnStatus operation in TradeApi.\n * @interface GetUmFuturesBnbBurnStatusRequest\n */\nexport interface GetUmFuturesBnbBurnStatusRequest {\n /**\n *\n * @type {number}\n * @memberof TradeApiGetUmFuturesBnbBurnStatus\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountBorrow operation in TradeApi.\n * @interface MarginAccountBorrowRequest\n */\nexport interface MarginAccountBorrowRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountBorrow\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountNewOco operation in TradeApi.\n * @interface MarginAccountNewOcoRequest\n */\nexport interface MarginAccountNewOcoRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly side: MarginAccountNewOcoSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopPrice: number;\n\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly listClientOrderId?: string;\n\n /**\n * A unique Id for the limit order\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly limitClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly limitIcebergQty?: number;\n\n /**\n * A unique Id for the stop loss/stop loss limit leg\n * @type {string}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopClientOrderId?: string;\n\n /**\n * If provided, stopLimitTimeInForce is required.\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopLimitPrice?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopIcebergQty?: number;\n\n /**\n * Valid values are `GTC/FOK/IOC`\n * @type {'GTC' | 'IOC' | 'FOK'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly stopLimitTimeInForce?: MarginAccountNewOcoStopLimitTimeInForceEnum;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly newOrderRespType?: MarginAccountNewOcoNewOrderRespTypeEnum;\n\n /**\n * NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @type {'NO_SIDE_EFFECT' | 'MARGIN_BUY' | 'AUTO_REPAY'}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly sideEffectType?: MarginAccountNewOcoSideEffectTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountNewOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountRepay operation in TradeApi.\n * @interface MarginAccountRepayRequest\n */\nexport interface MarginAccountRepayRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly asset: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepay\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountRepayDebt operation in TradeApi.\n * @interface MarginAccountRepayDebtRequest\n */\nexport interface MarginAccountRepayDebtRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly asset: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly amount?: string;\n\n /**\n * Specific asset list to repay debt; Can be added in batch, separated by commas\n * @type {string}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly specifyRepayAssets?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountRepayDebt\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for marginAccountTradeList operation in TradeApi.\n * @interface MarginAccountTradeListRequest\n */\nexport interface MarginAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiMarginAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for modifyCmOrder operation in TradeApi.\n * @interface ModifyCmOrderRequest\n */\nexport interface ModifyCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiModifyCmOrder\n */\n readonly side: ModifyCmOrderSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiModifyCmOrder\n */\n readonly priceMatch?: ModifyCmOrderPriceMatchEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for modifyUmOrder operation in TradeApi.\n * @interface ModifyUmOrderRequest\n */\nexport interface ModifyUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiModifyUmOrder\n */\n readonly side: ModifyUmOrderSideEnum;\n\n /**\n * Order quantity\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly quantity: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly price: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiModifyUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiModifyUmOrder\n */\n readonly priceMatch?: ModifyUmOrderPriceMatchEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiModifyUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newCmConditionalOrder operation in TradeApi.\n * @interface NewCmConditionalOrderRequest\n */\nexport interface NewCmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly side: NewCmConditionalOrderSideEnum;\n\n /**\n * \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @type {'STOP' | 'STOP_MARKET' | 'TAKE_PROFIT' | 'TAKE_PROFIT_MARKET' | 'TRAILING_STOP_MARKET'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly strategyType: NewCmConditionalOrderStrategyTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly positionSide?: NewCmConditionalOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly timeInForce?: NewCmConditionalOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly price?: number;\n\n /**\n * stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @type {'MARK_PRICE'}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly workingType?: NewCmConditionalOrderWorkingTypeEnum;\n\n /**\n * \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly priceProtect?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly activationPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly callbackRate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newCmOrder operation in TradeApi.\n * @interface NewCmOrderRequest\n */\nexport interface NewCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewCmOrder\n */\n readonly side: NewCmOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewCmOrder\n */\n readonly type: NewCmOrderTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewCmOrder\n */\n readonly positionSide?: NewCmOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewCmOrder\n */\n readonly timeInForce?: NewCmOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly price?: number;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewCmOrder\n */\n readonly priceMatch?: NewCmOrderPriceMatchEnum;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewCmOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewCmOrder\n */\n readonly newOrderRespType?: NewCmOrderNewOrderRespTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newMarginOrder operation in TradeApi.\n * @interface NewMarginOrderRequest\n */\nexport interface NewMarginOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewMarginOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly side: NewMarginOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly type: NewMarginOrderTypeEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly quantity?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly quoteOrderQty?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly price?: number;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewMarginOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly newOrderRespType?: NewMarginOrderNewOrderRespTypeEnum;\n\n /**\n * Used with `LIMIT`, `STOP_LOSS_LIMIT`, and `TAKE_PROFIT_LIMIT` to create an iceberg order\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly icebergQty?: number;\n\n /**\n * NO_SIDE_EFFECT, MARGIN_BUY, AUTO_REPAY; default NO_SIDE_EFFECT.\n * @type {'NO_SIDE_EFFECT' | 'MARGIN_BUY' | 'AUTO_REPAY'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly sideEffectType?: NewMarginOrderSideEffectTypeEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly timeInForce?: NewMarginOrderTimeInForceEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewMarginOrder\n */\n readonly selfTradePreventionMode?: NewMarginOrderSelfTradePreventionModeEnum;\n\n /**\n * 只有在自动借款单或者自动借还单生效,true表示的是撤单后需要把订单产生的借款归还,默认为true\n * @type {boolean}\n * @memberof TradeApiNewMarginOrder\n */\n readonly autoRepayAtCancel?: boolean;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewMarginOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newUmConditionalOrder operation in TradeApi.\n * @interface NewUmConditionalOrderRequest\n */\nexport interface NewUmConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly side: NewUmConditionalOrderSideEnum;\n\n /**\n * \"STOP\", \"STOP_MARKET\", \"TAKE_PROFIT\", \"TAKE_PROFIT_MARKET\", and \"TRAILING_STOP_MARKET\"\n * @type {'STOP' | 'STOP_MARKET' | 'TAKE_PROFIT' | 'TAKE_PROFIT_MARKET' | 'TRAILING_STOP_MARKET'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly strategyType: NewUmConditionalOrderStrategyTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly positionSide?: NewUmConditionalOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly timeInForce?: NewUmConditionalOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly price?: number;\n\n /**\n * stopPrice triggered by: \"MARK_PRICE\", \"CONTRACT_PRICE\". Default \"CONTRACT_PRICE\"\n * @type {'MARK_PRICE'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly workingType?: NewUmConditionalOrderWorkingTypeEnum;\n\n /**\n * \"TRUE\" or \"FALSE\", default \"FALSE\". Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly priceProtect?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n * Used with `STOP/STOP_MARKET` or `TAKE_PROFIT/TAKE_PROFIT_MARKET` orders.\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly stopPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, default as the mark price\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly activationPrice?: number;\n\n /**\n * Used with `TRAILING_STOP_MARKET` orders, min 0.1, max 5 where 1 for 1%\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly callbackRate?: number;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly priceMatch?: NewUmConditionalOrderPriceMatchEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly selfTradePreventionMode?: NewUmConditionalOrderSelfTradePreventionModeEnum;\n\n /**\n * order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly goodTillDate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for newUmOrder operation in TradeApi.\n * @interface NewUmOrderRequest\n */\nexport interface NewUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {'BUY' | 'SELL'}\n * @memberof TradeApiNewUmOrder\n */\n readonly side: NewUmOrderSideEnum;\n\n /**\n * `LIMIT`, `MARKET`\n * @type {'LIMIT' | 'MARKET'}\n * @memberof TradeApiNewUmOrder\n */\n readonly type: NewUmOrderTypeEnum;\n\n /**\n * Default `BOTH` for One-way Mode ; `LONG` or `SHORT` for Hedge Mode. It must be sent in Hedge Mode.\n * @type {'BOTH' | 'LONG' | 'SHORT'}\n * @memberof TradeApiNewUmOrder\n */\n readonly positionSide?: NewUmOrderPositionSideEnum;\n\n /**\n *\n * @type {'GTC' | 'IOC' | 'FOK' | 'GTX'}\n * @memberof TradeApiNewUmOrder\n */\n readonly timeInForce?: NewUmOrderTimeInForceEnum;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly quantity?: number;\n\n /**\n * \"true\" or \"false\". default \"false\". Cannot be sent in Hedge Mode .\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly reduceOnly?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly price?: number;\n\n /**\n * Used to uniquely identify this cancel. Automatically generated by default\n * @type {string}\n * @memberof TradeApiNewUmOrder\n */\n readonly newClientOrderId?: string;\n\n /**\n * \"ACK\", \"RESULT\", default \"ACK\"\n * @type {'ACK' | 'RESULT'}\n * @memberof TradeApiNewUmOrder\n */\n readonly newOrderRespType?: NewUmOrderNewOrderRespTypeEnum;\n\n /**\n * only avaliable for `LIMIT`/`STOP`/`TAKE_PROFIT` order; can be set to `OPPONENT`/ `OPPONENT_5`/ `OPPONENT_10`/ `OPPONENT_20`: /`QUEUE`/ `QUEUE_5`/ `QUEUE_10`/ `QUEUE_20`; Can't be passed together with `price`\n * @type {'NONE' | 'OPPONENT' | 'OPPONENT_5' | 'OPPONENT_10' | 'OPPONENT_20' | 'QUEUE' | 'QUEUE_5' | 'QUEUE_10' | 'QUEUE_20'}\n * @memberof TradeApiNewUmOrder\n */\n readonly priceMatch?: NewUmOrderPriceMatchEnum;\n\n /**\n * `NONE`:No STP / `EXPIRE_TAKER`:expire taker order when STP triggers/ `EXPIRE_MAKER`:expire taker order when STP triggers/ `EXPIRE_BOTH`:expire both orders when STP triggers\n * @type {'NONE' | 'EXPIRE_TAKER' | 'EXPIRE_BOTH' | 'EXPIRE_MAKER'}\n * @memberof TradeApiNewUmOrder\n */\n readonly selfTradePreventionMode?: NewUmOrderSelfTradePreventionModeEnum;\n\n /**\n * order cancel time for timeInForce `GTD`, mandatory when `timeInforce` set to `GTD`; order the timestamp only retains second-level precision, ms part will be ignored; The goodTillDate timestamp must be greater than the current time plus 600 seconds and smaller than 253402300799000Mode. It must be sent in Hedge Mode.\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly goodTillDate?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiNewUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCmConditionalOrders operation in TradeApi.\n * @interface QueryAllCmConditionalOrdersRequest\n */\nexport interface QueryAllCmConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly strategyId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCmOrders operation in TradeApi.\n * @interface QueryAllCmOrdersRequest\n */\nexport interface QueryAllCmOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCmOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentCmOpenConditionalOrders operation in TradeApi.\n * @interface QueryAllCurrentCmOpenConditionalOrdersRequest\n */\nexport interface QueryAllCurrentCmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentCmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentCmOpenOrders operation in TradeApi.\n * @interface QueryAllCurrentCmOpenOrdersRequest\n */\nexport interface QueryAllCurrentCmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly pair?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentCmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentUmOpenConditionalOrders operation in TradeApi.\n * @interface QueryAllCurrentUmOpenConditionalOrdersRequest\n */\nexport interface QueryAllCurrentUmOpenConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentUmOpenConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentUmOpenConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllCurrentUmOpenOrders operation in TradeApi.\n * @interface QueryAllCurrentUmOpenOrdersRequest\n */\nexport interface QueryAllCurrentUmOpenOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllCurrentUmOpenOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllCurrentUmOpenOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllMarginAccountOrders operation in TradeApi.\n * @interface QueryAllMarginAccountOrdersRequest\n */\nexport interface QueryAllMarginAccountOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllMarginAccountOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllUmConditionalOrders operation in TradeApi.\n * @interface QueryAllUmConditionalOrdersRequest\n */\nexport interface QueryAllUmConditionalOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly strategyId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmConditionalOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryAllUmOrders operation in TradeApi.\n * @interface QueryAllUmOrdersRequest\n */\nexport interface QueryAllUmOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly orderId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryAllUmOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmConditionalOrderHistory operation in TradeApi.\n * @interface QueryCmConditionalOrderHistoryRequest\n */\nexport interface QueryCmConditionalOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmConditionalOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmModifyOrderHistory operation in TradeApi.\n * @interface QueryCmModifyOrderHistoryRequest\n */\nexport interface QueryCmModifyOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly origClientOrderId?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmModifyOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCmOrder operation in TradeApi.\n * @interface QueryCmOrderRequest\n */\nexport interface QueryCmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentCmOpenConditionalOrder operation in TradeApi.\n * @interface QueryCurrentCmOpenConditionalOrderRequest\n */\nexport interface QueryCurrentCmOpenConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentCmOpenOrder operation in TradeApi.\n * @interface QueryCurrentCmOpenOrderRequest\n */\nexport interface QueryCurrentCmOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentCmOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentMarginOpenOrder operation in TradeApi.\n * @interface QueryCurrentMarginOpenOrderRequest\n */\nexport interface QueryCurrentMarginOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentMarginOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentMarginOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentUmOpenConditionalOrder operation in TradeApi.\n * @interface QueryCurrentUmOpenConditionalOrderRequest\n */\nexport interface QueryCurrentUmOpenConditionalOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenConditionalOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryCurrentUmOpenOrder operation in TradeApi.\n * @interface QueryCurrentUmOpenOrderRequest\n */\nexport interface QueryCurrentUmOpenOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryCurrentUmOpenOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountOrder operation in TradeApi.\n * @interface QueryMarginAccountOrderRequest\n */\nexport interface QueryMarginAccountOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsAllOco operation in TradeApi.\n * @interface QueryMarginAccountsAllOcoRequest\n */\nexport interface QueryMarginAccountsAllOcoRequest {\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly fromId?: number;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsAllOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsOco operation in TradeApi.\n * @interface QueryMarginAccountsOcoRequest\n */\nexport interface QueryMarginAccountsOcoRequest {\n /**\n * Either `orderListId` or `listClientOrderId` must be provided\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly orderListId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryMarginAccountsOpenOco operation in TradeApi.\n * @interface QueryMarginAccountsOpenOcoRequest\n */\nexport interface QueryMarginAccountsOpenOcoRequest {\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryMarginAccountsOpenOco\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmConditionalOrderHistory operation in TradeApi.\n * @interface QueryUmConditionalOrderHistoryRequest\n */\nexport interface QueryUmConditionalOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly strategyId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly newClientStrategyId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmConditionalOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmModifyOrderHistory operation in TradeApi.\n * @interface QueryUmModifyOrderHistoryRequest\n */\nexport interface QueryUmModifyOrderHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly origClientOrderId?: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmModifyOrderHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUmOrder operation in TradeApi.\n * @interface QueryUmOrderRequest\n */\nexport interface QueryUmOrderRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmOrder\n */\n readonly symbol: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmOrder\n */\n readonly orderId?: number;\n\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUmOrder\n */\n readonly origClientOrderId?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUmOrder\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersCmForceOrders operation in TradeApi.\n * @interface QueryUsersCmForceOrdersRequest\n */\nexport interface QueryUsersCmForceOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly symbol?: string;\n\n /**\n * `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @type {'LIQUIDATION' | 'ADL'}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly autoCloseType?: QueryUsersCmForceOrdersAutoCloseTypeEnum;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersCmForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersMarginForceOrders operation in TradeApi.\n * @interface QueryUsersMarginForceOrdersRequest\n */\nexport interface QueryUsersMarginForceOrdersRequest {\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Currently querying page. Start from 1. Default:1\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly current?: number;\n\n /**\n * Default:10 Max:100\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersMarginForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUsersUmForceOrders operation in TradeApi.\n * @interface QueryUsersUmForceOrdersRequest\n */\nexport interface QueryUsersUmForceOrdersRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly symbol?: string;\n\n /**\n * `LIQUIDATION` for liquidation orders, `ADL` for ADL orders.\n * @type {'LIQUIDATION' | 'ADL'}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly autoCloseType?: QueryUsersUmForceOrdersAutoCloseTypeEnum;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly endTime?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiQueryUsersUmForceOrders\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for toggleBnbBurnOnUmFuturesTrade operation in TradeApi.\n * @interface ToggleBnbBurnOnUmFuturesTradeRequest\n */\nexport interface ToggleBnbBurnOnUmFuturesTradeRequest {\n /**\n * \"true\": Fee Discount On; \"false\": Fee Discount Off\n * @type {string}\n * @memberof TradeApiToggleBnbBurnOnUmFuturesTrade\n */\n readonly feeBurn: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiToggleBnbBurnOnUmFuturesTrade\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umAccountTradeList operation in TradeApi.\n * @interface UmAccountTradeListRequest\n */\nexport interface UmAccountTradeListRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly symbol: string;\n\n /**\n * Timestamp in ms to get funding from INCLUSIVE.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly startTime?: number;\n\n /**\n * Timestamp in ms to get funding until INCLUSIVE.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly endTime?: number;\n\n /**\n * Trade id to fetch from. Default gets most recent trades.\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly fromId?: number;\n\n /**\n * Default 100; max 1000\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly limit?: number;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiUmAccountTradeList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for umPositionAdlQuantileEstimation operation in TradeApi.\n * @interface UmPositionAdlQuantileEstimationRequest\n */\nexport interface UmPositionAdlQuantileEstimationRequest {\n /**\n *\n * @type {string}\n * @memberof TradeApiUmPositionAdlQuantileEstimation\n */\n readonly symbol?: string;\n\n /**\n *\n * @type {number}\n * @memberof TradeApiUmPositionAdlQuantileEstimation\n */\n readonly recvWindow?: number;\n}\n\n/**\n * TradeApi - object-oriented interface\n * @class TradeApi\n */\nexport class TradeApi implements TradeApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = TradeApiAxiosParamCreator(configuration);\n }\n\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Conditional-Orders Binance API Documentation}\n */\n public async cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelAllCmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllCmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Orders Binance API Documentation}\n */\n public async cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelAllCmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllCmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Conditional-Orders Binance API Documentation}\n */\n public async cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelAllUmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllUmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Orders Binance API Documentation}\n */\n public async cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelAllUmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelAllUmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Conditional-Order Binance API Documentation}\n */\n public async cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelCmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelCmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Order Binance API Documentation}\n */\n public async cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelCmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-All-Open-Orders-on-a-Symbol Binance API Documentation}\n */\n public async cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountAllOpenOrdersOnASymbolResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-OCO-Orders Binance API Documentation}\n */\n public async cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelMarginAccountOcoOrders(\n requestParameters?.symbol,\n requestParameters?.orderListId,\n requestParameters?.listClientOrderId,\n requestParameters?.newClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountOcoOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-Order Binance API Documentation}\n */\n public async cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelMarginAccountOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.newClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelMarginAccountOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Conditional-Order Binance API Documentation}\n */\n public async cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelUmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelUmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Order Binance API Documentation}\n */\n public async cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cancelUmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<CancelUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Account-Trade-List Binance API Documentation}\n */\n public async cmAccountTradeList(\n requestParameters: CmAccountTradeListRequest = {}\n ): Promise<RestApiResponse<CmAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.cmAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<CmAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n public async cmPositionAdlQuantileEstimation(\n requestParameters: CmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.cmPositionAdlQuantileEstimation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<CmPositionAdlQuantileEstimationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Get-UM-Futures-BNB-Burn-Status Binance API Documentation}\n */\n public async getUmFuturesBnbBurnStatus(\n requestParameters: GetUmFuturesBnbBurnStatusRequest = {}\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getUmFuturesBnbBurnStatus(\n requestParameters?.recvWindow\n );\n return sendRequest<GetUmFuturesBnbBurnStatusResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Borrow Binance API Documentation}\n */\n public async marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountBorrow(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountBorrowResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountNewOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-New-OCO Binance API Documentation}\n */\n public async marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountNewOco(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.stopPrice,\n requestParameters?.listClientOrderId,\n requestParameters?.limitClientOrderId,\n requestParameters?.limitIcebergQty,\n requestParameters?.stopClientOrderId,\n requestParameters?.stopLimitPrice,\n requestParameters?.stopIcebergQty,\n requestParameters?.stopLimitTimeInForce,\n requestParameters?.newOrderRespType,\n requestParameters?.sideEffectType,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountNewOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay Binance API Documentation}\n */\n public async marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountRepay(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountRepayResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayDebtResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay-Debt Binance API Documentation}\n */\n public async marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountRepayDebt(\n requestParameters?.asset,\n requestParameters?.amount,\n requestParameters?.specifyRepayAssets,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountRepayDebtResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Trade-List Binance API Documentation}\n */\n public async marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.marginAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<MarginAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-CM-Order Binance API Documentation}\n */\n public async modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.modifyCmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.priceMatch,\n requestParameters?.recvWindow\n );\n return sendRequest<ModifyCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-UM-Order Binance API Documentation}\n */\n public async modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.modifyUmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.quantity,\n requestParameters?.price,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.priceMatch,\n requestParameters?.recvWindow\n );\n return sendRequest<ModifyUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Conditional-Order Binance API Documentation}\n */\n public async newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newCmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.strategyType,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.workingType,\n requestParameters?.priceProtect,\n requestParameters?.newClientStrategyId,\n requestParameters?.stopPrice,\n requestParameters?.activationPrice,\n requestParameters?.callbackRate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewCmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Order Binance API Documentation}\n */\n public async newCmOrder(\n requestParameters: NewCmOrderRequest\n ): Promise<RestApiResponse<NewCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newCmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.priceMatch,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.recvWindow\n );\n return sendRequest<NewCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewMarginOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-Margin-Order Binance API Documentation}\n */\n public async newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newMarginOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.quantity,\n requestParameters?.quoteOrderQty,\n requestParameters?.price,\n requestParameters?.stopPrice,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.icebergQty,\n requestParameters?.sideEffectType,\n requestParameters?.timeInForce,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.autoRepayAtCancel,\n requestParameters?.recvWindow\n );\n return sendRequest<NewMarginOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Conditional-Order Binance API Documentation}\n */\n public async newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newUmConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.strategyType,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.workingType,\n requestParameters?.priceProtect,\n requestParameters?.newClientStrategyId,\n requestParameters?.stopPrice,\n requestParameters?.activationPrice,\n requestParameters?.callbackRate,\n requestParameters?.priceMatch,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.goodTillDate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewUmConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Order Binance API Documentation}\n */\n public async newUmOrder(\n requestParameters: NewUmOrderRequest\n ): Promise<RestApiResponse<NewUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.newUmOrder(\n requestParameters?.symbol,\n requestParameters?.side,\n requestParameters?.type,\n requestParameters?.positionSide,\n requestParameters?.timeInForce,\n requestParameters?.quantity,\n requestParameters?.reduceOnly,\n requestParameters?.price,\n requestParameters?.newClientOrderId,\n requestParameters?.newOrderRespType,\n requestParameters?.priceMatch,\n requestParameters?.selfTradePreventionMode,\n requestParameters?.goodTillDate,\n requestParameters?.recvWindow\n );\n return sendRequest<NewUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCmConditionalOrders(\n requestParameters: QueryAllCmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCmConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCmConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Orders Binance API Documentation}\n */\n public async queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCmOrders(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCmOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCurrentCmOpenConditionalOrders(\n requestParameters: QueryAllCurrentCmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryAllCurrentCmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentCmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Orders Binance API Documentation}\n */\n public async queryAllCurrentCmOpenOrders(\n requestParameters: QueryAllCurrentCmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCurrentCmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.pair,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentCmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Conditional-Orders Binance API Documentation}\n */\n public async queryAllCurrentUmOpenConditionalOrders(\n requestParameters: QueryAllCurrentUmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryAllCurrentUmOpenConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentUmOpenConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Orders Binance API Documentation}\n */\n public async queryAllCurrentUmOpenOrders(\n requestParameters: QueryAllCurrentUmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllCurrentUmOpenOrders(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllCurrentUmOpenOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Margin-Account-Orders Binance API Documentation}\n */\n public async queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllMarginAccountOrders(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllMarginAccountOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Conditional-Orders Binance API Documentation}\n */\n public async queryAllUmConditionalOrders(\n requestParameters: QueryAllUmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllUmConditionalOrders(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllUmConditionalOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Orders Binance API Documentation}\n */\n public async queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryAllUmOrders(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryAllUmOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Conditional-Order-History Binance API Documentation}\n */\n public async queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCmConditionalOrderHistory(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmConditionalOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Modify-Order-History Binance API Documentation}\n */\n public async queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmModifyOrderHistory(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmModifyOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Order Binance API Documentation}\n */\n public async queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Conditional-Order Binance API Documentation}\n */\n public async queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCurrentCmOpenConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentCmOpenConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Order Binance API Documentation}\n */\n public async queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentCmOpenOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentCmOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-Margin-Open-Order Binance API Documentation}\n */\n public async queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentMarginOpenOrder(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentMarginOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Conditional-Order Binance API Documentation}\n */\n public async queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryCurrentUmOpenConditionalOrder(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentUmOpenConditionalOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Order Binance API Documentation}\n */\n public async queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryCurrentUmOpenOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryCurrentUmOpenOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Order Binance API Documentation}\n */\n public async queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-all-OCO Binance API Documentation}\n */\n public async queryMarginAccountsAllOco(\n requestParameters: QueryMarginAccountsAllOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsAllOco(\n requestParameters?.fromId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsAllOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-OCO Binance API Documentation}\n */\n public async queryMarginAccountsOco(\n requestParameters: QueryMarginAccountsOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsOco(\n requestParameters?.orderListId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Open-OCO Binance API Documentation}\n */\n public async queryMarginAccountsOpenOco(\n requestParameters: QueryMarginAccountsOpenOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryMarginAccountsOpenOco(\n requestParameters?.recvWindow\n );\n return sendRequest<QueryMarginAccountsOpenOcoResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Conditional-Order-History Binance API Documentation}\n */\n public async queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.queryUmConditionalOrderHistory(\n requestParameters?.symbol,\n requestParameters?.strategyId,\n requestParameters?.newClientStrategyId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmConditionalOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Modify-Order-History Binance API Documentation}\n */\n public async queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmModifyOrderHistory(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmModifyOrderHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Order Binance API Documentation}\n */\n public async queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUmOrder(\n requestParameters?.symbol,\n requestParameters?.orderId,\n requestParameters?.origClientOrderId,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUmOrderResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-CM-Force-Orders Binance API Documentation}\n */\n public async queryUsersCmForceOrders(\n requestParameters: QueryUsersCmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersCmForceOrders(\n requestParameters?.symbol,\n requestParameters?.autoCloseType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersCmForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-Margin-Force-Orders Binance API Documentation}\n */\n public async queryUsersMarginForceOrders(\n requestParameters: QueryUsersMarginForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersMarginForceOrders(\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersMarginForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-UM-Force-Orders Binance API Documentation}\n */\n public async queryUsersUmForceOrders(\n requestParameters: QueryUsersUmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUsersUmForceOrders(\n requestParameters?.symbol,\n requestParameters?.autoCloseType,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<QueryUsersUmForceOrdersResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Toggle-BNB-Burn-On-UM-Futures-Trade Binance API Documentation}\n */\n public async toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.toggleBnbBurnOnUmFuturesTrade(\n requestParameters?.feeBurn,\n requestParameters?.recvWindow\n );\n return sendRequest<ToggleBnbBurnOnUmFuturesTradeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '7 days' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 7 days.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Account-Trade-List Binance API Documentation}\n */\n public async umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.umAccountTradeList(\n requestParameters?.symbol,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.fromId,\n requestParameters?.limit,\n requestParameters?.recvWindow\n );\n return sendRequest<UmAccountTradeListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof TradeApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n public async umPositionAdlQuantileEstimation(\n requestParameters: UmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.umPositionAdlQuantileEstimation(\n requestParameters?.symbol,\n requestParameters?.recvWindow\n );\n return sendRequest<UmPositionAdlQuantileEstimationResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n\nexport enum MarginAccountNewOcoSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum MarginAccountNewOcoStopLimitTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n}\n\nexport enum MarginAccountNewOcoNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum MarginAccountNewOcoSideEffectTypeEnum {\n NO_SIDE_EFFECT = 'NO_SIDE_EFFECT',\n MARGIN_BUY = 'MARGIN_BUY',\n AUTO_REPAY = 'AUTO_REPAY',\n}\n\nexport enum ModifyCmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum ModifyCmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum ModifyUmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum ModifyUmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewCmConditionalOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewCmConditionalOrderStrategyTypeEnum {\n STOP = 'STOP',\n STOP_MARKET = 'STOP_MARKET',\n TAKE_PROFIT = 'TAKE_PROFIT',\n TAKE_PROFIT_MARKET = 'TAKE_PROFIT_MARKET',\n TRAILING_STOP_MARKET = 'TRAILING_STOP_MARKET',\n}\n\nexport enum NewCmConditionalOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewCmConditionalOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewCmConditionalOrderWorkingTypeEnum {\n MARK_PRICE = 'MARK_PRICE',\n}\n\nexport enum NewCmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewCmOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewCmOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewCmOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewCmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewCmOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewMarginOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewMarginOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewMarginOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewMarginOrderSideEffectTypeEnum {\n NO_SIDE_EFFECT = 'NO_SIDE_EFFECT',\n MARGIN_BUY = 'MARGIN_BUY',\n AUTO_REPAY = 'AUTO_REPAY',\n}\n\nexport enum NewMarginOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewMarginOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum NewUmConditionalOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewUmConditionalOrderStrategyTypeEnum {\n STOP = 'STOP',\n STOP_MARKET = 'STOP_MARKET',\n TAKE_PROFIT = 'TAKE_PROFIT',\n TAKE_PROFIT_MARKET = 'TAKE_PROFIT_MARKET',\n TRAILING_STOP_MARKET = 'TRAILING_STOP_MARKET',\n}\n\nexport enum NewUmConditionalOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewUmConditionalOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewUmConditionalOrderWorkingTypeEnum {\n MARK_PRICE = 'MARK_PRICE',\n}\n\nexport enum NewUmConditionalOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewUmConditionalOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum NewUmOrderSideEnum {\n BUY = 'BUY',\n SELL = 'SELL',\n}\n\nexport enum NewUmOrderTypeEnum {\n LIMIT = 'LIMIT',\n MARKET = 'MARKET',\n}\n\nexport enum NewUmOrderPositionSideEnum {\n BOTH = 'BOTH',\n LONG = 'LONG',\n SHORT = 'SHORT',\n}\n\nexport enum NewUmOrderTimeInForceEnum {\n GTC = 'GTC',\n IOC = 'IOC',\n FOK = 'FOK',\n GTX = 'GTX',\n}\n\nexport enum NewUmOrderNewOrderRespTypeEnum {\n ACK = 'ACK',\n RESULT = 'RESULT',\n}\n\nexport enum NewUmOrderPriceMatchEnum {\n NONE = 'NONE',\n OPPONENT = 'OPPONENT',\n OPPONENT_5 = 'OPPONENT_5',\n OPPONENT_10 = 'OPPONENT_10',\n OPPONENT_20 = 'OPPONENT_20',\n QUEUE = 'QUEUE',\n QUEUE_5 = 'QUEUE_5',\n QUEUE_10 = 'QUEUE_10',\n QUEUE_20 = 'QUEUE_20',\n}\n\nexport enum NewUmOrderSelfTradePreventionModeEnum {\n NONE = 'NONE',\n EXPIRE_TAKER = 'EXPIRE_TAKER',\n EXPIRE_BOTH = 'EXPIRE_BOTH',\n EXPIRE_MAKER = 'EXPIRE_MAKER',\n}\n\nexport enum QueryUsersCmForceOrdersAutoCloseTypeEnum {\n LIQUIDATION = 'LIQUIDATION',\n ADL = 'ADL',\n}\n\nexport enum QueryUsersUmForceOrdersAutoCloseTypeEnum {\n LIQUIDATION = 'LIQUIDATION',\n ADL = 'ADL',\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport {\n ConfigurationRestAPI,\n TimeUnit,\n RestApiResponse,\n sendRequest,\n type RequestArgs,\n} from '@binance/common';\nimport type { StartUserDataStreamResponse } from '../types';\n\n/**\n * UserDataStreamsApi - axios parameter creator\n */\nconst UserDataStreamsApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError}\n */\n closeUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'DELETE',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n *\n * @throws {RequiredError}\n */\n keepaliveUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'PUT',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError}\n */\n startUserDataStream: async (): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/papi/v1/listenKey',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * UserDataStreamsApi - interface\n * @interface UserDataStreamsApi\n */\nexport interface UserDataStreamsApiInterface {\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n closeUserDataStream(): Promise<RestApiResponse<void>>;\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n keepaliveUserDataStream(): Promise<RestApiResponse<void>>;\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApiInterface\n */\n startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>>;\n}\n\n/**\n * UserDataStreamsApi - object-oriented interface\n * @class UserDataStreamsApi\n */\nexport class UserDataStreamsApi implements UserDataStreamsApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = UserDataStreamsApiAxiosParamCreator(configuration);\n }\n\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Close-User-Data-Stream Binance API Documentation}\n */\n public async closeUserDataStream(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.closeUserDataStream();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}\n */\n public async keepaliveUserDataStream(): Promise<RestApiResponse<void>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.keepaliveUserDataStream();\n return sendRequest<void>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof UserDataStreamsApi\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Start-User-Data-Stream Binance API Documentation}\n */\n public async startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.startUserDataStream();\n return sendRequest<StartUserDataStreamResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: false }\n );\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin REST API\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin REST API\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { ConfigurationRestAPI, RestApiResponse, sendRequest } from '@binance/common';\nimport { AccountApi } from './modules/account-api';\nimport { MarketDataApi } from './modules/market-data-api';\nimport { TradeApi } from './modules/trade-api';\nimport { UserDataStreamsApi } from './modules/user-data-streams-api';\n\nimport type {\n AccountBalanceRequest,\n AccountInformationRequest,\n BnbTransferRequest,\n ChangeAutoRepayFuturesStatusRequest,\n ChangeCmInitialLeverageRequest,\n ChangeCmPositionModeRequest,\n ChangeUmInitialLeverageRequest,\n ChangeUmPositionModeRequest,\n CmNotionalAndLeverageBracketsRequest,\n FundAutoCollectionRequest,\n FundCollectionByAssetRequest,\n GetAutoRepayFuturesStatusRequest,\n GetCmAccountDetailRequest,\n GetCmCurrentPositionModeRequest,\n GetCmIncomeHistoryRequest,\n GetDownloadIdForUmFuturesOrderHistoryRequest,\n GetDownloadIdForUmFuturesTradeHistoryRequest,\n GetDownloadIdForUmFuturesTransactionHistoryRequest,\n GetMarginBorrowLoanInterestHistoryRequest,\n GetUmAccountDetailRequest,\n GetUmAccountDetailV2Request,\n GetUmCurrentPositionModeRequest,\n GetUmFuturesOrderDownloadLinkByIdRequest,\n GetUmFuturesTradeDownloadLinkByIdRequest,\n GetUmFuturesTransactionDownloadLinkByIdRequest,\n GetUmIncomeHistoryRequest,\n GetUserCommissionRateForCmRequest,\n GetUserCommissionRateForUmRequest,\n MarginMaxBorrowRequest,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest,\n QueryCmPositionInformationRequest,\n QueryMarginLoanRecordRequest,\n QueryMarginMaxWithdrawRequest,\n QueryMarginRepayRecordRequest,\n QueryPortfolioMarginNegativeBalanceInterestHistoryRequest,\n QueryUmPositionInformationRequest,\n QueryUserNegativeBalanceAutoExchangeRecordRequest,\n QueryUserRateLimitRequest,\n RepayFuturesNegativeBalanceRequest,\n UmFuturesAccountConfigurationRequest,\n UmFuturesSymbolConfigurationRequest,\n UmNotionalAndLeverageBracketsRequest,\n} from './modules/account-api';\nimport type {} from './modules/market-data-api';\nimport type {\n CancelAllCmOpenConditionalOrdersRequest,\n CancelAllCmOpenOrdersRequest,\n CancelAllUmOpenConditionalOrdersRequest,\n CancelAllUmOpenOrdersRequest,\n CancelCmConditionalOrderRequest,\n CancelCmOrderRequest,\n CancelMarginAccountAllOpenOrdersOnASymbolRequest,\n CancelMarginAccountOcoOrdersRequest,\n CancelMarginAccountOrderRequest,\n CancelUmConditionalOrderRequest,\n CancelUmOrderRequest,\n CmAccountTradeListRequest,\n CmPositionAdlQuantileEstimationRequest,\n GetUmFuturesBnbBurnStatusRequest,\n MarginAccountBorrowRequest,\n MarginAccountNewOcoRequest,\n MarginAccountRepayRequest,\n MarginAccountRepayDebtRequest,\n MarginAccountTradeListRequest,\n ModifyCmOrderRequest,\n ModifyUmOrderRequest,\n NewCmConditionalOrderRequest,\n NewCmOrderRequest,\n NewMarginOrderRequest,\n NewUmConditionalOrderRequest,\n NewUmOrderRequest,\n QueryAllCmConditionalOrdersRequest,\n QueryAllCmOrdersRequest,\n QueryAllCurrentCmOpenConditionalOrdersRequest,\n QueryAllCurrentCmOpenOrdersRequest,\n QueryAllCurrentUmOpenConditionalOrdersRequest,\n QueryAllCurrentUmOpenOrdersRequest,\n QueryAllMarginAccountOrdersRequest,\n QueryAllUmConditionalOrdersRequest,\n QueryAllUmOrdersRequest,\n QueryCmConditionalOrderHistoryRequest,\n QueryCmModifyOrderHistoryRequest,\n QueryCmOrderRequest,\n QueryCurrentCmOpenConditionalOrderRequest,\n QueryCurrentCmOpenOrderRequest,\n QueryCurrentMarginOpenOrderRequest,\n QueryCurrentUmOpenConditionalOrderRequest,\n QueryCurrentUmOpenOrderRequest,\n QueryMarginAccountOrderRequest,\n QueryMarginAccountsAllOcoRequest,\n QueryMarginAccountsOcoRequest,\n QueryMarginAccountsOpenOcoRequest,\n QueryUmConditionalOrderHistoryRequest,\n QueryUmModifyOrderHistoryRequest,\n QueryUmOrderRequest,\n QueryUsersCmForceOrdersRequest,\n QueryUsersMarginForceOrdersRequest,\n QueryUsersUmForceOrdersRequest,\n ToggleBnbBurnOnUmFuturesTradeRequest,\n UmAccountTradeListRequest,\n UmPositionAdlQuantileEstimationRequest,\n} from './modules/trade-api';\nimport type {} from './modules/user-data-streams-api';\n\nimport type {\n AccountBalanceResponse,\n AccountInformationResponse,\n BnbTransferResponse,\n ChangeAutoRepayFuturesStatusResponse,\n ChangeCmInitialLeverageResponse,\n ChangeCmPositionModeResponse,\n ChangeUmInitialLeverageResponse,\n ChangeUmPositionModeResponse,\n CmNotionalAndLeverageBracketsResponse,\n FundAutoCollectionResponse,\n FundCollectionByAssetResponse,\n GetAutoRepayFuturesStatusResponse,\n GetCmAccountDetailResponse,\n GetCmCurrentPositionModeResponse,\n GetCmIncomeHistoryResponse,\n GetDownloadIdForUmFuturesOrderHistoryResponse,\n GetDownloadIdForUmFuturesTradeHistoryResponse,\n GetDownloadIdForUmFuturesTransactionHistoryResponse,\n GetMarginBorrowLoanInterestHistoryResponse,\n GetUmAccountDetailResponse,\n GetUmAccountDetailV2Response,\n GetUmCurrentPositionModeResponse,\n GetUmFuturesOrderDownloadLinkByIdResponse,\n GetUmFuturesTradeDownloadLinkByIdResponse,\n GetUmFuturesTransactionDownloadLinkByIdResponse,\n GetUmIncomeHistoryResponse,\n GetUserCommissionRateForCmResponse,\n GetUserCommissionRateForUmResponse,\n MarginMaxBorrowResponse,\n PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse,\n QueryCmPositionInformationResponse,\n QueryMarginLoanRecordResponse,\n QueryMarginMaxWithdrawResponse,\n QueryMarginRepayRecordResponse,\n QueryPortfolioMarginNegativeBalanceInterestHistoryResponse,\n QueryUmPositionInformationResponse,\n QueryUserNegativeBalanceAutoExchangeRecordResponse,\n QueryUserRateLimitResponse,\n RepayFuturesNegativeBalanceResponse,\n UmFuturesAccountConfigurationResponse,\n UmFuturesSymbolConfigurationResponse,\n UmNotionalAndLeverageBracketsResponse,\n} from './types';\nimport type {} from './types';\nimport type {\n CancelAllCmOpenConditionalOrdersResponse,\n CancelAllCmOpenOrdersResponse,\n CancelAllUmOpenConditionalOrdersResponse,\n CancelAllUmOpenOrdersResponse,\n CancelCmConditionalOrderResponse,\n CancelCmOrderResponse,\n CancelMarginAccountAllOpenOrdersOnASymbolResponse,\n CancelMarginAccountOcoOrdersResponse,\n CancelMarginAccountOrderResponse,\n CancelUmConditionalOrderResponse,\n CancelUmOrderResponse,\n CmAccountTradeListResponse,\n CmPositionAdlQuantileEstimationResponse,\n GetUmFuturesBnbBurnStatusResponse,\n MarginAccountBorrowResponse,\n MarginAccountNewOcoResponse,\n MarginAccountRepayResponse,\n MarginAccountRepayDebtResponse,\n MarginAccountTradeListResponse,\n ModifyCmOrderResponse,\n ModifyUmOrderResponse,\n NewCmConditionalOrderResponse,\n NewCmOrderResponse,\n NewMarginOrderResponse,\n NewUmConditionalOrderResponse,\n NewUmOrderResponse,\n QueryAllCmConditionalOrdersResponse,\n QueryAllCmOrdersResponse,\n QueryAllCurrentCmOpenConditionalOrdersResponse,\n QueryAllCurrentCmOpenOrdersResponse,\n QueryAllCurrentUmOpenConditionalOrdersResponse,\n QueryAllCurrentUmOpenOrdersResponse,\n QueryAllMarginAccountOrdersResponse,\n QueryAllUmConditionalOrdersResponse,\n QueryAllUmOrdersResponse,\n QueryCmConditionalOrderHistoryResponse,\n QueryCmModifyOrderHistoryResponse,\n QueryCmOrderResponse,\n QueryCurrentCmOpenConditionalOrderResponse,\n QueryCurrentCmOpenOrderResponse,\n QueryCurrentMarginOpenOrderResponse,\n QueryCurrentUmOpenConditionalOrderResponse,\n QueryCurrentUmOpenOrderResponse,\n QueryMarginAccountOrderResponse,\n QueryMarginAccountsAllOcoResponse,\n QueryMarginAccountsOcoResponse,\n QueryMarginAccountsOpenOcoResponse,\n QueryUmConditionalOrderHistoryResponse,\n QueryUmModifyOrderHistoryResponse,\n QueryUmOrderResponse,\n QueryUsersCmForceOrdersResponse,\n QueryUsersMarginForceOrdersResponse,\n QueryUsersUmForceOrdersResponse,\n ToggleBnbBurnOnUmFuturesTradeResponse,\n UmAccountTradeListResponse,\n UmPositionAdlQuantileEstimationResponse,\n} from './types';\nimport type { StartUserDataStreamResponse } from './types';\n\nexport class RestAPI {\n private configuration: ConfigurationRestAPI;\n private accountApi: AccountApi;\n private marketDataApi: MarketDataApi;\n private tradeApi: TradeApi;\n private userDataStreamsApi: UserDataStreamsApi;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.accountApi = new AccountApi(configuration);\n this.marketDataApi = new MarketDataApi(configuration);\n this.tradeApi = new TradeApi(configuration);\n this.userDataStreamsApi = new UserDataStreamsApi(configuration);\n }\n\n /**\n * Generic function to send a request.\n * @param endpoint - The API endpoint to call.\n * @param method - HTTP method to use (GET, POST, DELETE, etc.).\n * @param params - Query parameters for the request.\n *\n * @returns A promise resolving to the response data object.\n */\n sendRequest<T>(\n endpoint: string,\n method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH',\n params: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(this.configuration, endpoint, method, params, undefined);\n }\n\n /**\n * Generic function to send a signed request.\n * @param endpoint - The API endpoint to call.\n * @param method - HTTP method to use (GET, POST, DELETE, etc.).\n * @param params - Query parameters for the request.\n *\n * @returns A promise resolving to the response data object.\n */\n sendSignedRequest<T>(\n endpoint: string,\n method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH',\n params: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(this.configuration, endpoint, method, params, undefined, {\n isSigned: true,\n });\n }\n\n /**\n * Query account balance\n *\n * Weight: 20\n *\n * @summary Account Balance(USER_DATA)\n * @param {AccountBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Balance Binance API Documentation}\n */\n accountBalance(\n requestParameters: AccountBalanceRequest = {}\n ): Promise<RestApiResponse<AccountBalanceResponse>> {\n return this.accountApi.accountBalance(requestParameters);\n }\n\n /**\n * Query account information\n *\n * Weight: 20\n *\n * @summary Account Information(USER_DATA)\n * @param {AccountInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<AccountInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Account-Information Binance API Documentation}\n */\n accountInformation(\n requestParameters: AccountInformationRequest = {}\n ): Promise<RestApiResponse<AccountInformationResponse>> {\n return this.accountApi.accountInformation(requestParameters);\n }\n\n /**\n * Transfer BNB in and out of UM\n *\n * The endpoint can only be called 10 times per 10 minutes in a rolling manner\n *\n * Weight: 750\n *\n * @summary BNB transfer (TRADE)\n * @param {BnbTransferRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<BnbTransferResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/BNB-transfer Binance API Documentation}\n */\n bnbTransfer(\n requestParameters: BnbTransferRequest\n ): Promise<RestApiResponse<BnbTransferResponse>> {\n return this.accountApi.bnbTransfer(requestParameters);\n }\n\n /**\n * Change Auto-repay-futures Status\n *\n * Weight: 750\n *\n * @summary Change Auto-repay-futures Status(TRADE)\n * @param {ChangeAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-Auto-repay-futures-Status Binance API Documentation}\n */\n changeAutoRepayFuturesStatus(\n requestParameters: ChangeAutoRepayFuturesStatusRequest\n ): Promise<RestApiResponse<ChangeAutoRepayFuturesStatusResponse>> {\n return this.accountApi.changeAutoRepayFuturesStatus(requestParameters);\n }\n\n /**\n * Change user's initial leverage of specific symbol in CM.\n *\n * Weight: 1\n *\n * @summary Change CM Initial Leverage (TRADE)\n * @param {ChangeCmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Initial-Leverage Binance API Documentation}\n */\n changeCmInitialLeverage(\n requestParameters: ChangeCmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeCmInitialLeverageResponse>> {\n return this.accountApi.changeCmInitialLeverage(requestParameters);\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 1\n *\n * @summary Change CM Position Mode(TRADE)\n * @param {ChangeCmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeCmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-CM-Position-Mode Binance API Documentation}\n */\n changeCmPositionMode(\n requestParameters: ChangeCmPositionModeRequest\n ): Promise<RestApiResponse<ChangeCmPositionModeResponse>> {\n return this.accountApi.changeCmPositionMode(requestParameters);\n }\n\n /**\n * Change user's initial leverage of specific symbol in UM.\n *\n * Weight: 1\n *\n * @summary Change UM Initial Leverage(TRADE)\n * @param {ChangeUmInitialLeverageRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmInitialLeverageResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Initial-Leverage Binance API Documentation}\n */\n changeUmInitialLeverage(\n requestParameters: ChangeUmInitialLeverageRequest\n ): Promise<RestApiResponse<ChangeUmInitialLeverageResponse>> {\n return this.accountApi.changeUmInitialLeverage(requestParameters);\n }\n\n /**\n * Change user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 1\n *\n * @summary Change UM Position Mode(TRADE)\n * @param {ChangeUmPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ChangeUmPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Change-UM-Position-Mode Binance API Documentation}\n */\n changeUmPositionMode(\n requestParameters: ChangeUmPositionModeRequest\n ): Promise<RestApiResponse<ChangeUmPositionModeResponse>> {\n return this.accountApi.changeUmPositionMode(requestParameters);\n }\n\n /**\n * Query CM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary CM Notional and Leverage Brackets(USER_DATA)\n * @param {CmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/CM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n cmNotionalAndLeverageBrackets(\n requestParameters: CmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<CmNotionalAndLeverageBracketsResponse>> {\n return this.accountApi.cmNotionalAndLeverageBrackets(requestParameters);\n }\n\n /**\n * Fund collection for Portfolio Margin\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n * You can only use this function 500 times per hour in a rolling manner.\n *\n * Weight: 750\n *\n * @summary Fund Auto-collection(TRADE)\n * @param {FundAutoCollectionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundAutoCollectionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Auto-collection Binance API Documentation}\n */\n fundAutoCollection(\n requestParameters: FundAutoCollectionRequest = {}\n ): Promise<RestApiResponse<FundAutoCollectionResponse>> {\n return this.accountApi.fundAutoCollection(requestParameters);\n }\n\n /**\n * Transfers specific asset from Futures Account to Margin account\n *\n * The BNB transfer is not be supported\n *\n * Weight: 30\n *\n * @summary Fund Collection by Asset(TRADE)\n * @param {FundCollectionByAssetRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FundCollectionByAssetResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Fund-Collection-by-Asset Binance API Documentation}\n */\n fundCollectionByAsset(\n requestParameters: FundCollectionByAssetRequest\n ): Promise<RestApiResponse<FundCollectionByAssetResponse>> {\n return this.accountApi.fundCollectionByAsset(requestParameters);\n }\n\n /**\n * Query Auto-repay-futures Status\n *\n * Weight: 30\n *\n * @summary Get Auto-repay-futures Status(USER_DATA)\n * @param {GetAutoRepayFuturesStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Auto-repay-futures-Status Binance API Documentation}\n */\n getAutoRepayFuturesStatus(\n requestParameters: GetAutoRepayFuturesStatusRequest = {}\n ): Promise<RestApiResponse<GetAutoRepayFuturesStatusResponse>> {\n return this.accountApi.getAutoRepayFuturesStatus(requestParameters);\n }\n\n /**\n * Get current CM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get CM Account Detail(USER_DATA)\n * @param {GetCmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Account-Detail Binance API Documentation}\n */\n getCmAccountDetail(\n requestParameters: GetCmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetCmAccountDetailResponse>> {\n return this.accountApi.getCmAccountDetail(requestParameters);\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in CM\n *\n * Weight: 30\n *\n * @summary Get CM Current Position Mode(USER_DATA)\n * @param {GetCmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Current-Position-Mode Binance API Documentation}\n */\n getCmCurrentPositionMode(\n requestParameters: GetCmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetCmCurrentPositionModeResponse>> {\n return this.accountApi.getCmCurrentPositionMode(requestParameters);\n }\n\n /**\n * Get CM Income History\n *\n *\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same \"incomeType\" for a user\n * The interval between `startTime` and `endTime` can not exceed 200 days:\n * If `startTime` and `endTime` are not sent, the last 200 days will be returned\n *\n * Weight: 30\n *\n * @summary Get CM Income History(USER_DATA)\n * @param {GetCmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-CM-Income-History Binance API Documentation}\n */\n getCmIncomeHistory(\n requestParameters: GetCmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetCmIncomeHistoryResponse>> {\n return this.accountApi.getCmIncomeHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures order history\n *\n * Request Limitation is 10 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Order History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Order-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesOrderHistory(\n requestParameters: GetDownloadIdForUmFuturesOrderHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesOrderHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesOrderHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures trade history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Trade History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTradeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Trade-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesTradeHistory(\n requestParameters: GetDownloadIdForUmFuturesTradeHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTradeHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesTradeHistory(requestParameters);\n }\n\n /**\n * Get download id for UM futures transaction history\n *\n * Request Limitation is 5 times per month, shared by front end download page and rest api\n * The time between `startTime` and `endTime` can not be longer than 1 year\n *\n * Weight: 1500\n *\n * @summary Get Download Id For UM Futures Transaction History (USER_DATA)\n * @param {GetDownloadIdForUmFuturesTransactionHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Download-Id-For-UM-Futures-Transaction-History Binance API Documentation}\n */\n getDownloadIdForUmFuturesTransactionHistory(\n requestParameters: GetDownloadIdForUmFuturesTransactionHistoryRequest\n ): Promise<RestApiResponse<GetDownloadIdForUmFuturesTransactionHistoryResponse>> {\n return this.accountApi.getDownloadIdForUmFuturesTransactionHistory(requestParameters);\n }\n\n /**\n * Get Margin Borrow/Loan Interest History\n *\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n * Type in response has 5 enums:\n * `PERIODIC` interest charged per hour\n * `ON_BORROW` first interest charged on borrow\n * `PERIODIC_CONVERTED` interest charged per hour converted into BNB\n * `ON_BORROW_CONVERTED` first interest charged on borrow converted into BNB\n * `PORTFOLIO` Portfolio Margin negative balance daily interest\n *\n * Weight: 1\n *\n * @summary Get Margin Borrow/Loan Interest History(USER_DATA)\n * @param {GetMarginBorrowLoanInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-Margin-BorrowLoan-Interest-History Binance API Documentation}\n */\n getMarginBorrowLoanInterestHistory(\n requestParameters: GetMarginBorrowLoanInterestHistoryRequest = {}\n ): Promise<RestApiResponse<GetMarginBorrowLoanInterestHistoryResponse>> {\n return this.accountApi.getMarginBorrowLoanInterestHistory(requestParameters);\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail(USER_DATA)\n * @param {GetUmAccountDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail Binance API Documentation}\n */\n getUmAccountDetail(\n requestParameters: GetUmAccountDetailRequest = {}\n ): Promise<RestApiResponse<GetUmAccountDetailResponse>> {\n return this.accountApi.getUmAccountDetail(requestParameters);\n }\n\n /**\n * Get current UM account asset and position information.\n *\n * Weight: 5\n *\n * @summary Get UM Account Detail V2(USER_DATA)\n * @param {GetUmAccountDetailV2Request} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmAccountDetailV2Response>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Account-Detail-V2 Binance API Documentation}\n */\n getUmAccountDetailV2(\n requestParameters: GetUmAccountDetailV2Request = {}\n ): Promise<RestApiResponse<GetUmAccountDetailV2Response>> {\n return this.accountApi.getUmAccountDetailV2(requestParameters);\n }\n\n /**\n * Get user's position mode (Hedge Mode or One-way Mode ) on EVERY symbol in UM\n *\n * Weight: 30\n *\n * @summary Get UM Current Position Mode(USER_DATA)\n * @param {GetUmCurrentPositionModeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmCurrentPositionModeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Current-Position-Mode Binance API Documentation}\n */\n getUmCurrentPositionMode(\n requestParameters: GetUmCurrentPositionModeRequest = {}\n ): Promise<RestApiResponse<GetUmCurrentPositionModeResponse>> {\n return this.accountApi.getUmCurrentPositionMode(requestParameters);\n }\n\n /**\n * Get UM futures order download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Order Download Link by Id(USER_DATA)\n * @param {GetUmFuturesOrderDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Order-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesOrderDownloadLinkById(\n requestParameters: GetUmFuturesOrderDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesOrderDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesOrderDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM futures trade download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Trade Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTradeDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Trade-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesTradeDownloadLinkById(\n requestParameters: GetUmFuturesTradeDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTradeDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesTradeDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM futures Transaction download link by Id\n *\n * Download link expiration: 24h\n *\n * Weight: 10\n *\n * @summary Get UM Futures Transaction Download Link by Id(USER_DATA)\n * @param {GetUmFuturesTransactionDownloadLinkByIdRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Transaction-Download-Link-by-Id Binance API Documentation}\n */\n getUmFuturesTransactionDownloadLinkById(\n requestParameters: GetUmFuturesTransactionDownloadLinkByIdRequest\n ): Promise<RestApiResponse<GetUmFuturesTransactionDownloadLinkByIdResponse>> {\n return this.accountApi.getUmFuturesTransactionDownloadLinkById(requestParameters);\n }\n\n /**\n * Get UM Income History\n *\n * If neither `startTime` nor `endTime` is sent, the recent 7-day data will be returned.\n * If `incomeType` is not sent, all kinds of flow will be returned\n * \"trandId\" is unique in the same incomeType for a user\n * Income history only contains data for the last three months\n *\n * Weight: 30\n *\n * @summary Get UM Income History(USER_DATA)\n * @param {GetUmIncomeHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmIncomeHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Income-History Binance API Documentation}\n */\n getUmIncomeHistory(\n requestParameters: GetUmIncomeHistoryRequest = {}\n ): Promise<RestApiResponse<GetUmIncomeHistoryResponse>> {\n return this.accountApi.getUmIncomeHistory(requestParameters);\n }\n\n /**\n * Get User Commission Rate for CM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for CM(USER_DATA)\n * @param {GetUserCommissionRateForCmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForCmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-CM Binance API Documentation}\n */\n getUserCommissionRateForCm(\n requestParameters: GetUserCommissionRateForCmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForCmResponse>> {\n return this.accountApi.getUserCommissionRateForCm(requestParameters);\n }\n\n /**\n * Get User Commission Rate for UM\n *\n * Weight: 20\n *\n * @summary Get User Commission Rate for UM(USER_DATA)\n * @param {GetUserCommissionRateForUmRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUserCommissionRateForUmResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-User-Commission-Rate-for-UM Binance API Documentation}\n */\n getUserCommissionRateForUm(\n requestParameters: GetUserCommissionRateForUmRequest\n ): Promise<RestApiResponse<GetUserCommissionRateForUmResponse>> {\n return this.accountApi.getUserCommissionRateForUm(requestParameters);\n }\n\n /**\n * Query margin max borrow\n *\n * Weight: 5\n *\n * @summary Margin Max Borrow(USER_DATA)\n * @param {MarginMaxBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginMaxBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Margin-Max-Borrow Binance API Documentation}\n */\n marginMaxBorrow(\n requestParameters: MarginMaxBorrowRequest\n ): Promise<RestApiResponse<MarginMaxBorrowResponse>> {\n return this.accountApi.marginMaxBorrow(requestParameters);\n }\n\n /**\n * Portfolio Margin UM Trading Quantitative Rules Indicators\n *\n * Weight: 1 for a single symbol\n * 10 when the symbol parameter is omitted\n *\n * @summary Portfolio Margin UM Trading Quantitative Rules Indicators(USER_DATA)\n * @param {PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Portfolio-Margin-UM-Trading-Quantitative-Rules-Indicators Binance API Documentation}\n */\n portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters: PortfolioMarginUmTradingQuantitativeRulesIndicatorsRequest = {}\n ): Promise<RestApiResponse<PortfolioMarginUmTradingQuantitativeRulesIndicatorsResponse>> {\n return this.accountApi.portfolioMarginUmTradingQuantitativeRulesIndicators(\n requestParameters\n );\n }\n\n /**\n * Get current CM position information.\n *\n * If neither `marginAsset` nor `pair` is sent, positions of all symbols with `TRADING` status will be returned.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n *\n * Weight: 1\n *\n * @summary Query CM Position Information(USER_DATA)\n * @param {QueryCmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-CM-Position-Information Binance API Documentation}\n */\n queryCmPositionInformation(\n requestParameters: QueryCmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryCmPositionInformationResponse>> {\n return this.accountApi.queryCmPositionInformation(requestParameters);\n }\n\n /**\n * Query margin loan record\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin Loan Record(USER_DATA)\n * @param {QueryMarginLoanRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginLoanRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Loan-Record Binance API Documentation}\n */\n queryMarginLoanRecord(\n requestParameters: QueryMarginLoanRecordRequest\n ): Promise<RestApiResponse<QueryMarginLoanRecordResponse>> {\n return this.accountApi.queryMarginLoanRecord(requestParameters);\n }\n\n /**\n * Query Margin Max Withdraw\n *\n * Weight: 5\n *\n * @summary Query Margin Max Withdraw(USER_DATA)\n * @param {QueryMarginMaxWithdrawRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-Max-Withdraw Binance API Documentation}\n */\n queryMarginMaxWithdraw(\n requestParameters: QueryMarginMaxWithdrawRequest\n ): Promise<RestApiResponse<QueryMarginMaxWithdrawResponse>> {\n return this.accountApi.queryMarginMaxWithdraw(requestParameters);\n }\n\n /**\n * Query margin repay record.\n *\n * txId or startTime must be sent. txId takes precedence.\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 30 days.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * Set `archived` to `true` to query data from 6 months ago\n *\n * Weight: 10\n *\n * @summary Query Margin repay Record(USER_DATA)\n * @param {QueryMarginRepayRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginRepayRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Margin-repay-Record Binance API Documentation}\n */\n queryMarginRepayRecord(\n requestParameters: QueryMarginRepayRecordRequest\n ): Promise<RestApiResponse<QueryMarginRepayRecordResponse>> {\n return this.accountApi.queryMarginRepayRecord(requestParameters);\n }\n\n /**\n * Query interest history of negative balance for portfolio margin.\n *\n * Response in descending order\n * The max interval between startTime and endTime is 30 days. It is a MUST to ensure data correctness.\n * If `startTime` and `endTime` not sent, return records of the last 7 days by default\n * If `startTime` is sent and `endTime` is not sent, the records from `startTime` to the present will be returned; if `startTime` is more than 30 days ago, the records of the past 30 days will be returned.\n * If `startTime` is not sent and `endTime` is sent, the records of the 7 days before `endTime` is returned.\n *\n * Weight: 50\n *\n * @summary Query Portfolio Margin Negative Balance Interest History(USER_DATA)\n * @param {QueryPortfolioMarginNegativeBalanceInterestHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-Portfolio-Margin-Negative-Balance-Interest-History Binance API Documentation}\n */\n queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters: QueryPortfolioMarginNegativeBalanceInterestHistoryRequest = {}\n ): Promise<RestApiResponse<QueryPortfolioMarginNegativeBalanceInterestHistoryResponse>> {\n return this.accountApi.queryPortfolioMarginNegativeBalanceInterestHistory(\n requestParameters\n );\n }\n\n /**\n * Get current UM position information.\n *\n * Please use with user data stream `ACCOUNT_UPDATE` to meet your timeliness and accuracy needs.\n * for One-way Mode user, the response will only show the \"BOTH\" positions\n * for Hedge Mode user, the response will show \"LONG\", and \"SHORT\" positions.\n *\n * Weight: 5\n *\n * @summary Query UM Position Information(USER_DATA)\n * @param {QueryUmPositionInformationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmPositionInformationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-UM-Position-Information Binance API Documentation}\n */\n queryUmPositionInformation(\n requestParameters: QueryUmPositionInformationRequest = {}\n ): Promise<RestApiResponse<QueryUmPositionInformationResponse>> {\n return this.accountApi.queryUmPositionInformation(requestParameters);\n }\n\n /**\n * Query user negative balance auto exchange record\n *\n * Response in descending order\n * The max interval between `startTime` and `endTime` is 3 months.\n *\n * Weight: 100\n *\n * @summary Query User Negative Balance Auto Exchange Record (USER_DATA)\n * @param {QueryUserNegativeBalanceAutoExchangeRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Negative-Balance-Auto-Exchange-Record Binance API Documentation}\n */\n queryUserNegativeBalanceAutoExchangeRecord(\n requestParameters: QueryUserNegativeBalanceAutoExchangeRecordRequest\n ): Promise<RestApiResponse<QueryUserNegativeBalanceAutoExchangeRecordResponse>> {\n return this.accountApi.queryUserNegativeBalanceAutoExchangeRecord(requestParameters);\n }\n\n /**\n * Query User Rate Limit\n *\n * Weight: 1\n *\n * @summary Query User Rate Limit (USER_DATA)\n * @param {QueryUserRateLimitRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUserRateLimitResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Query-User-Rate-Limit Binance API Documentation}\n */\n queryUserRateLimit(\n requestParameters: QueryUserRateLimitRequest = {}\n ): Promise<RestApiResponse<QueryUserRateLimitResponse>> {\n return this.accountApi.queryUserRateLimit(requestParameters);\n }\n\n /**\n * Repay futures Negative Balance\n *\n * Weight: 750\n *\n * @summary Repay futures Negative Balance(USER_DATA)\n * @param {RepayFuturesNegativeBalanceRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Repay-futures-Negative-Balance Binance API Documentation}\n */\n repayFuturesNegativeBalance(\n requestParameters: RepayFuturesNegativeBalanceRequest = {}\n ): Promise<RestApiResponse<RepayFuturesNegativeBalanceResponse>> {\n return this.accountApi.repayFuturesNegativeBalance(requestParameters);\n }\n\n /**\n * Query UM Futures account configuration\n *\n * Weight: 5\n *\n * @summary UM Futures Account Configuration(USER_DATA)\n * @param {UmFuturesAccountConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Account-Config Binance API Documentation}\n */\n umFuturesAccountConfiguration(\n requestParameters: UmFuturesAccountConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesAccountConfigurationResponse>> {\n return this.accountApi.umFuturesAccountConfiguration(requestParameters);\n }\n\n /**\n * Get current UM account symbol configuration.\n *\n * Weight: 5\n *\n * @summary UM Futures Symbol Configuration(USER_DATA)\n * @param {UmFuturesSymbolConfigurationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/Get-UM-Futures-Symbol-Config Binance API Documentation}\n */\n umFuturesSymbolConfiguration(\n requestParameters: UmFuturesSymbolConfigurationRequest = {}\n ): Promise<RestApiResponse<UmFuturesSymbolConfigurationResponse>> {\n return this.accountApi.umFuturesSymbolConfiguration(requestParameters);\n }\n\n /**\n * Query UM notional and leverage brackets\n *\n * Weight: 1\n *\n * @summary UM Notional and Leverage Brackets (USER_DATA)\n * @param {UmNotionalAndLeverageBracketsRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/account/UM-Notional-and-Leverage-Brackets Binance API Documentation}\n */\n umNotionalAndLeverageBrackets(\n requestParameters: UmNotionalAndLeverageBracketsRequest = {}\n ): Promise<RestApiResponse<UmNotionalAndLeverageBracketsResponse>> {\n return this.accountApi.umNotionalAndLeverageBrackets(requestParameters);\n }\n\n /**\n * Test connectivity to the Rest API.\n *\n * Weight: 1\n *\n * @summary Test Connectivity\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/market-data/Test-Connectivity Binance API Documentation}\n */\n testConnectivity(): Promise<RestApiResponse<void>> {\n return this.marketDataApi.testConnectivity();\n }\n\n /**\n * Cancel All CM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Conditional Orders(TRADE)\n * @param {CancelAllCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Conditional-Orders Binance API Documentation}\n */\n cancelAllCmOpenConditionalOrders(\n requestParameters: CancelAllCmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenConditionalOrdersResponse>> {\n return this.tradeApi.cancelAllCmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All CM Open Orders(TRADE)\n * @param {CancelAllCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-CM-Open-Orders Binance API Documentation}\n */\n cancelAllCmOpenOrders(\n requestParameters: CancelAllCmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllCmOpenOrdersResponse>> {\n return this.tradeApi.cancelAllCmOpenOrders(requestParameters);\n }\n\n /**\n * Cancel All UM Open Conditional Orders\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Conditional Orders (TRADE)\n * @param {CancelAllUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Conditional-Orders Binance API Documentation}\n */\n cancelAllUmOpenConditionalOrders(\n requestParameters: CancelAllUmOpenConditionalOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenConditionalOrdersResponse>> {\n return this.tradeApi.cancelAllUmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Cancel all active LIMIT orders on specific symbol\n *\n * Weight: 1\n *\n * @summary Cancel All UM Open Orders(TRADE)\n * @param {CancelAllUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-All-UM-Open-Orders Binance API Documentation}\n */\n cancelAllUmOpenOrders(\n requestParameters: CancelAllUmOpenOrdersRequest\n ): Promise<RestApiResponse<CancelAllUmOpenOrdersResponse>> {\n return this.tradeApi.cancelAllUmOpenOrders(requestParameters);\n }\n\n /**\n * Cancel CM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Conditional Order(TRADE)\n * @param {CancelCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Conditional-Order Binance API Documentation}\n */\n cancelCmConditionalOrder(\n requestParameters: CancelCmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelCmConditionalOrderResponse>> {\n return this.tradeApi.cancelCmConditionalOrder(requestParameters);\n }\n\n /**\n * Cancel an active LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel CM Order(TRADE)\n * @param {CancelCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-CM-Order Binance API Documentation}\n */\n cancelCmOrder(\n requestParameters: CancelCmOrderRequest\n ): Promise<RestApiResponse<CancelCmOrderResponse>> {\n return this.tradeApi.cancelCmOrder(requestParameters);\n }\n\n /**\n * Cancel Margin Account All Open Orders on a Symbol\n *\n * Weight: 5\n *\n * @summary Cancel Margin Account All Open Orders on a Symbol(TRADE)\n * @param {CancelMarginAccountAllOpenOrdersOnASymbolRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-All-Open-Orders-on-a-Symbol Binance API Documentation}\n */\n cancelMarginAccountAllOpenOrdersOnASymbol(\n requestParameters: CancelMarginAccountAllOpenOrdersOnASymbolRequest\n ): Promise<RestApiResponse<CancelMarginAccountAllOpenOrdersOnASymbolResponse>> {\n return this.tradeApi.cancelMarginAccountAllOpenOrdersOnASymbol(requestParameters);\n }\n\n /**\n * Cancel Margin Account OCO Orders\n *\n * Additional notes: Canceling an individual leg will cancel the entire OCO\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account OCO Orders(TRADE)\n * @param {CancelMarginAccountOcoOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-OCO-Orders Binance API Documentation}\n */\n cancelMarginAccountOcoOrders(\n requestParameters: CancelMarginAccountOcoOrdersRequest\n ): Promise<RestApiResponse<CancelMarginAccountOcoOrdersResponse>> {\n return this.tradeApi.cancelMarginAccountOcoOrders(requestParameters);\n }\n\n /**\n * Cancel Margin Account Order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 2\n *\n * @summary Cancel Margin Account Order(TRADE)\n * @param {CancelMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-Margin-Account-Order Binance API Documentation}\n */\n cancelMarginAccountOrder(\n requestParameters: CancelMarginAccountOrderRequest\n ): Promise<RestApiResponse<CancelMarginAccountOrderResponse>> {\n return this.tradeApi.cancelMarginAccountOrder(requestParameters);\n }\n\n /**\n * Cancel UM Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Conditional Order(TRADE)\n * @param {CancelUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Conditional-Order Binance API Documentation}\n */\n cancelUmConditionalOrder(\n requestParameters: CancelUmConditionalOrderRequest\n ): Promise<RestApiResponse<CancelUmConditionalOrderResponse>> {\n return this.tradeApi.cancelUmConditionalOrder(requestParameters);\n }\n\n /**\n * Cancel an active UM LIMIT order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n *\n * Weight: 1\n *\n * @summary Cancel UM Order(TRADE)\n * @param {CancelUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CancelUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Cancel-UM-Order Binance API Documentation}\n */\n cancelUmOrder(\n requestParameters: CancelUmOrderRequest\n ): Promise<RestApiResponse<CancelUmOrderResponse>> {\n return this.tradeApi.cancelUmOrder(requestParameters);\n }\n\n /**\n * Get trades for a specific account and CM symbol.\n *\n * Either `symbol` or `pair` must be sent\n * `symbol` and `pair` cannot be sent together\n * `pair` and `fromId` cannot be sent together\n * `OrderId` can only be sent together with symbol\n * If a `pair` is sent, tickers for all symbols of the `pair` will be returned\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`\n * If `startTime` and `endTime` are both not sent, then the last '24 hours' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 24 hours.\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary CM Account Trade List(USER_DATA)\n * @param {CmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Account-Trade-List Binance API Documentation}\n */\n cmAccountTradeList(\n requestParameters: CmAccountTradeListRequest = {}\n ): Promise<RestApiResponse<CmAccountTradeListResponse>> {\n return this.tradeApi.cmAccountTradeList(requestParameters);\n }\n\n /**\n * Query CM Position ADL Quantile Estimation\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary CM Position ADL Quantile Estimation(USER_DATA)\n * @param {CmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/CM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n cmPositionAdlQuantileEstimation(\n requestParameters: CmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<CmPositionAdlQuantileEstimationResponse>> {\n return this.tradeApi.cmPositionAdlQuantileEstimation(requestParameters);\n }\n\n /**\n * Get user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off )\n *\n * Weight: 30\n *\n * @summary Get UM Futures BNB Burn Status (USER_DATA)\n * @param {GetUmFuturesBnbBurnStatusRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Get-UM-Futures-BNB-Burn-Status Binance API Documentation}\n */\n getUmFuturesBnbBurnStatus(\n requestParameters: GetUmFuturesBnbBurnStatusRequest = {}\n ): Promise<RestApiResponse<GetUmFuturesBnbBurnStatusResponse>> {\n return this.tradeApi.getUmFuturesBnbBurnStatus(requestParameters);\n }\n\n /**\n * Apply for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Borrow(MARGIN)\n * @param {MarginAccountBorrowRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountBorrowResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Borrow Binance API Documentation}\n */\n marginAccountBorrow(\n requestParameters: MarginAccountBorrowRequest\n ): Promise<RestApiResponse<MarginAccountBorrowResponse>> {\n return this.tradeApi.marginAccountBorrow(requestParameters);\n }\n\n /**\n * Send in a new OCO for a margin account\n *\n * Price Restrictions:\n * `SELL`: Limit Price > Last Price > Stop Price\n * `BUY`: Limit Price < Last Price < Stop Price\n * Quantity Restrictions:\n * Both legs must have the same quantity\n * `ICEBERG` quantities however do not have to be the same.\n * Order Rate Limit\n * `OCO` counts as 2 orders against the order rate limit.\n *\n * Weight: 1\n *\n * @summary Margin Account New OCO(TRADE)\n * @param {MarginAccountNewOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountNewOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-New-OCO Binance API Documentation}\n */\n marginAccountNewOco(\n requestParameters: MarginAccountNewOcoRequest\n ): Promise<RestApiResponse<MarginAccountNewOcoResponse>> {\n return this.tradeApi.marginAccountNewOco(requestParameters);\n }\n\n /**\n * Repay for a margin loan.\n *\n * Weight: 100\n *\n * @summary Margin Account Repay(MARGIN)\n * @param {MarginAccountRepayRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay Binance API Documentation}\n */\n marginAccountRepay(\n requestParameters: MarginAccountRepayRequest\n ): Promise<RestApiResponse<MarginAccountRepayResponse>> {\n return this.tradeApi.marginAccountRepay(requestParameters);\n }\n\n /**\n * Repay debt for a margin loan.\n *\n * The repay asset amount cannot exceed 50000 USD equivalent value for a single request.\n * If `amount` is not sent, all the asset loan will be repaid if having enough specific repay assets.\n * If `amount` is sent, only the certain amount of the asset loan will be repaid if having enough specific repay assets.\n * The system will use the same asset to repay the loan first (if have) no matter whether put the asset in `specifyRepayAssets`\n *\n * Weight: 3000\n *\n * @summary Margin Account Repay Debt(TRADE)\n * @param {MarginAccountRepayDebtRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountRepayDebtResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Repay-Debt Binance API Documentation}\n */\n marginAccountRepayDebt(\n requestParameters: MarginAccountRepayDebtRequest\n ): Promise<RestApiResponse<MarginAccountRepayDebtResponse>> {\n return this.tradeApi.marginAccountRepayDebt(requestParameters);\n }\n\n /**\n * Margin Account Trade List\n *\n * Weight: 5\n *\n * @summary Margin Account Trade List (USER_DATA)\n * @param {MarginAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<MarginAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Margin-Account-Trade-List Binance API Documentation}\n */\n marginAccountTradeList(\n requestParameters: MarginAccountTradeListRequest\n ): Promise<RestApiResponse<MarginAccountTradeListResponse>> {\n return this.tradeApi.marginAccountTradeList(requestParameters);\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n * Both `quantity` and `price` must be sent\n * When the new `quantity` or `price` doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new `quantity` <= `executedQty`\n * When the order is `GTX` and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify CM Order(TRADE)\n * @param {ModifyCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-CM-Order Binance API Documentation}\n */\n modifyCmOrder(\n requestParameters: ModifyCmOrderRequest\n ): Promise<RestApiResponse<ModifyCmOrderResponse>> {\n return this.tradeApi.modifyCmOrder(requestParameters);\n }\n\n /**\n * Order modify function, currently only LIMIT order modification is supported, modified orders will be reordered in the match queue\n *\n * Either orderId or origClientOrderId must be sent, and the orderId will prevail if both are sent.\n * Both quantity and price must be sent\n * When the new quantity or price doesn't satisfy PRICE_FILTER / PERCENT_FILTER / LOT_SIZE, amendment will be rejected and the order will stay as it is.\n * However the order will be cancelled by the amendment in the following situations:\n * when the order is in partially filled status and the new quantity <= executedQty\n * When the order is GTX and the new price will cause it to be executed immediately\n *\n * Weight: 1\n *\n * @summary Modify UM Order(TRADE)\n * @param {ModifyUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ModifyUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Modify-UM-Order Binance API Documentation}\n */\n modifyUmOrder(\n requestParameters: ModifyUmOrderRequest\n ): Promise<RestApiResponse<ModifyUmOrderResponse>> {\n return this.tradeApi.modifyUmOrder(requestParameters);\n }\n\n /**\n * New CM Conditional Order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n *\n * Weight: 1\n *\n * @summary New CM Conditional Order(TRADE)\n * @param {NewCmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Conditional-Order Binance API Documentation}\n */\n newCmConditionalOrder(\n requestParameters: NewCmConditionalOrderRequest\n ): Promise<RestApiResponse<NewCmConditionalOrderResponse>> {\n return this.tradeApi.newCmConditionalOrder(requestParameters);\n }\n\n /**\n * Place new CM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n *\n * Weight: 1\n *\n * @summary New CM Order(TRADE)\n * @param {NewCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-CM-Order Binance API Documentation}\n */\n newCmOrder(requestParameters: NewCmOrderRequest): Promise<RestApiResponse<NewCmOrderResponse>> {\n return this.tradeApi.newCmOrder(requestParameters);\n }\n\n /**\n * New Margin Order\n *\n * Weight: 1\n *\n * @summary New Margin Order(TRADE)\n * @param {NewMarginOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewMarginOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-Margin-Order Binance API Documentation}\n */\n newMarginOrder(\n requestParameters: NewMarginOrderRequest\n ): Promise<RestApiResponse<NewMarginOrderResponse>> {\n return this.tradeApi.newMarginOrder(requestParameters);\n }\n\n /**\n * Place new UM conditional order\n *\n * Order with type `STOP/TAKE_PROFIT`, parameter `timeInForce` can be sent ( default `GTC`).\n * Condition orders will be triggered when:\n * `STOP`, `STOP_MARKET`:\n * BUY: \"MARK_PRICE\" >= `stopPrice`\n * SELL: \"MARK_PRICE\" <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: \"MARK_PRICE\" <= `stopPrice`\n * SELL: \"MARK_PRICE\" >= `stopPrice`\n * `TRAILING_STOP_MARKET`:\n * BUY: the lowest mark price after order placed `<= `activationPrice`, and the latest mark price >`= the lowest mark price * (1 + `callbackRate`)\n * SELL: the highest mark price after order placed >= `activationPrice`, and the latest mark price <= the highest mark price * (1 - `callbackRate`)\n * For `TRAILING_STOP_MARKET`, if you got such error code. `{\"code\": -2021, \"msg\": \"Order would immediately trigger.\"}` means that the parameters you send do not meet the following requirements:\n * BUY: `activationPrice` should be smaller than latest mark price.\n * SELL: `activationPrice` should be larger than latest mark price.\n * Condition orders will be triggered when:\n * If parameter`priceProtect`is sent as true:\n * when price reaches the `stopPrice` ,the difference rate between \"MARK_PRICE\" and \"CONTRACT_PRICE\" cannot be larger than the \"triggerProtect\" of the symbol\n * \"triggerProtect\" of a symbol can be got from `GET /fapi/v1/exchangeInfo`\n * `STOP`, `STOP_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * `TAKE_PROFIT`, `TAKE_PROFIT_MARKET`:\n * BUY: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") <= `stopPrice`\n * SELL: latest price (\"MARK_PRICE\" or \"CONTRACT_PRICE\") >= `stopPrice`\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Conditional Order (TRADE)\n * @param {NewUmConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Conditional-Order Binance API Documentation}\n */\n newUmConditionalOrder(\n requestParameters: NewUmConditionalOrderRequest\n ): Promise<RestApiResponse<NewUmConditionalOrderResponse>> {\n return this.tradeApi.newUmConditionalOrder(requestParameters);\n }\n\n /**\n * Place new UM order\n *\n * If `newOrderRespType` is sent as `RESULT` :\n * `MARKET` order: the final FILLED result of the order will be return directly.\n * `LIMIT` order with special `timeInForce`: the final status result of the order(FILLED or EXPIRED) will be returned directly.\n * `selfTradePreventionMode` is only effective when `timeInForce` set to `IOC` or `GTC` or `GTD`.\n * In extreme market conditions, timeInForce `GTD` order auto cancel time might be delayed comparing to `goodTillDate`\n *\n * Weight: 1\n *\n * @summary New UM Order (TRADE)\n * @param {NewUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<NewUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/New-UM-Order Binance API Documentation}\n */\n newUmOrder(requestParameters: NewUmOrderRequest): Promise<RestApiResponse<NewUmOrderResponse>> {\n return this.tradeApi.newUmOrder(requestParameters);\n }\n\n /**\n * Query All CM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All CM Conditional Orders(USER_DATA)\n * @param {QueryAllCmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Conditional-Orders Binance API Documentation}\n */\n queryAllCmConditionalOrders(\n requestParameters: QueryAllCmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCmConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCmConditionalOrders(requestParameters);\n }\n\n /**\n * Get all account CM orders; active, canceled, or filled.\n *\n * Either `symbol` or `pair` must be sent.\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 20 with symbol, 40 with pair\n *\n * @summary Query All CM Orders (USER_DATA)\n * @param {QueryAllCmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-CM-Orders Binance API Documentation}\n */\n queryAllCmOrders(\n requestParameters: QueryAllCmOrdersRequest\n ): Promise<RestApiResponse<QueryAllCmOrdersResponse>> {\n return this.tradeApi.queryAllCmOrders(requestParameters);\n }\n\n /**\n * Get all open conditional orders on a symbol. **Careful** when accessing this with no symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current CM Open Conditional Orders (USER_DATA)\n * @param {QueryAllCurrentCmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Conditional-Orders Binance API Documentation}\n */\n queryAllCurrentCmOpenConditionalOrders(\n requestParameters: QueryAllCurrentCmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCurrentCmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Get all open orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current CM Open Orders(USER_DATA)\n * @param {QueryAllCurrentCmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Orders Binance API Documentation}\n */\n queryAllCurrentCmOpenOrders(\n requestParameters: QueryAllCurrentCmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentCmOpenOrdersResponse>> {\n return this.tradeApi.queryAllCurrentCmOpenOrders(requestParameters);\n }\n\n /**\n * Get all open conditional orders on a symbol.\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n * Careful when accessing this with no symbol.\n *\n * @summary Query All Current UM Open Conditional Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Conditional-Orders Binance API Documentation}\n */\n queryAllCurrentUmOpenConditionalOrders(\n requestParameters: QueryAllCurrentUmOpenConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenConditionalOrdersResponse>> {\n return this.tradeApi.queryAllCurrentUmOpenConditionalOrders(requestParameters);\n }\n\n /**\n * Get all open orders on a symbol.\n *\n *\n * If the symbol is not sent, orders for all symbols will be returned in an array.\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All Current UM Open Orders(USER_DATA)\n * @param {QueryAllCurrentUmOpenOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Orders Binance API Documentation}\n */\n queryAllCurrentUmOpenOrders(\n requestParameters: QueryAllCurrentUmOpenOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllCurrentUmOpenOrdersResponse>> {\n return this.tradeApi.queryAllCurrentUmOpenOrders(requestParameters);\n }\n\n /**\n * Query All Margin Account Orders\n *\n * Weight: 100\n *\n * @summary Query All Margin Account Orders (USER_DATA)\n * @param {QueryAllMarginAccountOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Margin-Account-Orders Binance API Documentation}\n */\n queryAllMarginAccountOrders(\n requestParameters: QueryAllMarginAccountOrdersRequest\n ): Promise<RestApiResponse<QueryAllMarginAccountOrdersResponse>> {\n return this.tradeApi.queryAllMarginAccountOrders(requestParameters);\n }\n\n /**\n * Query All UM Conditional Orders\n *\n * These orders will not be found:\n * order strategyStatus is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n * The query time period must be less than 7 days( default as the recent 7 days).\n *\n * Weight: 1 for a single symbol; 40 when the symbol parameter is omitted\n *\n * @summary Query All UM Conditional Orders(USER_DATA)\n * @param {QueryAllUmConditionalOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Conditional-Orders Binance API Documentation}\n */\n queryAllUmConditionalOrders(\n requestParameters: QueryAllUmConditionalOrdersRequest = {}\n ): Promise<RestApiResponse<QueryAllUmConditionalOrdersResponse>> {\n return this.tradeApi.queryAllUmConditionalOrders(requestParameters);\n }\n\n /**\n * Get all account UM orders; active, canceled, or filled.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * If `orderId` is set, it will get orders >= that orderId. Otherwise most recent orders are returned.\n * The query time period must be less then 7 days( default as the recent 7 days).\n *\n * Weight: 5\n *\n * @summary Query All UM Orders(USER_DATA)\n * @param {QueryAllUmOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryAllUmOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-UM-Orders Binance API Documentation}\n */\n queryAllUmOrders(\n requestParameters: QueryAllUmOrdersRequest\n ): Promise<RestApiResponse<QueryAllUmOrdersResponse>> {\n return this.tradeApi.queryAllUmOrders(requestParameters);\n }\n\n /**\n * Query CM Conditional Order History\n *\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Conditional Order History(USER_DATA)\n * @param {QueryCmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Conditional-Order-History Binance API Documentation}\n */\n queryCmConditionalOrderHistory(\n requestParameters: QueryCmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmConditionalOrderHistoryResponse>> {\n return this.tradeApi.queryCmConditionalOrderHistory(requestParameters);\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query CM Modify Order History(TRADE)\n * @param {QueryCmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Modify-Order-History Binance API Documentation}\n */\n queryCmModifyOrderHistory(\n requestParameters: QueryCmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryCmModifyOrderHistoryResponse>> {\n return this.tradeApi.queryCmModifyOrderHistory(requestParameters);\n }\n\n /**\n * Check an CM order's status.\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query CM Order(USER_DATA)\n * @param {QueryCmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-CM-Order Binance API Documentation}\n */\n queryCmOrder(\n requestParameters: QueryCmOrderRequest\n ): Promise<RestApiResponse<QueryCmOrderResponse>> {\n return this.tradeApi.queryCmOrder(requestParameters);\n }\n\n /**\n * Query Current CM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been triggered, cancelled or expired, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentCmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Conditional-Order Binance API Documentation}\n */\n queryCurrentCmOpenConditionalOrder(\n requestParameters: QueryCurrentCmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenConditionalOrderResponse>> {\n return this.tradeApi.queryCurrentCmOpenConditionalOrder(requestParameters);\n }\n\n /**\n * Query current CM open order\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current CM Open Order (USER_DATA)\n * @param {QueryCurrentCmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-CM-Open-Order Binance API Documentation}\n */\n queryCurrentCmOpenOrder(\n requestParameters: QueryCurrentCmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentCmOpenOrderResponse>> {\n return this.tradeApi.queryCurrentCmOpenOrder(requestParameters);\n }\n\n /**\n * Query Current Margin Open Order\n *\n * Weight: 5\n *\n * @summary Query Current Margin Open Order (USER_DATA)\n * @param {QueryCurrentMarginOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-Margin-Open-Order Binance API Documentation}\n */\n queryCurrentMarginOpenOrder(\n requestParameters: QueryCurrentMarginOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentMarginOpenOrderResponse>> {\n return this.tradeApi.queryCurrentMarginOpenOrder(requestParameters);\n }\n\n /**\n * Query Current UM Open Conditional Order\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * If the queried order has been `CANCELED`, `TRIGGERED`或`EXPIRED`, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Conditional Order(USER_DATA)\n * @param {QueryCurrentUmOpenConditionalOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Conditional-Order Binance API Documentation}\n */\n queryCurrentUmOpenConditionalOrder(\n requestParameters: QueryCurrentUmOpenConditionalOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenConditionalOrderResponse>> {\n return this.tradeApi.queryCurrentUmOpenConditionalOrder(requestParameters);\n }\n\n /**\n * Query current UM open order\n *\n *\n * Either `orderId` or `origClientOrderId` must be sent.\n * If the queried order has been filled or cancelled, the error message \"Order does not exist\" will be returned.\n *\n * Weight: 1\n *\n * @summary Query Current UM Open Order(USER_DATA)\n * @param {QueryCurrentUmOpenOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Current-UM-Open-Order Binance API Documentation}\n */\n queryCurrentUmOpenOrder(\n requestParameters: QueryCurrentUmOpenOrderRequest\n ): Promise<RestApiResponse<QueryCurrentUmOpenOrderResponse>> {\n return this.tradeApi.queryCurrentUmOpenOrder(requestParameters);\n }\n\n /**\n * Query Margin Account Order\n *\n * Weight: 10\n *\n * @summary Query Margin Account Order (USER_DATA)\n * @param {QueryMarginAccountOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Order Binance API Documentation}\n */\n queryMarginAccountOrder(\n requestParameters: QueryMarginAccountOrderRequest\n ): Promise<RestApiResponse<QueryMarginAccountOrderResponse>> {\n return this.tradeApi.queryMarginAccountOrder(requestParameters);\n }\n\n /**\n * Query all OCO for a specific margin account based on provided optional parameters\n *\n * Weight: 100\n *\n * @summary Query Margin Account\\'s all OCO (USER_DATA)\n * @param {QueryMarginAccountsAllOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-all-OCO Binance API Documentation}\n */\n queryMarginAccountsAllOco(\n requestParameters: QueryMarginAccountsAllOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsAllOcoResponse>> {\n return this.tradeApi.queryMarginAccountsAllOco(requestParameters);\n }\n\n /**\n * Retrieves a specific OCO based on provided optional parameters\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s OCO (USER_DATA)\n * @param {QueryMarginAccountsOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-OCO Binance API Documentation}\n */\n queryMarginAccountsOco(\n requestParameters: QueryMarginAccountsOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOcoResponse>> {\n return this.tradeApi.queryMarginAccountsOco(requestParameters);\n }\n\n /**\n * Query Margin Account's Open OCO\n *\n * Weight: 5\n *\n * @summary Query Margin Account\\'s Open OCO (USER_DATA)\n * @param {QueryMarginAccountsOpenOcoRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Margin-Account-Open-OCO Binance API Documentation}\n */\n queryMarginAccountsOpenOco(\n requestParameters: QueryMarginAccountsOpenOcoRequest = {}\n ): Promise<RestApiResponse<QueryMarginAccountsOpenOcoResponse>> {\n return this.tradeApi.queryMarginAccountsOpenOco(requestParameters);\n }\n\n /**\n * Query UM Conditional Order History\n *\n * Either `strategyId` or `newClientStrategyId` must be sent.\n * `NEW` orders will not be found.\n * These orders will not be found:\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 7 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Conditional Order History(USER_DATA)\n * @param {QueryUmConditionalOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Conditional-Order-History Binance API Documentation}\n */\n queryUmConditionalOrderHistory(\n requestParameters: QueryUmConditionalOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmConditionalOrderHistoryResponse>> {\n return this.tradeApi.queryUmConditionalOrderHistory(requestParameters);\n }\n\n /**\n * Get order modification history\n *\n * Either `orderId` or `origClientOrderId` must be sent, and the `orderId` will prevail if both are sent.\n *\n * Weight: 1\n *\n * @summary Query UM Modify Order History(TRADE)\n * @param {QueryUmModifyOrderHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Modify-Order-History Binance API Documentation}\n */\n queryUmModifyOrderHistory(\n requestParameters: QueryUmModifyOrderHistoryRequest\n ): Promise<RestApiResponse<QueryUmModifyOrderHistoryResponse>> {\n return this.tradeApi.queryUmModifyOrderHistory(requestParameters);\n }\n\n /**\n * Check an UM order's status.\n *\n * These orders will not be found:\n * Either `orderId` or `origClientOrderId` must be sent.\n * order status is `CANCELED` or `EXPIRED`, **AND**\n * order has NO filled trade, **AND**\n * created time + 3 days < current time\n *\n * Weight: 1\n *\n * @summary Query UM Order (USER_DATA)\n * @param {QueryUmOrderRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUmOrderResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-UM-Order Binance API Documentation}\n */\n queryUmOrder(\n requestParameters: QueryUmOrderRequest\n ): Promise<RestApiResponse<QueryUmOrderResponse>> {\n return this.tradeApi.queryUmOrder(requestParameters);\n }\n\n /**\n * Query User's CM Force Orders\n *\n * If \"autoCloseType\" is not sent, orders with both of the types will be returned\n * If \"startTime\" is not sent, data within 7 days before \"endTime\" can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s CM Force Orders(USER_DATA)\n * @param {QueryUsersCmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-CM-Force-Orders Binance API Documentation}\n */\n queryUsersCmForceOrders(\n requestParameters: QueryUsersCmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersCmForceOrdersResponse>> {\n return this.tradeApi.queryUsersCmForceOrders(requestParameters);\n }\n\n /**\n * Query user's margin force orders\n *\n * Weight: 1\n *\n * @summary Query User\\'s Margin Force Orders(USER_DATA)\n * @param {QueryUsersMarginForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-Margin-Force-Orders Binance API Documentation}\n */\n queryUsersMarginForceOrders(\n requestParameters: QueryUsersMarginForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersMarginForceOrdersResponse>> {\n return this.tradeApi.queryUsersMarginForceOrders(requestParameters);\n }\n\n /**\n * Query User's UM Force Orders\n *\n * If `autoCloseType` is not sent, orders with both of the types will be returned\n * If `startTime` is not sent, data within 7 days before `endTime` can be queried\n *\n * Weight: 20 with symbol, 50 without symbol\n *\n * @summary Query User\\'s UM Force Orders (USER_DATA)\n * @param {QueryUsersUmForceOrdersRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-Users-UM-Force-Orders Binance API Documentation}\n */\n queryUsersUmForceOrders(\n requestParameters: QueryUsersUmForceOrdersRequest = {}\n ): Promise<RestApiResponse<QueryUsersUmForceOrdersResponse>> {\n return this.tradeApi.queryUsersUmForceOrders(requestParameters);\n }\n\n /**\n * Change user's BNB Fee Discount for UM Futures (Fee Discount On or Fee Discount Off ) on ***EVERY symbol***\n *\n *\n * The BNB would not be collected from UM-PM account to the Portfolio Margin account.\n *\n * Weight: 1\n *\n * @summary Toggle BNB Burn On UM Futures Trade (TRADE)\n * @param {ToggleBnbBurnOnUmFuturesTradeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Toggle-BNB-Burn-On-UM-Futures-Trade Binance API Documentation}\n */\n toggleBnbBurnOnUmFuturesTrade(\n requestParameters: ToggleBnbBurnOnUmFuturesTradeRequest\n ): Promise<RestApiResponse<ToggleBnbBurnOnUmFuturesTradeResponse>> {\n return this.tradeApi.toggleBnbBurnOnUmFuturesTrade(requestParameters);\n }\n\n /**\n * Get trades for a specific account and UM symbol.\n *\n *\n * If `startTime` and `endTime` are both not sent, then the last '7 days' data will be returned.\n * The time between `startTime` and `endTime` cannot be longer than 7 days.\n * The parameter `fromId` cannot be sent with `startTime` or `endTime`.\n *\n * Weight: 5\n *\n * @summary UM Account Trade List(USER_DATA)\n * @param {UmAccountTradeListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmAccountTradeListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Account-Trade-List Binance API Documentation}\n */\n umAccountTradeList(\n requestParameters: UmAccountTradeListRequest\n ): Promise<RestApiResponse<UmAccountTradeListResponse>> {\n return this.tradeApi.umAccountTradeList(requestParameters);\n }\n\n /**\n * Query UM Position ADL Quantile Estimation\n *\n * Values update every 30s.\n * Values 0, 1, 2, 3, 4 shows the queue position and possibility of ADL from low to high.\n * For positions of the symbol are in One-way Mode or isolated margined in Hedge Mode, \"LONG\", \"SHORT\", and \"BOTH\" will be returned to show the positions' adl quantiles of different position sides.\n * If the positions of the symbol are crossed margined in Hedge Mode:\n * \"HEDGE\" as a sign will be returned instead of \"BOTH\";\n * A same value caculated on unrealized pnls on long and short sides' positions will be shown for \"LONG\" and \"SHORT\" when there are positions in both of long and short sides.\n *\n * Weight: 5\n *\n * @summary UM Position ADL Quantile Estimation(USER_DATA)\n * @param {UmPositionAdlQuantileEstimationRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/trade/UM-Position-ADL-Quantile-Estimation Binance API Documentation}\n */\n umPositionAdlQuantileEstimation(\n requestParameters: UmPositionAdlQuantileEstimationRequest = {}\n ): Promise<RestApiResponse<UmPositionAdlQuantileEstimationResponse>> {\n return this.tradeApi.umPositionAdlQuantileEstimation(requestParameters);\n }\n\n /**\n * Close out a user data stream.\n *\n * Weight: 1\n *\n * @summary Close User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Close-User-Data-Stream Binance API Documentation}\n */\n closeUserDataStream(): Promise<RestApiResponse<void>> {\n return this.userDataStreamsApi.closeUserDataStream();\n }\n\n /**\n * Keepalive a user data stream to prevent a time out. User data streams will close after 60 minutes. It's recommended to send a ping about every 60 minutes.\n *\n * Weight: 1\n *\n * @summary Keepalive User Data Stream (USER_STREAM)\n * @returns {Promise<RestApiResponse<void>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Keepalive-User-Data-Stream Binance API Documentation}\n */\n keepaliveUserDataStream(): Promise<RestApiResponse<void>> {\n return this.userDataStreamsApi.keepaliveUserDataStream();\n }\n\n /**\n * Start a new user data stream. The stream will close after 60 minutes unless a keepalive is sent. If the account has an active `listenKey`, that `listenKey` will be returned and its validity will be extended for 60 minutes.\n *\n * Weight: 1\n *\n * @summary Start User Data Stream(USER_STREAM)\n * @returns {Promise<RestApiResponse<StartUserDataStreamResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/derivatives/portfolio-margin/user-data-streams/Start-User-Data-Stream Binance API Documentation}\n */\n startUserDataStream(): Promise<RestApiResponse<StartUserDataStreamResponse>> {\n return this.userDataStreamsApi.startUserDataStream();\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nexport * from './types';\n\nexport * from './websocket-streams';\nexport * from './websocket-streams-connection';\n","/**\n * Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { ConfigurationWebsocketStreams, WebsocketStreamsBase } from '@binance/common';\nimport { WebsocketStreamsConnection } from './websocket-streams-connection';\n\nexport class WebsocketStreams {\n private configuration: ConfigurationWebsocketStreams;\n\n constructor(configuration: ConfigurationWebsocketStreams) {\n this.configuration = configuration;\n }\n\n /**\n * Connects to the Binance WebSocket streams and returns a `WebsocketStreamsConnection` instance.\n *\n * @param {object} [options] - Optional connection options.\n * @param {string|string[]} [options.stream] - The stream(s) to connect to.\n * @param {'single'|'pool'} [options.mode] - The connection mode, either 'single' or 'pool'. Overwrite the `mode` option in the configuration.\n * @param {number} [options.poolSize] - The number of connections to use in pool mode. Overwrite the `poolSize` option in the configuration.\n * @returns {Promise<WebsocketStreamsConnection>} - A promise that resolves to a `WebsocketStreamsConnection` instance.\n */\n async connect({\n stream,\n mode,\n poolSize,\n }: {\n stream?: string | string[];\n mode?: 'single' | 'pool';\n poolSize?: number;\n } = {}): Promise<WebsocketStreamsConnection> {\n const websocketBase = new WebsocketStreamsBase({\n ...this.configuration,\n ...(mode && { mode }),\n ...(poolSize && { poolSize }),\n });\n const websocketStreamsConnection = new WebsocketStreamsConnection(websocketBase);\n await websocketBase.connect(stream);\n return websocketStreamsConnection;\n }\n}\n","/**\n * Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin WebSocket Market Streams\n *\n * The version of the OpenAPI document: 1.0.0\n *\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { WebsocketStreamsBase, WebsocketStream, createStreamHandler } from '@binance/common';\n\nimport type { UserDataStreamEventsResponse } from './types';\n\nexport class WebsocketStreamsConnection {\n private websocketBase: WebsocketStreamsBase;\n\n constructor(websocketBase: WebsocketStreamsBase) {\n this.websocketBase = websocketBase;\n }\n\n /**\n * Adds an event listener for the specified WebSocket event.\n * @param event - The WebSocket event to listen for, such as 'open', 'message', 'error', 'close', 'ping', or 'pong'.\n * @param listener - The callback function to be executed when the event is triggered. The function can accept any number of arguments.\n */\n on(\n event: 'open' | 'message' | 'error' | 'close' | 'ping' | 'pong',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n listener: (...args: any[]) => void\n ) {\n this.websocketBase.on(event, listener);\n }\n\n /**\n * Removes an event listener for the specified WebSocket event.\n * @param event - The WebSocket event to stop listening for, such as 'open', 'message', 'error', 'close', 'ping', or 'pong'.\n * @param listener - The callback function that was previously added as the event listener.\n */\n off(\n event: 'open' | 'message' | 'error' | 'close' | 'ping' | 'pong',\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n listener: (...args: any[]) => void\n ) {\n this.websocketBase.off(event, listener);\n }\n\n /**\n * Disconnects from the WebSocket server.\n * If there is no active connection, a warning is logged.\n * Otherwise, all connections in the connection pool are closed gracefully,\n * and a message is logged indicating that the connection has been disconnected.\n * @returns A Promise that resolves when all connections have been closed.\n * @throws Error if the WebSocket client is not set.\n */\n disconnect(): Promise<void> {\n return this.websocketBase.disconnect();\n }\n\n /**\n * Checks if the WebSocket connection is currently open.\n * @returns `true` if the connection is open, `false` otherwise.\n */\n isConnected(): boolean {\n return this.websocketBase.isConnected();\n }\n\n /**\n * Sends a ping message to all connected Websocket servers in the pool.\n * If no connections are ready, a warning is logged.\n * For each active connection, the ping message is sent, and debug logs provide details.\n * @throws Error if a Websocket client is not set for a connection.\n */\n pingServer(): void {\n this.websocketBase.pingServer();\n }\n\n /**\n * Subscribes to one or multiple WebSocket streams\n * Handles both single and pool modes\n * @param stream Single stream name or array of stream names to subscribe to\n * @param id Optional subscription ID\n * @returns void\n */\n subscribe(stream: string | string[], id?: string): void {\n this.websocketBase.subscribe(stream, id);\n }\n\n /**\n * Unsubscribes from one or multiple WebSocket streams\n * Handles both single and pool modes\n * @param stream Single stream name or array of stream names to unsubscribe from\n * @param id Optional unsubscription ID\n * @returns void\n */\n unsubscribe(stream: string | string[], id?: string): void {\n this.websocketBase.unsubscribe(stream, id);\n }\n\n /**\n * Checks if the WebSocket connection is subscribed to the specified stream.\n * @param stream The name of the WebSocket stream to check.\n * @returns `true` if the connection is subscribed to the stream, `false` otherwise.\n */\n isSubscribed(stream: string): boolean {\n return this.websocketBase.isSubscribed(stream);\n }\n\n /**\n * Subscribes to the user data WebSocket stream using the provided listen key.\n * @param listenKey - The listen key for the user data WebSocket stream.\n * @param id - Optional user data stream ID\n * @returns A WebSocket stream handler for the user data stream.\n */\n userData(listenKey: string, id?: string): WebsocketStream<UserDataStreamEventsResponse> {\n return createStreamHandler<UserDataStreamEventsResponse>(this.websocketBase, listenKey, id);\n }\n}\n"],"mappings":"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","names":["import_common","import_common","import_common","MarginAccountNewOcoSideEnum","MarginAccountNewOcoStopLimitTimeInForceEnum","MarginAccountNewOcoNewOrderRespTypeEnum","MarginAccountNewOcoSideEffectTypeEnum","ModifyCmOrderSideEnum","ModifyCmOrderPriceMatchEnum","ModifyUmOrderSideEnum","ModifyUmOrderPriceMatchEnum","NewCmConditionalOrderSideEnum","NewCmConditionalOrderStrategyTypeEnum","NewCmConditionalOrderPositionSideEnum","NewCmConditionalOrderTimeInForceEnum","NewCmConditionalOrderWorkingTypeEnum","NewCmOrderSideEnum","NewCmOrderTypeEnum","NewCmOrderPositionSideEnum","NewCmOrderTimeInForceEnum","NewCmOrderPriceMatchEnum","NewCmOrderNewOrderRespTypeEnum","NewMarginOrderSideEnum","NewMarginOrderTypeEnum","NewMarginOrderNewOrderRespTypeEnum","NewMarginOrderSideEffectTypeEnum","NewMarginOrderTimeInForceEnum","NewMarginOrderSelfTradePreventionModeEnum","NewUmConditionalOrderSideEnum","NewUmConditionalOrderStrategyTypeEnum","NewUmConditionalOrderPositionSideEnum","NewUmConditionalOrderTimeInForceEnum","NewUmConditionalOrderWorkingTypeEnum","NewUmConditionalOrderPriceMatchEnum","NewUmConditionalOrderSelfTradePreventionModeEnum","NewUmOrderSideEnum","NewUmOrderTypeEnum","NewUmOrderPositionSideEnum","NewUmOrderTimeInForceEnum","NewUmOrderNewOrderRespTypeEnum","NewUmOrderPriceMatchEnum","NewUmOrderSelfTradePreventionModeEnum","QueryUsersCmForceOrdersAutoCloseTypeEnum","QueryUsersUmForceOrdersAutoCloseTypeEnum","import_common","import_common","import_common","import_common","import_common"]}