/**
 * 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 { CreateAPIUser } from '../models';
import { GetAPIUsersResponse } from '../models';
/**
 * ApiUserApi - axios parameter creator
 * @export
 */
export declare const ApiUserApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Create a new API key in your workspace. Learn more about Fireblocks API Keys management in the following [guide](https://developers.fireblocks.com/docs/manage-api-keys). Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Create API Key
     * @param {CreateAPIUser} [createAPIUser]
     * @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}
     */
    createApiUser: (createAPIUser?: CreateAPIUser, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List all API keys in your workspace. - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions. Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Get API Keys
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getApiUsers: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * ApiUserApi - functional programming interface
 * @export
 */
export declare const ApiUserApiFp: (configuration?: Configuration) => {
    /**
     * Create a new API key in your workspace. Learn more about Fireblocks API Keys management in the following [guide](https://developers.fireblocks.com/docs/manage-api-keys). Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Create API Key
     * @param {CreateAPIUser} [createAPIUser]
     * @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}
     */
    createApiUser(createAPIUser?: CreateAPIUser, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * List all API keys in your workspace. - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions. Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Get API Keys
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getApiUsers(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetAPIUsersResponse>>;
};
/**
 * ApiUserApi - factory interface
 * @export
 */
export declare const ApiUserApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Create a new API key in your workspace. Learn more about Fireblocks API Keys management in the following [guide](https://developers.fireblocks.com/docs/manage-api-keys). Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Create API Key
     * @param {ApiUserApiCreateApiUserRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createApiUser(requestParameters?: ApiUserApiCreateApiUserRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
    /**
     * List all API keys in your workspace. - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions. Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Get API Keys
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getApiUsers(options?: RawAxiosRequestConfig): AxiosPromise<GetAPIUsersResponse>;
};
/**
 * Request parameters for createApiUser operation in ApiUserApi.
 * @export
 * @interface ApiUserApiCreateApiUserRequest
 */
export interface ApiUserApiCreateApiUserRequest {
    /**
     *
     * @type {CreateAPIUser}
     * @memberof ApiUserApiCreateApiUser
     */
    readonly createAPIUser?: CreateAPIUser;
    /**
     * 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 ApiUserApiCreateApiUser
     */
    readonly idempotencyKey?: string;
}
/**
 * ApiUserApi - object-oriented interface
 * @export
 * @class ApiUserApi
 * @extends {BaseAPI}
 */
export declare class ApiUserApi extends BaseAPI {
    /**
     * Create a new API key in your workspace. Learn more about Fireblocks API Keys management in the following [guide](https://developers.fireblocks.com/docs/manage-api-keys). Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Create API Key
     * @param {ApiUserApiCreateApiUserRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ApiUserApi
     */
    createApiUser(requestParameters?: ApiUserApiCreateApiUserRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<void>>;
    /**
     * List all API keys in your workspace. - Please note that this endpoint is available only for API keys with Admin/Non Signing Admin permissions. Endpoint Permission: Admin, Non-Signing Admin.
     * @summary Get API Keys
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof ApiUserApi
     */
    getApiUsers(): Promise<import("../response/fireblocksResponse").FireblocksResponse<GetAPIUsersResponse>>;
}
