@binance/simple-earn 5.0.6 → 5.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/simple-earn.ts","../package.json","../src/rest-api/index.ts","../src/rest-api/modules/account-api.ts","../src/rest-api/modules/earn-api.ts","../src/rest-api/modules/history-api.ts","../src/rest-api/rest-api.ts","../src/index.ts"],"sourcesContent":["import {\n buildUserAgent,\n ConfigurationRestAPI,\n SIMPLE_EARN_REST_API_PROD_URL,\n} from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nexport interface ConfigurationSimpleEarn {\n configurationRestAPI?: ConfigurationRestAPI;\n}\n\nexport class SimpleEarn {\n public restAPI!: RestAPI;\n\n constructor(config: ConfigurationSimpleEarn) {\n const userAgent = buildUserAgent(name, version);\n\n if (config?.configurationRestAPI) {\n const configRestAPI = new ConfigurationRestAPI(\n config.configurationRestAPI\n ) as ConfigurationRestAPI & {\n baseOptions: Record<string, unknown>;\n };\n configRestAPI.basePath = configRestAPI.basePath || SIMPLE_EARN_REST_API_PROD_URL;\n configRestAPI.baseOptions = configRestAPI.baseOptions || {};\n configRestAPI.baseOptions.headers = {\n ...(configRestAPI.baseOptions.headers || {}),\n 'User-Agent': userAgent,\n };\n this.restAPI = new RestAPI(configRestAPI);\n }\n }\n}\n","{\n \"name\": \"@binance/simple-earn\",\n \"description\": \"Official Binance Simple Earn Connector - A lightweight library that provides a convenient interface to Binance's Simple Earn REST API.\",\n \"version\": \"5.0.6\",\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"require\": \"./dist/index.js\",\n \"import\": \"./dist/index.mjs\"\n }\n },\n \"scripts\": {\n \"prepublishOnly\": \"npm run build\",\n \"build\": \"npm run clean && tsup\",\n \"typecheck\": \"tsc --noEmit\",\n \"clean\": \"rm -rf dist\",\n \"test\": \"npx jest --maxWorkers=4 --bail\",\n \"test:watch\": \"npx jest --watch\",\n \"format\": \"npx prettier --ignore-path .prettierignore --write .\",\n \"lint\": \"npx eslint '**/*.ts' --fix\"\n },\n \"keywords\": [\n \"Binance\",\n \"API\",\n \"Simple Earn\",\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\": \"^8.4.0\",\n \"typescript\": \"^5.7.2\",\n \"typescript-eslint\": \"^8.24.0\"\n },\n \"dependencies\": {\n \"@binance/common\": \"1.2.2\",\n \"axios\": \"^1.7.4\"\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetFlexiblePersonalLeftQuotaResponse,\n GetFlexibleProductPositionResponse,\n GetLockedPersonalLeftQuotaResponse,\n GetLockedProductPositionResponse,\n GetSimpleEarnFlexibleProductListResponse,\n GetSimpleEarnLockedProductListResponse,\n SimpleAccountResponse,\n} from '../types';\n\n/**\n * AccountApi - axios parameter creator\n */\nconst AccountApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {string} productId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexiblePersonalLeftQuota: async (\n productId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getFlexiblePersonalLeftQuota', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/personalLeftQuota',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {string} [asset]\n * @param {string} [productId]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleProductPosition: async (\n asset?: string,\n productId?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/position',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {string} projectId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedPersonalLeftQuota: async (\n projectId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('getLockedPersonalLeftQuota', 'projectId', projectId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\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/simple-earn/locked/personalLeftQuota',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {string} [asset]\n * @param {number} [positionId]\n * @param {string} [projectId]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedProductPosition: async (\n asset?: string,\n positionId?: number,\n projectId?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\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/simple-earn/locked/position',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {string} [asset]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getSimpleEarnFlexibleProductList: async (\n asset?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (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/simple-earn/flexible/list',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {string} [asset]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getSimpleEarnLockedProductList: async (\n asset?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (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/simple-earn/locked/list',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n simpleAccount: 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/simple-earn/account',\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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>;\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getFlexibleProductPosition(\n requestParameters?: GetFlexibleProductPositionRequest\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>>;\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>;\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getLockedProductPosition(\n requestParameters?: GetLockedProductPositionRequest\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>>;\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getSimpleEarnFlexibleProductList(\n requestParameters?: GetSimpleEarnFlexibleProductListRequest\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>;\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getSimpleEarnLockedProductList(\n requestParameters?: GetSimpleEarnLockedProductListRequest\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>;\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n simpleAccount(\n requestParameters?: SimpleAccountRequest\n ): Promise<RestApiResponse<SimpleAccountResponse>>;\n}\n\n/**\n * Request parameters for getFlexiblePersonalLeftQuota operation in AccountApi.\n * @interface GetFlexiblePersonalLeftQuotaRequest\n */\nexport interface GetFlexiblePersonalLeftQuotaRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexiblePersonalLeftQuota\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetFlexiblePersonalLeftQuota\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleProductPosition operation in AccountApi.\n * @interface GetFlexibleProductPositionRequest\n */\nexport interface GetFlexibleProductPositionRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly asset?: string;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly productId?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedPersonalLeftQuota operation in AccountApi.\n * @interface GetLockedPersonalLeftQuotaRequest\n */\nexport interface GetLockedPersonalLeftQuotaRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedPersonalLeftQuota\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedPersonalLeftQuota\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedProductPosition operation in AccountApi.\n * @interface GetLockedProductPositionRequest\n */\nexport interface GetLockedProductPositionRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly projectId?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getSimpleEarnFlexibleProductList operation in AccountApi.\n * @interface GetSimpleEarnFlexibleProductListRequest\n */\nexport interface GetSimpleEarnFlexibleProductListRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly asset?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getSimpleEarnLockedProductList operation in AccountApi.\n * @interface GetSimpleEarnLockedProductListRequest\n */\nexport interface GetSimpleEarnLockedProductListRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly asset?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for simpleAccount operation in AccountApi.\n * @interface SimpleAccountRequest\n */\nexport interface SimpleAccountRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiSimpleAccount\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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Personal-Left-Quota Binance API Documentation}\n */\n public async getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexiblePersonalLeftQuota(\n requestParameters?.productId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexiblePersonalLeftQuotaResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Product-Position Binance API Documentation}\n */\n public async getFlexibleProductPosition(\n requestParameters: GetFlexibleProductPositionRequest = {}\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleProductPosition(\n requestParameters?.asset,\n requestParameters?.productId,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleProductPositionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Personal-Left-Quota Binance API Documentation}\n */\n public async getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedPersonalLeftQuota(\n requestParameters?.projectId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedPersonalLeftQuotaResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Product-Position Binance API Documentation}\n */\n public async getLockedProductPosition(\n requestParameters: GetLockedProductPositionRequest = {}\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedProductPosition(\n requestParameters?.asset,\n requestParameters?.positionId,\n requestParameters?.projectId,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedProductPositionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Flexible-Product-List Binance API Documentation}\n */\n public async getSimpleEarnFlexibleProductList(\n requestParameters: GetSimpleEarnFlexibleProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getSimpleEarnFlexibleProductList(\n requestParameters?.asset,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetSimpleEarnFlexibleProductListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Locked-Product-List Binance API Documentation}\n */\n public async getSimpleEarnLockedProductList(\n requestParameters: GetSimpleEarnLockedProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getSimpleEarnLockedProductList(\n requestParameters?.asset,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetSimpleEarnLockedProductListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SimpleAccountResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Simple-Account Binance API Documentation}\n */\n public async simpleAccount(\n requestParameters: SimpleAccountRequest = {}\n ): Promise<RestApiResponse<SimpleAccountResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.simpleAccount(\n requestParameters?.recvWindow\n );\n return sendRequest<SimpleAccountResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetFlexibleSubscriptionPreviewResponse,\n GetLockedSubscriptionPreviewResponse,\n RedeemFlexibleProductResponse,\n RedeemLockedProductResponse,\n SetFlexibleAutoSubscribeResponse,\n SetLockedAutoSubscribeResponse,\n SetLockedProductRedeemOptionResponse,\n SubscribeFlexibleProductResponse,\n SubscribeLockedProductResponse,\n} from '../types';\n\n/**\n * EarnApi - axios parameter creator\n */\nconst EarnApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {string} productId\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleSubscriptionPreview: async (\n productId: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getFlexibleSubscriptionPreview', 'productId', productId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('getFlexibleSubscriptionPreview', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/subscriptionPreview',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {string} projectId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedSubscriptionPreview: async (\n projectId: string,\n amount: number,\n autoSubscribe?: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('getLockedSubscriptionPreview', 'projectId', projectId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('getLockedSubscriptionPreview', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/locked/subscriptionPreview',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {string} productId\n * @param {boolean} [redeemAll] true or false, default to false\n * @param {number} [amount] if redeemAll is false, amount is mandatory\n * @param {string} [destAccount] `SPOT`,`FUND`, default `SPOT`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n redeemFlexibleProduct: async (\n productId: string,\n redeemAll?: boolean,\n amount?: number,\n destAccount?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('redeemFlexibleProduct', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (redeemAll !== undefined && redeemAll !== null) {\n localVarQueryParameter['redeemAll'] = redeemAll;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (destAccount !== undefined && destAccount !== null) {\n localVarQueryParameter['destAccount'] = destAccount;\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/simple-earn/flexible/redeem',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {string} positionId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n redeemLockedProduct: async (\n positionId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('redeemLockedProduct', 'positionId', positionId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\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/simple-earn/locked/redeem',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {string} productId\n * @param {boolean} autoSubscribe true or false\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setFlexibleAutoSubscribe: async (\n productId: string,\n autoSubscribe: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('setFlexibleAutoSubscribe', 'productId', productId);\n // verify required parameter 'autoSubscribe' is not null or undefined\n assertParamExists('setFlexibleAutoSubscribe', 'autoSubscribe', autoSubscribe);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/flexible/setAutoSubscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {string} positionId\n * @param {boolean} autoSubscribe true or false\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setLockedAutoSubscribe: async (\n positionId: string,\n autoSubscribe: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('setLockedAutoSubscribe', 'positionId', positionId);\n // verify required parameter 'autoSubscribe' is not null or undefined\n assertParamExists('setLockedAutoSubscribe', 'autoSubscribe', autoSubscribe);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/locked/setAutoSubscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {string} positionId\n * @param {string} redeemTo `SPOT`,'FLEXIBLE'\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setLockedProductRedeemOption: async (\n positionId: string,\n redeemTo: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('setLockedProductRedeemOption', 'positionId', positionId);\n // verify required parameter 'redeemTo' is not null or undefined\n assertParamExists('setLockedProductRedeemOption', 'redeemTo', redeemTo);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (redeemTo !== undefined && redeemTo !== null) {\n localVarQueryParameter['redeemTo'] = redeemTo;\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/simple-earn/locked/setRedeemOption',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {string} productId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {string} [sourceAccount] `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n subscribeFlexibleProduct: async (\n productId: string,\n amount: number,\n autoSubscribe?: boolean,\n sourceAccount?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('subscribeFlexibleProduct', 'productId', productId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('subscribeFlexibleProduct', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\n }\n\n if (sourceAccount !== undefined && sourceAccount !== null) {\n localVarQueryParameter['sourceAccount'] = sourceAccount;\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/simple-earn/flexible/subscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {string} projectId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {string} [sourceAccount] `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @param {string} [redeemTo] `SPOT`,`FLEXIBLE`, default `FLEXIBLE`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n subscribeLockedProduct: async (\n projectId: string,\n amount: number,\n autoSubscribe?: boolean,\n sourceAccount?: string,\n redeemTo?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('subscribeLockedProduct', 'projectId', projectId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('subscribeLockedProduct', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\n }\n\n if (sourceAccount !== undefined && sourceAccount !== null) {\n localVarQueryParameter['sourceAccount'] = sourceAccount;\n }\n\n if (redeemTo !== undefined && redeemTo !== null) {\n localVarQueryParameter['redeemTo'] = redeemTo;\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/simple-earn/locked/subscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * EarnApi - interface\n * @interface EarnApi\n */\nexport interface EarnApiInterface {\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>;\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>;\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>>;\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>>;\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>;\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>;\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>;\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>>;\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>>;\n}\n\n/**\n * Request parameters for getFlexibleSubscriptionPreview operation in EarnApi.\n * @interface GetFlexibleSubscriptionPreviewRequest\n */\nexport interface GetFlexibleSubscriptionPreviewRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedSubscriptionPreview operation in EarnApi.\n * @interface GetLockedSubscriptionPreviewRequest\n */\nexport interface GetLockedSubscriptionPreviewRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly autoSubscribe?: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for redeemFlexibleProduct operation in EarnApi.\n * @interface RedeemFlexibleProductRequest\n */\nexport interface RedeemFlexibleProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly productId: string;\n\n /**\n * true or false, default to false\n * @type {boolean}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly redeemAll?: boolean;\n\n /**\n * if redeemAll is false, amount is mandatory\n * @type {number}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly amount?: number;\n\n /**\n * `SPOT`,`FUND`, default `SPOT`\n * @type {string}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly destAccount?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for redeemLockedProduct operation in EarnApi.\n * @interface RedeemLockedProductRequest\n */\nexport interface RedeemLockedProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiRedeemLockedProduct\n */\n readonly positionId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiRedeemLockedProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setFlexibleAutoSubscribe operation in EarnApi.\n * @interface SetFlexibleAutoSubscribeRequest\n */\nexport interface SetFlexibleAutoSubscribeRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly productId: string;\n\n /**\n * true or false\n * @type {boolean}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly autoSubscribe: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setLockedAutoSubscribe operation in EarnApi.\n * @interface SetLockedAutoSubscribeRequest\n */\nexport interface SetLockedAutoSubscribeRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly positionId: string;\n\n /**\n * true or false\n * @type {boolean}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly autoSubscribe: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setLockedProductRedeemOption operation in EarnApi.\n * @interface SetLockedProductRedeemOptionRequest\n */\nexport interface SetLockedProductRedeemOptionRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly positionId: string;\n\n /**\n * `SPOT`,'FLEXIBLE'\n * @type {string}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly redeemTo: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for subscribeFlexibleProduct operation in EarnApi.\n * @interface SubscribeFlexibleProductRequest\n */\nexport interface SubscribeFlexibleProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly autoSubscribe?: boolean;\n\n /**\n * `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @type {string}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly sourceAccount?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for subscribeLockedProduct operation in EarnApi.\n * @interface SubscribeLockedProductRequest\n */\nexport interface SubscribeLockedProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly autoSubscribe?: boolean;\n\n /**\n * `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly sourceAccount?: string;\n\n /**\n * `SPOT`,`FLEXIBLE`, default `FLEXIBLE`\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly redeemTo?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * EarnApi - object-oriented interface\n * @class EarnApi\n */\nexport class EarnApi implements EarnApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = EarnApiAxiosParamCreator(configuration);\n }\n\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Flexible-Subscription-Preview Binance API Documentation}\n */\n public async getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getFlexibleSubscriptionPreview(\n requestParameters?.productId,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleSubscriptionPreviewResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Locked-Subscription-Preview Binance API Documentation}\n */\n public async getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedSubscriptionPreview(\n requestParameters?.projectId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedSubscriptionPreviewResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Flexible-Product Binance API Documentation}\n */\n public async redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.redeemFlexibleProduct(\n requestParameters?.productId,\n requestParameters?.redeemAll,\n requestParameters?.amount,\n requestParameters?.destAccount,\n requestParameters?.recvWindow\n );\n return sendRequest<RedeemFlexibleProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Locked-Product Binance API Documentation}\n */\n public async redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.redeemLockedProduct(\n requestParameters?.positionId,\n requestParameters?.recvWindow\n );\n return sendRequest<RedeemLockedProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Flexible-Auto-Subscribe Binance API Documentation}\n */\n public async setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setFlexibleAutoSubscribe(\n requestParameters?.productId,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<SetFlexibleAutoSubscribeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Auto-Subscribe Binance API Documentation}\n */\n public async setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setLockedAutoSubscribe(\n requestParameters?.positionId,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<SetLockedAutoSubscribeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Redeem-Option Binance API Documentation}\n */\n public async setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setLockedProductRedeemOption(\n requestParameters?.positionId,\n requestParameters?.redeemTo,\n requestParameters?.recvWindow\n );\n return sendRequest<SetLockedProductRedeemOptionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Flexible-Product Binance API Documentation}\n */\n public async subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.subscribeFlexibleProduct(\n requestParameters?.productId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.sourceAccount,\n requestParameters?.recvWindow\n );\n return sendRequest<SubscribeFlexibleProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Locked-Product Binance API Documentation}\n */\n public async subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.subscribeLockedProduct(\n requestParameters?.projectId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.sourceAccount,\n requestParameters?.redeemTo,\n requestParameters?.recvWindow\n );\n return sendRequest<SubscribeLockedProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetCollateralRecordResponse,\n GetFlexibleRedemptionRecordResponse,\n GetFlexibleRewardsHistoryResponse,\n GetFlexibleSubscriptionRecordResponse,\n GetLockedRedemptionRecordResponse,\n GetLockedRewardsHistoryResponse,\n GetLockedSubscriptionRecordResponse,\n GetRateHistoryResponse,\n} from '../types';\n\n/**\n * HistoryApi - axios parameter creator\n */\nconst HistoryApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {string} [productId]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCollateralRecord: async (\n productId?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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 (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/simple-earn/flexible/history/collateralRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {string} [productId]\n * @param {string} [redeemId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleRedemptionRecord: async (\n productId?: string,\n redeemId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (redeemId !== undefined && redeemId !== null) {\n localVarQueryParameter['redeemId'] = redeemId;\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 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/simple-earn/flexible/history/redemptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {string} type `Bonus` - Bonus tiered APR, `REALTIME` Real-time APR, `REWARDS` Historical rewards,`ALL`(set to default)\n * @param {string} [productId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleRewardsHistory: async (\n type: string,\n productId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'type' is not null or undefined\n assertParamExists('getFlexibleRewardsHistory', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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 (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\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/simple-earn/flexible/history/rewardsRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {string} [productId]\n * @param {string} [purchaseId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleSubscriptionRecord: async (\n productId?: string,\n purchaseId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (purchaseId !== undefined && purchaseId !== null) {\n localVarQueryParameter['purchaseId'] = purchaseId;\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 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/simple-earn/flexible/history/subscriptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {number} [positionId]\n * @param {string} [redeemId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedRedemptionRecord: async (\n positionId?: number,\n redeemId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (redeemId !== undefined && redeemId !== null) {\n localVarQueryParameter['redeemId'] = redeemId;\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 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/simple-earn/locked/history/redemptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {number} [positionId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedRewardsHistory: async (\n positionId?: number,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\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 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/simple-earn/locked/history/rewardsRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {string} [purchaseId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedSubscriptionRecord: async (\n purchaseId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (purchaseId !== undefined && purchaseId !== null) {\n localVarQueryParameter['purchaseId'] = purchaseId;\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 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/simple-earn/locked/history/subscriptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {string} productId\n * @param {string} [aprPeriod] \"DAY\",\"YEAR\",default\"DAY\"\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getRateHistory: async (\n productId: string,\n aprPeriod?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getRateHistory', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (aprPeriod !== undefined && aprPeriod !== null) {\n localVarQueryParameter['aprPeriod'] = aprPeriod;\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 (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/simple-earn/flexible/history/rateHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * HistoryApi - interface\n * @interface HistoryApi\n */\nexport interface HistoryApiInterface {\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getCollateralRecord(\n requestParameters?: GetCollateralRecordRequest\n ): Promise<RestApiResponse<GetCollateralRecordResponse>>;\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleRedemptionRecord(\n requestParameters?: GetFlexibleRedemptionRecordRequest\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>;\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>;\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleSubscriptionRecord(\n requestParameters?: GetFlexibleSubscriptionRecordRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>;\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedRedemptionRecord(\n requestParameters?: GetLockedRedemptionRecordRequest\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>;\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedRewardsHistory(\n requestParameters?: GetLockedRewardsHistoryRequest\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>;\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedSubscriptionRecord(\n requestParameters?: GetLockedSubscriptionRecordRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>;\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>>;\n}\n\n/**\n * Request parameters for getCollateralRecord operation in HistoryApi.\n * @interface GetCollateralRecordRequest\n */\nexport interface GetCollateralRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleRedemptionRecord operation in HistoryApi.\n * @interface GetFlexibleRedemptionRecordRequest\n */\nexport interface GetFlexibleRedemptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly redeemId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleRewardsHistory operation in HistoryApi.\n * @interface GetFlexibleRewardsHistoryRequest\n */\nexport interface GetFlexibleRewardsHistoryRequest {\n /**\n * `Bonus` - Bonus tiered APR, `REALTIME` Real-time APR, `REWARDS` Historical rewards,`ALL`(set to default)\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly type: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleSubscriptionRecord operation in HistoryApi.\n * @interface GetFlexibleSubscriptionRecordRequest\n */\nexport interface GetFlexibleSubscriptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly purchaseId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedRedemptionRecord operation in HistoryApi.\n * @interface GetLockedRedemptionRecordRequest\n */\nexport interface GetLockedRedemptionRecordRequest {\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly redeemId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedRewardsHistory operation in HistoryApi.\n * @interface GetLockedRewardsHistoryRequest\n */\nexport interface GetLockedRewardsHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedSubscriptionRecord operation in HistoryApi.\n * @interface GetLockedSubscriptionRecordRequest\n */\nexport interface GetLockedSubscriptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly purchaseId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getRateHistory operation in HistoryApi.\n * @interface GetRateHistoryRequest\n */\nexport interface GetRateHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetRateHistory\n */\n readonly productId: string;\n\n /**\n * \"DAY\",\"YEAR\",default\"DAY\"\n * @type {string}\n * @memberof HistoryApiGetRateHistory\n */\n readonly aprPeriod?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * HistoryApi - object-oriented interface\n * @class HistoryApi\n */\nexport class HistoryApi implements HistoryApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = HistoryApiAxiosParamCreator(configuration);\n }\n\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCollateralRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Collateral-Record Binance API Documentation}\n */\n public async getCollateralRecord(\n requestParameters: GetCollateralRecordRequest = {}\n ): Promise<RestApiResponse<GetCollateralRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCollateralRecord(\n requestParameters?.productId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetCollateralRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Redemption-Record Binance API Documentation}\n */\n public async getFlexibleRedemptionRecord(\n requestParameters: GetFlexibleRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleRedemptionRecord(\n requestParameters?.productId,\n requestParameters?.redeemId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleRedemptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Rewards-History Binance API Documentation}\n */\n public async getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleRewardsHistory(\n requestParameters?.type,\n requestParameters?.productId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleRewardsHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Subscription-Record Binance API Documentation}\n */\n public async getFlexibleSubscriptionRecord(\n requestParameters: GetFlexibleSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getFlexibleSubscriptionRecord(\n requestParameters?.productId,\n requestParameters?.purchaseId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleSubscriptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Redemption-Record Binance API Documentation}\n */\n public async getLockedRedemptionRecord(\n requestParameters: GetLockedRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedRedemptionRecord(\n requestParameters?.positionId,\n requestParameters?.redeemId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedRedemptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Rewards-History Binance API Documentation}\n */\n public async getLockedRewardsHistory(\n requestParameters: GetLockedRewardsHistoryRequest = {}\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedRewardsHistory(\n requestParameters?.positionId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedRewardsHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Subscription-Record Binance API Documentation}\n */\n public async getLockedSubscriptionRecord(\n requestParameters: GetLockedSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedSubscriptionRecord(\n requestParameters?.purchaseId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedSubscriptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetRateHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Rate-History Binance API Documentation}\n */\n public async getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getRateHistory(\n requestParameters?.productId,\n requestParameters?.aprPeriod,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetRateHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 { EarnApi } from './modules/earn-api';\nimport { HistoryApi } from './modules/history-api';\n\nimport type {\n GetFlexiblePersonalLeftQuotaRequest,\n GetFlexibleProductPositionRequest,\n GetLockedPersonalLeftQuotaRequest,\n GetLockedProductPositionRequest,\n GetSimpleEarnFlexibleProductListRequest,\n GetSimpleEarnLockedProductListRequest,\n SimpleAccountRequest,\n} from './modules/account-api';\nimport type {\n GetFlexibleSubscriptionPreviewRequest,\n GetLockedSubscriptionPreviewRequest,\n RedeemFlexibleProductRequest,\n RedeemLockedProductRequest,\n SetFlexibleAutoSubscribeRequest,\n SetLockedAutoSubscribeRequest,\n SetLockedProductRedeemOptionRequest,\n SubscribeFlexibleProductRequest,\n SubscribeLockedProductRequest,\n} from './modules/earn-api';\nimport type {\n GetCollateralRecordRequest,\n GetFlexibleRedemptionRecordRequest,\n GetFlexibleRewardsHistoryRequest,\n GetFlexibleSubscriptionRecordRequest,\n GetLockedRedemptionRecordRequest,\n GetLockedRewardsHistoryRequest,\n GetLockedSubscriptionRecordRequest,\n GetRateHistoryRequest,\n} from './modules/history-api';\n\nimport type {\n GetFlexiblePersonalLeftQuotaResponse,\n GetFlexibleProductPositionResponse,\n GetLockedPersonalLeftQuotaResponse,\n GetLockedProductPositionResponse,\n GetSimpleEarnFlexibleProductListResponse,\n GetSimpleEarnLockedProductListResponse,\n SimpleAccountResponse,\n} from './types';\nimport type {\n GetFlexibleSubscriptionPreviewResponse,\n GetLockedSubscriptionPreviewResponse,\n RedeemFlexibleProductResponse,\n RedeemLockedProductResponse,\n SetFlexibleAutoSubscribeResponse,\n SetLockedAutoSubscribeResponse,\n SetLockedProductRedeemOptionResponse,\n SubscribeFlexibleProductResponse,\n SubscribeLockedProductResponse,\n} from './types';\nimport type {\n GetCollateralRecordResponse,\n GetFlexibleRedemptionRecordResponse,\n GetFlexibleRewardsHistoryResponse,\n GetFlexibleSubscriptionRecordResponse,\n GetLockedRedemptionRecordResponse,\n GetLockedRewardsHistoryResponse,\n GetLockedSubscriptionRecordResponse,\n GetRateHistoryResponse,\n} from './types';\n\nexport class RestAPI {\n private configuration: ConfigurationRestAPI;\n private accountApi: AccountApi;\n private earnApi: EarnApi;\n private historyApi: HistoryApi;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.accountApi = new AccountApi(configuration);\n this.earnApi = new EarnApi(configuration);\n this.historyApi = new HistoryApi(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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Personal-Left-Quota Binance API Documentation}\n */\n getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>> {\n return this.accountApi.getFlexiblePersonalLeftQuota(requestParameters);\n }\n\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Product-Position Binance API Documentation}\n */\n getFlexibleProductPosition(\n requestParameters: GetFlexibleProductPositionRequest = {}\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>> {\n return this.accountApi.getFlexibleProductPosition(requestParameters);\n }\n\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Personal-Left-Quota Binance API Documentation}\n */\n getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>> {\n return this.accountApi.getLockedPersonalLeftQuota(requestParameters);\n }\n\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Product-Position Binance API Documentation}\n */\n getLockedProductPosition(\n requestParameters: GetLockedProductPositionRequest = {}\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>> {\n return this.accountApi.getLockedProductPosition(requestParameters);\n }\n\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Flexible-Product-List Binance API Documentation}\n */\n getSimpleEarnFlexibleProductList(\n requestParameters: GetSimpleEarnFlexibleProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>> {\n return this.accountApi.getSimpleEarnFlexibleProductList(requestParameters);\n }\n\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Locked-Product-List Binance API Documentation}\n */\n getSimpleEarnLockedProductList(\n requestParameters: GetSimpleEarnLockedProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>> {\n return this.accountApi.getSimpleEarnLockedProductList(requestParameters);\n }\n\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SimpleAccountResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Simple-Account Binance API Documentation}\n */\n simpleAccount(\n requestParameters: SimpleAccountRequest = {}\n ): Promise<RestApiResponse<SimpleAccountResponse>> {\n return this.accountApi.simpleAccount(requestParameters);\n }\n\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Flexible-Subscription-Preview Binance API Documentation}\n */\n getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>> {\n return this.earnApi.getFlexibleSubscriptionPreview(requestParameters);\n }\n\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Locked-Subscription-Preview Binance API Documentation}\n */\n getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>> {\n return this.earnApi.getLockedSubscriptionPreview(requestParameters);\n }\n\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Flexible-Product Binance API Documentation}\n */\n redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>> {\n return this.earnApi.redeemFlexibleProduct(requestParameters);\n }\n\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Locked-Product Binance API Documentation}\n */\n redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>> {\n return this.earnApi.redeemLockedProduct(requestParameters);\n }\n\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Flexible-Auto-Subscribe Binance API Documentation}\n */\n setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>> {\n return this.earnApi.setFlexibleAutoSubscribe(requestParameters);\n }\n\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Auto-Subscribe Binance API Documentation}\n */\n setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>> {\n return this.earnApi.setLockedAutoSubscribe(requestParameters);\n }\n\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Redeem-Option Binance API Documentation}\n */\n setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>> {\n return this.earnApi.setLockedProductRedeemOption(requestParameters);\n }\n\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Flexible-Product Binance API Documentation}\n */\n subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>> {\n return this.earnApi.subscribeFlexibleProduct(requestParameters);\n }\n\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Locked-Product Binance API Documentation}\n */\n subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>> {\n return this.earnApi.subscribeLockedProduct(requestParameters);\n }\n\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCollateralRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Collateral-Record Binance API Documentation}\n */\n getCollateralRecord(\n requestParameters: GetCollateralRecordRequest = {}\n ): Promise<RestApiResponse<GetCollateralRecordResponse>> {\n return this.historyApi.getCollateralRecord(requestParameters);\n }\n\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Redemption-Record Binance API Documentation}\n */\n getFlexibleRedemptionRecord(\n requestParameters: GetFlexibleRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>> {\n return this.historyApi.getFlexibleRedemptionRecord(requestParameters);\n }\n\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Rewards-History Binance API Documentation}\n */\n getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>> {\n return this.historyApi.getFlexibleRewardsHistory(requestParameters);\n }\n\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Subscription-Record Binance API Documentation}\n */\n getFlexibleSubscriptionRecord(\n requestParameters: GetFlexibleSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>> {\n return this.historyApi.getFlexibleSubscriptionRecord(requestParameters);\n }\n\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Redemption-Record Binance API Documentation}\n */\n getLockedRedemptionRecord(\n requestParameters: GetLockedRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>> {\n return this.historyApi.getLockedRedemptionRecord(requestParameters);\n }\n\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Rewards-History Binance API Documentation}\n */\n getLockedRewardsHistory(\n requestParameters: GetLockedRewardsHistoryRequest = {}\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>> {\n return this.historyApi.getLockedRewardsHistory(requestParameters);\n }\n\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Subscription-Record Binance API Documentation}\n */\n getLockedSubscriptionRecord(\n requestParameters: GetLockedSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>> {\n return this.historyApi.getLockedSubscriptionRecord(requestParameters);\n }\n\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetRateHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Rate-History Binance API Documentation}\n */\n getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>> {\n return this.historyApi.getRateHistory(requestParameters);\n }\n}\n","export { SimpleEarn, ConfigurationSimpleEarn } from './simple-earn';\nexport * as SimpleEarnRestAPI from './rest-api';\n\nexport {\n SIMPLE_EARN_REST_API_PROD_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","sendRequest","sendRequest","ConfigurationRestAPI","SIMPLE_EARN_REST_API_PROD_URL"]}
|
|
1
|
+
{"version":3,"sources":["../src/simple-earn.ts","../package.json","../src/rest-api/index.ts","../src/rest-api/modules/account-api.ts","../src/rest-api/modules/earn-api.ts","../src/rest-api/modules/history-api.ts","../src/rest-api/rest-api.ts","../src/index.ts"],"sourcesContent":["import {\n buildUserAgent,\n ConfigurationRestAPI,\n SIMPLE_EARN_REST_API_PROD_URL,\n} from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nexport interface ConfigurationSimpleEarn {\n configurationRestAPI?: ConfigurationRestAPI;\n}\n\nexport class SimpleEarn {\n public restAPI!: RestAPI;\n\n constructor(config: ConfigurationSimpleEarn) {\n const userAgent = buildUserAgent(name, version);\n\n if (config?.configurationRestAPI) {\n const configRestAPI = new ConfigurationRestAPI(\n config.configurationRestAPI\n ) as ConfigurationRestAPI & {\n baseOptions: Record<string, unknown>;\n };\n configRestAPI.basePath = configRestAPI.basePath || SIMPLE_EARN_REST_API_PROD_URL;\n configRestAPI.baseOptions = configRestAPI.baseOptions || {};\n configRestAPI.baseOptions.headers = {\n ...(configRestAPI.baseOptions.headers || {}),\n 'User-Agent': userAgent,\n };\n this.restAPI = new RestAPI(configRestAPI);\n }\n }\n}\n","{\n \"name\": \"@binance/simple-earn\",\n \"description\": \"Official Binance Simple Earn Connector - A lightweight library that provides a convenient interface to Binance's Simple Earn REST API.\",\n \"version\": \"5.0.7\",\n \"main\": \"./dist/index.js\",\n \"module\": \"./dist/index.mjs\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"require\": \"./dist/index.js\",\n \"import\": \"./dist/index.mjs\"\n }\n },\n \"scripts\": {\n \"prepublishOnly\": \"npm run build\",\n \"build\": \"npm run clean && tsup\",\n \"typecheck\": \"tsc --noEmit\",\n \"clean\": \"rm -rf dist\",\n \"test\": \"npx jest --maxWorkers=4 --bail\",\n \"test:watch\": \"npx jest --watch\",\n \"format\": \"npx prettier --ignore-path .prettierignore --write .\",\n \"lint\": \"npx eslint '**/*.ts' --fix\"\n },\n \"keywords\": [\n \"Binance\",\n \"API\",\n \"Simple Earn\",\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\": \"^8.4.0\",\n \"typescript\": \"^5.7.2\",\n \"typescript-eslint\": \"^8.24.0\"\n },\n \"dependencies\": {\n \"@binance/common\": \"1.2.4\",\n \"axios\": \"^1.7.4\"\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetFlexiblePersonalLeftQuotaResponse,\n GetFlexibleProductPositionResponse,\n GetLockedPersonalLeftQuotaResponse,\n GetLockedProductPositionResponse,\n GetSimpleEarnFlexibleProductListResponse,\n GetSimpleEarnLockedProductListResponse,\n SimpleAccountResponse,\n} from '../types';\n\n/**\n * AccountApi - axios parameter creator\n */\nconst AccountApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {string} productId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexiblePersonalLeftQuota: async (\n productId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getFlexiblePersonalLeftQuota', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/personalLeftQuota',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {string} [asset]\n * @param {string} [productId]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleProductPosition: async (\n asset?: string,\n productId?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/position',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {string} projectId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedPersonalLeftQuota: async (\n projectId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('getLockedPersonalLeftQuota', 'projectId', projectId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\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/simple-earn/locked/personalLeftQuota',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {string} [asset]\n * @param {number} [positionId]\n * @param {string} [projectId]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedProductPosition: async (\n asset?: string,\n positionId?: number,\n projectId?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\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/simple-earn/locked/position',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {string} [asset]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getSimpleEarnFlexibleProductList: async (\n asset?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (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/simple-earn/flexible/list',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {string} [asset]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getSimpleEarnLockedProductList: async (\n asset?: string,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (asset !== undefined && asset !== null) {\n localVarQueryParameter['asset'] = asset;\n }\n\n if (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/simple-earn/locked/list',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n simpleAccount: 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/simple-earn/account',\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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>;\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getFlexibleProductPosition(\n requestParameters?: GetFlexibleProductPositionRequest\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>>;\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>;\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getLockedProductPosition(\n requestParameters?: GetLockedProductPositionRequest\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>>;\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getSimpleEarnFlexibleProductList(\n requestParameters?: GetSimpleEarnFlexibleProductListRequest\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>;\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n getSimpleEarnLockedProductList(\n requestParameters?: GetSimpleEarnLockedProductListRequest\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>;\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApiInterface\n */\n simpleAccount(\n requestParameters?: SimpleAccountRequest\n ): Promise<RestApiResponse<SimpleAccountResponse>>;\n}\n\n/**\n * Request parameters for getFlexiblePersonalLeftQuota operation in AccountApi.\n * @interface GetFlexiblePersonalLeftQuotaRequest\n */\nexport interface GetFlexiblePersonalLeftQuotaRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexiblePersonalLeftQuota\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetFlexiblePersonalLeftQuota\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleProductPosition operation in AccountApi.\n * @interface GetFlexibleProductPositionRequest\n */\nexport interface GetFlexibleProductPositionRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly asset?: string;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly productId?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetFlexibleProductPosition\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedPersonalLeftQuota operation in AccountApi.\n * @interface GetLockedPersonalLeftQuotaRequest\n */\nexport interface GetLockedPersonalLeftQuotaRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedPersonalLeftQuota\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedPersonalLeftQuota\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedProductPosition operation in AccountApi.\n * @interface GetLockedProductPositionRequest\n */\nexport interface GetLockedProductPositionRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly projectId?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetLockedProductPosition\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getSimpleEarnFlexibleProductList operation in AccountApi.\n * @interface GetSimpleEarnFlexibleProductListRequest\n */\nexport interface GetSimpleEarnFlexibleProductListRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly asset?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetSimpleEarnFlexibleProductList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getSimpleEarnLockedProductList operation in AccountApi.\n * @interface GetSimpleEarnLockedProductListRequest\n */\nexport interface GetSimpleEarnLockedProductListRequest {\n /**\n *\n * @type {string}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly asset?: string;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof AccountApiGetSimpleEarnLockedProductList\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for simpleAccount operation in AccountApi.\n * @interface SimpleAccountRequest\n */\nexport interface SimpleAccountRequest {\n /**\n *\n * @type {number}\n * @memberof AccountApiSimpleAccount\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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Personal-Left-Quota Binance API Documentation}\n */\n public async getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexiblePersonalLeftQuota(\n requestParameters?.productId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexiblePersonalLeftQuotaResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Product-Position Binance API Documentation}\n */\n public async getFlexibleProductPosition(\n requestParameters: GetFlexibleProductPositionRequest = {}\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleProductPosition(\n requestParameters?.asset,\n requestParameters?.productId,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleProductPositionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Personal-Left-Quota Binance API Documentation}\n */\n public async getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedPersonalLeftQuota(\n requestParameters?.projectId,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedPersonalLeftQuotaResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Product-Position Binance API Documentation}\n */\n public async getLockedProductPosition(\n requestParameters: GetLockedProductPositionRequest = {}\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedProductPosition(\n requestParameters?.asset,\n requestParameters?.positionId,\n requestParameters?.projectId,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedProductPositionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Flexible-Product-List Binance API Documentation}\n */\n public async getSimpleEarnFlexibleProductList(\n requestParameters: GetSimpleEarnFlexibleProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getSimpleEarnFlexibleProductList(\n requestParameters?.asset,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetSimpleEarnFlexibleProductListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Locked-Product-List Binance API Documentation}\n */\n public async getSimpleEarnLockedProductList(\n requestParameters: GetSimpleEarnLockedProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getSimpleEarnLockedProductList(\n requestParameters?.asset,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetSimpleEarnLockedProductListResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SimpleAccountResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof AccountApi\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Simple-Account Binance API Documentation}\n */\n public async simpleAccount(\n requestParameters: SimpleAccountRequest = {}\n ): Promise<RestApiResponse<SimpleAccountResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.simpleAccount(\n requestParameters?.recvWindow\n );\n return sendRequest<SimpleAccountResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetFlexibleSubscriptionPreviewResponse,\n GetLockedSubscriptionPreviewResponse,\n RedeemFlexibleProductResponse,\n RedeemLockedProductResponse,\n SetFlexibleAutoSubscribeResponse,\n SetLockedAutoSubscribeResponse,\n SetLockedProductRedeemOptionResponse,\n SubscribeFlexibleProductResponse,\n SubscribeLockedProductResponse,\n} from '../types';\n\n/**\n * EarnApi - axios parameter creator\n */\nconst EarnApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {string} productId\n * @param {number} amount\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleSubscriptionPreview: async (\n productId: string,\n amount: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getFlexibleSubscriptionPreview', 'productId', productId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('getFlexibleSubscriptionPreview', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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/simple-earn/flexible/subscriptionPreview',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {string} projectId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedSubscriptionPreview: async (\n projectId: string,\n amount: number,\n autoSubscribe?: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('getLockedSubscriptionPreview', 'projectId', projectId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('getLockedSubscriptionPreview', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/locked/subscriptionPreview',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {string} productId\n * @param {boolean} [redeemAll] true or false, default to false\n * @param {number} [amount] if redeemAll is false, amount is mandatory\n * @param {string} [destAccount] `SPOT`,`FUND`, default `SPOT`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n redeemFlexibleProduct: async (\n productId: string,\n redeemAll?: boolean,\n amount?: number,\n destAccount?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('redeemFlexibleProduct', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (redeemAll !== undefined && redeemAll !== null) {\n localVarQueryParameter['redeemAll'] = redeemAll;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (destAccount !== undefined && destAccount !== null) {\n localVarQueryParameter['destAccount'] = destAccount;\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/simple-earn/flexible/redeem',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {string} positionId\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n redeemLockedProduct: async (\n positionId: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('redeemLockedProduct', 'positionId', positionId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\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/simple-earn/locked/redeem',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {string} productId\n * @param {boolean} autoSubscribe true or false\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setFlexibleAutoSubscribe: async (\n productId: string,\n autoSubscribe: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('setFlexibleAutoSubscribe', 'productId', productId);\n // verify required parameter 'autoSubscribe' is not null or undefined\n assertParamExists('setFlexibleAutoSubscribe', 'autoSubscribe', autoSubscribe);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/flexible/setAutoSubscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {string} positionId\n * @param {boolean} autoSubscribe true or false\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setLockedAutoSubscribe: async (\n positionId: string,\n autoSubscribe: boolean,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('setLockedAutoSubscribe', 'positionId', positionId);\n // verify required parameter 'autoSubscribe' is not null or undefined\n assertParamExists('setLockedAutoSubscribe', 'autoSubscribe', autoSubscribe);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\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/simple-earn/locked/setAutoSubscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {string} positionId\n * @param {string} redeemTo `SPOT`,'FLEXIBLE'\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n setLockedProductRedeemOption: async (\n positionId: string,\n redeemTo: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'positionId' is not null or undefined\n assertParamExists('setLockedProductRedeemOption', 'positionId', positionId);\n // verify required parameter 'redeemTo' is not null or undefined\n assertParamExists('setLockedProductRedeemOption', 'redeemTo', redeemTo);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (redeemTo !== undefined && redeemTo !== null) {\n localVarQueryParameter['redeemTo'] = redeemTo;\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/simple-earn/locked/setRedeemOption',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {string} productId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {string} [sourceAccount] `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n subscribeFlexibleProduct: async (\n productId: string,\n amount: number,\n autoSubscribe?: boolean,\n sourceAccount?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('subscribeFlexibleProduct', 'productId', productId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('subscribeFlexibleProduct', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\n }\n\n if (sourceAccount !== undefined && sourceAccount !== null) {\n localVarQueryParameter['sourceAccount'] = sourceAccount;\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/simple-earn/flexible/subscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {string} projectId\n * @param {number} amount\n * @param {boolean} [autoSubscribe] true or false, default true.\n * @param {string} [sourceAccount] `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @param {string} [redeemTo] `SPOT`,`FLEXIBLE`, default `FLEXIBLE`\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n subscribeLockedProduct: async (\n projectId: string,\n amount: number,\n autoSubscribe?: boolean,\n sourceAccount?: string,\n redeemTo?: string,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'projectId' is not null or undefined\n assertParamExists('subscribeLockedProduct', 'projectId', projectId);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('subscribeLockedProduct', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (projectId !== undefined && projectId !== null) {\n localVarQueryParameter['projectId'] = projectId;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarQueryParameter['amount'] = amount;\n }\n\n if (autoSubscribe !== undefined && autoSubscribe !== null) {\n localVarQueryParameter['autoSubscribe'] = autoSubscribe;\n }\n\n if (sourceAccount !== undefined && sourceAccount !== null) {\n localVarQueryParameter['sourceAccount'] = sourceAccount;\n }\n\n if (redeemTo !== undefined && redeemTo !== null) {\n localVarQueryParameter['redeemTo'] = redeemTo;\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/simple-earn/locked/subscribe',\n method: 'POST',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * EarnApi - interface\n * @interface EarnApi\n */\nexport interface EarnApiInterface {\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>;\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>;\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>>;\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>>;\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>;\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>;\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>;\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>>;\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApiInterface\n */\n subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>>;\n}\n\n/**\n * Request parameters for getFlexibleSubscriptionPreview operation in EarnApi.\n * @interface GetFlexibleSubscriptionPreviewRequest\n */\nexport interface GetFlexibleSubscriptionPreviewRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly amount: number;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetFlexibleSubscriptionPreview\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedSubscriptionPreview operation in EarnApi.\n * @interface GetLockedSubscriptionPreviewRequest\n */\nexport interface GetLockedSubscriptionPreviewRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly autoSubscribe?: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiGetLockedSubscriptionPreview\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for redeemFlexibleProduct operation in EarnApi.\n * @interface RedeemFlexibleProductRequest\n */\nexport interface RedeemFlexibleProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly productId: string;\n\n /**\n * true or false, default to false\n * @type {boolean}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly redeemAll?: boolean;\n\n /**\n * if redeemAll is false, amount is mandatory\n * @type {number}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly amount?: number;\n\n /**\n * `SPOT`,`FUND`, default `SPOT`\n * @type {string}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly destAccount?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiRedeemFlexibleProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for redeemLockedProduct operation in EarnApi.\n * @interface RedeemLockedProductRequest\n */\nexport interface RedeemLockedProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiRedeemLockedProduct\n */\n readonly positionId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiRedeemLockedProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setFlexibleAutoSubscribe operation in EarnApi.\n * @interface SetFlexibleAutoSubscribeRequest\n */\nexport interface SetFlexibleAutoSubscribeRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly productId: string;\n\n /**\n * true or false\n * @type {boolean}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly autoSubscribe: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetFlexibleAutoSubscribe\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setLockedAutoSubscribe operation in EarnApi.\n * @interface SetLockedAutoSubscribeRequest\n */\nexport interface SetLockedAutoSubscribeRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly positionId: string;\n\n /**\n * true or false\n * @type {boolean}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly autoSubscribe: boolean;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetLockedAutoSubscribe\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for setLockedProductRedeemOption operation in EarnApi.\n * @interface SetLockedProductRedeemOptionRequest\n */\nexport interface SetLockedProductRedeemOptionRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly positionId: string;\n\n /**\n * `SPOT`,'FLEXIBLE'\n * @type {string}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly redeemTo: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSetLockedProductRedeemOption\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for subscribeFlexibleProduct operation in EarnApi.\n * @interface SubscribeFlexibleProductRequest\n */\nexport interface SubscribeFlexibleProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly productId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly autoSubscribe?: boolean;\n\n /**\n * `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @type {string}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly sourceAccount?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeFlexibleProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for subscribeLockedProduct operation in EarnApi.\n * @interface SubscribeLockedProductRequest\n */\nexport interface SubscribeLockedProductRequest {\n /**\n *\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly projectId: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly amount: number;\n\n /**\n * true or false, default true.\n * @type {boolean}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly autoSubscribe?: boolean;\n\n /**\n * `SPOT`,`FUND`,`ALL`, default `SPOT`\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly sourceAccount?: string;\n\n /**\n * `SPOT`,`FLEXIBLE`, default `FLEXIBLE`\n * @type {string}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly redeemTo?: string;\n\n /**\n *\n * @type {number}\n * @memberof EarnApiSubscribeLockedProduct\n */\n readonly recvWindow?: number;\n}\n\n/**\n * EarnApi - object-oriented interface\n * @class EarnApi\n */\nexport class EarnApi implements EarnApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = EarnApiAxiosParamCreator(configuration);\n }\n\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Flexible-Subscription-Preview Binance API Documentation}\n */\n public async getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getFlexibleSubscriptionPreview(\n requestParameters?.productId,\n requestParameters?.amount,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleSubscriptionPreviewResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Locked-Subscription-Preview Binance API Documentation}\n */\n public async getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedSubscriptionPreview(\n requestParameters?.projectId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedSubscriptionPreviewResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Flexible-Product Binance API Documentation}\n */\n public async redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.redeemFlexibleProduct(\n requestParameters?.productId,\n requestParameters?.redeemAll,\n requestParameters?.amount,\n requestParameters?.destAccount,\n requestParameters?.recvWindow\n );\n return sendRequest<RedeemFlexibleProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Locked-Product Binance API Documentation}\n */\n public async redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.redeemLockedProduct(\n requestParameters?.positionId,\n requestParameters?.recvWindow\n );\n return sendRequest<RedeemLockedProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Flexible-Auto-Subscribe Binance API Documentation}\n */\n public async setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setFlexibleAutoSubscribe(\n requestParameters?.productId,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<SetFlexibleAutoSubscribeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Auto-Subscribe Binance API Documentation}\n */\n public async setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setLockedAutoSubscribe(\n requestParameters?.positionId,\n requestParameters?.autoSubscribe,\n requestParameters?.recvWindow\n );\n return sendRequest<SetLockedAutoSubscribeResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Redeem-Option Binance API Documentation}\n */\n public async setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.setLockedProductRedeemOption(\n requestParameters?.positionId,\n requestParameters?.redeemTo,\n requestParameters?.recvWindow\n );\n return sendRequest<SetLockedProductRedeemOptionResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Flexible-Product Binance API Documentation}\n */\n public async subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.subscribeFlexibleProduct(\n requestParameters?.productId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.sourceAccount,\n requestParameters?.recvWindow\n );\n return sendRequest<SubscribeFlexibleProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof EarnApi\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Locked-Product Binance API Documentation}\n */\n public async subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.subscribeLockedProduct(\n requestParameters?.projectId,\n requestParameters?.amount,\n requestParameters?.autoSubscribe,\n requestParameters?.sourceAccount,\n requestParameters?.redeemTo,\n requestParameters?.recvWindow\n );\n return sendRequest<SubscribeLockedProductResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 GetCollateralRecordResponse,\n GetFlexibleRedemptionRecordResponse,\n GetFlexibleRewardsHistoryResponse,\n GetFlexibleSubscriptionRecordResponse,\n GetLockedRedemptionRecordResponse,\n GetLockedRewardsHistoryResponse,\n GetLockedSubscriptionRecordResponse,\n GetRateHistoryResponse,\n} from '../types';\n\n/**\n * HistoryApi - axios parameter creator\n */\nconst HistoryApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {string} [productId]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getCollateralRecord: async (\n productId?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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 (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/simple-earn/flexible/history/collateralRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {string} [productId]\n * @param {string} [redeemId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleRedemptionRecord: async (\n productId?: string,\n redeemId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (redeemId !== undefined && redeemId !== null) {\n localVarQueryParameter['redeemId'] = redeemId;\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 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/simple-earn/flexible/history/redemptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {string} type `Bonus` - Bonus tiered APR, `REALTIME` Real-time APR, `REWARDS` Historical rewards,`ALL`(set to default)\n * @param {string} [productId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleRewardsHistory: async (\n type: string,\n productId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'type' is not null or undefined\n assertParamExists('getFlexibleRewardsHistory', 'type', type);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\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 (type !== undefined && type !== null) {\n localVarQueryParameter['type'] = type;\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/simple-earn/flexible/history/rewardsRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {string} [productId]\n * @param {string} [purchaseId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFlexibleSubscriptionRecord: async (\n productId?: string,\n purchaseId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (purchaseId !== undefined && purchaseId !== null) {\n localVarQueryParameter['purchaseId'] = purchaseId;\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 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/simple-earn/flexible/history/subscriptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {number} [positionId]\n * @param {string} [redeemId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedRedemptionRecord: async (\n positionId?: number,\n redeemId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\n }\n\n if (redeemId !== undefined && redeemId !== null) {\n localVarQueryParameter['redeemId'] = redeemId;\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 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/simple-earn/locked/history/redemptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {number} [positionId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedRewardsHistory: async (\n positionId?: number,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (positionId !== undefined && positionId !== null) {\n localVarQueryParameter['positionId'] = positionId;\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 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/simple-earn/locked/history/rewardsRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {string} [purchaseId]\n * @param {string} [asset]\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getLockedSubscriptionRecord: async (\n purchaseId?: string,\n asset?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (purchaseId !== undefined && purchaseId !== null) {\n localVarQueryParameter['purchaseId'] = purchaseId;\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 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/simple-earn/locked/history/subscriptionRecord',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {string} productId\n * @param {string} [aprPeriod] \"DAY\",\"YEAR\",default\"DAY\"\n * @param {number} [startTime]\n * @param {number} [endTime]\n * @param {number} [current] Currently querying the page. Start from 1. Default:1\n * @param {number} [size] Default:10, Max:100\n * @param {number} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getRateHistory: async (\n productId: string,\n aprPeriod?: string,\n startTime?: number,\n endTime?: number,\n current?: number,\n size?: number,\n recvWindow?: number\n ): Promise<RequestArgs> => {\n // verify required parameter 'productId' is not null or undefined\n assertParamExists('getRateHistory', 'productId', productId);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n\n if (productId !== undefined && productId !== null) {\n localVarQueryParameter['productId'] = productId;\n }\n\n if (aprPeriod !== undefined && aprPeriod !== null) {\n localVarQueryParameter['aprPeriod'] = aprPeriod;\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 (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/simple-earn/flexible/history/rateHistory',\n method: 'GET',\n params: localVarQueryParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * HistoryApi - interface\n * @interface HistoryApi\n */\nexport interface HistoryApiInterface {\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getCollateralRecord(\n requestParameters?: GetCollateralRecordRequest\n ): Promise<RestApiResponse<GetCollateralRecordResponse>>;\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleRedemptionRecord(\n requestParameters?: GetFlexibleRedemptionRecordRequest\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>;\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>;\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getFlexibleSubscriptionRecord(\n requestParameters?: GetFlexibleSubscriptionRecordRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>;\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedRedemptionRecord(\n requestParameters?: GetLockedRedemptionRecordRequest\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>;\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedRewardsHistory(\n requestParameters?: GetLockedRewardsHistoryRequest\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>;\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getLockedSubscriptionRecord(\n requestParameters?: GetLockedSubscriptionRecordRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>;\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApiInterface\n */\n getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>>;\n}\n\n/**\n * Request parameters for getCollateralRecord operation in HistoryApi.\n * @interface GetCollateralRecordRequest\n */\nexport interface GetCollateralRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetCollateralRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleRedemptionRecord operation in HistoryApi.\n * @interface GetFlexibleRedemptionRecordRequest\n */\nexport interface GetFlexibleRedemptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly redeemId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRedemptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleRewardsHistory operation in HistoryApi.\n * @interface GetFlexibleRewardsHistoryRequest\n */\nexport interface GetFlexibleRewardsHistoryRequest {\n /**\n * `Bonus` - Bonus tiered APR, `REALTIME` Real-time APR, `REWARDS` Historical rewards,`ALL`(set to default)\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly type: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleRewardsHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getFlexibleSubscriptionRecord operation in HistoryApi.\n * @interface GetFlexibleSubscriptionRecordRequest\n */\nexport interface GetFlexibleSubscriptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly productId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly purchaseId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetFlexibleSubscriptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedRedemptionRecord operation in HistoryApi.\n * @interface GetLockedRedemptionRecordRequest\n */\nexport interface GetLockedRedemptionRecordRequest {\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly redeemId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRedemptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedRewardsHistory operation in HistoryApi.\n * @interface GetLockedRewardsHistoryRequest\n */\nexport interface GetLockedRewardsHistoryRequest {\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly positionId?: number;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedRewardsHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getLockedSubscriptionRecord operation in HistoryApi.\n * @interface GetLockedSubscriptionRecordRequest\n */\nexport interface GetLockedSubscriptionRecordRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly purchaseId?: string;\n\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly asset?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetLockedSubscriptionRecord\n */\n readonly recvWindow?: number;\n}\n\n/**\n * Request parameters for getRateHistory operation in HistoryApi.\n * @interface GetRateHistoryRequest\n */\nexport interface GetRateHistoryRequest {\n /**\n *\n * @type {string}\n * @memberof HistoryApiGetRateHistory\n */\n readonly productId: string;\n\n /**\n * \"DAY\",\"YEAR\",default\"DAY\"\n * @type {string}\n * @memberof HistoryApiGetRateHistory\n */\n readonly aprPeriod?: string;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly startTime?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly endTime?: number;\n\n /**\n * Currently querying the page. Start from 1. Default:1\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly current?: number;\n\n /**\n * Default:10, Max:100\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly size?: number;\n\n /**\n *\n * @type {number}\n * @memberof HistoryApiGetRateHistory\n */\n readonly recvWindow?: number;\n}\n\n/**\n * HistoryApi - object-oriented interface\n * @class HistoryApi\n */\nexport class HistoryApi implements HistoryApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = HistoryApiAxiosParamCreator(configuration);\n }\n\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCollateralRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Collateral-Record Binance API Documentation}\n */\n public async getCollateralRecord(\n requestParameters: GetCollateralRecordRequest = {}\n ): Promise<RestApiResponse<GetCollateralRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getCollateralRecord(\n requestParameters?.productId,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetCollateralRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Redemption-Record Binance API Documentation}\n */\n public async getFlexibleRedemptionRecord(\n requestParameters: GetFlexibleRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleRedemptionRecord(\n requestParameters?.productId,\n requestParameters?.redeemId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleRedemptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Rewards-History Binance API Documentation}\n */\n public async getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFlexibleRewardsHistory(\n requestParameters?.type,\n requestParameters?.productId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleRewardsHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Subscription-Record Binance API Documentation}\n */\n public async getFlexibleSubscriptionRecord(\n requestParameters: GetFlexibleSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getFlexibleSubscriptionRecord(\n requestParameters?.productId,\n requestParameters?.purchaseId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFlexibleSubscriptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Redemption-Record Binance API Documentation}\n */\n public async getLockedRedemptionRecord(\n requestParameters: GetLockedRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedRedemptionRecord(\n requestParameters?.positionId,\n requestParameters?.redeemId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedRedemptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Rewards-History Binance API Documentation}\n */\n public async getLockedRewardsHistory(\n requestParameters: GetLockedRewardsHistoryRequest = {}\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedRewardsHistory(\n requestParameters?.positionId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedRewardsHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Subscription-Record Binance API Documentation}\n */\n public async getLockedSubscriptionRecord(\n requestParameters: GetLockedSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getLockedSubscriptionRecord(\n requestParameters?.purchaseId,\n requestParameters?.asset,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetLockedSubscriptionRecordResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetRateHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof HistoryApi\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Rate-History Binance API Documentation}\n */\n public async getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getRateHistory(\n requestParameters?.productId,\n requestParameters?.aprPeriod,\n requestParameters?.startTime,\n requestParameters?.endTime,\n requestParameters?.current,\n requestParameters?.size,\n requestParameters?.recvWindow\n );\n return sendRequest<GetRateHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.params,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Simple Earn REST API\n *\n * OpenAPI Specification for the Binance Simple Earn 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 { EarnApi } from './modules/earn-api';\nimport { HistoryApi } from './modules/history-api';\n\nimport type {\n GetFlexiblePersonalLeftQuotaRequest,\n GetFlexibleProductPositionRequest,\n GetLockedPersonalLeftQuotaRequest,\n GetLockedProductPositionRequest,\n GetSimpleEarnFlexibleProductListRequest,\n GetSimpleEarnLockedProductListRequest,\n SimpleAccountRequest,\n} from './modules/account-api';\nimport type {\n GetFlexibleSubscriptionPreviewRequest,\n GetLockedSubscriptionPreviewRequest,\n RedeemFlexibleProductRequest,\n RedeemLockedProductRequest,\n SetFlexibleAutoSubscribeRequest,\n SetLockedAutoSubscribeRequest,\n SetLockedProductRedeemOptionRequest,\n SubscribeFlexibleProductRequest,\n SubscribeLockedProductRequest,\n} from './modules/earn-api';\nimport type {\n GetCollateralRecordRequest,\n GetFlexibleRedemptionRecordRequest,\n GetFlexibleRewardsHistoryRequest,\n GetFlexibleSubscriptionRecordRequest,\n GetLockedRedemptionRecordRequest,\n GetLockedRewardsHistoryRequest,\n GetLockedSubscriptionRecordRequest,\n GetRateHistoryRequest,\n} from './modules/history-api';\n\nimport type {\n GetFlexiblePersonalLeftQuotaResponse,\n GetFlexibleProductPositionResponse,\n GetLockedPersonalLeftQuotaResponse,\n GetLockedProductPositionResponse,\n GetSimpleEarnFlexibleProductListResponse,\n GetSimpleEarnLockedProductListResponse,\n SimpleAccountResponse,\n} from './types';\nimport type {\n GetFlexibleSubscriptionPreviewResponse,\n GetLockedSubscriptionPreviewResponse,\n RedeemFlexibleProductResponse,\n RedeemLockedProductResponse,\n SetFlexibleAutoSubscribeResponse,\n SetLockedAutoSubscribeResponse,\n SetLockedProductRedeemOptionResponse,\n SubscribeFlexibleProductResponse,\n SubscribeLockedProductResponse,\n} from './types';\nimport type {\n GetCollateralRecordResponse,\n GetFlexibleRedemptionRecordResponse,\n GetFlexibleRewardsHistoryResponse,\n GetFlexibleSubscriptionRecordResponse,\n GetLockedRedemptionRecordResponse,\n GetLockedRewardsHistoryResponse,\n GetLockedSubscriptionRecordResponse,\n GetRateHistoryResponse,\n} from './types';\n\nexport class RestAPI {\n private configuration: ConfigurationRestAPI;\n private accountApi: AccountApi;\n private earnApi: EarnApi;\n private historyApi: HistoryApi;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.accountApi = new AccountApi(configuration);\n this.earnApi = new EarnApi(configuration);\n this.historyApi = new HistoryApi(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 * Get Flexible Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Flexible Personal Left Quota(USER_DATA)\n * @param {GetFlexiblePersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Personal-Left-Quota Binance API Documentation}\n */\n getFlexiblePersonalLeftQuota(\n requestParameters: GetFlexiblePersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetFlexiblePersonalLeftQuotaResponse>> {\n return this.accountApi.getFlexiblePersonalLeftQuota(requestParameters);\n }\n\n /**\n * Get Flexible Product Position\n *\n * Weight: 150\n *\n * @summary Get Flexible Product Position(USER_DATA)\n * @param {GetFlexibleProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Flexible-Product-Position Binance API Documentation}\n */\n getFlexibleProductPosition(\n requestParameters: GetFlexibleProductPositionRequest = {}\n ): Promise<RestApiResponse<GetFlexibleProductPositionResponse>> {\n return this.accountApi.getFlexibleProductPosition(requestParameters);\n }\n\n /**\n * Get Locked Personal Left Quota\n *\n * Weight: 150\n *\n * @summary Get Locked Personal Left Quota(USER_DATA)\n * @param {GetLockedPersonalLeftQuotaRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Personal-Left-Quota Binance API Documentation}\n */\n getLockedPersonalLeftQuota(\n requestParameters: GetLockedPersonalLeftQuotaRequest\n ): Promise<RestApiResponse<GetLockedPersonalLeftQuotaResponse>> {\n return this.accountApi.getLockedPersonalLeftQuota(requestParameters);\n }\n\n /**\n * Get Locked Product Position\n *\n * Weight: 150\n *\n * @summary Get Locked Product Position\n * @param {GetLockedProductPositionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedProductPositionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Locked-Product-Position Binance API Documentation}\n */\n getLockedProductPosition(\n requestParameters: GetLockedProductPositionRequest = {}\n ): Promise<RestApiResponse<GetLockedProductPositionResponse>> {\n return this.accountApi.getLockedProductPosition(requestParameters);\n }\n\n /**\n * Get available Simple Earn flexible product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Flexible Product List(USER_DATA)\n * @param {GetSimpleEarnFlexibleProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Flexible-Product-List Binance API Documentation}\n */\n getSimpleEarnFlexibleProductList(\n requestParameters: GetSimpleEarnFlexibleProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnFlexibleProductListResponse>> {\n return this.accountApi.getSimpleEarnFlexibleProductList(requestParameters);\n }\n\n /**\n * Get Simple Earn Locked Product List\n *\n * Get available Simple Earn locked product list\n *\n * Weight: 150\n *\n * @summary Get Simple Earn Locked Product List(USER_DATA)\n * @param {GetSimpleEarnLockedProductListRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Get-Simple-Earn-Locked-Product-List Binance API Documentation}\n */\n getSimpleEarnLockedProductList(\n requestParameters: GetSimpleEarnLockedProductListRequest = {}\n ): Promise<RestApiResponse<GetSimpleEarnLockedProductListResponse>> {\n return this.accountApi.getSimpleEarnLockedProductList(requestParameters);\n }\n\n /**\n * Simple Account query\n *\n * Weight: 150\n *\n * @summary Simple Account(USER_DATA)\n * @param {SimpleAccountRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SimpleAccountResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/account/Simple-Account Binance API Documentation}\n */\n simpleAccount(\n requestParameters: SimpleAccountRequest = {}\n ): Promise<RestApiResponse<SimpleAccountResponse>> {\n return this.accountApi.simpleAccount(requestParameters);\n }\n\n /**\n * Get Flexible Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Preview(USER_DATA)\n * @param {GetFlexibleSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Flexible-Subscription-Preview Binance API Documentation}\n */\n getFlexibleSubscriptionPreview(\n requestParameters: GetFlexibleSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetFlexibleSubscriptionPreviewResponse>> {\n return this.earnApi.getFlexibleSubscriptionPreview(requestParameters);\n }\n\n /**\n * Get Locked Subscription Preview\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Preview(USER_DATA)\n * @param {GetLockedSubscriptionPreviewRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Get-Locked-Subscription-Preview Binance API Documentation}\n */\n getLockedSubscriptionPreview(\n requestParameters: GetLockedSubscriptionPreviewRequest\n ): Promise<RestApiResponse<GetLockedSubscriptionPreviewResponse>> {\n return this.earnApi.getLockedSubscriptionPreview(requestParameters);\n }\n\n /**\n * Redeem Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Redeem Flexible Product(TRADE)\n * @param {RedeemFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Flexible-Product Binance API Documentation}\n */\n redeemFlexibleProduct(\n requestParameters: RedeemFlexibleProductRequest\n ): Promise<RestApiResponse<RedeemFlexibleProductResponse>> {\n return this.earnApi.redeemFlexibleProduct(requestParameters);\n }\n\n /**\n * Redeem Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1/3s per account\n *\n * @summary Redeem Locked Product(TRADE)\n * @param {RedeemLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<RedeemLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Redeem-Locked-Product Binance API Documentation}\n */\n redeemLockedProduct(\n requestParameters: RedeemLockedProductRequest\n ): Promise<RestApiResponse<RedeemLockedProductResponse>> {\n return this.earnApi.redeemLockedProduct(requestParameters);\n }\n\n /**\n * Set Flexible Auto Subscribe\n *\n * Weight: 150\n *\n * @summary Set Flexible Auto Subscribe(USER_DATA)\n * @param {SetFlexibleAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Flexible-Auto-Subscribe Binance API Documentation}\n */\n setFlexibleAutoSubscribe(\n requestParameters: SetFlexibleAutoSubscribeRequest\n ): Promise<RestApiResponse<SetFlexibleAutoSubscribeResponse>> {\n return this.earnApi.setFlexibleAutoSubscribe(requestParameters);\n }\n\n /**\n * Set locked auto subscribe\n *\n * Weight: 150\n *\n * @summary Set Locked Auto Subscribe(USER_DATA)\n * @param {SetLockedAutoSubscribeRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedAutoSubscribeResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Auto-Subscribe Binance API Documentation}\n */\n setLockedAutoSubscribe(\n requestParameters: SetLockedAutoSubscribeRequest\n ): Promise<RestApiResponse<SetLockedAutoSubscribeResponse>> {\n return this.earnApi.setLockedAutoSubscribe(requestParameters);\n }\n\n /**\n * Set redeem option for Locked product\n *\n * Weight: 50\n *\n * @summary Set Locked Product Redeem Option(USER_DATA)\n * @param {SetLockedProductRedeemOptionRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Set-Locked-Redeem-Option Binance API Documentation}\n */\n setLockedProductRedeemOption(\n requestParameters: SetLockedProductRedeemOptionRequest\n ): Promise<RestApiResponse<SetLockedProductRedeemOptionResponse>> {\n return this.earnApi.setLockedProductRedeemOption(requestParameters);\n }\n\n /**\n * Subscribe Flexible Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Flexible Product(TRADE)\n * @param {SubscribeFlexibleProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeFlexibleProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Flexible-Product Binance API Documentation}\n */\n subscribeFlexibleProduct(\n requestParameters: SubscribeFlexibleProductRequest\n ): Promise<RestApiResponse<SubscribeFlexibleProductResponse>> {\n return this.earnApi.subscribeFlexibleProduct(requestParameters);\n }\n\n /**\n * Subscribe Locked Product\n *\n * You need to open `Enable Spot & Margin Trading` permission for the API Key which requests this endpoint.\n *\n * Weight: 1\n *\n * @summary Subscribe Locked Product(TRADE)\n * @param {SubscribeLockedProductRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<SubscribeLockedProductResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/earn/Subscribe-Locked-Product Binance API Documentation}\n */\n subscribeLockedProduct(\n requestParameters: SubscribeLockedProductRequest\n ): Promise<RestApiResponse<SubscribeLockedProductResponse>> {\n return this.earnApi.subscribeLockedProduct(requestParameters);\n }\n\n /**\n * Get Collateral Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 30 days.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 1\n *\n * @summary Get Collateral Record(USER_DATA)\n * @param {GetCollateralRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetCollateralRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Collateral-Record Binance API Documentation}\n */\n getCollateralRecord(\n requestParameters: GetCollateralRecordRequest = {}\n ): Promise<RestApiResponse<GetCollateralRecordResponse>> {\n return this.historyApi.getCollateralRecord(requestParameters);\n }\n\n /**\n * Get Flexible Redemption Record\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Redemption Record(USER_DATA)\n * @param {GetFlexibleRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Redemption-Record Binance API Documentation}\n */\n getFlexibleRedemptionRecord(\n requestParameters: GetFlexibleRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleRedemptionRecordResponse>> {\n return this.historyApi.getFlexibleRedemptionRecord(requestParameters);\n }\n\n /**\n * Get Flexible Rewards History\n *\n *\tThe time between `startTime` and `endTime` cannot be longer than 3 months.\n *\tIf `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n *\tIf `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n *\tIf `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Rewards History(USER_DATA)\n * @param {GetFlexibleRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Rewards-History Binance API Documentation}\n */\n getFlexibleRewardsHistory(\n requestParameters: GetFlexibleRewardsHistoryRequest\n ): Promise<RestApiResponse<GetFlexibleRewardsHistoryResponse>> {\n return this.historyApi.getFlexibleRewardsHistory(requestParameters);\n }\n\n /**\n * Get Flexible Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Flexible Subscription Record(USER_DATA)\n * @param {GetFlexibleSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Flexible-Subscription-Record Binance API Documentation}\n */\n getFlexibleSubscriptionRecord(\n requestParameters: GetFlexibleSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetFlexibleSubscriptionRecordResponse>> {\n return this.historyApi.getFlexibleSubscriptionRecord(requestParameters);\n }\n\n /**\n * Get Locked Redemption Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Redemption Record(USER_DATA)\n * @param {GetLockedRedemptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRedemptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Redemption-Record Binance API Documentation}\n */\n getLockedRedemptionRecord(\n requestParameters: GetLockedRedemptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedRedemptionRecordResponse>> {\n return this.historyApi.getLockedRedemptionRecord(requestParameters);\n }\n\n /**\n * Get Locked Rewards History\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Rewards History(USER_DATA)\n * @param {GetLockedRewardsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedRewardsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Rewards-History Binance API Documentation}\n */\n getLockedRewardsHistory(\n requestParameters: GetLockedRewardsHistoryRequest = {}\n ): Promise<RestApiResponse<GetLockedRewardsHistoryResponse>> {\n return this.historyApi.getLockedRewardsHistory(requestParameters);\n }\n\n /**\n * Get Locked Subscription Record\n *\n * The time between `startTime` and `endTime` cannot be longer than 3 months.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Locked Subscription Record(USER_DATA)\n * @param {GetLockedSubscriptionRecordRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Locked-Subscription-Record Binance API Documentation}\n */\n getLockedSubscriptionRecord(\n requestParameters: GetLockedSubscriptionRecordRequest = {}\n ): Promise<RestApiResponse<GetLockedSubscriptionRecordResponse>> {\n return this.historyApi.getLockedSubscriptionRecord(requestParameters);\n }\n\n /**\n * Get Rate History\n *\n * The time between startTime and endTime cannot be longer than 1 year.\n * If `startTime` and `endTime` are both not sent, then the last 30 days' data will be returned.\n * If `startTime` is sent but `endTime` is not sent, the next 30 days' data beginning from `startTime` will be returned.\n * If `endTime` is sent but `startTime` is not sent, the 30 days' data before `endTime` will be returned.\n *\n * Weight: 150\n *\n * @summary Get Rate History(USER_DATA)\n * @param {GetRateHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetRateHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/simple_earn/history/Get-Rate-History Binance API Documentation}\n */\n getRateHistory(\n requestParameters: GetRateHistoryRequest\n ): Promise<RestApiResponse<GetRateHistoryResponse>> {\n return this.historyApi.getRateHistory(requestParameters);\n }\n}\n","export { SimpleEarn, ConfigurationSimpleEarn } from './simple-earn';\nexport * as SimpleEarnRestAPI from './rest-api';\n\nexport {\n SIMPLE_EARN_REST_API_PROD_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","sendRequest","sendRequest","ConfigurationRestAPI","SIMPLE_EARN_REST_API_PROD_URL"]}
|