{"version":3,"sources":["../src/wallet.ts","../package.json","../src/rest-api/index.ts","../src/rest-api/modules/account-api.ts","../src/rest-api/modules/asset-api.ts","../src/rest-api/modules/capital-api.ts","../src/rest-api/modules/others-api.ts","../src/rest-api/modules/travel-rule-api.ts","../src/rest-api/rest-api.ts","../src/index.ts"],"sourcesContent":["import { platform, arch } from 'os';\nimport { ConfigurationRestAPI, WALLET_REST_API_PROD_URL } from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nexport interface ConfigurationWallet {\n    configurationRestAPI?: ConfigurationRestAPI;\n}\n\nexport class Wallet {\n    public restAPI!: RestAPI;\n\n    constructor(config: ConfigurationWallet) {\n        if (config?.configurationRestAPI) {\n            const configRestAPI = new ConfigurationRestAPI(config.configurationRestAPI);\n            configRestAPI.basePath = configRestAPI.basePath || WALLET_REST_API_PROD_URL;\n            configRestAPI.baseOptions = configRestAPI.baseOptions || {};\n            configRestAPI.baseOptions.headers = {\n                ...(configRestAPI.baseOptions.headers || {}),\n                'User-Agent': `${name}/${version} (Node.js/${process.version}; ${platform()}; ${arch()})`,\n            };\n            this.restAPI = new RestAPI(configRestAPI);\n        }\n    }\n}\n","{\n    \"name\": \"@binance/wallet\",\n    \"description\": \"Official Binance Wallet Connector - A lightweight library that provides a convenient interface to Binance's Wallet REST API.\",\n    \"version\": \"2.0.0\",\n    \"main\": \"./dist/index.js\",\n    \"module\": \"./dist/index.mjs\",\n    \"types\": \"./dist/index.d.ts\",\n    \"scripts\": {\n        \"prepublishOnly\": \"npm run build\",\n        \"build\": \"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        \"Wallet\",\n        \"Connector\",\n        \"REST\",\n        \"Trading\"\n    ],\n    \"author\": \"Binance\",\n    \"license\": \"MIT\",\n    \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/binance/binance-connector-js.git\"\n    },\n    \"bugs\": {\n        \"url\": \"https://github.com/binance/binance-connector-js/issues\"\n    },\n    \"homepage\": \"https://github.com/binance/binance-connector-js#readme\",\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\": \"^7.2.0\",\n        \"typescript\": \"^5.7.2\",\n        \"typescript-eslint\": \"^8.24.0\"\n    },\n    \"dependencies\": {\n        \"@binance/common\": \"1.0.0\",\n        \"axios\": \"^1.7.4\"\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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 Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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    AccountApiTradingStatusResponse,\n    AccountInfoResponse,\n    AccountStatusResponse,\n    DailyAccountSnapshotResponse,\n    GetApiKeyPermissionResponse,\n} from '../types';\n\n/**\n * AccountApi - axios parameter creator\n */\nconst AccountApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n    return {\n        /**\n         * Fetch account api trading status detail.\n         *\n         * Weight: 1\n         *\n         * @summary Account API Trading Status (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        accountApiTradingStatus: 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: '/sapi/v1/account/apiTradingStatus',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch account info detail.\n         *\n         * Weight: 1\n         *\n         * @summary Account info (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        accountInfo: 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: '/sapi/v1/account/info',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch account status detail.\n         *\n         * Weight: 1\n         *\n         * @summary Account Status (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        accountStatus: 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: '/sapi/v1/account/status',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Daily account snapshot\n         *\n         * The query time period must be less then 30 days\n         * Support query within the last one month only\n         * If startTimeand endTime not sent, return records of the last 7 days by default\n         *\n         * Weight: 2400\n         *\n         * @summary Daily Account Snapshot (USER_DATA)\n         * @param {string} type\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        dailyAccountSnapshot: async (\n            type: string,\n            startTime?: number,\n            endTime?: number,\n            limit?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'type' is not null or undefined\n            assertParamExists('dailyAccountSnapshot', 'type', type);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (type !== undefined && type !== null) {\n                localVarQueryParameter['type'] = type;\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: '/sapi/v1/accountSnapshot',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         *\n         * Weight: 1\n         *\n         * @summary Disable Fast Withdraw Switch (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        disableFastWithdrawSwitch: 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: '/sapi/v1/account/disableFastWithdrawSwitch',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Enable Fast Withdraw Switch (USER_DATA)\n         *\n         * This request will enable fastwithdraw switch under your  account. <br></br>\n         * When Fast Withdraw Switch is on, transferring funds to a Binance account will be done instantly. There is no on-chain transaction, no transaction ID and no withdrawal fee.\n         *\n         * Weight: 1\n         *\n         * @summary Enable Fast Withdraw Switch (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        enableFastWithdrawSwitch: 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: '/sapi/v1/account/enableFastWithdrawSwitch',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Get API Key Permission\n         *\n         * Weight: 1\n         *\n         * @summary Get API Key Permission (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        getApiKeyPermission: 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: '/sapi/v1/account/apiRestrictions',\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     * Fetch account api trading status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account API Trading Status (USER_DATA)\n     * @param {AccountApiTradingStatusRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    accountApiTradingStatus(\n        requestParameters?: AccountApiTradingStatusRequest\n    ): Promise<RestApiResponse<AccountApiTradingStatusResponse>>;\n    /**\n     * Fetch account info detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account info (USER_DATA)\n     * @param {AccountInfoRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    accountInfo(\n        requestParameters?: AccountInfoRequest\n    ): Promise<RestApiResponse<AccountInfoResponse>>;\n    /**\n     * Fetch account status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account Status (USER_DATA)\n     * @param {AccountStatusRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    accountStatus(\n        requestParameters?: AccountStatusRequest\n    ): Promise<RestApiResponse<AccountStatusResponse>>;\n    /**\n     * Daily account snapshot\n     *\n     * The query time period must be less then 30 days\n     * Support query within the last one month only\n     * If startTimeand endTime not sent, return records of the last 7 days by default\n     *\n     * Weight: 2400\n     *\n     * @summary Daily Account Snapshot (USER_DATA)\n     * @param {DailyAccountSnapshotRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    dailyAccountSnapshot(\n        requestParameters: DailyAccountSnapshotRequest\n    ): Promise<RestApiResponse<DailyAccountSnapshotResponse>>;\n    /**\n     *\n     * Weight: 1\n     *\n     * @summary Disable Fast Withdraw Switch (USER_DATA)\n     * @param {DisableFastWithdrawSwitchRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    disableFastWithdrawSwitch(\n        requestParameters?: DisableFastWithdrawSwitchRequest\n    ): Promise<RestApiResponse<void>>;\n    /**\n     * Enable Fast Withdraw Switch (USER_DATA)\n     *\n     * This request will enable fastwithdraw switch under your  account. <br></br>\n     * When Fast Withdraw Switch is on, transferring funds to a Binance account will be done instantly. There is no on-chain transaction, no transaction ID and no withdrawal fee.\n     *\n     * Weight: 1\n     *\n     * @summary Enable Fast Withdraw Switch (USER_DATA)\n     * @param {EnableFastWithdrawSwitchRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    enableFastWithdrawSwitch(\n        requestParameters?: EnableFastWithdrawSwitchRequest\n    ): Promise<RestApiResponse<void>>;\n    /**\n     * Get API Key Permission\n     *\n     * Weight: 1\n     *\n     * @summary Get API Key Permission (USER_DATA)\n     * @param {GetApiKeyPermissionRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApiInterface\n     */\n    getApiKeyPermission(\n        requestParameters?: GetApiKeyPermissionRequest\n    ): Promise<RestApiResponse<GetApiKeyPermissionResponse>>;\n}\n\n/**\n * Request parameters for accountApiTradingStatus operation in AccountApi.\n * @interface AccountApiTradingStatusRequest\n */\nexport interface AccountApiTradingStatusRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiAccountApiTradingStatus\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for accountInfo operation in AccountApi.\n * @interface AccountInfoRequest\n */\nexport interface AccountInfoRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiAccountInfo\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for accountStatus operation in AccountApi.\n * @interface AccountStatusRequest\n */\nexport interface AccountStatusRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiAccountStatus\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for dailyAccountSnapshot operation in AccountApi.\n * @interface DailyAccountSnapshotRequest\n */\nexport interface DailyAccountSnapshotRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AccountApiDailyAccountSnapshot\n     */\n    readonly type: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiDailyAccountSnapshot\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiDailyAccountSnapshot\n     */\n    readonly endTime?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof AccountApiDailyAccountSnapshot\n     */\n    readonly limit?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiDailyAccountSnapshot\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for disableFastWithdrawSwitch operation in AccountApi.\n * @interface DisableFastWithdrawSwitchRequest\n */\nexport interface DisableFastWithdrawSwitchRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiDisableFastWithdrawSwitch\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for enableFastWithdrawSwitch operation in AccountApi.\n * @interface EnableFastWithdrawSwitchRequest\n */\nexport interface EnableFastWithdrawSwitchRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiEnableFastWithdrawSwitch\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getApiKeyPermission operation in AccountApi.\n * @interface GetApiKeyPermissionRequest\n */\nexport interface GetApiKeyPermissionRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AccountApiGetApiKeyPermission\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     * Fetch account api trading status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account API Trading Status (USER_DATA)\n     * @param {AccountApiTradingStatusRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountApiTradingStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-API-Trading-Status Binance API Documentation}\n     */\n    public async accountApiTradingStatus(\n        requestParameters: AccountApiTradingStatusRequest = {}\n    ): Promise<RestApiResponse<AccountApiTradingStatusResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountApiTradingStatus(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AccountApiTradingStatusResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch account info detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account info (USER_DATA)\n     * @param {AccountInfoRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountInfoResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-info Binance API Documentation}\n     */\n    public async accountInfo(\n        requestParameters: AccountInfoRequest = {}\n    ): Promise<RestApiResponse<AccountInfoResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountInfo(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AccountInfoResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch account status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account Status (USER_DATA)\n     * @param {AccountStatusRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-Status Binance API Documentation}\n     */\n    public async accountStatus(\n        requestParameters: AccountStatusRequest = {}\n    ): Promise<RestApiResponse<AccountStatusResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.accountStatus(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AccountStatusResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Daily account snapshot\n     *\n     * The query time period must be less then 30 days\n     * Support query within the last one month only\n     * If startTimeand endTime not sent, return records of the last 7 days by default\n     *\n     * Weight: 2400\n     *\n     * @summary Daily Account Snapshot (USER_DATA)\n     * @param {DailyAccountSnapshotRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DailyAccountSnapshotResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/daily-account-snapshoot Binance API Documentation}\n     */\n    public async dailyAccountSnapshot(\n        requestParameters: DailyAccountSnapshotRequest\n    ): Promise<RestApiResponse<DailyAccountSnapshotResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.dailyAccountSnapshot(\n            requestParameters?.type,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.limit,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<DailyAccountSnapshotResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     *\n     * Weight: 1\n     *\n     * @summary Disable Fast Withdraw Switch (USER_DATA)\n     * @param {DisableFastWithdrawSwitchRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<void>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/Disable-Fast-Withdraw-Switch Binance API Documentation}\n     */\n    public async disableFastWithdrawSwitch(\n        requestParameters: DisableFastWithdrawSwitchRequest = {}\n    ): Promise<RestApiResponse<void>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.disableFastWithdrawSwitch(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<void>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Enable Fast Withdraw Switch (USER_DATA)\n     *\n     * This request will enable fastwithdraw switch under your  account. <br></br>\n     * When Fast Withdraw Switch is on, transferring funds to a Binance account will be done instantly. There is no on-chain transaction, no transaction ID and no withdrawal fee.\n     *\n     * Weight: 1\n     *\n     * @summary Enable Fast Withdraw Switch (USER_DATA)\n     * @param {EnableFastWithdrawSwitchRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<void>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/Enable-Fast-Withdraw-Switch Binance API Documentation}\n     */\n    public async enableFastWithdrawSwitch(\n        requestParameters: EnableFastWithdrawSwitchRequest = {}\n    ): Promise<RestApiResponse<void>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.enableFastWithdrawSwitch(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<void>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Get API Key Permission\n     *\n     * Weight: 1\n     *\n     * @summary Get API Key Permission (USER_DATA)\n     * @param {GetApiKeyPermissionRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetApiKeyPermissionResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AccountApi\n     * @see {@link https://developers.binance.com/docs/wallet/account/api-key-permission Binance API Documentation}\n     */\n    public async getApiKeyPermission(\n        requestParameters: GetApiKeyPermissionRequest = {}\n    ): Promise<RestApiResponse<GetApiKeyPermissionResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.getApiKeyPermission(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<GetApiKeyPermissionResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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    AssetDetailResponse,\n    AssetDividendRecordResponse,\n    DustTransferResponse,\n    DustlogResponse,\n    FundingWalletResponse,\n    GetAssetsThatCanBeConvertedIntoBnbResponse,\n    GetCloudMiningPaymentAndRefundHistoryResponse,\n    GetOpenSymbolListResponse,\n    QueryUserDelegationHistoryResponse,\n    QueryUserUniversalTransferHistoryResponse,\n    QueryUserWalletBalanceResponse,\n    ToggleBnbBurnOnSpotTradeAndMarginInterestResponse,\n    TradeFeeResponse,\n    UserAssetResponse,\n    UserUniversalTransferResponse,\n} from '../types';\n\n/**\n * AssetApi - axios parameter creator\n */\nconst AssetApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n    return {\n        /**\n         * Fetch details of assets supported on Binance.\n         *\n         *\n         * Please get network and other deposit or withdraw details from ``GET /sapi/v1/capital/config/getall``.\n         *\n         * Weight: 1\n         *\n         * @summary Asset Detail (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        assetDetail: 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: '/sapi/v1/asset/assetDetail',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Query asset dividend record.\n         *\n         *\n         * There cannot be more than 180 days between parameter `startTime` and `endTime`.\n         *\n         * Weight: 10\n         *\n         * @summary Asset Dividend Record (USER_DATA)\n         * @param {string} [asset] If asset is blank, then query all positive assets user have.\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        assetDividendRecord: async (\n            asset?: string,\n            startTime?: number,\n            endTime?: number,\n            limit?: 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 (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: '/sapi/v1/asset/assetDividend',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Convert dust assets to BNB.\n         *\n         * You need to open`Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n         *\n         * Weight: 10\n         *\n         * @summary Dust Transfer (USER_DATA)\n         * @param {string} asset\n         * @param {string} [accountType] `SPOT` or `MARGIN`,default `SPOT`\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        dustTransfer: async (\n            asset: string,\n            accountType?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'asset' is not null or undefined\n            assertParamExists('dustTransfer', 'asset', asset);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (asset !== undefined && asset !== null) {\n                localVarQueryParameter['asset'] = asset;\n            }\n\n            if (accountType !== undefined && accountType !== null) {\n                localVarQueryParameter['accountType'] = accountType;\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: '/sapi/v1/asset/dust',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Dustlog\n         *\n         * Only return last 100 records\n         * Only return records after 2020/12/01\n         *\n         * Weight: 1\n         *\n         * @summary DustLog(USER_DATA)\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        dustlog: async (\n            startTime?: number,\n            endTime?: 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 (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: '/sapi/v1/asset/dribblet',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Query Funding Wallet\n         *\n         *\n         * Currently supports querying the following business assets：Binance Pay, Binance Card, Binance Gift Card, Stock Token\n         *\n         * Weight: 1\n         *\n         * @summary Funding Wallet (USER_DATA)\n         * @param {string} [asset] If asset is blank, then query all positive assets user have.\n         * @param {string} [needBtcValuation] true or false\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        fundingWallet: async (\n            asset?: string,\n            needBtcValuation?: 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 (needBtcValuation !== undefined && needBtcValuation !== null) {\n                localVarQueryParameter['needBtcValuation'] = needBtcValuation;\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: '/sapi/v1/asset/get-funding-asset',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Get Assets That Can Be Converted Into BNB\n         *\n         * Weight: 1\n         *\n         * @summary Get Assets That Can Be Converted Into BNB (USER_DATA)\n         * @param {string} [accountType] `SPOT` or `MARGIN`,default `SPOT`\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        getAssetsThatCanBeConvertedIntoBnb: async (\n            accountType?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (accountType !== undefined && accountType !== null) {\n                localVarQueryParameter['accountType'] = accountType;\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: '/sapi/v1/asset/dust-btc',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * The query of Cloud-Mining payment and refund history\n         *\n         * Just return the SUCCESS records of payment and refund.\n         * For response, type = 248 means payment, type = 249 means refund, status =S means SUCCESS.\n         *\n         * Weight: 600\n         *\n         * @summary Get Cloud-Mining payment and refund history (USER_DATA)\n         * @param {number} startTime\n         * @param {number} endTime\n         * @param {number} [tranId] The transaction id\n         * @param {string} [clientTranId] The unique flag\n         * @param {string} [asset] If asset is blank, then query all positive assets user have.\n         * @param {number} [current] current page, default 1, the min value is 1\n         * @param {number} [size] page size, default 10, the max value is 100\n         *\n         * @throws {RequiredError}\n         */\n        getCloudMiningPaymentAndRefundHistory: async (\n            startTime: number,\n            endTime: number,\n            tranId?: number,\n            clientTranId?: string,\n            asset?: string,\n            current?: number,\n            size?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'startTime' is not null or undefined\n            assertParamExists('getCloudMiningPaymentAndRefundHistory', 'startTime', startTime);\n            // verify required parameter 'endTime' is not null or undefined\n            assertParamExists('getCloudMiningPaymentAndRefundHistory', 'endTime', endTime);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (tranId !== undefined && tranId !== null) {\n                localVarQueryParameter['tranId'] = tranId;\n            }\n\n            if (clientTranId !== undefined && clientTranId !== null) {\n                localVarQueryParameter['clientTranId'] = clientTranId;\n            }\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            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/asset/ledger-transfer/cloud-mining/queryByPage',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Get the list of symbols that are scheduled to be opened for trading in the market.\n         *\n         * Weight: 100\n         *\n         * @summary Get Open Symbol List (MARKET_DATA)\n         *\n         * @throws {RequiredError}\n         */\n        getOpenSymbolList: 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: '/sapi/v1/spot/open-symbol-list',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Query User Delegation History\n         *\n         * You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint\n         *\n         * Weight: 60\n         *\n         * @summary Query User Delegation History(For Master Account)(USER_DATA)\n         * @param {string} email\n         * @param {number} startTime\n         * @param {number} endTime\n         * @param {string} [type] Delegate/Undelegate\n         * @param {string} [asset] If asset is blank, then query all positive assets user have.\n         * @param {number} [current] current page, default 1, the min value is 1\n         * @param {number} [size] page size, default 10, the max value is 100\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        queryUserDelegationHistory: async (\n            email: string,\n            startTime: number,\n            endTime: number,\n            type?: string,\n            asset?: string,\n            current?: number,\n            size?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'email' is not null or undefined\n            assertParamExists('queryUserDelegationHistory', 'email', email);\n            // verify required parameter 'startTime' is not null or undefined\n            assertParamExists('queryUserDelegationHistory', 'startTime', startTime);\n            // verify required parameter 'endTime' is not null or undefined\n            assertParamExists('queryUserDelegationHistory', 'endTime', endTime);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (email !== undefined && email !== null) {\n                localVarQueryParameter['email'] = email;\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 (type !== undefined && type !== null) {\n                localVarQueryParameter['type'] = type;\n            }\n\n            if (asset !== undefined && asset !== null) {\n                localVarQueryParameter['asset'] = asset;\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: '/sapi/v1/asset/custody/transfer-history',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Query User Universal Transfer History\n         *\n         *\n         *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n         *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n         * Support query within the last 6 months only\n         * If `startTime`and `endTime` not sent, return records of the last 7 days by default\n         *\n         * Weight: 1\n         *\n         * @summary Query User Universal Transfer History(USER_DATA)\n         * @param {string} type\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [current] current page, default 1, the min value is 1\n         * @param {number} [size] page size, default 10, the max value is 100\n         * @param {string} [fromSymbol]\n         * @param {string} [toSymbol]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        queryUserUniversalTransferHistory: async (\n            type: string,\n            startTime?: number,\n            endTime?: number,\n            current?: number,\n            size?: number,\n            fromSymbol?: string,\n            toSymbol?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'type' is not null or undefined\n            assertParamExists('queryUserUniversalTransferHistory', 'type', type);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (type !== undefined && type !== null) {\n                localVarQueryParameter['type'] = type;\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 (fromSymbol !== undefined && fromSymbol !== null) {\n                localVarQueryParameter['fromSymbol'] = fromSymbol;\n            }\n\n            if (toSymbol !== undefined && toSymbol !== null) {\n                localVarQueryParameter['toSymbol'] = toSymbol;\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: '/sapi/v1/asset/transfer',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Query User Wallet Balance\n         *\n         *\n         * You need to open Permits Universal Transfer permission for the API Key which requests this endpoint.\n         *\n         * Weight: 60\n         *\n         * @summary Query User Wallet Balance (USER_DATA)\n         * @param {string} [quoteAsset] `USDT`, `ETH`, `USDC`, `BNB`, etc. default `BTC`\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        queryUserWalletBalance: async (\n            quoteAsset?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (quoteAsset !== undefined && quoteAsset !== null) {\n                localVarQueryParameter['quoteAsset'] = quoteAsset;\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: '/sapi/v1/asset/wallet/balance',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Toggle BNB Burn On Spot Trade And Margin Interest\n         *\n         * \"spotBNBBurn\" and \"interestBNBBurn\" should be sent at least one.\n         *\n         * Weight: 1(IP)\n         *\n         * @summary Toggle BNB Burn On Spot Trade And Margin Interest (USER_DATA)\n         * @param {string} [spotBNBBurn] \"true\" or \"false\"; Determines whether to use BNB to pay for trading fees on SPOT\n         * @param {string} [interestBNBBurn] \"true\" or \"false\"; Determines whether to use BNB to pay for margin loan's interest\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        toggleBnbBurnOnSpotTradeAndMarginInterest: async (\n            spotBNBBurn?: string,\n            interestBNBBurn?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (spotBNBBurn !== undefined && spotBNBBurn !== null) {\n                localVarQueryParameter['spotBNBBurn'] = spotBNBBurn;\n            }\n\n            if (interestBNBBurn !== undefined && interestBNBBurn !== null) {\n                localVarQueryParameter['interestBNBBurn'] = interestBNBBurn;\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: '/sapi/v1/bnbBurn',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch trade fee\n         *\n         * Weight: 1\n         *\n         * @summary Trade Fee (USER_DATA)\n         * @param {string} [symbol]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        tradeFee: async (symbol?: string, recvWindow?: number): 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: '/sapi/v1/asset/tradeFee',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Get user assets, just for positive data.\n         *\n         * If asset is set, then return this asset, otherwise return all assets positive.\n         * If needBtcValuation is set, then return btcValudation.\n         *\n         * Weight: 5\n         *\n         * @summary User Asset (USER_DATA)\n         * @param {string} [asset] If asset is blank, then query all positive assets user have.\n         * @param {boolean} [needBtcValuation] Whether need btc valuation or not.\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        userAsset: async (\n            asset?: string,\n            needBtcValuation?: boolean,\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 (needBtcValuation !== undefined && needBtcValuation !== null) {\n                localVarQueryParameter['needBtcValuation'] = needBtcValuation;\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: '/sapi/v3/asset/getUserAsset',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * user universal transfer\n         *\n         *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n         *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n         * ENUM of transfer types:\n         * MAIN_UMFUTURE   Spot account transfer to USDⓈ-M Futures account\n         * MAIN_CMFUTURE   Spot account transfer to COIN-M Futures account\n         * MAIN_MARGIN   Spot account transfer to Margin（cross）account\n         * UMFUTURE_MAIN   USDⓈ-M Futures account transfer to Spot account\n         * UMFUTURE_MARGIN   USDⓈ-M Futures account transfer to Margin（cross）account\n         * CMFUTURE_MAIN   COIN-M Futures account transfer to Spot account\n         * CMFUTURE_MARGIN   COIN-M Futures account transfer to Margin(cross) account\n         * MARGIN_MAIN   Margin（cross）account transfer to Spot account\n         * MARGIN_UMFUTURE   Margin（cross）account transfer to USDⓈ-M Futures\n         * MARGIN_CMFUTURE   Margin（cross）account transfer to COIN-M Futures\n         * ISOLATEDMARGIN_MARGIN   Isolated margin account transfer to Margin(cross) account\n         * MARGIN_ISOLATEDMARGIN   Margin(cross) account transfer to Isolated margin account\n         * ISOLATEDMARGIN_ISOLATEDMARGIN   Isolated margin account transfer to Isolated margin account\n         * MAIN_FUNDING   Spot account transfer to Funding account\n         * FUNDING_MAIN   Funding account transfer to Spot account\n         * FUNDING_UMFUTURE   Funding account transfer to UMFUTURE account\n         * UMFUTURE_FUNDING   UMFUTURE account transfer to Funding account\n         * MARGIN_FUNDING   MARGIN account transfer to Funding account\n         * FUNDING_MARGIN   Funding account transfer to Margin account\n         * FUNDING_CMFUTURE   Funding account transfer to CMFUTURE account\n         * CMFUTURE_FUNDING   CMFUTURE account transfer to Funding account\n         * MAIN_OPTION  Spot account transfer to Options account\n         * OPTION_MAIN  Options account transfer to Spot account\n         * UMFUTURE_OPTION USDⓈ-M Futures account transfer to Options account\n         * OPTION_UMFUTURE Options account transfer to USDⓈ-M Futures account\n         * MARGIN_OPTION  Margin（cross）account transfer to Options account\n         * OPTION_MARGIN  Options account transfer to Margin（cross）account\n         * FUNDING_OPTION   Funding account transfer to Options account\n         * OPTION_FUNDING   Options account transfer to Funding account\n         * MAIN_PORTFOLIO_MARGIN  Spot account transfer to Portfolio Margin account\n         * PORTFOLIO_MARGIN_MAIN  Portfolio Margin account transfer to Spot account\n         *\n         * Weight: 900\n         *\n         * @summary User Universal Transfer (USER_DATA)\n         * @param {string} type\n         * @param {string} asset\n         * @param {number} amount\n         * @param {string} [fromSymbol]\n         * @param {string} [toSymbol]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        userUniversalTransfer: async (\n            type: string,\n            asset: string,\n            amount: number,\n            fromSymbol?: string,\n            toSymbol?: string,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'type' is not null or undefined\n            assertParamExists('userUniversalTransfer', 'type', type);\n            // verify required parameter 'asset' is not null or undefined\n            assertParamExists('userUniversalTransfer', 'asset', asset);\n            // verify required parameter 'amount' is not null or undefined\n            assertParamExists('userUniversalTransfer', 'amount', amount);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (type !== undefined && type !== null) {\n                localVarQueryParameter['type'] = type;\n            }\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 (fromSymbol !== undefined && fromSymbol !== null) {\n                localVarQueryParameter['fromSymbol'] = fromSymbol;\n            }\n\n            if (toSymbol !== undefined && toSymbol !== null) {\n                localVarQueryParameter['toSymbol'] = toSymbol;\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: '/sapi/v1/asset/transfer',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n    };\n};\n\n/**\n * AssetApi - interface\n * @interface AssetApi\n */\nexport interface AssetApiInterface {\n    /**\n     * Fetch details of assets supported on Binance.\n     *\n     *\n     * Please get network and other deposit or withdraw details from ``GET /sapi/v1/capital/config/getall``.\n     *\n     * Weight: 1\n     *\n     * @summary Asset Detail (USER_DATA)\n     * @param {AssetDetailRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    assetDetail(\n        requestParameters?: AssetDetailRequest\n    ): Promise<RestApiResponse<AssetDetailResponse>>;\n    /**\n     * Query asset dividend record.\n     *\n     *\n     * There cannot be more than 180 days between parameter `startTime` and `endTime`.\n     *\n     * Weight: 10\n     *\n     * @summary Asset Dividend Record (USER_DATA)\n     * @param {AssetDividendRecordRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    assetDividendRecord(\n        requestParameters?: AssetDividendRecordRequest\n    ): Promise<RestApiResponse<AssetDividendRecordResponse>>;\n    /**\n     * Convert dust assets to BNB.\n     *\n     * You need to open`Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n     *\n     * Weight: 10\n     *\n     * @summary Dust Transfer (USER_DATA)\n     * @param {DustTransferRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    dustTransfer(\n        requestParameters: DustTransferRequest\n    ): Promise<RestApiResponse<DustTransferResponse>>;\n    /**\n     * Dustlog\n     *\n     * Only return last 100 records\n     * Only return records after 2020/12/01\n     *\n     * Weight: 1\n     *\n     * @summary DustLog(USER_DATA)\n     * @param {DustlogRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    dustlog(requestParameters?: DustlogRequest): Promise<RestApiResponse<DustlogResponse>>;\n    /**\n     * Query Funding Wallet\n     *\n     *\n     * Currently supports querying the following business assets：Binance Pay, Binance Card, Binance Gift Card, Stock Token\n     *\n     * Weight: 1\n     *\n     * @summary Funding Wallet (USER_DATA)\n     * @param {FundingWalletRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    fundingWallet(\n        requestParameters?: FundingWalletRequest\n    ): Promise<RestApiResponse<FundingWalletResponse>>;\n    /**\n     * Get Assets That Can Be Converted Into BNB\n     *\n     * Weight: 1\n     *\n     * @summary Get Assets That Can Be Converted Into BNB (USER_DATA)\n     * @param {GetAssetsThatCanBeConvertedIntoBnbRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    getAssetsThatCanBeConvertedIntoBnb(\n        requestParameters?: GetAssetsThatCanBeConvertedIntoBnbRequest\n    ): Promise<RestApiResponse<GetAssetsThatCanBeConvertedIntoBnbResponse>>;\n    /**\n     * The query of Cloud-Mining payment and refund history\n     *\n     * Just return the SUCCESS records of payment and refund.\n     * For response, type = 248 means payment, type = 249 means refund, status =S means SUCCESS.\n     *\n     * Weight: 600\n     *\n     * @summary Get Cloud-Mining payment and refund history (USER_DATA)\n     * @param {GetCloudMiningPaymentAndRefundHistoryRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    getCloudMiningPaymentAndRefundHistory(\n        requestParameters: GetCloudMiningPaymentAndRefundHistoryRequest\n    ): Promise<RestApiResponse<GetCloudMiningPaymentAndRefundHistoryResponse>>;\n    /**\n     * Get the list of symbols that are scheduled to be opened for trading in the market.\n     *\n     * Weight: 100\n     *\n     * @summary Get Open Symbol List (MARKET_DATA)\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    getOpenSymbolList(): Promise<RestApiResponse<GetOpenSymbolListResponse>>;\n    /**\n     * Query User Delegation History\n     *\n     * You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint\n     *\n     * Weight: 60\n     *\n     * @summary Query User Delegation History(For Master Account)(USER_DATA)\n     * @param {QueryUserDelegationHistoryRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    queryUserDelegationHistory(\n        requestParameters: QueryUserDelegationHistoryRequest\n    ): Promise<RestApiResponse<QueryUserDelegationHistoryResponse>>;\n    /**\n     * Query User Universal Transfer History\n     *\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * Support query within the last 6 months only\n     * If `startTime`and `endTime` not sent, return records of the last 7 days by default\n     *\n     * Weight: 1\n     *\n     * @summary Query User Universal Transfer History(USER_DATA)\n     * @param {QueryUserUniversalTransferHistoryRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    queryUserUniversalTransferHistory(\n        requestParameters: QueryUserUniversalTransferHistoryRequest\n    ): Promise<RestApiResponse<QueryUserUniversalTransferHistoryResponse>>;\n    /**\n     * Query User Wallet Balance\n     *\n     *\n     * You need to open Permits Universal Transfer permission for the API Key which requests this endpoint.\n     *\n     * Weight: 60\n     *\n     * @summary Query User Wallet Balance (USER_DATA)\n     * @param {QueryUserWalletBalanceRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    queryUserWalletBalance(\n        requestParameters?: QueryUserWalletBalanceRequest\n    ): Promise<RestApiResponse<QueryUserWalletBalanceResponse>>;\n    /**\n     * Toggle BNB Burn On Spot Trade And Margin Interest\n     *\n     * \"spotBNBBurn\" and \"interestBNBBurn\" should be sent at least one.\n     *\n     * Weight: 1(IP)\n     *\n     * @summary Toggle BNB Burn On Spot Trade And Margin Interest (USER_DATA)\n     * @param {ToggleBnbBurnOnSpotTradeAndMarginInterestRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    toggleBnbBurnOnSpotTradeAndMarginInterest(\n        requestParameters?: ToggleBnbBurnOnSpotTradeAndMarginInterestRequest\n    ): Promise<RestApiResponse<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>>;\n    /**\n     * Fetch trade fee\n     *\n     * Weight: 1\n     *\n     * @summary Trade Fee (USER_DATA)\n     * @param {TradeFeeRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    tradeFee(requestParameters?: TradeFeeRequest): Promise<RestApiResponse<TradeFeeResponse>>;\n    /**\n     * Get user assets, just for positive data.\n     *\n     * If asset is set, then return this asset, otherwise return all assets positive.\n     * If needBtcValuation is set, then return btcValudation.\n     *\n     * Weight: 5\n     *\n     * @summary User Asset (USER_DATA)\n     * @param {UserAssetRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    userAsset(requestParameters?: UserAssetRequest): Promise<RestApiResponse<UserAssetResponse>>;\n    /**\n     * user universal transfer\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * ENUM of transfer types:\n     * MAIN_UMFUTURE   Spot account transfer to USDⓈ-M Futures account\n     * MAIN_CMFUTURE   Spot account transfer to COIN-M Futures account\n     * MAIN_MARGIN   Spot account transfer to Margin（cross）account\n     * UMFUTURE_MAIN   USDⓈ-M Futures account transfer to Spot account\n     * UMFUTURE_MARGIN   USDⓈ-M Futures account transfer to Margin（cross）account\n     * CMFUTURE_MAIN   COIN-M Futures account transfer to Spot account\n     * CMFUTURE_MARGIN   COIN-M Futures account transfer to Margin(cross) account\n     * MARGIN_MAIN   Margin（cross）account transfer to Spot account\n     * MARGIN_UMFUTURE   Margin（cross）account transfer to USDⓈ-M Futures\n     * MARGIN_CMFUTURE   Margin（cross）account transfer to COIN-M Futures\n     * ISOLATEDMARGIN_MARGIN   Isolated margin account transfer to Margin(cross) account\n     * MARGIN_ISOLATEDMARGIN   Margin(cross) account transfer to Isolated margin account\n     * ISOLATEDMARGIN_ISOLATEDMARGIN   Isolated margin account transfer to Isolated margin account\n     * MAIN_FUNDING   Spot account transfer to Funding account\n     * FUNDING_MAIN   Funding account transfer to Spot account\n     * FUNDING_UMFUTURE   Funding account transfer to UMFUTURE account\n     * UMFUTURE_FUNDING   UMFUTURE account transfer to Funding account\n     * MARGIN_FUNDING   MARGIN account transfer to Funding account\n     * FUNDING_MARGIN   Funding account transfer to Margin account\n     * FUNDING_CMFUTURE   Funding account transfer to CMFUTURE account\n     * CMFUTURE_FUNDING   CMFUTURE account transfer to Funding account\n     * MAIN_OPTION  Spot account transfer to Options account\n     * OPTION_MAIN  Options account transfer to Spot account\n     * UMFUTURE_OPTION USDⓈ-M Futures account transfer to Options account\n     * OPTION_UMFUTURE Options account transfer to USDⓈ-M Futures account\n     * MARGIN_OPTION  Margin（cross）account transfer to Options account\n     * OPTION_MARGIN  Options account transfer to Margin（cross）account\n     * FUNDING_OPTION   Funding account transfer to Options account\n     * OPTION_FUNDING   Options account transfer to Funding account\n     * MAIN_PORTFOLIO_MARGIN  Spot account transfer to Portfolio Margin account\n     * PORTFOLIO_MARGIN_MAIN  Portfolio Margin account transfer to Spot account\n     *\n     * Weight: 900\n     *\n     * @summary User Universal Transfer (USER_DATA)\n     * @param {UserUniversalTransferRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApiInterface\n     */\n    userUniversalTransfer(\n        requestParameters: UserUniversalTransferRequest\n    ): Promise<RestApiResponse<UserUniversalTransferResponse>>;\n}\n\n/**\n * Request parameters for assetDetail operation in AssetApi.\n * @interface AssetDetailRequest\n */\nexport interface AssetDetailRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiAssetDetail\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for assetDividendRecord operation in AssetApi.\n * @interface AssetDividendRecordRequest\n */\nexport interface AssetDividendRecordRequest {\n    /**\n     * If asset is blank, then query all positive assets user have.\n     * @type {string}\n     * @memberof AssetApiAssetDividendRecord\n     */\n    readonly asset?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiAssetDividendRecord\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiAssetDividendRecord\n     */\n    readonly endTime?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof AssetApiAssetDividendRecord\n     */\n    readonly limit?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiAssetDividendRecord\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for dustTransfer operation in AssetApi.\n * @interface DustTransferRequest\n */\nexport interface DustTransferRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiDustTransfer\n     */\n    readonly asset: string;\n\n    /**\n     * `SPOT` or `MARGIN`,default `SPOT`\n     * @type {string}\n     * @memberof AssetApiDustTransfer\n     */\n    readonly accountType?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiDustTransfer\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for dustlog operation in AssetApi.\n * @interface DustlogRequest\n */\nexport interface DustlogRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiDustlog\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiDustlog\n     */\n    readonly endTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiDustlog\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for fundingWallet operation in AssetApi.\n * @interface FundingWalletRequest\n */\nexport interface FundingWalletRequest {\n    /**\n     * If asset is blank, then query all positive assets user have.\n     * @type {string}\n     * @memberof AssetApiFundingWallet\n     */\n    readonly asset?: string;\n\n    /**\n     * true or false\n     * @type {string}\n     * @memberof AssetApiFundingWallet\n     */\n    readonly needBtcValuation?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiFundingWallet\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getAssetsThatCanBeConvertedIntoBnb operation in AssetApi.\n * @interface GetAssetsThatCanBeConvertedIntoBnbRequest\n */\nexport interface GetAssetsThatCanBeConvertedIntoBnbRequest {\n    /**\n     * `SPOT` or `MARGIN`,default `SPOT`\n     * @type {string}\n     * @memberof AssetApiGetAssetsThatCanBeConvertedIntoBnb\n     */\n    readonly accountType?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiGetAssetsThatCanBeConvertedIntoBnb\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getCloudMiningPaymentAndRefundHistory operation in AssetApi.\n * @interface GetCloudMiningPaymentAndRefundHistoryRequest\n */\nexport interface GetCloudMiningPaymentAndRefundHistoryRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly startTime: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly endTime: number;\n\n    /**\n     * The transaction id\n     * @type {number}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly tranId?: number;\n\n    /**\n     * The unique flag\n     * @type {string}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly clientTranId?: string;\n\n    /**\n     * If asset is blank, then query all positive assets user have.\n     * @type {string}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly asset?: string;\n\n    /**\n     * current page, default 1, the min value is 1\n     * @type {number}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly current?: number;\n\n    /**\n     * page size, default 10, the max value is 100\n     * @type {number}\n     * @memberof AssetApiGetCloudMiningPaymentAndRefundHistory\n     */\n    readonly size?: number;\n}\n\n/**\n * Request parameters for queryUserDelegationHistory operation in AssetApi.\n * @interface QueryUserDelegationHistoryRequest\n */\nexport interface QueryUserDelegationHistoryRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly email: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly startTime: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly endTime: number;\n\n    /**\n     * Delegate/Undelegate\n     * @type {string}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly type?: string;\n\n    /**\n     * If asset is blank, then query all positive assets user have.\n     * @type {string}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly asset?: string;\n\n    /**\n     * current page, default 1, the min value is 1\n     * @type {number}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly current?: number;\n\n    /**\n     * page size, default 10, the max value is 100\n     * @type {number}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly size?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserDelegationHistory\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserUniversalTransferHistory operation in AssetApi.\n * @interface QueryUserUniversalTransferHistoryRequest\n */\nexport interface QueryUserUniversalTransferHistoryRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly type: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly endTime?: number;\n\n    /**\n     * current page, default 1, the min value is 1\n     * @type {number}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly current?: number;\n\n    /**\n     * page size, default 10, the max value is 100\n     * @type {number}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly size?: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly fromSymbol?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly toSymbol?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserUniversalTransferHistory\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for queryUserWalletBalance operation in AssetApi.\n * @interface QueryUserWalletBalanceRequest\n */\nexport interface QueryUserWalletBalanceRequest {\n    /**\n     * `USDT`, `ETH`, `USDC`, `BNB`, etc. default `BTC`\n     * @type {string}\n     * @memberof AssetApiQueryUserWalletBalance\n     */\n    readonly quoteAsset?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiQueryUserWalletBalance\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for toggleBnbBurnOnSpotTradeAndMarginInterest operation in AssetApi.\n * @interface ToggleBnbBurnOnSpotTradeAndMarginInterestRequest\n */\nexport interface ToggleBnbBurnOnSpotTradeAndMarginInterestRequest {\n    /**\n     * \"true\" or \"false\"; Determines whether to use BNB to pay for trading fees on SPOT\n     * @type {string}\n     * @memberof AssetApiToggleBnbBurnOnSpotTradeAndMarginInterest\n     */\n    readonly spotBNBBurn?: string;\n\n    /**\n     * \"true\" or \"false\"; Determines whether to use BNB to pay for margin loan's interest\n     * @type {string}\n     * @memberof AssetApiToggleBnbBurnOnSpotTradeAndMarginInterest\n     */\n    readonly interestBNBBurn?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiToggleBnbBurnOnSpotTradeAndMarginInterest\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for tradeFee operation in AssetApi.\n * @interface TradeFeeRequest\n */\nexport interface TradeFeeRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiTradeFee\n     */\n    readonly symbol?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiTradeFee\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for userAsset operation in AssetApi.\n * @interface UserAssetRequest\n */\nexport interface UserAssetRequest {\n    /**\n     * If asset is blank, then query all positive assets user have.\n     * @type {string}\n     * @memberof AssetApiUserAsset\n     */\n    readonly asset?: string;\n\n    /**\n     * Whether need btc valuation or not.\n     * @type {boolean}\n     * @memberof AssetApiUserAsset\n     */\n    readonly needBtcValuation?: boolean;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiUserAsset\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for userUniversalTransfer operation in AssetApi.\n * @interface UserUniversalTransferRequest\n */\nexport interface UserUniversalTransferRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly type: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly asset: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly amount: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly fromSymbol?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly toSymbol?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof AssetApiUserUniversalTransfer\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * AssetApi - object-oriented interface\n * @class AssetApi\n */\nexport class AssetApi implements AssetApiInterface {\n    private readonly configuration: ConfigurationRestAPI;\n    private localVarAxiosParamCreator;\n\n    constructor(configuration: ConfigurationRestAPI) {\n        this.configuration = configuration;\n        this.localVarAxiosParamCreator = AssetApiAxiosParamCreator(configuration);\n    }\n\n    /**\n     * Fetch details of assets supported on Binance.\n     *\n     *\n     * Please get network and other deposit or withdraw details from ``GET /sapi/v1/capital/config/getall``.\n     *\n     * Weight: 1\n     *\n     * @summary Asset Detail (USER_DATA)\n     * @param {AssetDetailRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AssetDetailResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Asset-Detail Binance API Documentation}\n     */\n    public async assetDetail(\n        requestParameters: AssetDetailRequest = {}\n    ): Promise<RestApiResponse<AssetDetailResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.assetDetail(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AssetDetailResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Query asset dividend record.\n     *\n     *\n     * There cannot be more than 180 days between parameter `startTime` and `endTime`.\n     *\n     * Weight: 10\n     *\n     * @summary Asset Dividend Record (USER_DATA)\n     * @param {AssetDividendRecordRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AssetDividendRecordResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/assets-divided-record Binance API Documentation}\n     */\n    public async assetDividendRecord(\n        requestParameters: AssetDividendRecordRequest = {}\n    ): Promise<RestApiResponse<AssetDividendRecordResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.assetDividendRecord(\n            requestParameters?.asset,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.limit,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AssetDividendRecordResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Convert dust assets to BNB.\n     *\n     * You need to open`Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n     *\n     * Weight: 10\n     *\n     * @summary Dust Transfer (USER_DATA)\n     * @param {DustTransferRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DustTransferResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Dust-Transfer Binance API Documentation}\n     */\n    public async dustTransfer(\n        requestParameters: DustTransferRequest\n    ): Promise<RestApiResponse<DustTransferResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.dustTransfer(\n            requestParameters?.asset,\n            requestParameters?.accountType,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<DustTransferResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Dustlog\n     *\n     * Only return last 100 records\n     * Only return records after 2020/12/01\n     *\n     * Weight: 1\n     *\n     * @summary DustLog(USER_DATA)\n     * @param {DustlogRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DustlogResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/dust-log Binance API Documentation}\n     */\n    public async dustlog(\n        requestParameters: DustlogRequest = {}\n    ): Promise<RestApiResponse<DustlogResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.dustlog(\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<DustlogResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Query Funding Wallet\n     *\n     *\n     * Currently supports querying the following business assets：Binance Pay, Binance Card, Binance Gift Card, Stock Token\n     *\n     * Weight: 1\n     *\n     * @summary Funding Wallet (USER_DATA)\n     * @param {FundingWalletRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<FundingWalletResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Funding-Wallet Binance API Documentation}\n     */\n    public async fundingWallet(\n        requestParameters: FundingWalletRequest = {}\n    ): Promise<RestApiResponse<FundingWalletResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.fundingWallet(\n            requestParameters?.asset,\n            requestParameters?.needBtcValuation,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<FundingWalletResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Get Assets That Can Be Converted Into BNB\n     *\n     * Weight: 1\n     *\n     * @summary Get Assets That Can Be Converted Into BNB (USER_DATA)\n     * @param {GetAssetsThatCanBeConvertedIntoBnbRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetAssetsThatCanBeConvertedIntoBnbResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/assets-can-convert-bnb Binance API Documentation}\n     */\n    public async getAssetsThatCanBeConvertedIntoBnb(\n        requestParameters: GetAssetsThatCanBeConvertedIntoBnbRequest = {}\n    ): Promise<RestApiResponse<GetAssetsThatCanBeConvertedIntoBnbResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.getAssetsThatCanBeConvertedIntoBnb(\n                requestParameters?.accountType,\n                requestParameters?.recvWindow\n            );\n        return sendRequest<GetAssetsThatCanBeConvertedIntoBnbResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * The query of Cloud-Mining payment and refund history\n     *\n     * Just return the SUCCESS records of payment and refund.\n     * For response, type = 248 means payment, type = 249 means refund, status =S means SUCCESS.\n     *\n     * Weight: 600\n     *\n     * @summary Get Cloud-Mining payment and refund history (USER_DATA)\n     * @param {GetCloudMiningPaymentAndRefundHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetCloudMiningPaymentAndRefundHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/cloud-mining-payment-and-refund-history Binance API Documentation}\n     */\n    public async getCloudMiningPaymentAndRefundHistory(\n        requestParameters: GetCloudMiningPaymentAndRefundHistoryRequest\n    ): Promise<RestApiResponse<GetCloudMiningPaymentAndRefundHistoryResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.getCloudMiningPaymentAndRefundHistory(\n                requestParameters?.startTime,\n                requestParameters?.endTime,\n                requestParameters?.tranId,\n                requestParameters?.clientTranId,\n                requestParameters?.asset,\n                requestParameters?.current,\n                requestParameters?.size\n            );\n        return sendRequest<GetCloudMiningPaymentAndRefundHistoryResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Get the list of symbols that are scheduled to be opened for trading in the market.\n     *\n     * Weight: 100\n     *\n     * @summary Get Open Symbol List (MARKET_DATA)\n     * @returns {Promise<RestApiResponse<GetOpenSymbolListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/open-symbol-list Binance API Documentation}\n     */\n    public async getOpenSymbolList(): Promise<RestApiResponse<GetOpenSymbolListResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.getOpenSymbolList();\n        return sendRequest<GetOpenSymbolListResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: false }\n        );\n    }\n\n    /**\n     * Query User Delegation History\n     *\n     * You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint\n     *\n     * Weight: 60\n     *\n     * @summary Query User Delegation History(For Master Account)(USER_DATA)\n     * @param {QueryUserDelegationHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserDelegationHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/query-user-delegation Binance API Documentation}\n     */\n    public async queryUserDelegationHistory(\n        requestParameters: QueryUserDelegationHistoryRequest\n    ): Promise<RestApiResponse<QueryUserDelegationHistoryResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUserDelegationHistory(\n            requestParameters?.email,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.type,\n            requestParameters?.asset,\n            requestParameters?.current,\n            requestParameters?.size,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<QueryUserDelegationHistoryResponse>(\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 Universal Transfer History\n     *\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * Support query within the last 6 months only\n     * If `startTime`and `endTime` not sent, return records of the last 7 days by default\n     *\n     * Weight: 1\n     *\n     * @summary Query User Universal Transfer History(USER_DATA)\n     * @param {QueryUserUniversalTransferHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserUniversalTransferHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/query-user-universal-transfer Binance API Documentation}\n     */\n    public async queryUserUniversalTransferHistory(\n        requestParameters: QueryUserUniversalTransferHistoryRequest\n    ): Promise<RestApiResponse<QueryUserUniversalTransferHistoryResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.queryUserUniversalTransferHistory(\n                requestParameters?.type,\n                requestParameters?.startTime,\n                requestParameters?.endTime,\n                requestParameters?.current,\n                requestParameters?.size,\n                requestParameters?.fromSymbol,\n                requestParameters?.toSymbol,\n                requestParameters?.recvWindow\n            );\n        return sendRequest<QueryUserUniversalTransferHistoryResponse>(\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 Wallet Balance\n     *\n     *\n     * You need to open Permits Universal Transfer permission for the API Key which requests this endpoint.\n     *\n     * Weight: 60\n     *\n     * @summary Query User Wallet Balance (USER_DATA)\n     * @param {QueryUserWalletBalanceRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserWalletBalanceResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Query-User-Wallet-Balance Binance API Documentation}\n     */\n    public async queryUserWalletBalance(\n        requestParameters: QueryUserWalletBalanceRequest = {}\n    ): Promise<RestApiResponse<QueryUserWalletBalanceResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.queryUserWalletBalance(\n            requestParameters?.quoteAsset,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<QueryUserWalletBalanceResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Toggle BNB Burn On Spot Trade And Margin Interest\n     *\n     * \"spotBNBBurn\" and \"interestBNBBurn\" should be sent at least one.\n     *\n     * Weight: 1(IP)\n     *\n     * @summary Toggle BNB Burn On Spot Trade And Margin Interest (USER_DATA)\n     * @param {ToggleBnbBurnOnSpotTradeAndMarginInterestRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Toggle-BNB-Burn-On-Spot-Trade-And-Margin-Interest Binance API Documentation}\n     */\n    public async toggleBnbBurnOnSpotTradeAndMarginInterest(\n        requestParameters: ToggleBnbBurnOnSpotTradeAndMarginInterestRequest = {}\n    ): Promise<RestApiResponse<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.toggleBnbBurnOnSpotTradeAndMarginInterest(\n                requestParameters?.spotBNBBurn,\n                requestParameters?.interestBNBBurn,\n                requestParameters?.recvWindow\n            );\n        return sendRequest<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch trade fee\n     *\n     * Weight: 1\n     *\n     * @summary Trade Fee (USER_DATA)\n     * @param {TradeFeeRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<TradeFeeResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Trade-Fee Binance API Documentation}\n     */\n    public async tradeFee(\n        requestParameters: TradeFeeRequest = {}\n    ): Promise<RestApiResponse<TradeFeeResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.tradeFee(\n            requestParameters?.symbol,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<TradeFeeResponse>(\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 assets, just for positive data.\n     *\n     * If asset is set, then return this asset, otherwise return all assets positive.\n     * If needBtcValuation is set, then return btcValudation.\n     *\n     * Weight: 5\n     *\n     * @summary User Asset (USER_DATA)\n     * @param {UserAssetRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<UserAssetResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/user-assets Binance API Documentation}\n     */\n    public async userAsset(\n        requestParameters: UserAssetRequest = {}\n    ): Promise<RestApiResponse<UserAssetResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.userAsset(\n            requestParameters?.asset,\n            requestParameters?.needBtcValuation,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<UserAssetResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * user universal transfer\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * ENUM of transfer types:\n     * MAIN_UMFUTURE   Spot account transfer to USDⓈ-M Futures account\n     * MAIN_CMFUTURE   Spot account transfer to COIN-M Futures account\n     * MAIN_MARGIN   Spot account transfer to Margin（cross）account\n     * UMFUTURE_MAIN   USDⓈ-M Futures account transfer to Spot account\n     * UMFUTURE_MARGIN   USDⓈ-M Futures account transfer to Margin（cross）account\n     * CMFUTURE_MAIN   COIN-M Futures account transfer to Spot account\n     * CMFUTURE_MARGIN   COIN-M Futures account transfer to Margin(cross) account\n     * MARGIN_MAIN   Margin（cross）account transfer to Spot account\n     * MARGIN_UMFUTURE   Margin（cross）account transfer to USDⓈ-M Futures\n     * MARGIN_CMFUTURE   Margin（cross）account transfer to COIN-M Futures\n     * ISOLATEDMARGIN_MARGIN   Isolated margin account transfer to Margin(cross) account\n     * MARGIN_ISOLATEDMARGIN   Margin(cross) account transfer to Isolated margin account\n     * ISOLATEDMARGIN_ISOLATEDMARGIN   Isolated margin account transfer to Isolated margin account\n     * MAIN_FUNDING   Spot account transfer to Funding account\n     * FUNDING_MAIN   Funding account transfer to Spot account\n     * FUNDING_UMFUTURE   Funding account transfer to UMFUTURE account\n     * UMFUTURE_FUNDING   UMFUTURE account transfer to Funding account\n     * MARGIN_FUNDING   MARGIN account transfer to Funding account\n     * FUNDING_MARGIN   Funding account transfer to Margin account\n     * FUNDING_CMFUTURE   Funding account transfer to CMFUTURE account\n     * CMFUTURE_FUNDING   CMFUTURE account transfer to Funding account\n     * MAIN_OPTION  Spot account transfer to Options account\n     * OPTION_MAIN  Options account transfer to Spot account\n     * UMFUTURE_OPTION USDⓈ-M Futures account transfer to Options account\n     * OPTION_UMFUTURE Options account transfer to USDⓈ-M Futures account\n     * MARGIN_OPTION  Margin（cross）account transfer to Options account\n     * OPTION_MARGIN  Options account transfer to Margin（cross）account\n     * FUNDING_OPTION   Funding account transfer to Options account\n     * OPTION_FUNDING   Options account transfer to Funding account\n     * MAIN_PORTFOLIO_MARGIN  Spot account transfer to Portfolio Margin account\n     * PORTFOLIO_MARGIN_MAIN  Portfolio Margin account transfer to Spot account\n     *\n     * Weight: 900\n     *\n     * @summary User Universal Transfer (USER_DATA)\n     * @param {UserUniversalTransferRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<UserUniversalTransferResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof AssetApi\n     * @see {@link https://developers.binance.com/docs/wallet/asset/User-Universal-Transfer Binance API Documentation}\n     */\n    public async userUniversalTransfer(\n        requestParameters: UserUniversalTransferRequest\n    ): Promise<RestApiResponse<UserUniversalTransferResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.userUniversalTransfer(\n            requestParameters?.type,\n            requestParameters?.asset,\n            requestParameters?.amount,\n            requestParameters?.fromSymbol,\n            requestParameters?.toSymbol,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<UserUniversalTransferResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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    AllCoinsInformationResponse,\n    DepositAddressResponse,\n    DepositHistoryResponse,\n    FetchDepositAddressListWithNetworkResponse,\n    FetchWithdrawAddressListResponse,\n    OneClickArrivalDepositApplyResponse,\n    WithdrawHistoryResponse,\n    WithdrawResponse,\n} from '../types';\n\n/**\n * CapitalApi - axios parameter creator\n */\nconst CapitalApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n    return {\n        /**\n         * Get information of coins (available for deposit and withdraw) for user.\n         *\n         * Weight: 10\n         *\n         * @summary All Coins\\' Information (USER_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        allCoinsInformation: 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: '/sapi/v1/capital/config/getall',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch deposit address with network.\n         *\n         * If `network` is not send, return with default network of the coin.\n         * You can get `network` and `isDefault` in `networkList` in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n         * `amount` needs to be sent if using LIGHTNING network\n         *\n         * Weight: 10\n         *\n         * @summary Deposit Address(supporting network) (USER_DATA)\n         * @param {string} coin\n         * @param {string} [network]\n         * @param {number} [amount]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        depositAddress: async (\n            coin: string,\n            network?: string,\n            amount?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'coin' is not null or undefined\n            assertParamExists('depositAddress', 'coin', coin);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\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: '/sapi/v1/capital/deposit/address',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch deposit history.\n         *\n         *\n         * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n         * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must be less than 90 days.\n         *\n         * Weight: 1\n         *\n         * @summary Deposit History (supporting network) (USER_DATA)\n         * @param {boolean} [includeSource] Default: `false`, return `sourceAddress`field when set to `true`\n         * @param {string} [coin]\n         * @param {number} [status] 0(0:Email Sent, 2:Awaiting Approval 3:Rejected 4:Processing 6:Completed)\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [offset] Default: 0\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {number} [recvWindow]\n         * @param {string} [txId]\n         *\n         * @throws {RequiredError}\n         */\n        depositHistory: async (\n            includeSource?: boolean,\n            coin?: string,\n            status?: number,\n            startTime?: number,\n            endTime?: number,\n            offset?: number,\n            limit?: number,\n            recvWindow?: number,\n            txId?: string\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (includeSource !== undefined && includeSource !== null) {\n                localVarQueryParameter['includeSource'] = includeSource;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (status !== undefined && status !== null) {\n                localVarQueryParameter['status'] = status;\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 (offset !== undefined && offset !== null) {\n                localVarQueryParameter['offset'] = offset;\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            if (txId !== undefined && txId !== null) {\n                localVarQueryParameter['txId'] = txId;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/capital/deposit/hisrec',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch deposit address list with network.\n         *\n         *\n         * If network is not send, return with default network of the coin.\n         * You can get network and isDefault in networkList in the response of `Get /sapi/v1/capital/config/getall`.\n         *\n         * Weight: 10\n         *\n         * @summary Fetch deposit address list with network(USER_DATA)\n         * @param {string} coin\n         * @param {string} [network]\n         *\n         * @throws {RequiredError}\n         */\n        fetchDepositAddressListWithNetwork: async (\n            coin: string,\n            network?: string\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'coin' is not null or undefined\n            assertParamExists('fetchDepositAddressListWithNetwork', 'coin', coin);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/capital/deposit/address/list',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch withdraw address list\n         *\n         * Weight: 10\n         *\n         * @summary Fetch withdraw address list (USER_DATA)\n         *\n         * @throws {RequiredError}\n         */\n        fetchWithdrawAddressList: 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: '/sapi/v1/capital/withdraw/address/list',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Apply deposit credit for expired address (One click arrival)\n         *\n         * Params need to be in the POST body\n         *\n         * Weight: 1\n         *\n         * @summary One click arrival deposit apply (for expired address deposit) (USER_DATA)\n         * @param {number} [depositId] Deposit record Id, priority use\n         * @param {string} [txId]\n         * @param {number} [subAccountId] Sub-accountId of Cloud user\n         * @param {number} [subUserId] Sub-userId of parent user\n         *\n         * @throws {RequiredError}\n         */\n        oneClickArrivalDepositApply: async (\n            depositId?: number,\n            txId?: string,\n            subAccountId?: number,\n            subUserId?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (depositId !== undefined && depositId !== null) {\n                localVarQueryParameter['depositId'] = depositId;\n            }\n\n            if (txId !== undefined && txId !== null) {\n                localVarQueryParameter['txId'] = txId;\n            }\n\n            if (subAccountId !== undefined && subAccountId !== null) {\n                localVarQueryParameter['subAccountId'] = subAccountId;\n            }\n\n            if (subUserId !== undefined && subUserId !== null) {\n                localVarQueryParameter['subUserId'] = subUserId;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/capital/deposit/credit-apply',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Submit a withdraw request.\n         *\n         *\n         * If `network` not send, return with default network of the coin.\n         * You can get `network` and `isDefault` in `networkList` of a coin in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n         *\n         * Weight: 900\n         *\n         * @summary Withdraw(USER_DATA)\n         * @param {string} coin\n         * @param {string} address\n         * @param {number} amount\n         * @param {string} [withdrawOrderId]\n         * @param {string} [network]\n         * @param {string} [addressTag] Secondary address identifier for coins like XRP,XMR etc.\n         * @param {boolean} [transactionFeeFlag] When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n         * @param {string} [name] Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n         * @param {number} [walletType] The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        withdraw: async (\n            coin: string,\n            address: string,\n            amount: number,\n            withdrawOrderId?: string,\n            network?: string,\n            addressTag?: string,\n            transactionFeeFlag?: boolean,\n            name?: string,\n            walletType?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'coin' is not null or undefined\n            assertParamExists('withdraw', 'coin', coin);\n            // verify required parameter 'address' is not null or undefined\n            assertParamExists('withdraw', 'address', address);\n            // verify required parameter 'amount' is not null or undefined\n            assertParamExists('withdraw', 'amount', amount);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (address !== undefined && address !== null) {\n                localVarQueryParameter['address'] = address;\n            }\n\n            if (addressTag !== undefined && addressTag !== null) {\n                localVarQueryParameter['addressTag'] = addressTag;\n            }\n\n            if (amount !== undefined && amount !== null) {\n                localVarQueryParameter['amount'] = amount;\n            }\n\n            if (transactionFeeFlag !== undefined && transactionFeeFlag !== null) {\n                localVarQueryParameter['transactionFeeFlag'] = transactionFeeFlag;\n            }\n\n            if (name !== undefined && name !== null) {\n                localVarQueryParameter['name'] = name;\n            }\n\n            if (walletType !== undefined && walletType !== null) {\n                localVarQueryParameter['walletType'] = walletType;\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: '/sapi/v1/capital/withdraw/apply',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch withdraw history.\n         *\n         * `network` may not be in the response for old withdraw.\n         * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n         * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less than 90 days.\n         * If `withdrawOrderId` is sent, time between `startTime` and `endTime` must be less than 7 days.\n         * If `withdrawOrderId` is sent, `startTime` and `endTime` are not sent, will return last 7 days records by default.\n         * Maximum support `idList` number is 45.\n         *\n         * Weight: 18000\n         * Request limit: 10 requests per second\n         *\n         * @summary Withdraw History (supporting network) (USER_DATA)\n         * @param {string} [coin]\n         * @param {string} [withdrawOrderId]\n         * @param {number} [status] 0(0:Email Sent, 2:Awaiting Approval 3:Rejected 4:Processing 6:Completed)\n         * @param {number} [offset] Default: 0\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {string} [idList] id list returned in the response of POST `/sapi/v1/capital/withdraw/apply`, separated by `,`\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        withdrawHistory: async (\n            coin?: string,\n            withdrawOrderId?: string,\n            status?: number,\n            offset?: number,\n            limit?: number,\n            idList?: string,\n            startTime?: number,\n            endTime?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (status !== undefined && status !== null) {\n                localVarQueryParameter['status'] = status;\n            }\n\n            if (offset !== undefined && offset !== null) {\n                localVarQueryParameter['offset'] = offset;\n            }\n\n            if (limit !== undefined && limit !== null) {\n                localVarQueryParameter['limit'] = limit;\n            }\n\n            if (idList !== undefined && idList !== null) {\n                localVarQueryParameter['idList'] = idList;\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 (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: '/sapi/v1/capital/withdraw/history',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n    };\n};\n\n/**\n * CapitalApi - interface\n * @interface CapitalApi\n */\nexport interface CapitalApiInterface {\n    /**\n     * Get information of coins (available for deposit and withdraw) for user.\n     *\n     * Weight: 10\n     *\n     * @summary All Coins\\' Information (USER_DATA)\n     * @param {AllCoinsInformationRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    allCoinsInformation(\n        requestParameters?: AllCoinsInformationRequest\n    ): Promise<RestApiResponse<AllCoinsInformationResponse>>;\n    /**\n     * Fetch deposit address with network.\n     *\n     * If `network` is not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     * `amount` needs to be sent if using LIGHTNING network\n     *\n     * Weight: 10\n     *\n     * @summary Deposit Address(supporting network) (USER_DATA)\n     * @param {DepositAddressRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    depositAddress(\n        requestParameters: DepositAddressRequest\n    ): Promise<RestApiResponse<DepositAddressResponse>>;\n    /**\n     * Fetch deposit history.\n     *\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must be less than 90 days.\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (supporting network) (USER_DATA)\n     * @param {DepositHistoryRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    depositHistory(\n        requestParameters?: DepositHistoryRequest\n    ): Promise<RestApiResponse<DepositHistoryResponse>>;\n    /**\n     * Fetch deposit address list with network.\n     *\n     *\n     * If network is not send, return with default network of the coin.\n     * You can get network and isDefault in networkList in the response of `Get /sapi/v1/capital/config/getall`.\n     *\n     * Weight: 10\n     *\n     * @summary Fetch deposit address list with network(USER_DATA)\n     * @param {FetchDepositAddressListWithNetworkRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    fetchDepositAddressListWithNetwork(\n        requestParameters: FetchDepositAddressListWithNetworkRequest\n    ): Promise<RestApiResponse<FetchDepositAddressListWithNetworkResponse>>;\n    /**\n     * Fetch withdraw address list\n     *\n     * Weight: 10\n     *\n     * @summary Fetch withdraw address list (USER_DATA)\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    fetchWithdrawAddressList(): Promise<RestApiResponse<FetchWithdrawAddressListResponse>>;\n    /**\n     * Apply deposit credit for expired address (One click arrival)\n     *\n     * Params need to be in the POST body\n     *\n     * Weight: 1\n     *\n     * @summary One click arrival deposit apply (for expired address deposit) (USER_DATA)\n     * @param {OneClickArrivalDepositApplyRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    oneClickArrivalDepositApply(\n        requestParameters?: OneClickArrivalDepositApplyRequest\n    ): Promise<RestApiResponse<OneClickArrivalDepositApplyResponse>>;\n    /**\n     * Submit a withdraw request.\n     *\n     *\n     * If `network` not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     *\n     * Weight: 900\n     *\n     * @summary Withdraw(USER_DATA)\n     * @param {WithdrawRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    withdraw(requestParameters: WithdrawRequest): Promise<RestApiResponse<WithdrawResponse>>;\n    /**\n     * Fetch withdraw history.\n     *\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less than 90 days.\n     * If `withdrawOrderId` is sent, time between `startTime` and `endTime` must be less than 7 days.\n     * If `withdrawOrderId` is sent, `startTime` and `endTime` are not sent, will return last 7 days records by default.\n     * Maximum support `idList` number is 45.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     *\n     * @summary Withdraw History (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApiInterface\n     */\n    withdrawHistory(\n        requestParameters?: WithdrawHistoryRequest\n    ): Promise<RestApiResponse<WithdrawHistoryResponse>>;\n}\n\n/**\n * Request parameters for allCoinsInformation operation in CapitalApi.\n * @interface AllCoinsInformationRequest\n */\nexport interface AllCoinsInformationRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiAllCoinsInformation\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for depositAddress operation in CapitalApi.\n * @interface DepositAddressRequest\n */\nexport interface DepositAddressRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiDepositAddress\n     */\n    readonly coin: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiDepositAddress\n     */\n    readonly network?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiDepositAddress\n     */\n    readonly amount?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiDepositAddress\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for depositHistory operation in CapitalApi.\n * @interface DepositHistoryRequest\n */\nexport interface DepositHistoryRequest {\n    /**\n     * Default: `false`, return `sourceAddress`field when set to `true`\n     * @type {boolean}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly includeSource?: boolean;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly coin?: string;\n\n    /**\n     * 0(0:Email Sent, 2:Awaiting Approval 3:Rejected 4:Processing 6:Completed)\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly status?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly endTime?: number;\n\n    /**\n     * Default: 0\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly offset?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly limit?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly recvWindow?: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiDepositHistory\n     */\n    readonly txId?: string;\n}\n\n/**\n * Request parameters for fetchDepositAddressListWithNetwork operation in CapitalApi.\n * @interface FetchDepositAddressListWithNetworkRequest\n */\nexport interface FetchDepositAddressListWithNetworkRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiFetchDepositAddressListWithNetwork\n     */\n    readonly coin: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiFetchDepositAddressListWithNetwork\n     */\n    readonly network?: string;\n}\n\n/**\n * Request parameters for oneClickArrivalDepositApply operation in CapitalApi.\n * @interface OneClickArrivalDepositApplyRequest\n */\nexport interface OneClickArrivalDepositApplyRequest {\n    /**\n     * Deposit record Id, priority use\n     * @type {number}\n     * @memberof CapitalApiOneClickArrivalDepositApply\n     */\n    readonly depositId?: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiOneClickArrivalDepositApply\n     */\n    readonly txId?: string;\n\n    /**\n     * Sub-accountId of Cloud user\n     * @type {number}\n     * @memberof CapitalApiOneClickArrivalDepositApply\n     */\n    readonly subAccountId?: number;\n\n    /**\n     * Sub-userId of parent user\n     * @type {number}\n     * @memberof CapitalApiOneClickArrivalDepositApply\n     */\n    readonly subUserId?: number;\n}\n\n/**\n * Request parameters for withdraw operation in CapitalApi.\n * @interface WithdrawRequest\n */\nexport interface WithdrawRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly coin: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly address: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly amount: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly withdrawOrderId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly network?: string;\n\n    /**\n     * Secondary address identifier for coins like XRP,XMR etc.\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly addressTag?: string;\n\n    /**\n     * When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n     * @type {boolean}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly transactionFeeFlag?: boolean;\n\n    /**\n     * Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n     * @type {string}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly name?: string;\n\n    /**\n     * The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n     * @type {number}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly walletType?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiWithdraw\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for withdrawHistory operation in CapitalApi.\n * @interface WithdrawHistoryRequest\n */\nexport interface WithdrawHistoryRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly coin?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly withdrawOrderId?: string;\n\n    /**\n     * 0(0:Email Sent, 2:Awaiting Approval 3:Rejected 4:Processing 6:Completed)\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly status?: number;\n\n    /**\n     * Default: 0\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly offset?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly limit?: number;\n\n    /**\n     * id list returned in the response of POST `/sapi/v1/capital/withdraw/apply`, separated by `,`\n     * @type {string}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly idList?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly endTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof CapitalApiWithdrawHistory\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * CapitalApi - object-oriented interface\n * @class CapitalApi\n */\nexport class CapitalApi implements CapitalApiInterface {\n    private readonly configuration: ConfigurationRestAPI;\n    private localVarAxiosParamCreator;\n\n    constructor(configuration: ConfigurationRestAPI) {\n        this.configuration = configuration;\n        this.localVarAxiosParamCreator = CapitalApiAxiosParamCreator(configuration);\n    }\n\n    /**\n     * Get information of coins (available for deposit and withdraw) for user.\n     *\n     * Weight: 10\n     *\n     * @summary All Coins\\' Information (USER_DATA)\n     * @param {AllCoinsInformationRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AllCoinsInformationResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/all-coins-info Binance API Documentation}\n     */\n    public async allCoinsInformation(\n        requestParameters: AllCoinsInformationRequest = {}\n    ): Promise<RestApiResponse<AllCoinsInformationResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.allCoinsInformation(\n            requestParameters?.recvWindow\n        );\n        return sendRequest<AllCoinsInformationResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch deposit address with network.\n     *\n     * If `network` is not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     * `amount` needs to be sent if using LIGHTNING network\n     *\n     * Weight: 10\n     *\n     * @summary Deposit Address(supporting network) (USER_DATA)\n     * @param {DepositAddressRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositAddressResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/deposite-address Binance API Documentation}\n     */\n    public async depositAddress(\n        requestParameters: DepositAddressRequest\n    ): Promise<RestApiResponse<DepositAddressResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.depositAddress(\n            requestParameters?.coin,\n            requestParameters?.network,\n            requestParameters?.amount,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<DepositAddressResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch deposit history.\n     *\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must be less than 90 days.\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (supporting network) (USER_DATA)\n     * @param {DepositHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/deposite-history Binance API Documentation}\n     */\n    public async depositHistory(\n        requestParameters: DepositHistoryRequest = {}\n    ): Promise<RestApiResponse<DepositHistoryResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.depositHistory(\n            requestParameters?.includeSource,\n            requestParameters?.coin,\n            requestParameters?.status,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.offset,\n            requestParameters?.limit,\n            requestParameters?.recvWindow,\n            requestParameters?.txId\n        );\n        return sendRequest<DepositHistoryResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch deposit address list with network.\n     *\n     *\n     * If network is not send, return with default network of the coin.\n     * You can get network and isDefault in networkList in the response of `Get /sapi/v1/capital/config/getall`.\n     *\n     * Weight: 10\n     *\n     * @summary Fetch deposit address list with network(USER_DATA)\n     * @param {FetchDepositAddressListWithNetworkRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<FetchDepositAddressListWithNetworkResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Fetch-deposit-address-list-with-network Binance API Documentation}\n     */\n    public async fetchDepositAddressListWithNetwork(\n        requestParameters: FetchDepositAddressListWithNetworkRequest\n    ): Promise<RestApiResponse<FetchDepositAddressListWithNetworkResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.fetchDepositAddressListWithNetwork(\n                requestParameters?.coin,\n                requestParameters?.network\n            );\n        return sendRequest<FetchDepositAddressListWithNetworkResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch withdraw address list\n     *\n     * Weight: 10\n     *\n     * @summary Fetch withdraw address list (USER_DATA)\n     * @returns {Promise<RestApiResponse<FetchWithdrawAddressListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/fetch-withdraw-address Binance API Documentation}\n     */\n    public async fetchWithdrawAddressList(): Promise<\n        RestApiResponse<FetchWithdrawAddressListResponse>\n        > {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.fetchWithdrawAddressList();\n        return sendRequest<FetchWithdrawAddressListResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Apply deposit credit for expired address (One click arrival)\n     *\n     * Params need to be in the POST body\n     *\n     * Weight: 1\n     *\n     * @summary One click arrival deposit apply (for expired address deposit) (USER_DATA)\n     * @param {OneClickArrivalDepositApplyRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<OneClickArrivalDepositApplyResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/one-click-arrival-deposite-apply Binance API Documentation}\n     */\n    public async oneClickArrivalDepositApply(\n        requestParameters: OneClickArrivalDepositApplyRequest = {}\n    ): Promise<RestApiResponse<OneClickArrivalDepositApplyResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.oneClickArrivalDepositApply(\n            requestParameters?.depositId,\n            requestParameters?.txId,\n            requestParameters?.subAccountId,\n            requestParameters?.subUserId\n        );\n        return sendRequest<OneClickArrivalDepositApplyResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Submit a withdraw request.\n     *\n     *\n     * If `network` not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     *\n     * Weight: 900\n     *\n     * @summary Withdraw(USER_DATA)\n     * @param {WithdrawRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Withdraw Binance API Documentation}\n     */\n    public async withdraw(\n        requestParameters: WithdrawRequest\n    ): Promise<RestApiResponse<WithdrawResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.withdraw(\n            requestParameters?.coin,\n            requestParameters?.address,\n            requestParameters?.amount,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.network,\n            requestParameters?.addressTag,\n            requestParameters?.transactionFeeFlag,\n            requestParameters?.name,\n            requestParameters?.walletType,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<WithdrawResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch withdraw history.\n     *\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less than 90 days.\n     * If `withdrawOrderId` is sent, time between `startTime` and `endTime` must be less than 7 days.\n     * If `withdrawOrderId` is sent, `startTime` and `endTime` are not sent, will return last 7 days records by default.\n     * Maximum support `idList` number is 45.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     *\n     * @summary Withdraw History (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof CapitalApi\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Withdraw-History Binance API Documentation}\n     */\n    public async withdrawHistory(\n        requestParameters: WithdrawHistoryRequest = {}\n    ): Promise<RestApiResponse<WithdrawHistoryResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.withdrawHistory(\n            requestParameters?.coin,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.status,\n            requestParameters?.offset,\n            requestParameters?.limit,\n            requestParameters?.idList,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<WithdrawHistoryResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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 { GetSymbolsDelistScheduleForSpotResponse, SystemStatusResponse } from '../types';\n\n/**\n * OthersApi - axios parameter creator\n */\nconst OthersApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n    return {\n        /**\n         * Get symbols delist schedule for spot\n         *\n         * Weight: 100\n         *\n         * @summary Get symbols delist schedule for spot (MARKET_DATA)\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        getSymbolsDelistScheduleForSpot: 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: '/sapi/v1/spot/delist-schedule',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch system status.\n         *\n         * Weight: 1\n         *\n         * @summary System Status (System)\n         *\n         * @throws {RequiredError}\n         */\n        systemStatus: 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: '/sapi/v1/system/status',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n    };\n};\n\n/**\n * OthersApi - interface\n * @interface OthersApi\n */\nexport interface OthersApiInterface {\n    /**\n     * Get symbols delist schedule for spot\n     *\n     * Weight: 100\n     *\n     * @summary Get symbols delist schedule for spot (MARKET_DATA)\n     * @param {GetSymbolsDelistScheduleForSpotRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof OthersApiInterface\n     */\n    getSymbolsDelistScheduleForSpot(\n        requestParameters?: GetSymbolsDelistScheduleForSpotRequest\n    ): Promise<RestApiResponse<GetSymbolsDelistScheduleForSpotResponse>>;\n    /**\n     * Fetch system status.\n     *\n     * Weight: 1\n     *\n     * @summary System Status (System)\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof OthersApiInterface\n     */\n    systemStatus(): Promise<RestApiResponse<SystemStatusResponse>>;\n}\n\n/**\n * Request parameters for getSymbolsDelistScheduleForSpot operation in OthersApi.\n * @interface GetSymbolsDelistScheduleForSpotRequest\n */\nexport interface GetSymbolsDelistScheduleForSpotRequest {\n    /**\n     *\n     * @type {number}\n     * @memberof OthersApiGetSymbolsDelistScheduleForSpot\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * OthersApi - object-oriented interface\n * @class OthersApi\n */\nexport class OthersApi implements OthersApiInterface {\n    private readonly configuration: ConfigurationRestAPI;\n    private localVarAxiosParamCreator;\n\n    constructor(configuration: ConfigurationRestAPI) {\n        this.configuration = configuration;\n        this.localVarAxiosParamCreator = OthersApiAxiosParamCreator(configuration);\n    }\n\n    /**\n     * Get symbols delist schedule for spot\n     *\n     * Weight: 100\n     *\n     * @summary Get symbols delist schedule for spot (MARKET_DATA)\n     * @param {GetSymbolsDelistScheduleForSpotRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetSymbolsDelistScheduleForSpotResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof OthersApi\n     * @see {@link https://developers.binance.com/docs/wallet/others/delist-schedule Binance API Documentation}\n     */\n    public async getSymbolsDelistScheduleForSpot(\n        requestParameters: GetSymbolsDelistScheduleForSpotRequest = {}\n    ): Promise<RestApiResponse<GetSymbolsDelistScheduleForSpotResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.getSymbolsDelistScheduleForSpot(\n                requestParameters?.recvWindow\n            );\n        return sendRequest<GetSymbolsDelistScheduleForSpotResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: false }\n        );\n    }\n\n    /**\n     * Fetch system status.\n     *\n     * Weight: 1\n     *\n     * @summary System Status (System)\n     * @returns {Promise<RestApiResponse<SystemStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof OthersApi\n     * @see {@link https://developers.binance.com/docs/wallet/others/System-Status Binance API Documentation}\n     */\n    public async systemStatus(): Promise<RestApiResponse<SystemStatusResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.systemStatus();\n        return sendRequest<SystemStatusResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: false }\n        );\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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    BrokerWithdrawResponse,\n    DepositHistoryTravelRuleResponse,\n    OnboardedVaspListResponse,\n    SubmitDepositQuestionnaireResponse,\n    SubmitDepositQuestionnaireTravelRuleResponse,\n    WithdrawHistoryV1Response,\n    WithdrawHistoryV2Response,\n    WithdrawTravelRuleResponse,\n} from '../types';\n\n/**\n * TravelRuleApi - axios parameter creator\n */\nconst TravelRuleApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n    return {\n        /**\n         * Submit a withdrawal request for brokers of local entities that required travel rule.\n         *\n         * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n         * You can get `network` in `networkList` of a coin in the response\n         * Questionnaire is different for each local entity, please refer to\n         * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n         *\n         * Weight: 600\n         *\n         * @summary Broker Withdraw (for brokers of local entities that require travel rule) (USER_DATA)\n         * @param {string} subAccountId External user ID.\n         * @param {string} address\n         * @param {string} coin\n         * @param {number} amount\n         * @param {string} withdrawOrderId withdrawID defined by the client (i.e. client's internal withdrawID)\n         * @param {string} questionnaire JSON format questionnaire answers.\n         * @param {string} originatorPii JSON format originator Pii, see StandardPii section below\n         * @param {string} signature Must be the last parameter.\n         * @param {string} [addressTag] Secondary address identifier for coins like XRP,XMR etc.\n         * @param {string} [network]\n         * @param {string} [addressName] Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n         * @param {boolean} [transactionFeeFlag] When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n         * @param {number} [walletType] The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n         *\n         * @throws {RequiredError}\n         */\n        brokerWithdraw: async (\n            subAccountId: string,\n            address: string,\n            coin: string,\n            amount: number,\n            withdrawOrderId: string,\n            questionnaire: string,\n            originatorPii: string,\n            signature: string,\n            addressTag?: string,\n            network?: string,\n            addressName?: string,\n            transactionFeeFlag?: boolean,\n            walletType?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'subAccountId' is not null or undefined\n            assertParamExists('brokerWithdraw', 'subAccountId', subAccountId);\n            // verify required parameter 'address' is not null or undefined\n            assertParamExists('brokerWithdraw', 'address', address);\n            // verify required parameter 'coin' is not null or undefined\n            assertParamExists('brokerWithdraw', 'coin', coin);\n            // verify required parameter 'amount' is not null or undefined\n            assertParamExists('brokerWithdraw', 'amount', amount);\n            // verify required parameter 'withdrawOrderId' is not null or undefined\n            assertParamExists('brokerWithdraw', 'withdrawOrderId', withdrawOrderId);\n            // verify required parameter 'questionnaire' is not null or undefined\n            assertParamExists('brokerWithdraw', 'questionnaire', questionnaire);\n            // verify required parameter 'originatorPii' is not null or undefined\n            assertParamExists('brokerWithdraw', 'originatorPii', originatorPii);\n            // verify required parameter 'signature' is not null or undefined\n            assertParamExists('brokerWithdraw', 'signature', signature);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (subAccountId !== undefined && subAccountId !== null) {\n                localVarQueryParameter['subAccountId'] = subAccountId;\n            }\n\n            if (address !== undefined && address !== null) {\n                localVarQueryParameter['address'] = address;\n            }\n\n            if (addressTag !== undefined && addressTag !== null) {\n                localVarQueryParameter['addressTag'] = addressTag;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (addressName !== undefined && addressName !== null) {\n                localVarQueryParameter['addressName'] = addressName;\n            }\n\n            if (amount !== undefined && amount !== null) {\n                localVarQueryParameter['amount'] = amount;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (transactionFeeFlag !== undefined && transactionFeeFlag !== null) {\n                localVarQueryParameter['transactionFeeFlag'] = transactionFeeFlag;\n            }\n\n            if (walletType !== undefined && walletType !== null) {\n                localVarQueryParameter['walletType'] = walletType;\n            }\n\n            if (questionnaire !== undefined && questionnaire !== null) {\n                localVarQueryParameter['questionnaire'] = questionnaire;\n            }\n\n            if (originatorPii !== undefined && originatorPii !== null) {\n                localVarQueryParameter['originatorPii'] = originatorPii;\n            }\n\n            if (signature !== undefined && signature !== null) {\n                localVarQueryParameter['signature'] = signature;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/localentity/broker/withdraw/apply',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch deposit history for local entities that required travel rule.\n         *\n         * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n         * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must\n         *\n         * Weight: 1\n         *\n         * @summary Deposit History (for local entities that required travel rule) (supporting network) (USER_DATA)\n         * @param {string} [trId] Comma(,) separated list of travel rule record Ids.\n         * @param {string} [txId]\n         * @param {string} [tranId] Comma(,) separated list of wallet tran Ids.\n         * @param {string} [network]\n         * @param {string} [coin]\n         * @param {number} [travelRuleStatus] 0:Completed,1:Pending,2:Failed\n         * @param {boolean} [pendingQuestionnaire] true: Only return records that pending deposit questionnaire. false/not provided: return all records.\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [offset] Default: 0\n         * @param {number} [limit] min 7, max 30, default 7\n         *\n         * @throws {RequiredError}\n         */\n        depositHistoryTravelRule: async (\n            trId?: string,\n            txId?: string,\n            tranId?: string,\n            network?: string,\n            coin?: string,\n            travelRuleStatus?: number,\n            pendingQuestionnaire?: boolean,\n            startTime?: number,\n            endTime?: number,\n            offset?: number,\n            limit?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (trId !== undefined && trId !== null) {\n                localVarQueryParameter['trId'] = trId;\n            }\n\n            if (txId !== undefined && txId !== null) {\n                localVarQueryParameter['txId'] = txId;\n            }\n\n            if (tranId !== undefined && tranId !== null) {\n                localVarQueryParameter['tranId'] = tranId;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (travelRuleStatus !== undefined && travelRuleStatus !== null) {\n                localVarQueryParameter['travelRuleStatus'] = travelRuleStatus;\n            }\n\n            if (pendingQuestionnaire !== undefined && pendingQuestionnaire !== null) {\n                localVarQueryParameter['pendingQuestionnaire'] = pendingQuestionnaire;\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 (offset !== undefined && offset !== null) {\n                localVarQueryParameter['offset'] = offset;\n            }\n\n            if (limit !== undefined && limit !== null) {\n                localVarQueryParameter['limit'] = limit;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/localentity/deposit/history',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch the onboarded VASP list for local entities that required travel rule.\n         *\n         * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         *\n         * Weight: 18000\n         * Request limit: 10 requests per second\n         * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         * limit is 180000/second. Response from the endpoint contains header\n         * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n         *\n         * @summary Onboarded VASP list (for local entities that require travel rule) (supporting network) (USER_DATA)\n         *\n         * @throws {RequiredError}\n         */\n        onboardedVaspList: 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: '/sapi/v1/localentity/vasp',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Submit questionnaire for brokers of local entities that require travel rule.\n         * The questionnaire is only applies to transactions from un-hosted wallets or VASPs that are not\n         * yet onboarded with GTR.\n         *\n         * Questionnaire is different for each local entity, please refer\n         * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n         *\n         * Weight: 600\n         *\n         * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n         * @param {string} subAccountId External user ID.\n         * @param {string} depositId Wallet deposit ID.\n         * @param {string} questionnaire JSON format questionnaire answers.\n         * @param {string} beneficiaryPii JSON format beneficiary Pii.\n         * @param {string} signature Must be the last parameter.\n         * @param {string} [network]\n         * @param {string} [coin]\n         * @param {number} [amount]\n         * @param {string} [address]\n         * @param {string} [addressTag] Secondary address identifier for coins like XRP,XMR etc.\n         *\n         * @throws {RequiredError}\n         */\n        submitDepositQuestionnaire: async (\n            subAccountId: string,\n            depositId: string,\n            questionnaire: string,\n            beneficiaryPii: string,\n            signature: string,\n            network?: string,\n            coin?: string,\n            amount?: number,\n            address?: string,\n            addressTag?: string\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'subAccountId' is not null or undefined\n            assertParamExists('submitDepositQuestionnaire', 'subAccountId', subAccountId);\n            // verify required parameter 'depositId' is not null or undefined\n            assertParamExists('submitDepositQuestionnaire', 'depositId', depositId);\n            // verify required parameter 'questionnaire' is not null or undefined\n            assertParamExists('submitDepositQuestionnaire', 'questionnaire', questionnaire);\n            // verify required parameter 'beneficiaryPii' is not null or undefined\n            assertParamExists('submitDepositQuestionnaire', 'beneficiaryPii', beneficiaryPii);\n            // verify required parameter 'signature' is not null or undefined\n            assertParamExists('submitDepositQuestionnaire', 'signature', signature);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (subAccountId !== undefined && subAccountId !== null) {\n                localVarQueryParameter['subAccountId'] = subAccountId;\n            }\n\n            if (depositId !== undefined && depositId !== null) {\n                localVarQueryParameter['depositId'] = depositId;\n            }\n\n            if (questionnaire !== undefined && questionnaire !== null) {\n                localVarQueryParameter['questionnaire'] = questionnaire;\n            }\n\n            if (beneficiaryPii !== undefined && beneficiaryPii !== null) {\n                localVarQueryParameter['beneficiaryPii'] = beneficiaryPii;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (amount !== undefined && amount !== null) {\n                localVarQueryParameter['amount'] = amount;\n            }\n\n            if (address !== undefined && address !== null) {\n                localVarQueryParameter['address'] = address;\n            }\n\n            if (addressTag !== undefined && addressTag !== null) {\n                localVarQueryParameter['addressTag'] = addressTag;\n            }\n\n            if (signature !== undefined && signature !== null) {\n                localVarQueryParameter['signature'] = signature;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/localentity/broker/deposit/provide-info',\n                method: 'PUT',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Submit questionnaire for local entities that require travel rule.\n         * The questionnaire is only applies to transactions from unhosted wallets or VASPs that are not\n         * yet onboarded with GTR.\n         *\n         * Questionnaire is different for each local entity, please refer\n         * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n         *\n         * Weight: 600\n         *\n         * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n         * @param {number} tranId Wallet tran ID\n         * @param {string} questionnaire JSON format questionnaire answers.\n         *\n         * @throws {RequiredError}\n         */\n        submitDepositQuestionnaireTravelRule: async (\n            tranId: number,\n            questionnaire: string\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'tranId' is not null or undefined\n            assertParamExists('submitDepositQuestionnaireTravelRule', 'tranId', tranId);\n            // verify required parameter 'questionnaire' is not null or undefined\n            assertParamExists(\n                'submitDepositQuestionnaireTravelRule',\n                'questionnaire',\n                questionnaire\n            );\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (tranId !== undefined && tranId !== null) {\n                localVarQueryParameter['tranId'] = tranId;\n            }\n\n            if (questionnaire !== undefined && questionnaire !== null) {\n                localVarQueryParameter['questionnaire'] = questionnaire;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/localentity/deposit/provide-info',\n                method: 'PUT',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch withdraw history for local entities that required travel rule.\n         *\n         * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         * `network` may not be in the response for old withdraw.\n         * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n         * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n         *\n         * Weight: 18000\n         * Request limit: 10 requests per second\n         * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         * limit is 180000/second. Response from the endpoint contains header\n         * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n         *\n         * @summary Withdraw History (for local entities that require travel rule) (supporting network) (USER_DATA)\n         * @param {string} [trId] Comma(,) separated list of travel rule record Ids.\n         * @param {string} [txId]\n         * @param {string} [withdrawOrderId]\n         * @param {string} [network]\n         * @param {string} [coin]\n         * @param {number} [travelRuleStatus] 0:Completed,1:Pending,2:Failed\n         * @param {number} [offset] Default: 0\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        withdrawHistoryV1: async (\n            trId?: string,\n            txId?: string,\n            withdrawOrderId?: string,\n            network?: string,\n            coin?: string,\n            travelRuleStatus?: number,\n            offset?: number,\n            limit?: number,\n            startTime?: number,\n            endTime?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (trId !== undefined && trId !== null) {\n                localVarQueryParameter['trId'] = trId;\n            }\n\n            if (txId !== undefined && txId !== null) {\n                localVarQueryParameter['txId'] = txId;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (travelRuleStatus !== undefined && travelRuleStatus !== null) {\n                localVarQueryParameter['travelRuleStatus'] = travelRuleStatus;\n            }\n\n            if (offset !== undefined && offset !== null) {\n                localVarQueryParameter['offset'] = offset;\n            }\n\n            if (limit !== undefined && limit !== null) {\n                localVarQueryParameter['limit'] = limit;\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 (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: '/sapi/v1/localentity/withdraw/history',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Fetch withdraw history for local entities that required travel rule.\n         *\n         * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         * `network` may not be in the response for old withdraw.\n         * Withdrawal made through /sapi/v1/capital/withdraw/apply may not be in the response.\n         * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n         * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n         * If withdrawOrderId is sent, time between startTime and endTime must be less than 7 days.\n         * If withdrawOrderId is sent, startTime and endTime are not sent, will return last 7 days records by default.\n         * Maximum support trId,txId number is 45.\n         * WithdrawOrderId only support 1.\n         * If responsible does not include withdrawalStatus, please input trId or txId retrieve the data.\n         *\n         * Weight: 18000\n         * Request limit: 10 requests per second\n         * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n         * limit is 180000/second. Response from the endpoint contains header\n         * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n         *\n         * @summary Withdraw History V2 (for local entities that require travel rule) (supporting network) (USER_DATA)\n         * @param {string} [trId] Comma(,) separated list of travel rule record Ids.\n         * @param {string} [txId]\n         * @param {string} [withdrawOrderId]\n         * @param {string} [network]\n         * @param {string} [coin]\n         * @param {number} [travelRuleStatus] 0:Completed,1:Pending,2:Failed\n         * @param {number} [offset] Default: 0\n         * @param {number} [limit] min 7, max 30, default 7\n         * @param {number} [startTime]\n         * @param {number} [endTime]\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        withdrawHistoryV2: async (\n            trId?: string,\n            txId?: string,\n            withdrawOrderId?: string,\n            network?: string,\n            coin?: string,\n            travelRuleStatus?: number,\n            offset?: number,\n            limit?: number,\n            startTime?: number,\n            endTime?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (trId !== undefined && trId !== null) {\n                localVarQueryParameter['trId'] = trId;\n            }\n\n            if (txId !== undefined && txId !== null) {\n                localVarQueryParameter['txId'] = txId;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (travelRuleStatus !== undefined && travelRuleStatus !== null) {\n                localVarQueryParameter['travelRuleStatus'] = travelRuleStatus;\n            }\n\n            if (offset !== undefined && offset !== null) {\n                localVarQueryParameter['offset'] = offset;\n            }\n\n            if (limit !== undefined && limit !== null) {\n                localVarQueryParameter['limit'] = limit;\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 (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: '/sapi/v2/localentity/withdraw/history',\n                method: 'GET',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n        /**\n         * Submit a withdrawal request for local entities that required travel rule.\n         *\n         * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n         * You can get `network` and `isDefault` in `networkList` of a coin in the response\n         * Questionnaire is different for each local entity, please refer to\n         * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n         *\n         * Weight: 600\n         *\n         * @summary Withdraw (for local entities that require travel rule) (USER_DATA)\n         * @param {string} coin\n         * @param {string} address\n         * @param {number} amount\n         * @param {string} questionnaire JSON format questionnaire answers.\n         * @param {string} [withdrawOrderId]\n         * @param {string} [network]\n         * @param {string} [addressTag] Secondary address identifier for coins like XRP,XMR etc.\n         * @param {boolean} [transactionFeeFlag] When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n         * @param {string} [name] Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n         * @param {number} [walletType] The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n         * @param {number} [recvWindow]\n         *\n         * @throws {RequiredError}\n         */\n        withdrawTravelRule: async (\n            coin: string,\n            address: string,\n            amount: number,\n            questionnaire: string,\n            withdrawOrderId?: string,\n            network?: string,\n            addressTag?: string,\n            transactionFeeFlag?: boolean,\n            name?: string,\n            walletType?: number,\n            recvWindow?: number\n        ): Promise<RequestArgs> => {\n            // verify required parameter 'coin' is not null or undefined\n            assertParamExists('withdrawTravelRule', 'coin', coin);\n            // verify required parameter 'address' is not null or undefined\n            assertParamExists('withdrawTravelRule', 'address', address);\n            // verify required parameter 'amount' is not null or undefined\n            assertParamExists('withdrawTravelRule', 'amount', amount);\n            // verify required parameter 'questionnaire' is not null or undefined\n            assertParamExists('withdrawTravelRule', 'questionnaire', questionnaire);\n\n            const localVarQueryParameter: Record<string, unknown> = {};\n\n            if (coin !== undefined && coin !== null) {\n                localVarQueryParameter['coin'] = coin;\n            }\n\n            if (withdrawOrderId !== undefined && withdrawOrderId !== null) {\n                localVarQueryParameter['withdrawOrderId'] = withdrawOrderId;\n            }\n\n            if (network !== undefined && network !== null) {\n                localVarQueryParameter['network'] = network;\n            }\n\n            if (address !== undefined && address !== null) {\n                localVarQueryParameter['address'] = address;\n            }\n\n            if (addressTag !== undefined && addressTag !== null) {\n                localVarQueryParameter['addressTag'] = addressTag;\n            }\n\n            if (amount !== undefined && amount !== null) {\n                localVarQueryParameter['amount'] = amount;\n            }\n\n            if (transactionFeeFlag !== undefined && transactionFeeFlag !== null) {\n                localVarQueryParameter['transactionFeeFlag'] = transactionFeeFlag;\n            }\n\n            if (name !== undefined && name !== null) {\n                localVarQueryParameter['name'] = name;\n            }\n\n            if (walletType !== undefined && walletType !== null) {\n                localVarQueryParameter['walletType'] = walletType;\n            }\n\n            if (recvWindow !== undefined && recvWindow !== null) {\n                localVarQueryParameter['recvWindow'] = recvWindow;\n            }\n\n            if (questionnaire !== undefined && questionnaire !== null) {\n                localVarQueryParameter['questionnaire'] = questionnaire;\n            }\n\n            let _timeUnit: TimeUnit | undefined;\n            if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n            return {\n                endpoint: '/sapi/v1/localentity/withdraw/apply',\n                method: 'POST',\n                params: localVarQueryParameter,\n                timeUnit: _timeUnit,\n            };\n        },\n    };\n};\n\n/**\n * TravelRuleApi - interface\n * @interface TravelRuleApi\n */\nexport interface TravelRuleApiInterface {\n    /**\n     * Submit a withdrawal request for brokers of local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Broker Withdraw (for brokers of local entities that require travel rule) (USER_DATA)\n     * @param {BrokerWithdrawRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    brokerWithdraw(\n        requestParameters: BrokerWithdrawRequest\n    ): Promise<RestApiResponse<BrokerWithdrawResponse>>;\n    /**\n     * Fetch deposit history for local entities that required travel rule.\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (for local entities that required travel rule) (supporting network) (USER_DATA)\n     * @param {DepositHistoryTravelRuleRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    depositHistoryTravelRule(\n        requestParameters?: DepositHistoryTravelRuleRequest\n    ): Promise<RestApiResponse<DepositHistoryTravelRuleResponse>>;\n    /**\n     * Fetch the onboarded VASP list for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Onboarded VASP list (for local entities that require travel rule) (supporting network) (USER_DATA)\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    onboardedVaspList(): Promise<RestApiResponse<OnboardedVaspListResponse>>;\n    /**\n     * Submit questionnaire for brokers of local entities that require travel rule.\n     * The questionnaire is only applies to transactions from un-hosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    submitDepositQuestionnaire(\n        requestParameters: SubmitDepositQuestionnaireRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireResponse>>;\n    /**\n     * Submit questionnaire for local entities that require travel rule.\n     * The questionnaire is only applies to transactions from unhosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireTravelRuleRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    submitDepositQuestionnaireTravelRule(\n        requestParameters: SubmitDepositQuestionnaireTravelRuleRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireTravelRuleResponse>>;\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV1Request} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    withdrawHistoryV1(\n        requestParameters?: WithdrawHistoryV1Request\n    ): Promise<RestApiResponse<WithdrawHistoryV1Response>>;\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Withdrawal made through /sapi/v1/capital/withdraw/apply may not be in the response.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     * If withdrawOrderId is sent, time between startTime and endTime must be less than 7 days.\n     * If withdrawOrderId is sent, startTime and endTime are not sent, will return last 7 days records by default.\n     * Maximum support trId,txId number is 45.\n     * WithdrawOrderId only support 1.\n     * If responsible does not include withdrawalStatus, please input trId or txId retrieve the data.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History V2 (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV2Request} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    withdrawHistoryV2(\n        requestParameters?: WithdrawHistoryV2Request\n    ): Promise<RestApiResponse<WithdrawHistoryV2Response>>;\n    /**\n     * Submit a withdrawal request for local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Withdraw (for local entities that require travel rule) (USER_DATA)\n     * @param {WithdrawTravelRuleRequest} requestParameters Request parameters.\n     *\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApiInterface\n     */\n    withdrawTravelRule(\n        requestParameters: WithdrawTravelRuleRequest\n    ): Promise<RestApiResponse<WithdrawTravelRuleResponse>>;\n}\n\n/**\n * Request parameters for brokerWithdraw operation in TravelRuleApi.\n * @interface BrokerWithdrawRequest\n */\nexport interface BrokerWithdrawRequest {\n    /**\n     * External user ID.\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly subAccountId: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly address: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly coin: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly amount: number;\n\n    /**\n     * withdrawID defined by the client (i.e. client's internal withdrawID)\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly withdrawOrderId: string;\n\n    /**\n     * JSON format questionnaire answers.\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly questionnaire: string;\n\n    /**\n     * JSON format originator Pii, see StandardPii section below\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly originatorPii: string;\n\n    /**\n     * Must be the last parameter.\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly signature: string;\n\n    /**\n     * Secondary address identifier for coins like XRP,XMR etc.\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly addressTag?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly network?: string;\n\n    /**\n     * Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n     * @type {string}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly addressName?: string;\n\n    /**\n     * When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n     * @type {boolean}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly transactionFeeFlag?: boolean;\n\n    /**\n     * The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n     * @type {number}\n     * @memberof TravelRuleApiBrokerWithdraw\n     */\n    readonly walletType?: number;\n}\n\n/**\n * Request parameters for depositHistoryTravelRule operation in TravelRuleApi.\n * @interface DepositHistoryTravelRuleRequest\n */\nexport interface DepositHistoryTravelRuleRequest {\n    /**\n     * Comma(,) separated list of travel rule record Ids.\n     * @type {string}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly trId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly txId?: string;\n\n    /**\n     * Comma(,) separated list of wallet tran Ids.\n     * @type {string}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly tranId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly network?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly coin?: string;\n\n    /**\n     * 0:Completed,1:Pending,2:Failed\n     * @type {number}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly travelRuleStatus?: number;\n\n    /**\n     * true: Only return records that pending deposit questionnaire. false/not provided: return all records.\n     * @type {boolean}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly pendingQuestionnaire?: boolean;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly endTime?: number;\n\n    /**\n     * Default: 0\n     * @type {number}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly offset?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof TravelRuleApiDepositHistoryTravelRule\n     */\n    readonly limit?: number;\n}\n\n/**\n * Request parameters for submitDepositQuestionnaire operation in TravelRuleApi.\n * @interface SubmitDepositQuestionnaireRequest\n */\nexport interface SubmitDepositQuestionnaireRequest {\n    /**\n     * External user ID.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly subAccountId: string;\n\n    /**\n     * Wallet deposit ID.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly depositId: string;\n\n    /**\n     * JSON format questionnaire answers.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly questionnaire: string;\n\n    /**\n     * JSON format beneficiary Pii.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly beneficiaryPii: string;\n\n    /**\n     * Must be the last parameter.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly signature: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly network?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly coin?: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly amount?: number;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly address?: string;\n\n    /**\n     * Secondary address identifier for coins like XRP,XMR etc.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaire\n     */\n    readonly addressTag?: string;\n}\n\n/**\n * Request parameters for submitDepositQuestionnaireTravelRule operation in TravelRuleApi.\n * @interface SubmitDepositQuestionnaireTravelRuleRequest\n */\nexport interface SubmitDepositQuestionnaireTravelRuleRequest {\n    /**\n     * Wallet tran ID\n     * @type {number}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaireTravelRule\n     */\n    readonly tranId: number;\n\n    /**\n     * JSON format questionnaire answers.\n     * @type {string}\n     * @memberof TravelRuleApiSubmitDepositQuestionnaireTravelRule\n     */\n    readonly questionnaire: string;\n}\n\n/**\n * Request parameters for withdrawHistoryV1 operation in TravelRuleApi.\n * @interface WithdrawHistoryV1Request\n */\nexport interface WithdrawHistoryV1Request {\n    /**\n     * Comma(,) separated list of travel rule record Ids.\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly trId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly txId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly withdrawOrderId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly network?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly coin?: string;\n\n    /**\n     * 0:Completed,1:Pending,2:Failed\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly travelRuleStatus?: number;\n\n    /**\n     * Default: 0\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly offset?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly limit?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly endTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV1\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for withdrawHistoryV2 operation in TravelRuleApi.\n * @interface WithdrawHistoryV2Request\n */\nexport interface WithdrawHistoryV2Request {\n    /**\n     * Comma(,) separated list of travel rule record Ids.\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly trId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly txId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly withdrawOrderId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly network?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly coin?: string;\n\n    /**\n     * 0:Completed,1:Pending,2:Failed\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly travelRuleStatus?: number;\n\n    /**\n     * Default: 0\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly offset?: number;\n\n    /**\n     * min 7, max 30, default 7\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly limit?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly startTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly endTime?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawHistoryV2\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for withdrawTravelRule operation in TravelRuleApi.\n * @interface WithdrawTravelRuleRequest\n */\nexport interface WithdrawTravelRuleRequest {\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly coin: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly address: string;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly amount: number;\n\n    /**\n     * JSON format questionnaire answers.\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly questionnaire: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly withdrawOrderId?: string;\n\n    /**\n     *\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly network?: string;\n\n    /**\n     * Secondary address identifier for coins like XRP,XMR etc.\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly addressTag?: string;\n\n    /**\n     * When making internal transfer, `true` for returning the fee to the destination account; `false` for returning the fee back to the departure account. Default `false`.\n     * @type {boolean}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly transactionFeeFlag?: boolean;\n\n    /**\n     * Description of the address. Address book cap is 200, space in name should be encoded into `%20`\n     * @type {string}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly name?: string;\n\n    /**\n     * The wallet type for withdraw，0-spot wallet ，1-funding wallet. Default walletType is the current \"selected wallet\" under wallet->Fiat and Spot/Funding->Deposit\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly walletType?: number;\n\n    /**\n     *\n     * @type {number}\n     * @memberof TravelRuleApiWithdrawTravelRule\n     */\n    readonly recvWindow?: number;\n}\n\n/**\n * TravelRuleApi - object-oriented interface\n * @class TravelRuleApi\n */\nexport class TravelRuleApi implements TravelRuleApiInterface {\n    private readonly configuration: ConfigurationRestAPI;\n    private localVarAxiosParamCreator;\n\n    constructor(configuration: ConfigurationRestAPI) {\n        this.configuration = configuration;\n        this.localVarAxiosParamCreator = TravelRuleApiAxiosParamCreator(configuration);\n    }\n\n    /**\n     * Submit a withdrawal request for brokers of local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Broker Withdraw (for brokers of local entities that require travel rule) (USER_DATA)\n     * @param {BrokerWithdrawRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<BrokerWithdrawResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Broker-Withdraw Binance API Documentation}\n     */\n    public async brokerWithdraw(\n        requestParameters: BrokerWithdrawRequest\n    ): Promise<RestApiResponse<BrokerWithdrawResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.brokerWithdraw(\n            requestParameters?.subAccountId,\n            requestParameters?.address,\n            requestParameters?.coin,\n            requestParameters?.amount,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.questionnaire,\n            requestParameters?.originatorPii,\n            requestParameters?.signature,\n            requestParameters?.addressTag,\n            requestParameters?.network,\n            requestParameters?.addressName,\n            requestParameters?.transactionFeeFlag,\n            requestParameters?.walletType\n        );\n        return sendRequest<BrokerWithdrawResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch deposit history for local entities that required travel rule.\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (for local entities that required travel rule) (supporting network) (USER_DATA)\n     * @param {DepositHistoryTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositHistoryTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Deposit-History Binance API Documentation}\n     */\n    public async depositHistoryTravelRule(\n        requestParameters: DepositHistoryTravelRuleRequest = {}\n    ): Promise<RestApiResponse<DepositHistoryTravelRuleResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.depositHistoryTravelRule(\n            requestParameters?.trId,\n            requestParameters?.txId,\n            requestParameters?.tranId,\n            requestParameters?.network,\n            requestParameters?.coin,\n            requestParameters?.travelRuleStatus,\n            requestParameters?.pendingQuestionnaire,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.offset,\n            requestParameters?.limit\n        );\n        return sendRequest<DepositHistoryTravelRuleResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch the onboarded VASP list for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Onboarded VASP list (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @returns {Promise<RestApiResponse<OnboardedVaspListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Onboarded-VASP-list Binance API Documentation}\n     */\n    public async onboardedVaspList(): Promise<RestApiResponse<OnboardedVaspListResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.onboardedVaspList();\n        return sendRequest<OnboardedVaspListResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Submit questionnaire for brokers of local entities that require travel rule.\n     * The questionnaire is only applies to transactions from un-hosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<SubmitDepositQuestionnaireResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/deposit-provide-info Binance API Documentation}\n     */\n    public async submitDepositQuestionnaire(\n        requestParameters: SubmitDepositQuestionnaireRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.submitDepositQuestionnaire(\n            requestParameters?.subAccountId,\n            requestParameters?.depositId,\n            requestParameters?.questionnaire,\n            requestParameters?.beneficiaryPii,\n            requestParameters?.signature,\n            requestParameters?.network,\n            requestParameters?.coin,\n            requestParameters?.amount,\n            requestParameters?.address,\n            requestParameters?.addressTag\n        );\n        return sendRequest<SubmitDepositQuestionnaireResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Submit questionnaire for local entities that require travel rule.\n     * The questionnaire is only applies to transactions from unhosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<SubmitDepositQuestionnaireTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/deposit-provide-info Binance API Documentation}\n     */\n    public async submitDepositQuestionnaireTravelRule(\n        requestParameters: SubmitDepositQuestionnaireTravelRuleRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireTravelRuleResponse>> {\n        const localVarAxiosArgs =\n            await this.localVarAxiosParamCreator.submitDepositQuestionnaireTravelRule(\n                requestParameters?.tranId,\n                requestParameters?.questionnaire\n            );\n        return sendRequest<SubmitDepositQuestionnaireTravelRuleResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV1Request} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryV1Response>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw-History Binance API Documentation}\n     */\n    public async withdrawHistoryV1(\n        requestParameters: WithdrawHistoryV1Request = {}\n    ): Promise<RestApiResponse<WithdrawHistoryV1Response>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.withdrawHistoryV1(\n            requestParameters?.trId,\n            requestParameters?.txId,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.network,\n            requestParameters?.coin,\n            requestParameters?.travelRuleStatus,\n            requestParameters?.offset,\n            requestParameters?.limit,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<WithdrawHistoryV1Response>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Withdrawal made through /sapi/v1/capital/withdraw/apply may not be in the response.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     * If withdrawOrderId is sent, time between startTime and endTime must be less than 7 days.\n     * If withdrawOrderId is sent, startTime and endTime are not sent, will return last 7 days records by default.\n     * Maximum support trId,txId number is 45.\n     * WithdrawOrderId only support 1.\n     * If responsible does not include withdrawalStatus, please input trId or txId retrieve the data.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History V2 (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV2Request} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryV2Response>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw-History-V2 Binance API Documentation}\n     */\n    public async withdrawHistoryV2(\n        requestParameters: WithdrawHistoryV2Request = {}\n    ): Promise<RestApiResponse<WithdrawHistoryV2Response>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.withdrawHistoryV2(\n            requestParameters?.trId,\n            requestParameters?.txId,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.network,\n            requestParameters?.coin,\n            requestParameters?.travelRuleStatus,\n            requestParameters?.offset,\n            requestParameters?.limit,\n            requestParameters?.startTime,\n            requestParameters?.endTime,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<WithdrawHistoryV2Response>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n\n    /**\n     * Submit a withdrawal request for local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Withdraw (for local entities that require travel rule) (USER_DATA)\n     * @param {WithdrawTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @memberof TravelRuleApi\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw Binance API Documentation}\n     */\n    public async withdrawTravelRule(\n        requestParameters: WithdrawTravelRuleRequest\n    ): Promise<RestApiResponse<WithdrawTravelRuleResponse>> {\n        const localVarAxiosArgs = await this.localVarAxiosParamCreator.withdrawTravelRule(\n            requestParameters?.coin,\n            requestParameters?.address,\n            requestParameters?.amount,\n            requestParameters?.questionnaire,\n            requestParameters?.withdrawOrderId,\n            requestParameters?.network,\n            requestParameters?.addressTag,\n            requestParameters?.transactionFeeFlag,\n            requestParameters?.name,\n            requestParameters?.walletType,\n            requestParameters?.recvWindow\n        );\n        return sendRequest<WithdrawTravelRuleResponse>(\n            this.configuration,\n            localVarAxiosArgs.endpoint,\n            localVarAxiosArgs.method,\n            localVarAxiosArgs.params,\n            localVarAxiosArgs?.timeUnit,\n            { isSigned: true }\n        );\n    }\n}\n","/**\n * Binance Wallet REST API\n *\n * OpenAPI Specification for the Binance Wallet 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 { AssetApi } from './modules/asset-api';\nimport { CapitalApi } from './modules/capital-api';\nimport { OthersApi } from './modules/others-api';\nimport { TravelRuleApi } from './modules/travel-rule-api';\n\nimport type {\n    AccountApiTradingStatusRequest,\n    AccountInfoRequest,\n    AccountStatusRequest,\n    DailyAccountSnapshotRequest,\n    DisableFastWithdrawSwitchRequest,\n    EnableFastWithdrawSwitchRequest,\n    GetApiKeyPermissionRequest,\n} from './modules/account-api';\nimport type {\n    AssetDetailRequest,\n    AssetDividendRecordRequest,\n    DustTransferRequest,\n    DustlogRequest,\n    FundingWalletRequest,\n    GetAssetsThatCanBeConvertedIntoBnbRequest,\n    GetCloudMiningPaymentAndRefundHistoryRequest,\n    QueryUserDelegationHistoryRequest,\n    QueryUserUniversalTransferHistoryRequest,\n    QueryUserWalletBalanceRequest,\n    ToggleBnbBurnOnSpotTradeAndMarginInterestRequest,\n    TradeFeeRequest,\n    UserAssetRequest,\n    UserUniversalTransferRequest,\n} from './modules/asset-api';\nimport type {\n    AllCoinsInformationRequest,\n    DepositAddressRequest,\n    DepositHistoryRequest,\n    FetchDepositAddressListWithNetworkRequest,\n    OneClickArrivalDepositApplyRequest,\n    WithdrawRequest,\n    WithdrawHistoryRequest,\n} from './modules/capital-api';\nimport type { GetSymbolsDelistScheduleForSpotRequest } from './modules/others-api';\nimport type {\n    BrokerWithdrawRequest,\n    DepositHistoryTravelRuleRequest,\n    SubmitDepositQuestionnaireRequest,\n    SubmitDepositQuestionnaireTravelRuleRequest,\n    WithdrawHistoryV1Request,\n    WithdrawHistoryV2Request,\n    WithdrawTravelRuleRequest,\n} from './modules/travel-rule-api';\n\nimport type {\n    AccountApiTradingStatusResponse,\n    AccountInfoResponse,\n    AccountStatusResponse,\n    DailyAccountSnapshotResponse,\n    GetApiKeyPermissionResponse,\n} from './types';\nimport type {\n    AssetDetailResponse,\n    AssetDividendRecordResponse,\n    DustTransferResponse,\n    DustlogResponse,\n    FundingWalletResponse,\n    GetAssetsThatCanBeConvertedIntoBnbResponse,\n    GetCloudMiningPaymentAndRefundHistoryResponse,\n    GetOpenSymbolListResponse,\n    QueryUserDelegationHistoryResponse,\n    QueryUserUniversalTransferHistoryResponse,\n    QueryUserWalletBalanceResponse,\n    ToggleBnbBurnOnSpotTradeAndMarginInterestResponse,\n    TradeFeeResponse,\n    UserAssetResponse,\n    UserUniversalTransferResponse,\n} from './types';\nimport type {\n    AllCoinsInformationResponse,\n    DepositAddressResponse,\n    DepositHistoryResponse,\n    FetchDepositAddressListWithNetworkResponse,\n    FetchWithdrawAddressListResponse,\n    OneClickArrivalDepositApplyResponse,\n    WithdrawResponse,\n    WithdrawHistoryResponse,\n} from './types';\nimport type { GetSymbolsDelistScheduleForSpotResponse, SystemStatusResponse } from './types';\nimport type {\n    BrokerWithdrawResponse,\n    DepositHistoryTravelRuleResponse,\n    OnboardedVaspListResponse,\n    SubmitDepositQuestionnaireResponse,\n    SubmitDepositQuestionnaireTravelRuleResponse,\n    WithdrawHistoryV1Response,\n    WithdrawHistoryV2Response,\n    WithdrawTravelRuleResponse,\n} from './types';\n\nexport class RestAPI {\n    private configuration: ConfigurationRestAPI;\n    private accountApi: AccountApi;\n    private assetApi: AssetApi;\n    private capitalApi: CapitalApi;\n    private othersApi: OthersApi;\n    private travelRuleApi: TravelRuleApi;\n\n    constructor(configuration: ConfigurationRestAPI) {\n        this.configuration = configuration;\n        this.accountApi = new AccountApi(configuration);\n        this.assetApi = new AssetApi(configuration);\n        this.capitalApi = new CapitalApi(configuration);\n        this.othersApi = new OthersApi(configuration);\n        this.travelRuleApi = new TravelRuleApi(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     * Fetch account api trading status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account API Trading Status (USER_DATA)\n     * @param {AccountApiTradingStatusRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountApiTradingStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-API-Trading-Status Binance API Documentation}\n     */\n    accountApiTradingStatus(\n        requestParameters: AccountApiTradingStatusRequest = {}\n    ): Promise<RestApiResponse<AccountApiTradingStatusResponse>> {\n        return this.accountApi.accountApiTradingStatus(requestParameters);\n    }\n\n    /**\n     * Fetch account info detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account info (USER_DATA)\n     * @param {AccountInfoRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountInfoResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-info Binance API Documentation}\n     */\n    accountInfo(\n        requestParameters: AccountInfoRequest = {}\n    ): Promise<RestApiResponse<AccountInfoResponse>> {\n        return this.accountApi.accountInfo(requestParameters);\n    }\n\n    /**\n     * Fetch account status detail.\n     *\n     * Weight: 1\n     *\n     * @summary Account Status (USER_DATA)\n     * @param {AccountStatusRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AccountStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/account/Account-Status Binance API Documentation}\n     */\n    accountStatus(\n        requestParameters: AccountStatusRequest = {}\n    ): Promise<RestApiResponse<AccountStatusResponse>> {\n        return this.accountApi.accountStatus(requestParameters);\n    }\n\n    /**\n     * Daily account snapshot\n     *\n     * The query time period must be less then 30 days\n     * Support query within the last one month only\n     * If startTimeand endTime not sent, return records of the last 7 days by default\n     *\n     * Weight: 2400\n     *\n     * @summary Daily Account Snapshot (USER_DATA)\n     * @param {DailyAccountSnapshotRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DailyAccountSnapshotResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/account/daily-account-snapshoot Binance API Documentation}\n     */\n    dailyAccountSnapshot(\n        requestParameters: DailyAccountSnapshotRequest\n    ): Promise<RestApiResponse<DailyAccountSnapshotResponse>> {\n        return this.accountApi.dailyAccountSnapshot(requestParameters);\n    }\n\n    /**\n     *\n     * Weight: 1\n     *\n     * @summary Disable Fast Withdraw Switch (USER_DATA)\n     * @param {DisableFastWithdrawSwitchRequest} requestParameters Request parameters.\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/wallet/account/Disable-Fast-Withdraw-Switch Binance API Documentation}\n     */\n    disableFastWithdrawSwitch(\n        requestParameters: DisableFastWithdrawSwitchRequest = {}\n    ): Promise<RestApiResponse<void>> {\n        return this.accountApi.disableFastWithdrawSwitch(requestParameters);\n    }\n\n    /**\n     * Enable Fast Withdraw Switch (USER_DATA)\n     *\n     * This request will enable fastwithdraw switch under your  account. <br></br>\n     * When Fast Withdraw Switch is on, transferring funds to a Binance account will be done instantly. There is no on-chain transaction, no transaction ID and no withdrawal fee.\n     *\n     * Weight: 1\n     *\n     * @summary Enable Fast Withdraw Switch (USER_DATA)\n     * @param {EnableFastWithdrawSwitchRequest} requestParameters Request parameters.\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/wallet/account/Enable-Fast-Withdraw-Switch Binance API Documentation}\n     */\n    enableFastWithdrawSwitch(\n        requestParameters: EnableFastWithdrawSwitchRequest = {}\n    ): Promise<RestApiResponse<void>> {\n        return this.accountApi.enableFastWithdrawSwitch(requestParameters);\n    }\n\n    /**\n     * Get API Key Permission\n     *\n     * Weight: 1\n     *\n     * @summary Get API Key Permission (USER_DATA)\n     * @param {GetApiKeyPermissionRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetApiKeyPermissionResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/account/api-key-permission Binance API Documentation}\n     */\n    getApiKeyPermission(\n        requestParameters: GetApiKeyPermissionRequest = {}\n    ): Promise<RestApiResponse<GetApiKeyPermissionResponse>> {\n        return this.accountApi.getApiKeyPermission(requestParameters);\n    }\n\n    /**\n     * Fetch details of assets supported on Binance.\n     *\n     *\n     * Please get network and other deposit or withdraw details from ``GET /sapi/v1/capital/config/getall``.\n     *\n     * Weight: 1\n     *\n     * @summary Asset Detail (USER_DATA)\n     * @param {AssetDetailRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AssetDetailResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Asset-Detail Binance API Documentation}\n     */\n    assetDetail(\n        requestParameters: AssetDetailRequest = {}\n    ): Promise<RestApiResponse<AssetDetailResponse>> {\n        return this.assetApi.assetDetail(requestParameters);\n    }\n\n    /**\n     * Query asset dividend record.\n     *\n     *\n     * There cannot be more than 180 days between parameter `startTime` and `endTime`.\n     *\n     * Weight: 10\n     *\n     * @summary Asset Dividend Record (USER_DATA)\n     * @param {AssetDividendRecordRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AssetDividendRecordResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/assets-divided-record Binance API Documentation}\n     */\n    assetDividendRecord(\n        requestParameters: AssetDividendRecordRequest = {}\n    ): Promise<RestApiResponse<AssetDividendRecordResponse>> {\n        return this.assetApi.assetDividendRecord(requestParameters);\n    }\n\n    /**\n     * Convert dust assets to BNB.\n     *\n     * You need to open`Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n     *\n     * Weight: 10\n     *\n     * @summary Dust Transfer (USER_DATA)\n     * @param {DustTransferRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DustTransferResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Dust-Transfer Binance API Documentation}\n     */\n    dustTransfer(\n        requestParameters: DustTransferRequest\n    ): Promise<RestApiResponse<DustTransferResponse>> {\n        return this.assetApi.dustTransfer(requestParameters);\n    }\n\n    /**\n     * Dustlog\n     *\n     * Only return last 100 records\n     * Only return records after 2020/12/01\n     *\n     * Weight: 1\n     *\n     * @summary DustLog(USER_DATA)\n     * @param {DustlogRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DustlogResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/dust-log Binance API Documentation}\n     */\n    dustlog(requestParameters: DustlogRequest = {}): Promise<RestApiResponse<DustlogResponse>> {\n        return this.assetApi.dustlog(requestParameters);\n    }\n\n    /**\n     * Query Funding Wallet\n     *\n     *\n     * Currently supports querying the following business assets：Binance Pay, Binance Card, Binance Gift Card, Stock Token\n     *\n     * Weight: 1\n     *\n     * @summary Funding Wallet (USER_DATA)\n     * @param {FundingWalletRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<FundingWalletResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Funding-Wallet Binance API Documentation}\n     */\n    fundingWallet(\n        requestParameters: FundingWalletRequest = {}\n    ): Promise<RestApiResponse<FundingWalletResponse>> {\n        return this.assetApi.fundingWallet(requestParameters);\n    }\n\n    /**\n     * Get Assets That Can Be Converted Into BNB\n     *\n     * Weight: 1\n     *\n     * @summary Get Assets That Can Be Converted Into BNB (USER_DATA)\n     * @param {GetAssetsThatCanBeConvertedIntoBnbRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetAssetsThatCanBeConvertedIntoBnbResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/assets-can-convert-bnb Binance API Documentation}\n     */\n    getAssetsThatCanBeConvertedIntoBnb(\n        requestParameters: GetAssetsThatCanBeConvertedIntoBnbRequest = {}\n    ): Promise<RestApiResponse<GetAssetsThatCanBeConvertedIntoBnbResponse>> {\n        return this.assetApi.getAssetsThatCanBeConvertedIntoBnb(requestParameters);\n    }\n\n    /**\n     * The query of Cloud-Mining payment and refund history\n     *\n     * Just return the SUCCESS records of payment and refund.\n     * For response, type = 248 means payment, type = 249 means refund, status =S means SUCCESS.\n     *\n     * Weight: 600\n     *\n     * @summary Get Cloud-Mining payment and refund history (USER_DATA)\n     * @param {GetCloudMiningPaymentAndRefundHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetCloudMiningPaymentAndRefundHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/cloud-mining-payment-and-refund-history Binance API Documentation}\n     */\n    getCloudMiningPaymentAndRefundHistory(\n        requestParameters: GetCloudMiningPaymentAndRefundHistoryRequest\n    ): Promise<RestApiResponse<GetCloudMiningPaymentAndRefundHistoryResponse>> {\n        return this.assetApi.getCloudMiningPaymentAndRefundHistory(requestParameters);\n    }\n\n    /**\n     * Get the list of symbols that are scheduled to be opened for trading in the market.\n     *\n     * Weight: 100\n     *\n     * @summary Get Open Symbol List (MARKET_DATA)\n     * @returns {Promise<RestApiResponse<GetOpenSymbolListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/open-symbol-list Binance API Documentation}\n     */\n    getOpenSymbolList(): Promise<RestApiResponse<GetOpenSymbolListResponse>> {\n        return this.assetApi.getOpenSymbolList();\n    }\n\n    /**\n     * Query User Delegation History\n     *\n     * You need to open Enable Spot & Margin Trading permission for the API Key which requests this endpoint\n     *\n     * Weight: 60\n     *\n     * @summary Query User Delegation History(For Master Account)(USER_DATA)\n     * @param {QueryUserDelegationHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserDelegationHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/query-user-delegation Binance API Documentation}\n     */\n    queryUserDelegationHistory(\n        requestParameters: QueryUserDelegationHistoryRequest\n    ): Promise<RestApiResponse<QueryUserDelegationHistoryResponse>> {\n        return this.assetApi.queryUserDelegationHistory(requestParameters);\n    }\n\n    /**\n     * Query User Universal Transfer History\n     *\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * Support query within the last 6 months only\n     * If `startTime`and `endTime` not sent, return records of the last 7 days by default\n     *\n     * Weight: 1\n     *\n     * @summary Query User Universal Transfer History(USER_DATA)\n     * @param {QueryUserUniversalTransferHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserUniversalTransferHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/query-user-universal-transfer Binance API Documentation}\n     */\n    queryUserUniversalTransferHistory(\n        requestParameters: QueryUserUniversalTransferHistoryRequest\n    ): Promise<RestApiResponse<QueryUserUniversalTransferHistoryResponse>> {\n        return this.assetApi.queryUserUniversalTransferHistory(requestParameters);\n    }\n\n    /**\n     * Query User Wallet Balance\n     *\n     *\n     * You need to open Permits Universal Transfer permission for the API Key which requests this endpoint.\n     *\n     * Weight: 60\n     *\n     * @summary Query User Wallet Balance (USER_DATA)\n     * @param {QueryUserWalletBalanceRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<QueryUserWalletBalanceResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Query-User-Wallet-Balance Binance API Documentation}\n     */\n    queryUserWalletBalance(\n        requestParameters: QueryUserWalletBalanceRequest = {}\n    ): Promise<RestApiResponse<QueryUserWalletBalanceResponse>> {\n        return this.assetApi.queryUserWalletBalance(requestParameters);\n    }\n\n    /**\n     * Toggle BNB Burn On Spot Trade And Margin Interest\n     *\n     * \"spotBNBBurn\" and \"interestBNBBurn\" should be sent at least one.\n     *\n     * Weight: 1(IP)\n     *\n     * @summary Toggle BNB Burn On Spot Trade And Margin Interest (USER_DATA)\n     * @param {ToggleBnbBurnOnSpotTradeAndMarginInterestRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Toggle-BNB-Burn-On-Spot-Trade-And-Margin-Interest Binance API Documentation}\n     */\n    toggleBnbBurnOnSpotTradeAndMarginInterest(\n        requestParameters: ToggleBnbBurnOnSpotTradeAndMarginInterestRequest = {}\n    ): Promise<RestApiResponse<ToggleBnbBurnOnSpotTradeAndMarginInterestResponse>> {\n        return this.assetApi.toggleBnbBurnOnSpotTradeAndMarginInterest(requestParameters);\n    }\n\n    /**\n     * Fetch trade fee\n     *\n     * Weight: 1\n     *\n     * @summary Trade Fee (USER_DATA)\n     * @param {TradeFeeRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<TradeFeeResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/Trade-Fee Binance API Documentation}\n     */\n    tradeFee(requestParameters: TradeFeeRequest = {}): Promise<RestApiResponse<TradeFeeResponse>> {\n        return this.assetApi.tradeFee(requestParameters);\n    }\n\n    /**\n     * Get user assets, just for positive data.\n     *\n     * If asset is set, then return this asset, otherwise return all assets positive.\n     * If needBtcValuation is set, then return btcValudation.\n     *\n     * Weight: 5\n     *\n     * @summary User Asset (USER_DATA)\n     * @param {UserAssetRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<UserAssetResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/user-assets Binance API Documentation}\n     */\n    userAsset(\n        requestParameters: UserAssetRequest = {}\n    ): Promise<RestApiResponse<UserAssetResponse>> {\n        return this.assetApi.userAsset(requestParameters);\n    }\n\n    /**\n     * user universal transfer\n     *\n     *  `fromSymbol` must be sent when type are ISOLATEDMARGIN_MARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     *  `toSymbol` must be sent when type are MARGIN_ISOLATEDMARGIN and ISOLATEDMARGIN_ISOLATEDMARGIN\n     * ENUM of transfer types:\n     * MAIN_UMFUTURE   Spot account transfer to USDⓈ-M Futures account\n     * MAIN_CMFUTURE   Spot account transfer to COIN-M Futures account\n     * MAIN_MARGIN   Spot account transfer to Margin（cross）account\n     * UMFUTURE_MAIN   USDⓈ-M Futures account transfer to Spot account\n     * UMFUTURE_MARGIN   USDⓈ-M Futures account transfer to Margin（cross）account\n     * CMFUTURE_MAIN   COIN-M Futures account transfer to Spot account\n     * CMFUTURE_MARGIN   COIN-M Futures account transfer to Margin(cross) account\n     * MARGIN_MAIN   Margin（cross）account transfer to Spot account\n     * MARGIN_UMFUTURE   Margin（cross）account transfer to USDⓈ-M Futures\n     * MARGIN_CMFUTURE   Margin（cross）account transfer to COIN-M Futures\n     * ISOLATEDMARGIN_MARGIN   Isolated margin account transfer to Margin(cross) account\n     * MARGIN_ISOLATEDMARGIN   Margin(cross) account transfer to Isolated margin account\n     * ISOLATEDMARGIN_ISOLATEDMARGIN   Isolated margin account transfer to Isolated margin account\n     * MAIN_FUNDING   Spot account transfer to Funding account\n     * FUNDING_MAIN   Funding account transfer to Spot account\n     * FUNDING_UMFUTURE   Funding account transfer to UMFUTURE account\n     * UMFUTURE_FUNDING   UMFUTURE account transfer to Funding account\n     * MARGIN_FUNDING   MARGIN account transfer to Funding account\n     * FUNDING_MARGIN   Funding account transfer to Margin account\n     * FUNDING_CMFUTURE   Funding account transfer to CMFUTURE account\n     * CMFUTURE_FUNDING   CMFUTURE account transfer to Funding account\n     * MAIN_OPTION  Spot account transfer to Options account\n     * OPTION_MAIN  Options account transfer to Spot account\n     * UMFUTURE_OPTION USDⓈ-M Futures account transfer to Options account\n     * OPTION_UMFUTURE Options account transfer to USDⓈ-M Futures account\n     * MARGIN_OPTION  Margin（cross）account transfer to Options account\n     * OPTION_MARGIN  Options account transfer to Margin（cross）account\n     * FUNDING_OPTION   Funding account transfer to Options account\n     * OPTION_FUNDING   Options account transfer to Funding account\n     * MAIN_PORTFOLIO_MARGIN  Spot account transfer to Portfolio Margin account\n     * PORTFOLIO_MARGIN_MAIN  Portfolio Margin account transfer to Spot account\n     *\n     * Weight: 900\n     *\n     * @summary User Universal Transfer (USER_DATA)\n     * @param {UserUniversalTransferRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<UserUniversalTransferResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/asset/User-Universal-Transfer Binance API Documentation}\n     */\n    userUniversalTransfer(\n        requestParameters: UserUniversalTransferRequest\n    ): Promise<RestApiResponse<UserUniversalTransferResponse>> {\n        return this.assetApi.userUniversalTransfer(requestParameters);\n    }\n\n    /**\n     * Get information of coins (available for deposit and withdraw) for user.\n     *\n     * Weight: 10\n     *\n     * @summary All Coins\\' Information (USER_DATA)\n     * @param {AllCoinsInformationRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<AllCoinsInformationResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/all-coins-info Binance API Documentation}\n     */\n    allCoinsInformation(\n        requestParameters: AllCoinsInformationRequest = {}\n    ): Promise<RestApiResponse<AllCoinsInformationResponse>> {\n        return this.capitalApi.allCoinsInformation(requestParameters);\n    }\n\n    /**\n     * Fetch deposit address with network.\n     *\n     * If `network` is not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     * `amount` needs to be sent if using LIGHTNING network\n     *\n     * Weight: 10\n     *\n     * @summary Deposit Address(supporting network) (USER_DATA)\n     * @param {DepositAddressRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositAddressResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/deposite-address Binance API Documentation}\n     */\n    depositAddress(\n        requestParameters: DepositAddressRequest\n    ): Promise<RestApiResponse<DepositAddressResponse>> {\n        return this.capitalApi.depositAddress(requestParameters);\n    }\n\n    /**\n     * Fetch deposit history.\n     *\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must be less than 90 days.\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (supporting network) (USER_DATA)\n     * @param {DepositHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/deposite-history Binance API Documentation}\n     */\n    depositHistory(\n        requestParameters: DepositHistoryRequest = {}\n    ): Promise<RestApiResponse<DepositHistoryResponse>> {\n        return this.capitalApi.depositHistory(requestParameters);\n    }\n\n    /**\n     * Fetch deposit address list with network.\n     *\n     *\n     * If network is not send, return with default network of the coin.\n     * You can get network and isDefault in networkList in the response of `Get /sapi/v1/capital/config/getall`.\n     *\n     * Weight: 10\n     *\n     * @summary Fetch deposit address list with network(USER_DATA)\n     * @param {FetchDepositAddressListWithNetworkRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<FetchDepositAddressListWithNetworkResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Fetch-deposit-address-list-with-network Binance API Documentation}\n     */\n    fetchDepositAddressListWithNetwork(\n        requestParameters: FetchDepositAddressListWithNetworkRequest\n    ): Promise<RestApiResponse<FetchDepositAddressListWithNetworkResponse>> {\n        return this.capitalApi.fetchDepositAddressListWithNetwork(requestParameters);\n    }\n\n    /**\n     * Fetch withdraw address list\n     *\n     * Weight: 10\n     *\n     * @summary Fetch withdraw address list (USER_DATA)\n     * @returns {Promise<RestApiResponse<FetchWithdrawAddressListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/fetch-withdraw-address Binance API Documentation}\n     */\n    fetchWithdrawAddressList(): Promise<RestApiResponse<FetchWithdrawAddressListResponse>> {\n        return this.capitalApi.fetchWithdrawAddressList();\n    }\n\n    /**\n     * Apply deposit credit for expired address (One click arrival)\n     *\n     * Params need to be in the POST body\n     *\n     * Weight: 1\n     *\n     * @summary One click arrival deposit apply (for expired address deposit) (USER_DATA)\n     * @param {OneClickArrivalDepositApplyRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<OneClickArrivalDepositApplyResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/one-click-arrival-deposite-apply Binance API Documentation}\n     */\n    oneClickArrivalDepositApply(\n        requestParameters: OneClickArrivalDepositApplyRequest = {}\n    ): Promise<RestApiResponse<OneClickArrivalDepositApplyResponse>> {\n        return this.capitalApi.oneClickArrivalDepositApply(requestParameters);\n    }\n\n    /**\n     * Submit a withdraw request.\n     *\n     *\n     * If `network` not send, return with default network of the coin.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response of `Get /sapi/v1/capital/config/getall (HMAC SHA256)`.\n     *\n     * Weight: 900\n     *\n     * @summary Withdraw(USER_DATA)\n     * @param {WithdrawRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Withdraw Binance API Documentation}\n     */\n    withdraw(requestParameters: WithdrawRequest): Promise<RestApiResponse<WithdrawResponse>> {\n        return this.capitalApi.withdraw(requestParameters);\n    }\n\n    /**\n     * Fetch withdraw history.\n     *\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within 0-90 days.\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less than 90 days.\n     * If `withdrawOrderId` is sent, time between `startTime` and `endTime` must be less than 7 days.\n     * If `withdrawOrderId` is sent, `startTime` and `endTime` are not sent, will return last 7 days records by default.\n     * Maximum support `idList` number is 45.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     *\n     * @summary Withdraw History (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/capital/Withdraw-History Binance API Documentation}\n     */\n    withdrawHistory(\n        requestParameters: WithdrawHistoryRequest = {}\n    ): Promise<RestApiResponse<WithdrawHistoryResponse>> {\n        return this.capitalApi.withdrawHistory(requestParameters);\n    }\n\n    /**\n     * Get symbols delist schedule for spot\n     *\n     * Weight: 100\n     *\n     * @summary Get symbols delist schedule for spot (MARKET_DATA)\n     * @param {GetSymbolsDelistScheduleForSpotRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<GetSymbolsDelistScheduleForSpotResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/others/delist-schedule Binance API Documentation}\n     */\n    getSymbolsDelistScheduleForSpot(\n        requestParameters: GetSymbolsDelistScheduleForSpotRequest = {}\n    ): Promise<RestApiResponse<GetSymbolsDelistScheduleForSpotResponse>> {\n        return this.othersApi.getSymbolsDelistScheduleForSpot(requestParameters);\n    }\n\n    /**\n     * Fetch system status.\n     *\n     * Weight: 1\n     *\n     * @summary System Status (System)\n     * @returns {Promise<RestApiResponse<SystemStatusResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/others/System-Status Binance API Documentation}\n     */\n    systemStatus(): Promise<RestApiResponse<SystemStatusResponse>> {\n        return this.othersApi.systemStatus();\n    }\n\n    /**\n     * Submit a withdrawal request for brokers of local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Broker Withdraw (for brokers of local entities that require travel rule) (USER_DATA)\n     * @param {BrokerWithdrawRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<BrokerWithdrawResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Broker-Withdraw Binance API Documentation}\n     */\n    brokerWithdraw(\n        requestParameters: BrokerWithdrawRequest\n    ): Promise<RestApiResponse<BrokerWithdrawResponse>> {\n        return this.travelRuleApi.brokerWithdraw(requestParameters);\n    }\n\n    /**\n     * Fetch deposit history for local entities that required travel rule.\n     *\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both ``startTime`` and ``endTime`` are sent, time between ``startTime`` and ``endTime`` must\n     *\n     * Weight: 1\n     *\n     * @summary Deposit History (for local entities that required travel rule) (supporting network) (USER_DATA)\n     * @param {DepositHistoryTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<DepositHistoryTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Deposit-History Binance API Documentation}\n     */\n    depositHistoryTravelRule(\n        requestParameters: DepositHistoryTravelRuleRequest = {}\n    ): Promise<RestApiResponse<DepositHistoryTravelRuleResponse>> {\n        return this.travelRuleApi.depositHistoryTravelRule(requestParameters);\n    }\n\n    /**\n     * Fetch the onboarded VASP list for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Onboarded VASP list (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @returns {Promise<RestApiResponse<OnboardedVaspListResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Onboarded-VASP-list Binance API Documentation}\n     */\n    onboardedVaspList(): Promise<RestApiResponse<OnboardedVaspListResponse>> {\n        return this.travelRuleApi.onboardedVaspList();\n    }\n\n    /**\n     * Submit questionnaire for brokers of local entities that require travel rule.\n     * The questionnaire is only applies to transactions from un-hosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<SubmitDepositQuestionnaireResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/deposit-provide-info Binance API Documentation}\n     */\n    submitDepositQuestionnaire(\n        requestParameters: SubmitDepositQuestionnaireRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireResponse>> {\n        return this.travelRuleApi.submitDepositQuestionnaire(requestParameters);\n    }\n\n    /**\n     * Submit questionnaire for local entities that require travel rule.\n     * The questionnaire is only applies to transactions from unhosted wallets or VASPs that are not\n     * yet onboarded with GTR.\n     *\n     * Questionnaire is different for each local entity, please refer\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Submit Deposit Questionnaire (For local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {SubmitDepositQuestionnaireTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<SubmitDepositQuestionnaireTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/deposit-provide-info Binance API Documentation}\n     */\n    submitDepositQuestionnaireTravelRule(\n        requestParameters: SubmitDepositQuestionnaireTravelRuleRequest\n    ): Promise<RestApiResponse<SubmitDepositQuestionnaireTravelRuleResponse>> {\n        return this.travelRuleApi.submitDepositQuestionnaireTravelRule(requestParameters);\n    }\n\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV1Request} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryV1Response>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw-History Binance API Documentation}\n     */\n    withdrawHistoryV1(\n        requestParameters: WithdrawHistoryV1Request = {}\n    ): Promise<RestApiResponse<WithdrawHistoryV1Response>> {\n        return this.travelRuleApi.withdrawHistoryV1(requestParameters);\n    }\n\n    /**\n     * Fetch withdraw history for local entities that required travel rule.\n     *\n     * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * `network` may not be in the response for old withdraw.\n     * Withdrawal made through /sapi/v1/capital/withdraw/apply may not be in the response.\n     * Please notice the default `startTime` and `endTime` to make sure that time interval is within\n     * If both `startTime` and `endTime`are sent, time between `startTime`and `endTime`must be less\n     * If withdrawOrderId is sent, time between startTime and endTime must be less than 7 days.\n     * If withdrawOrderId is sent, startTime and endTime are not sent, will return last 7 days records by default.\n     * Maximum support trId,txId number is 45.\n     * WithdrawOrderId only support 1.\n     * If responsible does not include withdrawalStatus, please input trId or txId retrieve the data.\n     *\n     * Weight: 18000\n     * Request limit: 10 requests per second\n     * > * This endpoint specifically uses per second IP rate limit, user's total second level IP rate\n     * limit is 180000/second. Response from the endpoint contains header\n     * key X-SAPI-USED-IP-WEIGHT-1S, which defines weight used by the current IP.\n     *\n     * @summary Withdraw History V2 (for local entities that require travel rule) (supporting network) (USER_DATA)\n     * @param {WithdrawHistoryV2Request} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawHistoryV2Response>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw-History-V2 Binance API Documentation}\n     */\n    withdrawHistoryV2(\n        requestParameters: WithdrawHistoryV2Request = {}\n    ): Promise<RestApiResponse<WithdrawHistoryV2Response>> {\n        return this.travelRuleApi.withdrawHistoryV2(requestParameters);\n    }\n\n    /**\n     * Submit a withdrawal request for local entities that required travel rule.\n     *\n     * If `network` not send, return with default network of the coin, but if the address could not match default network, the withdraw will be rejected.\n     * You can get `network` and `isDefault` in `networkList` of a coin in the response\n     * Questionnaire is different for each local entity, please refer to\n     * If getting error like `Questionnaire format not valid.` or `Questionnaire must not be blank`,\n     *\n     * Weight: 600\n     *\n     * @summary Withdraw (for local entities that require travel rule) (USER_DATA)\n     * @param {WithdrawTravelRuleRequest} requestParameters Request parameters.\n     * @returns {Promise<RestApiResponse<WithdrawTravelRuleResponse>>}\n     * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n     * @see {@link https://developers.binance.com/docs/wallet/travel-rule/Withdraw Binance API Documentation}\n     */\n    withdrawTravelRule(\n        requestParameters: WithdrawTravelRuleRequest\n    ): Promise<RestApiResponse<WithdrawTravelRuleResponse>> {\n        return this.travelRuleApi.withdrawTravelRule(requestParameters);\n    }\n}\n","export { Wallet, ConfigurationWallet } from './wallet';\nexport * as WalletRestAPI from './rest-api';\n\nexport {\n    WALLET_REST_API_PROD_URL,\n    WALLET_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"],"mappings":"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","names":["ConfigurationRestAPI","assertParamExists","sendRequest","assertParamExists","sendRequest","name","sendRequest","assertParamExists","sendRequest","name","sendRequest","sendRequest","ConfigurationRestAPI","WALLET_REST_API_PROD_URL"]}