@binance/fiat
Version:
Official Binance Fiat Connector - A lightweight library that provides a convenient interface to Binance's Fiat REST API.
1 lines • 49.5 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","names":["localVarQueryParameter: Record<string, unknown>","localVarBodyParameter: Record<string, unknown>","_timeUnit: TimeUnit | undefined","FIAT_REST_API_PROD_URL"],"sources":["../package.json","../src/rest-api/modules/fiat-api.ts","../src/rest-api/rest-api.ts","../src/rest-api/index.ts","../src/fiat.ts"],"sourcesContent":["{\n \"name\": \"@binance/fiat\",\n \"description\": \"Official Binance Fiat Connector - A lightweight library that provides a convenient interface to Binance's Fiat REST API.\",\n \"version\": \"6.0.15\",\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 && tsdown\",\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 \"Fiat\",\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 \"json-with-bigint\": \"^3.4.4\",\n \"prettier\": \"^3.3.3\",\n \"ts-jest\": \"^29.1.1\",\n \"ts-node\": \"^10.9.1\",\n \"tsdown\": \"^0.16.5\",\n \"typescript\": \"^5.7.2\",\n \"typescript-eslint\": \"^8.24.0\"\n },\n \"dependencies\": {\n \"@binance/common\": \"2.3.14\",\n \"axios\": \"^1.7.4\"\n }\n}\n","/**\n * Binance Fiat REST API\n *\n * OpenAPI Specification for the Binance Fiat 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 AccountInfo,\n DepositResponse,\n FiatWithdrawResponse,\n GetFiatDepositWithdrawHistoryResponse,\n GetFiatPaymentsHistoryResponse,\n GetOrderDetailResponse,\n} from '../types';\n\n/**\n * FiatApi - axios parameter creator\n */\nconst FiatApiAxiosParamCreator = function (configuration: ConfigurationRestAPI) {\n return {\n /**\n * Submit deposit request, in this version, we only support BRL deposit via pix.\n *\n *\n *\n * For BRL deposit via pix, you need to place an order before making a transfer from your bank.\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 45000\n *\n * @summary Deposit(TRADE)\n * @param {string} currency\n * @param {string} apiPaymentMethod\n * @param {number | bigint} amount\n * @param {number | bigint} [recvWindow]\n * @param {object} [ext]\n *\n * @throws {RequiredError}\n */\n deposit: async (\n currency: string,\n apiPaymentMethod: string,\n amount: number | bigint,\n recvWindow?: number | bigint,\n ext?: object\n ): Promise<RequestArgs> => {\n // verify required parameter 'currency' is not null or undefined\n assertParamExists('deposit', 'currency', currency);\n // verify required parameter 'apiPaymentMethod' is not null or undefined\n assertParamExists('deposit', 'apiPaymentMethod', apiPaymentMethod);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('deposit', 'amount', amount);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n const localVarBodyParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n if (currency !== undefined && currency !== null) {\n localVarBodyParameter['currency'] = currency;\n }\n\n if (apiPaymentMethod !== undefined && apiPaymentMethod !== null) {\n localVarBodyParameter['apiPaymentMethod'] = apiPaymentMethod;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarBodyParameter['amount'] = amount;\n }\n\n if (ext !== undefined && ext !== null) {\n localVarBodyParameter['ext'] = ext;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/sapi/v1/fiat/deposit',\n method: 'POST',\n queryParams: localVarQueryParameter,\n bodyParams: localVarBodyParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.\n *\n * You need to call this api first, and call query order detail api in a loop to get the status of the order until this order is successful.\n *\n * Before calling this API, please ensure you have completed your KYC or KYB, activated your fiat service, and verified your destination bank account on our website.\n *\n * you need to bind your bank account on web/app before using the corresponding account number\n *\n * Weight: 45000\n *\n * @summary Fiat Withdraw(WITHDRAW)\n * @param {string} currency\n * @param {string} apiPaymentMethod\n * @param {number | bigint} amount\n * @param {AccountInfo} accountInfo\n * @param {number | bigint} [recvWindow]\n * @param {object} [ext]\n *\n * @throws {RequiredError}\n */\n fiatWithdraw: async (\n currency: string,\n apiPaymentMethod: string,\n amount: number | bigint,\n accountInfo: AccountInfo,\n recvWindow?: number | bigint,\n ext?: object\n ): Promise<RequestArgs> => {\n // verify required parameter 'currency' is not null or undefined\n assertParamExists('fiatWithdraw', 'currency', currency);\n // verify required parameter 'apiPaymentMethod' is not null or undefined\n assertParamExists('fiatWithdraw', 'apiPaymentMethod', apiPaymentMethod);\n // verify required parameter 'amount' is not null or undefined\n assertParamExists('fiatWithdraw', 'amount', amount);\n // verify required parameter 'accountInfo' is not null or undefined\n assertParamExists('fiatWithdraw', 'accountInfo', accountInfo);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n const localVarBodyParameter: Record<string, unknown> = {};\n\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['recvWindow'] = recvWindow;\n }\n\n if (currency !== undefined && currency !== null) {\n localVarBodyParameter['currency'] = currency;\n }\n\n if (apiPaymentMethod !== undefined && apiPaymentMethod !== null) {\n localVarBodyParameter['apiPaymentMethod'] = apiPaymentMethod;\n }\n\n if (amount !== undefined && amount !== null) {\n localVarBodyParameter['amount'] = amount;\n }\n\n if (accountInfo !== undefined && accountInfo !== null) {\n localVarBodyParameter['accountInfo'] = accountInfo;\n }\n\n if (ext !== undefined && ext !== null) {\n localVarBodyParameter['ext'] = ext;\n }\n\n let _timeUnit: TimeUnit | undefined;\n if ('timeUnit' in configuration) _timeUnit = configuration.timeUnit as TimeUnit;\n\n return {\n endpoint: '/sapi/v2/fiat/withdraw',\n method: 'POST',\n queryParams: localVarQueryParameter,\n bodyParams: localVarBodyParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n *\n * Weight: 45000\n *\n * @summary Get Fiat Deposit/Withdraw History (USER_DATA)\n * @param {string} transactionType 0-buy,1-sell\n * @param {number | bigint} [beginTime]\n * @param {number | bigint} [endTime]\n * @param {number | bigint} [page] default 1\n * @param {number | bigint} [rows] default 100, max 500\n * @param {number | bigint} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFiatDepositWithdrawHistory: async (\n transactionType: string,\n beginTime?: number | bigint,\n endTime?: number | bigint,\n page?: number | bigint,\n rows?: number | bigint,\n recvWindow?: number | bigint\n ): Promise<RequestArgs> => {\n // verify required parameter 'transactionType' is not null or undefined\n assertParamExists('getFiatDepositWithdrawHistory', 'transactionType', transactionType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n const localVarBodyParameter: Record<string, unknown> = {};\n\n if (transactionType !== undefined && transactionType !== null) {\n localVarQueryParameter['transactionType'] = transactionType;\n }\n if (beginTime !== undefined && beginTime !== null) {\n localVarQueryParameter['beginTime'] = beginTime;\n }\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n if (rows !== undefined && rows !== null) {\n localVarQueryParameter['rows'] = rows;\n }\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['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/fiat/orders',\n method: 'GET',\n queryParams: localVarQueryParameter,\n bodyParams: localVarBodyParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:\n * Cash Balance\n * Credit Card\n * Online Banking\n * Bank Transfer\n *\n * Weight: 1\n *\n * @summary Get Fiat Payments History (USER_DATA)\n * @param {string} transactionType 0-buy,1-sell\n * @param {number | bigint} [beginTime]\n * @param {number | bigint} [endTime]\n * @param {number | bigint} [page] default 1\n * @param {number | bigint} [rows] default 100, max 500\n * @param {number | bigint} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getFiatPaymentsHistory: async (\n transactionType: string,\n beginTime?: number | bigint,\n endTime?: number | bigint,\n page?: number | bigint,\n rows?: number | bigint,\n recvWindow?: number | bigint\n ): Promise<RequestArgs> => {\n // verify required parameter 'transactionType' is not null or undefined\n assertParamExists('getFiatPaymentsHistory', 'transactionType', transactionType);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n const localVarBodyParameter: Record<string, unknown> = {};\n\n if (transactionType !== undefined && transactionType !== null) {\n localVarQueryParameter['transactionType'] = transactionType;\n }\n if (beginTime !== undefined && beginTime !== null) {\n localVarQueryParameter['beginTime'] = beginTime;\n }\n if (endTime !== undefined && endTime !== null) {\n localVarQueryParameter['endTime'] = endTime;\n }\n if (page !== undefined && page !== null) {\n localVarQueryParameter['page'] = page;\n }\n if (rows !== undefined && rows !== null) {\n localVarQueryParameter['rows'] = rows;\n }\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['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/fiat/payments',\n method: 'GET',\n queryParams: localVarQueryParameter,\n bodyParams: localVarBodyParameter,\n timeUnit: _timeUnit,\n };\n },\n /**\n * Get Order Detail\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 1\n *\n * @summary Get Order Detail(USER_DATA)\n * @param {string} orderNo order id retrieved from the api call of withdrawal\n * @param {number | bigint} [recvWindow]\n *\n * @throws {RequiredError}\n */\n getOrderDetail: async (\n orderNo: string,\n recvWindow?: number | bigint\n ): Promise<RequestArgs> => {\n // verify required parameter 'orderNo' is not null or undefined\n assertParamExists('getOrderDetail', 'orderNo', orderNo);\n\n const localVarQueryParameter: Record<string, unknown> = {};\n const localVarBodyParameter: Record<string, unknown> = {};\n\n if (orderNo !== undefined && orderNo !== null) {\n localVarQueryParameter['orderNo'] = orderNo;\n }\n if (recvWindow !== undefined && recvWindow !== null) {\n localVarQueryParameter['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/fiat/get-order-detail',\n method: 'GET',\n queryParams: localVarQueryParameter,\n bodyParams: localVarBodyParameter,\n timeUnit: _timeUnit,\n };\n },\n };\n};\n\n/**\n * FiatApi - interface\n * @interface FiatApi\n */\nexport interface FiatApiInterface {\n /**\n * Submit deposit request, in this version, we only support BRL deposit via pix.\n *\n *\n *\n * For BRL deposit via pix, you need to place an order before making a transfer from your bank.\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 45000\n *\n * @summary Deposit(TRADE)\n * @param {DepositRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApiInterface\n */\n deposit(requestParameters: DepositRequest): Promise<RestApiResponse<DepositResponse>>;\n /**\n * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.\n *\n * You need to call this api first, and call query order detail api in a loop to get the status of the order until this order is successful.\n *\n * Before calling this API, please ensure you have completed your KYC or KYB, activated your fiat service, and verified your destination bank account on our website.\n *\n * you need to bind your bank account on web/app before using the corresponding account number\n *\n * Weight: 45000\n *\n * @summary Fiat Withdraw(WITHDRAW)\n * @param {FiatWithdrawRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApiInterface\n */\n fiatWithdraw(\n requestParameters: FiatWithdrawRequest\n ): Promise<RestApiResponse<FiatWithdrawResponse>>;\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n *\n * Weight: 45000\n *\n * @summary Get Fiat Deposit/Withdraw History (USER_DATA)\n * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApiInterface\n */\n getFiatDepositWithdrawHistory(\n requestParameters: GetFiatDepositWithdrawHistoryRequest\n ): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>;\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:\n * Cash Balance\n * Credit Card\n * Online Banking\n * Bank Transfer\n *\n * Weight: 1\n *\n * @summary Get Fiat Payments History (USER_DATA)\n * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApiInterface\n */\n getFiatPaymentsHistory(\n requestParameters: GetFiatPaymentsHistoryRequest\n ): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>;\n /**\n * Get Order Detail\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 1\n *\n * @summary Get Order Detail(USER_DATA)\n * @param {GetOrderDetailRequest} requestParameters Request parameters.\n *\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApiInterface\n */\n getOrderDetail(\n requestParameters: GetOrderDetailRequest\n ): Promise<RestApiResponse<GetOrderDetailResponse>>;\n}\n\n/**\n * Request parameters for deposit operation in FiatApi.\n * @interface DepositRequest\n */\nexport interface DepositRequest {\n /**\n *\n * @type {string}\n * @memberof FiatApiDeposit\n */\n readonly currency: string;\n\n /**\n *\n * @type {string}\n * @memberof FiatApiDeposit\n */\n readonly apiPaymentMethod: string;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiDeposit\n */\n readonly amount: number | bigint;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiDeposit\n */\n readonly recvWindow?: number | bigint;\n\n /**\n *\n * @type {object}\n * @memberof FiatApiDeposit\n */\n readonly ext?: object;\n}\n\n/**\n * Request parameters for fiatWithdraw operation in FiatApi.\n * @interface FiatWithdrawRequest\n */\nexport interface FiatWithdrawRequest {\n /**\n *\n * @type {string}\n * @memberof FiatApiFiatWithdraw\n */\n readonly currency: string;\n\n /**\n *\n * @type {string}\n * @memberof FiatApiFiatWithdraw\n */\n readonly apiPaymentMethod: string;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiFiatWithdraw\n */\n readonly amount: number | bigint;\n\n /**\n *\n * @type {AccountInfo}\n * @memberof FiatApiFiatWithdraw\n */\n readonly accountInfo: AccountInfo;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiFiatWithdraw\n */\n readonly recvWindow?: number | bigint;\n\n /**\n *\n * @type {object}\n * @memberof FiatApiFiatWithdraw\n */\n readonly ext?: object;\n}\n\n/**\n * Request parameters for getFiatDepositWithdrawHistory operation in FiatApi.\n * @interface GetFiatDepositWithdrawHistoryRequest\n */\nexport interface GetFiatDepositWithdrawHistoryRequest {\n /**\n * 0-buy,1-sell\n * @type {string}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly transactionType: string;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly beginTime?: number | bigint;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly endTime?: number | bigint;\n\n /**\n * default 1\n * @type {number | bigint}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly page?: number | bigint;\n\n /**\n * default 100, max 500\n * @type {number | bigint}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly rows?: number | bigint;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatDepositWithdrawHistory\n */\n readonly recvWindow?: number | bigint;\n}\n\n/**\n * Request parameters for getFiatPaymentsHistory operation in FiatApi.\n * @interface GetFiatPaymentsHistoryRequest\n */\nexport interface GetFiatPaymentsHistoryRequest {\n /**\n * 0-buy,1-sell\n * @type {string}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly transactionType: string;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly beginTime?: number | bigint;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly endTime?: number | bigint;\n\n /**\n * default 1\n * @type {number | bigint}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly page?: number | bigint;\n\n /**\n * default 100, max 500\n * @type {number | bigint}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly rows?: number | bigint;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetFiatPaymentsHistory\n */\n readonly recvWindow?: number | bigint;\n}\n\n/**\n * Request parameters for getOrderDetail operation in FiatApi.\n * @interface GetOrderDetailRequest\n */\nexport interface GetOrderDetailRequest {\n /**\n * order id retrieved from the api call of withdrawal\n * @type {string}\n * @memberof FiatApiGetOrderDetail\n */\n readonly orderNo: string;\n\n /**\n *\n * @type {number | bigint}\n * @memberof FiatApiGetOrderDetail\n */\n readonly recvWindow?: number | bigint;\n}\n\n/**\n * FiatApi - object-oriented interface\n * @class FiatApi\n */\nexport class FiatApi implements FiatApiInterface {\n private readonly configuration: ConfigurationRestAPI;\n private localVarAxiosParamCreator;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.localVarAxiosParamCreator = FiatApiAxiosParamCreator(configuration);\n }\n\n /**\n * Submit deposit request, in this version, we only support BRL deposit via pix.\n *\n *\n *\n * For BRL deposit via pix, you need to place an order before making a transfer from your bank.\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 45000\n *\n * @summary Deposit(TRADE)\n * @param {DepositRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<DepositResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApi\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Deposit Binance API Documentation}\n */\n public async deposit(\n requestParameters: DepositRequest\n ): Promise<RestApiResponse<DepositResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.deposit(\n requestParameters?.currency,\n requestParameters?.apiPaymentMethod,\n requestParameters?.amount,\n requestParameters?.recvWindow,\n requestParameters?.ext\n );\n return sendRequest<DepositResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.queryParams,\n localVarAxiosArgs.bodyParams,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.\n *\n * You need to call this api first, and call query order detail api in a loop to get the status of the order until this order is successful.\n *\n * Before calling this API, please ensure you have completed your KYC or KYB, activated your fiat service, and verified your destination bank account on our website.\n *\n * you need to bind your bank account on web/app before using the corresponding account number\n *\n * Weight: 45000\n *\n * @summary Fiat Withdraw(WITHDRAW)\n * @param {FiatWithdrawRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<FiatWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApi\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Withdraw Binance API Documentation}\n */\n public async fiatWithdraw(\n requestParameters: FiatWithdrawRequest\n ): Promise<RestApiResponse<FiatWithdrawResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.fiatWithdraw(\n requestParameters?.currency,\n requestParameters?.apiPaymentMethod,\n requestParameters?.amount,\n requestParameters?.accountInfo,\n requestParameters?.recvWindow,\n requestParameters?.ext\n );\n return sendRequest<FiatWithdrawResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.queryParams,\n localVarAxiosArgs.bodyParams,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n *\n * Weight: 45000\n *\n * @summary Get Fiat Deposit/Withdraw History (USER_DATA)\n * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApi\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Deposit-Withdraw-History Binance API Documentation}\n */\n public async getFiatDepositWithdrawHistory(\n requestParameters: GetFiatDepositWithdrawHistoryRequest\n ): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>> {\n const localVarAxiosArgs =\n await this.localVarAxiosParamCreator.getFiatDepositWithdrawHistory(\n requestParameters?.transactionType,\n requestParameters?.beginTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.rows,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFiatDepositWithdrawHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.queryParams,\n localVarAxiosArgs.bodyParams,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:\n * Cash Balance\n * Credit Card\n * Online Banking\n * Bank Transfer\n *\n * Weight: 1\n *\n * @summary Get Fiat Payments History (USER_DATA)\n * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApi\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Payments-History Binance API Documentation}\n */\n public async getFiatPaymentsHistory(\n requestParameters: GetFiatPaymentsHistoryRequest\n ): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getFiatPaymentsHistory(\n requestParameters?.transactionType,\n requestParameters?.beginTime,\n requestParameters?.endTime,\n requestParameters?.page,\n requestParameters?.rows,\n requestParameters?.recvWindow\n );\n return sendRequest<GetFiatPaymentsHistoryResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.queryParams,\n localVarAxiosArgs.bodyParams,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n\n /**\n * Get Order Detail\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 1\n *\n * @summary Get Order Detail(USER_DATA)\n * @param {GetOrderDetailRequest} requestParameters Request parameters.\n * @returns {Promise<RestApiResponse<GetOrderDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @memberof FiatApi\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Order-Detail Binance API Documentation}\n */\n public async getOrderDetail(\n requestParameters: GetOrderDetailRequest\n ): Promise<RestApiResponse<GetOrderDetailResponse>> {\n const localVarAxiosArgs = await this.localVarAxiosParamCreator.getOrderDetail(\n requestParameters?.orderNo,\n requestParameters?.recvWindow\n );\n return sendRequest<GetOrderDetailResponse>(\n this.configuration,\n localVarAxiosArgs.endpoint,\n localVarAxiosArgs.method,\n localVarAxiosArgs.queryParams,\n localVarAxiosArgs.bodyParams,\n localVarAxiosArgs?.timeUnit,\n { isSigned: true }\n );\n }\n}\n","/**\n * Binance Fiat REST API\n *\n * OpenAPI Specification for the Binance Fiat 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 { FiatApi } from './modules/fiat-api';\n\nimport type {\n DepositRequest,\n FiatWithdrawRequest,\n GetFiatDepositWithdrawHistoryRequest,\n GetFiatPaymentsHistoryRequest,\n GetOrderDetailRequest,\n} from './modules/fiat-api';\n\nimport type {\n DepositResponse,\n FiatWithdrawResponse,\n GetFiatDepositWithdrawHistoryResponse,\n GetFiatPaymentsHistoryResponse,\n GetOrderDetailResponse,\n} from './types';\n\nexport class RestAPI {\n private configuration: ConfigurationRestAPI;\n private fiatApi: FiatApi;\n\n constructor(configuration: ConfigurationRestAPI) {\n this.configuration = configuration;\n this.fiatApi = new FiatApi(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 queryParams - Query parameters for the request.\n * @param bodyParams - Body 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 queryParams: Record<string, unknown> = {},\n bodyParams: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(\n this.configuration,\n endpoint,\n method,\n queryParams,\n bodyParams,\n undefined\n );\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 queryParams - Query parameters for the request.\n * @param bodyParams - Body 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 queryParams: Record<string, unknown> = {},\n bodyParams: Record<string, unknown> = {}\n ): Promise<RestApiResponse<T>> {\n return sendRequest<T>(\n this.configuration,\n endpoint,\n method,\n queryParams,\n bodyParams,\n undefined,\n { isSigned: true }\n );\n }\n\n /**\n * Submit deposit request, in this version, we only support BRL deposit via pix.\n *\n *\n *\n * For BRL deposit via pix, you need to place an order before making a transfer from your bank.\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 45000\n *\n * @summary Deposit(TRADE)\n * @param {DepositRequest} requestParameters Request parameters.\n *\n * @returns {Promise<RestApiResponse<DepositResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Deposit Binance API Documentation}\n */\n deposit(requestParameters: DepositRequest): Promise<RestApiResponse<DepositResponse>> {\n return this.fiatApi.deposit(requestParameters);\n }\n\n /**\n * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.\n *\n * You need to call this api first, and call query order detail api in a loop to get the status of the order until this order is successful.\n *\n * Before calling this API, please ensure you have completed your KYC or KYB, activated your fiat service, and verified your destination bank account on our website.\n *\n * you need to bind your bank account on web/app before using the corresponding account number\n *\n * Weight: 45000\n *\n * @summary Fiat Withdraw(WITHDRAW)\n * @param {FiatWithdrawRequest} requestParameters Request parameters.\n *\n * @returns {Promise<RestApiResponse<FiatWithdrawResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Withdraw Binance API Documentation}\n */\n fiatWithdraw(\n requestParameters: FiatWithdrawRequest\n ): Promise<RestApiResponse<FiatWithdrawResponse>> {\n return this.fiatApi.fiatWithdraw(requestParameters);\n }\n\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n *\n * Weight: 45000\n *\n * @summary Get Fiat Deposit/Withdraw History (USER_DATA)\n * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.\n *\n * @returns {Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Deposit-Withdraw-History Binance API Documentation}\n */\n getFiatDepositWithdrawHistory(\n requestParameters: GetFiatDepositWithdrawHistoryRequest\n ): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>> {\n return this.fiatApi.getFiatDepositWithdrawHistory(requestParameters);\n }\n\n /**\n * Get Fiat Deposit/Withdraw History\n *\n * If beginTime and endTime are not sent, the recent 30-day data will be returned.\n * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:\n * Cash Balance\n * Credit Card\n * Online Banking\n * Bank Transfer\n *\n * Weight: 1\n *\n * @summary Get Fiat Payments History (USER_DATA)\n * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.\n *\n * @returns {Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Payments-History Binance API Documentation}\n */\n getFiatPaymentsHistory(\n requestParameters: GetFiatPaymentsHistoryRequest\n ): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>> {\n return this.fiatApi.getFiatPaymentsHistory(requestParameters);\n }\n\n /**\n * Get Order Detail\n *\n * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.\n *\n * Weight: 1\n *\n * @summary Get Order Detail(USER_DATA)\n * @param {GetOrderDetailRequest} requestParameters Request parameters.\n *\n * @returns {Promise<RestApiResponse<GetOrderDetailResponse>>}\n * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}\n * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Order-Detail Binance API Documentation}\n */\n getOrderDetail(\n requestParameters: GetOrderDetailRequest\n ): Promise<RestApiResponse<GetOrderDetailResponse>> {\n return this.fiatApi.getOrderDetail(requestParameters);\n }\n}\n","/**\n * Binance Fiat REST API\n *\n * OpenAPI Specification for the Binance Fiat 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","import { buildUserAgent, ConfigurationRestAPI, FIAT_REST_API_PROD_URL } from '@binance/common';\nimport { name, version } from '../package.json';\nimport { RestAPI } from './rest-api';\n\nexport interface ConfigurationFiat {\n configurationRestAPI?: ConfigurationRestAPI;\n}\n\nexport class Fiat {\n public restAPI!: RestAPI;\n\n constructor(config: ConfigurationFiat) {\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 || FIAT_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"],"mappings":";;;;WACY;cAEG;;;;;;;;;;;;;;;;;;;AC8Bf,MAAM,2BAA2B,SAAU,eAAqC;AAC5E,QAAO;EAqBH,SAAS,OACL,UACA,kBACA,QACA,YACA,QACuB;AAEvB,qBAAkB,WAAW,YAAY,SAAS;AAElD,qBAAkB,WAAW,oBAAoB,iBAAiB;AAElE,qBAAkB,WAAW,UAAU,OAAO;GAE9C,MAAMA,yBAAkD,EAAE;GAC1D,MAAMC,wBAAiD,EAAE;AAEzD,OAAI,eAAe,UAAa,eAAe,KAC3C,wBAAuB,gBAAgB;AAG3C,OAAI,aAAa,UAAa,aAAa,KACvC,uBAAsB,cAAc;AAGxC,OAAI,qBAAqB,UAAa,qBAAqB,KACvD,uBAAsB,sBAAsB;AAGhD,OAAI,WAAW,UAAa,WAAW,KACnC,uBAAsB,YAAY;AAGtC,OAAI,QAAQ,UAAa,QAAQ,KAC7B,uBAAsB,SAAS;GAGnC,IAAIC;AACJ,OAAI,cAAc,cAAe,aAAY,cAAc;AAE3D,UAAO;IACH,UAAU;IACV,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,UAAU;IACb;;EAuBL,cAAc,OACV,UACA,kBACA,QACA,aACA,YACA,QACuB;AAEvB,qBAAkB,gBAAgB,YAAY,SAAS;AAEvD,qBAAkB,gBAAgB,oBAAoB,iBAAiB;AAEvE,qBAAkB,gBAAgB,UAAU,OAAO;AAEnD,qBAAkB,gBAAgB,eAAe,YAAY;GAE7D,MAAMF,yBAAkD,EAAE;GAC1D,MAAMC,wBAAiD,EAAE;AAEzD,OAAI,eAAe,UAAa,eAAe,KAC3C,wBAAuB,gBAAgB;AAG3C,OAAI,aAAa,UAAa,aAAa,KACvC,uBAAsB,cAAc;AAGxC,OAAI,qBAAqB,UAAa,qBAAqB,KACvD,uBAAsB,sBAAsB;AAGhD,OAAI,WAAW,UAAa,WAAW,KACnC,uBAAsB,YAAY;AAGtC,OAAI,gBAAgB,UAAa,gBAAgB,KAC7C,uBAAsB,iBAAiB;AAG3C,OAAI,QAAQ,UAAa,QAAQ,KAC7B,uBAAsB,SAAS;GAGnC,IAAIC;AACJ,OAAI,cAAc,cAAe,aAAY,cAAc;AAE3D,UAAO;IACH,UAAU;IACV,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,UAAU;IACb;;EAmBL,+BAA+B,OAC3B,iBACA,WACA,SACA,MACA,MACA,eACuB;AAEvB,qBAAkB,iCAAiC,mBAAmB,gBAAgB;GAEtF,MAAMF,yBAAkD,EAAE;GAC1D,MAAMC,wBAAiD,EAAE;AAEzD,OAAI,oBAAoB,UAAa,oBAAoB,KACrD,wBAAuB,qBAAqB;AAEhD,OAAI,cAAc,UAAa,cAAc,KACzC,wBAAuB,eAAe;AAE1C,OAAI,YAAY,UAAa,YAAY,KACrC,wBAAuB,aAAa;AAExC,OAAI,SAAS,UAAa,SAAS,KAC/B,wBAAuB,UAAU;AAErC,OAAI,SAAS,UAAa,SAAS,KAC/B,wBAAuB,UAAU;AAErC,OAAI,eAAe,UAAa,eAAe,KAC3C,wBAAuB,gBAAgB;GAG3C,IAAIC;AACJ,OAAI,cAAc,cAAe,aAAY,cAAc;AAE3D,UAAO;IACH,UAAU;IACV,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,UAAU;IACb;;EAwBL,wBAAwB,OACpB,iBACA,WACA,SACA,MACA,MACA,eACuB;AAEvB,qBAAkB,0BAA0B,mBAAmB,gBAAgB;GAE/E,MAAMF,yBAAkD,EAAE;GAC1D,MAAMC,wBAAiD,EAAE;AAEzD,OAAI,oBAAoB,UAAa,oBAAoB,KACrD,wBAAuB,qBAAqB;AAEhD,OAAI,cAAc,UAAa,cAAc,KACzC,wBAAuB,eAAe;AAE1C,OAAI,YAAY,UAAa,YAAY,KACrC,wBAAuB,aAAa;AAExC,OAAI,SAAS,UAAa,SAAS,KAC/B,wBAAuB,UAAU;AAErC,OAAI,SAAS,UAAa,SAAS,KAC/B,wBAAuB,UAAU;AAErC,OAAI,eAAe,UAAa,eAAe,KAC3C,wBAAuB,gBAAgB;GAG3C,IAAIC;AACJ,OAAI,cAAc,cAAe,aAAY,cAAc;AAE3D,UAAO;IACH,UAAU;IACV,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,UAAU;IACb;;EAeL,gBAAgB,OACZ,SACA,eACuB;AAEvB,qBAAkB,kBAAkB,WAAW,QAAQ;GAEvD,MAAMF,yBAAkD,EAAE;GAC1D,MAAMC,wBAAiD,EAAE;AAEzD,OAAI,YAAY,UAAa,YAAY,KACrC,wBAAuB,aAAa;AAExC,OAAI,eAAe,UAAa,eAAe,KAC3C,wBAAuB,gBAAgB;GAG3C,IAAIC;AACJ,OAAI,cAAc,cAAe,aAAY,cAAc;AAE3D,UAAO;IACH,UAAU;IACV,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,UAAU;IACb;;EAER;;;;;;AAsTL,IAAa,UAAb,MAAiD;CAI7C,YAAY,eAAqC;AAC7C,OAAK,gBAAgB;AACrB,OAAK,4BAA4B,yBAAyB,cAAc;;;;;;;;;;;;;;;;;;;;CAqB5E,MAAa,QACT,mBACyC;EACzC,MAAM,oBAAoB,MAAM,KAAK,0BAA0B,QAC3D,mBAAmB,UACnB,mBAAmB,kBACnB,mBAAmB,QACnB,mBAAmB,YACnB,mBAAmB,IACtB;AACD,SAAO,YACH,KAAK,eACL,kBAAkB,UAClB,kBAAkB,QAClB,kBAAkB,aAClB,kBAAkB,YAClB,mBAAmB,UACnB,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;;;;;CAqBL,MAAa,aACT,mBAC8C;EAC9C,MAAM,oBAAoB,MAAM,KAAK,0BAA0B,aAC3D,mBAAmB,UACnB,mBAAmB,kBACnB,mBAAmB,QACnB,mBAAmB,aACnB,mBAAmB,YACnB,mBAAmB,IACtB;AACD,SAAO,YACH,KAAK,eACL,kBAAkB,UAClB,kBAAkB,QAClB,kBAAkB,aAClB,kBAAkB,YAClB,mBAAmB,UACnB,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;CAiBL,MAAa,8BACT,mBAC+D;EAC/D,MAAM,oBACF,MAAM,KAAK,0BAA0B,8BACjC,mBAAmB,iBACnB,mBAAmB,WACnB,mBAAmB,SACnB,mBAAmB,MACnB,mBAAmB,MACnB,mBAAmB,WACtB;AACL,SAAO,YACH,KAAK,eACL,kBAAkB,UAClB,kBAAkB,QAClB,kBAAkB,aAClB,kBAAkB,YAClB,mBAAmB,UACnB,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;;;;;;CAsBL,MAAa,uBACT,mBACwD;EACxD,MAAM,oBAAoB,MAAM,KAAK,0BAA0B,uBAC3D,mBAAmB,iBACnB,mBAAmB,WACnB,mBAAmB,SACnB,mBAAmB,MACnB,mBAAmB,MACnB,mBAAmB,WACtB;AACD,SAAO,YACH,KAAK,eACL,kBAAkB,UAClB,kBAAkB,QAClB,kBAAkB,aAClB,kBAAkB,YAClB,mBAAmB,UACnB,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;CAiBL,MAAa,eACT,mBACgD;EAChD,MAAM,oBAAoB,MAAM,KAAK,0BAA0B,eAC3D,mBAAmB,SACnB,mBAAmB,WACtB;AACD,SAAO,YACH,KAAK,eACL,kBAAkB,UAClB,kBAAkB,QAClB,kBAAkB,aAClB,kBAAkB,YAClB,mBAAmB,UACnB,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;;;ACpzBT,IAAa,UAAb,MAAqB;CAIjB,YAAY,eAAqC;AAC7C,OAAK,gBAAgB;AACrB,OAAK,UAAU,IAAI,QAAQ,cAAc;;;;;;;;;;;CAY7C,YACI,UACA,QACA,cAAuC,EAAE,EACzC,aAAsC,EAAE,EACb;AAC3B,SAAO,YACH,KAAK,eACL,UACA,QACA,aACA,YACA,OACH;;;;;;;;;;;CAYL,kBACI,UACA,QACA,cAAuC,EAAE,EACzC,aAAsC,EAAE,EACb;AAC3B,SAAO,YACH,KAAK,eACL,UACA,QACA,aACA,YACA,QACA,EAAE,UAAU,MAAM,CACrB;;;;;;;;;;;;;;;;;;;;CAqBL,QAAQ,mBAA8E;AAClF,SAAO,KAAK,QAAQ,QAAQ,kBAAkB;;;;;;;;;;;;;;;;;;;;CAqBlD,aACI,mBAC8C;AAC9C,SAAO,KAAK,QAAQ,aAAa,kBAAkB;;;;;;;;;;;;;;;;CAiBvD,8BACI,mBAC+D;AAC/D,SAAO,KAAK,QAAQ,8BAA8B,kBAAkB;;;;;;;;;;;;;;;;;;;;;CAsBxE,uBACI,mBACwD;AACxD,SAAO,KAAK,QAAQ,uBAAuB,kBAAkB;;;;;;;;;;;;;;;;CAiBjE,eACI,mBACgD;AAChD,SAAO,KAAK,QAAQ,eAAe,kBAAkB;;;;;;;;;;;;;AEhM7D,IAAa,OAAb,MAAkB;CAGd,YAAY,QAA2B;EACnC,MAAM,YAAY,eAAe,MAAM,QAAQ;AAE/C,MAAI,QAAQ,sBAAsB;GAC9B,MAAM,gBAAgB,IAAI,qBACtB,OAAO,qBACV;AAGD,iBAAc,WAAW,cAAc,YAAYC;AACnD,iBAAc,cAAc,cAAc,eAAe,EAAE;AAC3D,iBAAc,YAAY,UAAU;IAChC,GAAI,cAAc,YAAY,WAAW,EAAE;IAC3C,cAAc;IACjB;AACD,QAAK,UAAU,IAAI,QAAQ,cAAc"}