/**
 * Fireblocks API
 * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.  - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
 *
 * The version of the OpenAPI document: 1.6.2
 * Contact: developers@fireblocks.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import { RequestArgs, BaseAPI } from '../base';
import { GetOtaStatusResponse } from '../models';
import { SetOtaStatusRequest } from '../models';
import { SetOtaStatusResponse } from '../models';
/**
 * OTABetaApi - axios parameter creator
 * @export
 */
export declare const OTABetaApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Returns current OTA status
     * @summary Returns current OTA status
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOtaStatus: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Enable or disable transactions to One Time Addresses (Non Whitelisted addresses). Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)
     * @summary Enable or disable transactions to OTA
     * @param {SetOtaStatusRequest} setOtaStatusRequest
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setOtaStatus: (setOtaStatusRequest: SetOtaStatusRequest, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * OTABetaApi - functional programming interface
 * @export
 */
export declare const OTABetaApiFp: (configuration?: Configuration) => {
    /**
     * Returns current OTA status
     * @summary Returns current OTA status
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOtaStatus(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetOtaStatusResponse>>;
    /**
     * Enable or disable transactions to One Time Addresses (Non Whitelisted addresses). Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)
     * @summary Enable or disable transactions to OTA
     * @param {SetOtaStatusRequest} setOtaStatusRequest
     * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setOtaStatus(setOtaStatusRequest: SetOtaStatusRequest, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SetOtaStatusResponse>>;
};
/**
 * OTABetaApi - factory interface
 * @export
 */
export declare const OTABetaApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Returns current OTA status
     * @summary Returns current OTA status
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getOtaStatus(options?: RawAxiosRequestConfig): AxiosPromise<GetOtaStatusResponse>;
    /**
     * Enable or disable transactions to One Time Addresses (Non Whitelisted addresses). Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)
     * @summary Enable or disable transactions to OTA
     * @param {OTABetaApiSetOtaStatusRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    setOtaStatus(requestParameters: OTABetaApiSetOtaStatusRequest, options?: RawAxiosRequestConfig): AxiosPromise<SetOtaStatusResponse>;
};
/**
 * Request parameters for setOtaStatus operation in OTABetaApi.
 * @export
 * @interface OTABetaApiSetOtaStatusRequest
 */
export interface OTABetaApiSetOtaStatusRequest {
    /**
     *
     * @type {SetOtaStatusRequest}
     * @memberof OTABetaApiSetOtaStatus
     */
    readonly setOtaStatusRequest: SetOtaStatusRequest;
    /**
     * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours.
     * @type {string}
     * @memberof OTABetaApiSetOtaStatus
     */
    readonly idempotencyKey?: string;
}
/**
 * OTABetaApi - object-oriented interface
 * @export
 * @class OTABetaApi
 * @extends {BaseAPI}
 */
export declare class OTABetaApi extends BaseAPI {
    /**
     * Returns current OTA status
     * @summary Returns current OTA status
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OTABetaApi
     */
    getOtaStatus(): Promise<import("../response/fireblocksResponse").FireblocksResponse<GetOtaStatusResponse>>;
    /**
     * Enable or disable transactions to One Time Addresses (Non Whitelisted addresses). Learn more about [One Time Addresses](https://support.fireblocks.io/hc/en-us/articles/4409104568338-One-Time-Address-OTA-feature)
     * @summary Enable or disable transactions to OTA
     * @param {OTABetaApiSetOtaStatusRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof OTABetaApi
     */
    setOtaStatus(requestParameters: OTABetaApiSetOtaStatusRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<SetOtaStatusResponse>>;
}
