import { BadRequestError, ConfigurationRestAPI, ConnectorClientError, FIAT_REST_API_PROD_URL, ForbiddenError, NetworkError, NotFoundError, RateLimitBanError, RequiredError, RestApiResponse, ServerError, TooManyRequestsError, UnauthorizedError } from "@binance/common";

//#region rolldown:runtime

//#endregion
//#region src/rest-api/types/account-info.d.ts
/**
 * Binance Fiat REST API
 *
 * OpenAPI Specification for the Binance Fiat REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AccountInfo
 */
interface AccountInfo {
  /**
   *
   * @type {string}
   * @memberof AccountInfo
   */
  accountNumber?: string;
}
//#endregion
//#region src/rest-api/types/deposit-response-data.d.ts
/**
 * Binance Fiat REST API
 *
 * OpenAPI Specification for the Binance Fiat REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface DepositResponseData
 */
interface DepositResponseData {
  /**
   *
   * @type {string}
   * @memberof DepositResponseData
   */
  orderId?: string;
}
//#endregion
//#region src/rest-api/types/deposit-response.d.ts
/**
 *
 * @export
 * @interface DepositResponse
 */
interface DepositResponse {
  /**
   *
   * @type {string}
   * @memberof DepositResponse
   */
  code?: string;
  /**
   *
   * @type {string}
   * @memberof DepositResponse
   */
  message?: string;
  /**
   *
   * @type {DepositResponseData}
   * @memberof DepositResponse
   */
  data?: DepositResponseData;
}
//#endregion
//#region src/rest-api/types/fiat-withdraw-response.d.ts
/**
 *
 * @export
 * @interface FiatWithdrawResponse
 */
interface FiatWithdrawResponse {
  /**
   *
   * @type {string}
   * @memberof FiatWithdrawResponse
   */
  code?: string;
  /**
   *
   * @type {string}
   * @memberof FiatWithdrawResponse
   */
  message?: string;
  /**
   *
   * @type {DepositResponseData}
   * @memberof FiatWithdrawResponse
   */
  data?: DepositResponseData;
}
//#endregion
//#region src/rest-api/types/get-fiat-deposit-withdraw-history-response-data-inner.d.ts
/**
 * Binance Fiat REST API
 *
 * OpenAPI Specification for the Binance Fiat REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetFiatDepositWithdrawHistoryResponseDataInner
 */
interface GetFiatDepositWithdrawHistoryResponseDataInner {
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  orderNo?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  fiatCurrency?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  indicatedAmount?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  amount?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  totalFee?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  method?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  status?: string;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  createTime?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatDepositWithdrawHistoryResponseDataInner
   */
  updateTime?: number | bigint;
}
//#endregion
//#region src/rest-api/types/get-fiat-deposit-withdraw-history-response.d.ts
/**
 *
 * @export
 * @interface GetFiatDepositWithdrawHistoryResponse
 */
interface GetFiatDepositWithdrawHistoryResponse {
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponse
   */
  code?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatDepositWithdrawHistoryResponse
   */
  message?: string;
  /**
   *
   * @type {Array<GetFiatDepositWithdrawHistoryResponseDataInner>}
   * @memberof GetFiatDepositWithdrawHistoryResponse
   */
  data?: Array<GetFiatDepositWithdrawHistoryResponseDataInner>;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatDepositWithdrawHistoryResponse
   */
  total?: number | bigint;
  /**
   *
   * @type {boolean}
   * @memberof GetFiatDepositWithdrawHistoryResponse
   */
  success?: boolean;
}
//#endregion
//#region src/rest-api/types/get-fiat-payments-history-response-data-inner.d.ts
/**
 * Binance Fiat REST API
 *
 * OpenAPI Specification for the Binance Fiat REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetFiatPaymentsHistoryResponseDataInner
 */
interface GetFiatPaymentsHistoryResponseDataInner {
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  orderNo?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  sourceAmount?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  fiatCurrency?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  obtainAmount?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  cryptoCurrency?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  totalFee?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  price?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  status?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  paymentMethod?: string;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  createTime?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatPaymentsHistoryResponseDataInner
   */
  updateTime?: number | bigint;
}
//#endregion
//#region src/rest-api/types/get-fiat-payments-history-response.d.ts
/**
 *
 * @export
 * @interface GetFiatPaymentsHistoryResponse
 */
interface GetFiatPaymentsHistoryResponse {
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponse
   */
  code?: string;
  /**
   *
   * @type {string}
   * @memberof GetFiatPaymentsHistoryResponse
   */
  message?: string;
  /**
   *
   * @type {Array<GetFiatPaymentsHistoryResponseDataInner>}
   * @memberof GetFiatPaymentsHistoryResponse
   */
  data?: Array<GetFiatPaymentsHistoryResponseDataInner>;
  /**
   *
   * @type {number | bigint}
   * @memberof GetFiatPaymentsHistoryResponse
   */
  total?: number | bigint;
  /**
   *
   * @type {boolean}
   * @memberof GetFiatPaymentsHistoryResponse
   */
  success?: boolean;
}
//#endregion
//#region src/rest-api/types/get-order-detail-response-data.d.ts
/**
 * Binance Fiat REST API
 *
 * OpenAPI Specification for the Binance Fiat REST API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GetOrderDetailResponseData
 */
interface GetOrderDetailResponseData {
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  orderId?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  orderStatus?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  amount?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  fee?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  fiatCurrency?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  errorCode?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponseData
   */
  errorMessage?: string;
  /**
   *
   * @type {object}
   * @memberof GetOrderDetailResponseData
   */
  ext?: object;
}
//#endregion
//#region src/rest-api/types/get-order-detail-response.d.ts
/**
 *
 * @export
 * @interface GetOrderDetailResponse
 */
interface GetOrderDetailResponse {
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponse
   */
  code?: string;
  /**
   *
   * @type {string}
   * @memberof GetOrderDetailResponse
   */
  message?: string;
  /**
   *
   * @type {GetOrderDetailResponseData}
   * @memberof GetOrderDetailResponse
   */
  data?: GetOrderDetailResponseData;
}
//#endregion
//#region src/rest-api/modules/fiat-api.d.ts
/**
 * FiatApi - interface
 * @interface FiatApi
 */
interface FiatApiInterface {
  /**
   * Submit deposit request, in this version, we only support BRL deposit via pix.
   *
   *
   *
   * For BRL deposit via pix, you need to place an order before making a transfer from your bank.
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 45000
   *
   * @summary Deposit(TRADE)
   * @param {DepositRequest} requestParameters Request parameters.
   *
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApiInterface
   */
  deposit(requestParameters: DepositRequest): Promise<RestApiResponse<DepositResponse>>;
  /**
   * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.
   *
   * 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.
   *
   * 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.
   *
   * you need to bind your bank account on web/app before using the corresponding account number
   *
   * Weight: 45000
   *
   * @summary Fiat Withdraw(WITHDRAW)
   * @param {FiatWithdrawRequest} requestParameters Request parameters.
   *
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApiInterface
   */
  fiatWithdraw(requestParameters: FiatWithdrawRequest): Promise<RestApiResponse<FiatWithdrawResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   *
   * Weight: 45000
   *
   * @summary Get Fiat Deposit/Withdraw History (USER_DATA)
   * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.
   *
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApiInterface
   */
  getFiatDepositWithdrawHistory(requestParameters: GetFiatDepositWithdrawHistoryRequest): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:
   * Cash Balance
   * Credit Card
   * Online Banking
   * Bank Transfer
   *
   * Weight: 1
   *
   * @summary Get Fiat Payments History (USER_DATA)
   * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.
   *
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApiInterface
   */
  getFiatPaymentsHistory(requestParameters: GetFiatPaymentsHistoryRequest): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>;
  /**
   * Get Order Detail
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 1
   *
   * @summary Get Order Detail(USER_DATA)
   * @param {GetOrderDetailRequest} requestParameters Request parameters.
   *
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApiInterface
   */
  getOrderDetail(requestParameters: GetOrderDetailRequest): Promise<RestApiResponse<GetOrderDetailResponse>>;
}
/**
 * Request parameters for deposit operation in FiatApi.
 * @interface DepositRequest
 */
interface DepositRequest {
  /**
   *
   * @type {string}
   * @memberof FiatApiDeposit
   */
  readonly currency: string;
  /**
   *
   * @type {string}
   * @memberof FiatApiDeposit
   */
  readonly apiPaymentMethod: string;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiDeposit
   */
  readonly amount: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiDeposit
   */
  readonly recvWindow?: number | bigint;
  /**
   *
   * @type {object}
   * @memberof FiatApiDeposit
   */
  readonly ext?: object;
}
/**
 * Request parameters for fiatWithdraw operation in FiatApi.
 * @interface FiatWithdrawRequest
 */
interface FiatWithdrawRequest {
  /**
   *
   * @type {string}
   * @memberof FiatApiFiatWithdraw
   */
  readonly currency: string;
  /**
   *
   * @type {string}
   * @memberof FiatApiFiatWithdraw
   */
  readonly apiPaymentMethod: string;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiFiatWithdraw
   */
  readonly amount: number | bigint;
  /**
   *
   * @type {AccountInfo}
   * @memberof FiatApiFiatWithdraw
   */
  readonly accountInfo: AccountInfo;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiFiatWithdraw
   */
  readonly recvWindow?: number | bigint;
  /**
   *
   * @type {object}
   * @memberof FiatApiFiatWithdraw
   */
  readonly ext?: object;
}
/**
 * Request parameters for getFiatDepositWithdrawHistory operation in FiatApi.
 * @interface GetFiatDepositWithdrawHistoryRequest
 */
interface GetFiatDepositWithdrawHistoryRequest {
  /**
   * 0-buy,1-sell
   * @type {string}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly transactionType: string;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly beginTime?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly endTime?: number | bigint;
  /**
   * default 1
   * @type {number | bigint}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly page?: number | bigint;
  /**
   * default 100, max 500
   * @type {number | bigint}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly rows?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatDepositWithdrawHistory
   */
  readonly recvWindow?: number | bigint;
}
/**
 * Request parameters for getFiatPaymentsHistory operation in FiatApi.
 * @interface GetFiatPaymentsHistoryRequest
 */
interface GetFiatPaymentsHistoryRequest {
  /**
   * 0-buy,1-sell
   * @type {string}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly transactionType: string;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly beginTime?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly endTime?: number | bigint;
  /**
   * default 1
   * @type {number | bigint}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly page?: number | bigint;
  /**
   * default 100, max 500
   * @type {number | bigint}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly rows?: number | bigint;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetFiatPaymentsHistory
   */
  readonly recvWindow?: number | bigint;
}
/**
 * Request parameters for getOrderDetail operation in FiatApi.
 * @interface GetOrderDetailRequest
 */
interface GetOrderDetailRequest {
  /**
   * order id retrieved from the api call of withdrawal
   * @type {string}
   * @memberof FiatApiGetOrderDetail
   */
  readonly orderNo: string;
  /**
   *
   * @type {number | bigint}
   * @memberof FiatApiGetOrderDetail
   */
  readonly recvWindow?: number | bigint;
}
/**
 * FiatApi - object-oriented interface
 * @class FiatApi
 */
declare class FiatApi implements FiatApiInterface {
  private readonly configuration;
  private localVarAxiosParamCreator;
  constructor(configuration: ConfigurationRestAPI);
  /**
   * Submit deposit request, in this version, we only support BRL deposit via pix.
   *
   *
   *
   * For BRL deposit via pix, you need to place an order before making a transfer from your bank.
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 45000
   *
   * @summary Deposit(TRADE)
   * @param {DepositRequest} requestParameters Request parameters.
   * @returns {Promise<RestApiResponse<DepositResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApi
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Deposit Binance API Documentation}
   */
  deposit(requestParameters: DepositRequest): Promise<RestApiResponse<DepositResponse>>;
  /**
   * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.
   *
   * 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.
   *
   * 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.
   *
   * you need to bind your bank account on web/app before using the corresponding account number
   *
   * Weight: 45000
   *
   * @summary Fiat Withdraw(WITHDRAW)
   * @param {FiatWithdrawRequest} requestParameters Request parameters.
   * @returns {Promise<RestApiResponse<FiatWithdrawResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApi
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Withdraw Binance API Documentation}
   */
  fiatWithdraw(requestParameters: FiatWithdrawRequest): Promise<RestApiResponse<FiatWithdrawResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   *
   * Weight: 45000
   *
   * @summary Get Fiat Deposit/Withdraw History (USER_DATA)
   * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.
   * @returns {Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApi
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Deposit-Withdraw-History Binance API Documentation}
   */
  getFiatDepositWithdrawHistory(requestParameters: GetFiatDepositWithdrawHistoryRequest): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:
   * Cash Balance
   * Credit Card
   * Online Banking
   * Bank Transfer
   *
   * Weight: 1
   *
   * @summary Get Fiat Payments History (USER_DATA)
   * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.
   * @returns {Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApi
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Payments-History Binance API Documentation}
   */
  getFiatPaymentsHistory(requestParameters: GetFiatPaymentsHistoryRequest): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>;
  /**
   * Get Order Detail
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 1
   *
   * @summary Get Order Detail(USER_DATA)
   * @param {GetOrderDetailRequest} requestParameters Request parameters.
   * @returns {Promise<RestApiResponse<GetOrderDetailResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @memberof FiatApi
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Order-Detail Binance API Documentation}
   */
  getOrderDetail(requestParameters: GetOrderDetailRequest): Promise<RestApiResponse<GetOrderDetailResponse>>;
}
//#endregion
//#region src/rest-api/rest-api.d.ts
declare class RestAPI {
  private configuration;
  private fiatApi;
  constructor(configuration: ConfigurationRestAPI);
  /**
   * Generic function to send a request.
   * @param endpoint - The API endpoint to call.
   * @param method - HTTP method to use (GET, POST, DELETE, etc.).
   * @param queryParams - Query parameters for the request.
   * @param bodyParams - Body parameters for the request.
   *
   * @returns A promise resolving to the response data object.
   */
  sendRequest<T>(endpoint: string, method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH', queryParams?: Record<string, unknown>, bodyParams?: Record<string, unknown>): Promise<RestApiResponse<T>>;
  /**
   * Generic function to send a signed request.
   * @param endpoint - The API endpoint to call.
   * @param method - HTTP method to use (GET, POST, DELETE, etc.).
   * @param queryParams - Query parameters for the request.
   * @param bodyParams - Body parameters for the request.
   *
   * @returns A promise resolving to the response data object.
   */
  sendSignedRequest<T>(endpoint: string, method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH', queryParams?: Record<string, unknown>, bodyParams?: Record<string, unknown>): Promise<RestApiResponse<T>>;
  /**
   * Submit deposit request, in this version, we only support BRL deposit via pix.
   *
   *
   *
   * For BRL deposit via pix, you need to place an order before making a transfer from your bank.
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 45000
   *
   * @summary Deposit(TRADE)
   * @param {DepositRequest} requestParameters Request parameters.
   *
   * @returns {Promise<RestApiResponse<DepositResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Deposit Binance API Documentation}
   */
  deposit(requestParameters: DepositRequest): Promise<RestApiResponse<DepositResponse>>;
  /**
   * Submit withdraw request, in this version, we support BRL,ARS,MXN withdrawal via bank_transfer.
   *
   * 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.
   *
   * 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.
   *
   * you need to bind your bank account on web/app before using the corresponding account number
   *
   * Weight: 45000
   *
   * @summary Fiat Withdraw(WITHDRAW)
   * @param {FiatWithdrawRequest} requestParameters Request parameters.
   *
   * @returns {Promise<RestApiResponse<FiatWithdrawResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Fiat-Withdraw Binance API Documentation}
   */
  fiatWithdraw(requestParameters: FiatWithdrawRequest): Promise<RestApiResponse<FiatWithdrawResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   *
   * Weight: 45000
   *
   * @summary Get Fiat Deposit/Withdraw History (USER_DATA)
   * @param {GetFiatDepositWithdrawHistoryRequest} requestParameters Request parameters.
   *
   * @returns {Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Deposit-Withdraw-History Binance API Documentation}
   */
  getFiatDepositWithdrawHistory(requestParameters: GetFiatDepositWithdrawHistoryRequest): Promise<RestApiResponse<GetFiatDepositWithdrawHistoryResponse>>;
  /**
   * Get Fiat Deposit/Withdraw History
   *
   * If beginTime and endTime are not sent, the recent 30-day data will be returned.
   * paymentMethod: Only when requesting payments history for buy (transactionType=0), response contains paymentMethod representing the way of purchase. Now we have:
   * Cash Balance
   * Credit Card
   * Online Banking
   * Bank Transfer
   *
   * Weight: 1
   *
   * @summary Get Fiat Payments History (USER_DATA)
   * @param {GetFiatPaymentsHistoryRequest} requestParameters Request parameters.
   *
   * @returns {Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Fiat-Payments-History Binance API Documentation}
   */
  getFiatPaymentsHistory(requestParameters: GetFiatPaymentsHistoryRequest): Promise<RestApiResponse<GetFiatPaymentsHistoryResponse>>;
  /**
   * Get Order Detail
   *
   * Before calling this api, please make sure you have already completed your KYC or KYB, and already activated your fiat service on our website.
   *
   * Weight: 1
   *
   * @summary Get Order Detail(USER_DATA)
   * @param {GetOrderDetailRequest} requestParameters Request parameters.
   *
   * @returns {Promise<RestApiResponse<GetOrderDetailResponse>>}
   * @throws {RequiredError | ConnectorClientError | UnauthorizedError | ForbiddenError | TooManyRequestsError | RateLimitBanError | ServerError | NotFoundError | NetworkError | BadRequestError}
   * @see {@link https://developers.binance.com/docs/fiat/rest-api/Get-Order-Detail Binance API Documentation}
   */
  getOrderDetail(requestParameters: GetOrderDetailRequest): Promise<RestApiResponse<GetOrderDetailResponse>>;
}
declare namespace index_d_exports {
  export { AccountInfo, DepositRequest, DepositResponse, DepositResponseData, FiatApi, FiatApiInterface, FiatWithdrawRequest, FiatWithdrawResponse, GetFiatDepositWithdrawHistoryRequest, GetFiatDepositWithdrawHistoryResponse, GetFiatDepositWithdrawHistoryResponseDataInner, GetFiatPaymentsHistoryRequest, GetFiatPaymentsHistoryResponse, GetFiatPaymentsHistoryResponseDataInner, GetOrderDetailRequest, GetOrderDetailResponse, GetOrderDetailResponseData, RestAPI };
}
//#endregion
//#region src/fiat.d.ts
interface ConfigurationFiat {
  configurationRestAPI?: ConfigurationRestAPI;
}
declare class Fiat {
  restAPI: RestAPI;
  constructor(config: ConfigurationFiat);
}
//#endregion
export { BadRequestError, type ConfigurationFiat, ConnectorClientError, FIAT_REST_API_PROD_URL, Fiat, index_d_exports as FiatRestAPI, ForbiddenError, NetworkError, NotFoundError, RateLimitBanError, RequiredError, ServerError, TooManyRequestsError, UnauthorizedError };
//# sourceMappingURL=index.d.ts.map