/**
 * 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 { LegacyDraftReviewAndValidationResponse } from '../models';
import { LegacyPolicyAndValidationResponse } from '../models';
import { LegacyPolicyRules } from '../models';
import { LegacyPublishDraftRequest } from '../models';
import { LegacyPublishResult } from '../models';
/**
 * PolicyEditorBetaApi - axios parameter creator
 * @export
 */
export declare const PolicyEditorBetaApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Legacy Endpoint – Returns the active policy and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getActivePolicy` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active policy and its validation
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getActivePolicyLegacy: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Legacy Endpoint – Returns the active draft and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active draft
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getDraftLegacy: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Legacy Endpoint – Send publish request of certain draft id and returns the response.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `publishDraft` endpoint under policy/paths provides improved functionality and better performance. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a certain draft id
     * @param {LegacyPublishDraftRequest} legacyPublishDraftRequest
     * @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}
     */
    publishDraftLegacy: (legacyPublishDraftRequest: LegacyPublishDraftRequest, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Send publish request of set of policy rules and returns the response.  **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a set of policy rules
     * @param {LegacyPolicyRules} legacyPolicyRules
     * @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}
     */
    publishPolicyRules: (legacyPolicyRules: LegacyPolicyRules, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Legacy Endpoint – Update the draft and return its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `updateDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Update the draft with a new set of rules
     * @param {LegacyPolicyRules} legacyPolicyRules
     * @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}
     */
    updateDraftLegacy: (legacyPolicyRules: LegacyPolicyRules, idempotencyKey?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * PolicyEditorBetaApi - functional programming interface
 * @export
 */
export declare const PolicyEditorBetaApiFp: (configuration?: Configuration) => {
    /**
     * Legacy Endpoint – Returns the active policy and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getActivePolicy` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active policy and its validation
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getActivePolicyLegacy(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LegacyPolicyAndValidationResponse>>;
    /**
     * Legacy Endpoint – Returns the active draft and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active draft
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getDraftLegacy(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LegacyDraftReviewAndValidationResponse>>;
    /**
     * Legacy Endpoint – Send publish request of certain draft id and returns the response.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `publishDraft` endpoint under policy/paths provides improved functionality and better performance. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a certain draft id
     * @param {LegacyPublishDraftRequest} legacyPublishDraftRequest
     * @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}
     */
    publishDraftLegacy(legacyPublishDraftRequest: LegacyPublishDraftRequest, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LegacyPublishResult>>;
    /**
     * Send publish request of set of policy rules and returns the response.  **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a set of policy rules
     * @param {LegacyPolicyRules} legacyPolicyRules
     * @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}
     */
    publishPolicyRules(legacyPolicyRules: LegacyPolicyRules, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LegacyPublishResult>>;
    /**
     * Legacy Endpoint – Update the draft and return its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `updateDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Update the draft with a new set of rules
     * @param {LegacyPolicyRules} legacyPolicyRules
     * @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}
     */
    updateDraftLegacy(legacyPolicyRules: LegacyPolicyRules, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<LegacyDraftReviewAndValidationResponse>>;
};
/**
 * PolicyEditorBetaApi - factory interface
 * @export
 */
export declare const PolicyEditorBetaApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Legacy Endpoint – Returns the active policy and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getActivePolicy` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active policy and its validation
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getActivePolicyLegacy(options?: RawAxiosRequestConfig): AxiosPromise<LegacyPolicyAndValidationResponse>;
    /**
     * Legacy Endpoint – Returns the active draft and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active draft
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getDraftLegacy(options?: RawAxiosRequestConfig): AxiosPromise<LegacyDraftReviewAndValidationResponse>;
    /**
     * Legacy Endpoint – Send publish request of certain draft id and returns the response.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `publishDraft` endpoint under policy/paths provides improved functionality and better performance. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a certain draft id
     * @param {PolicyEditorBetaApiPublishDraftLegacyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    publishDraftLegacy(requestParameters: PolicyEditorBetaApiPublishDraftLegacyRequest, options?: RawAxiosRequestConfig): AxiosPromise<LegacyPublishResult>;
    /**
     * Send publish request of set of policy rules and returns the response.  **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a set of policy rules
     * @param {PolicyEditorBetaApiPublishPolicyRulesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    publishPolicyRules(requestParameters: PolicyEditorBetaApiPublishPolicyRulesRequest, options?: RawAxiosRequestConfig): AxiosPromise<LegacyPublishResult>;
    /**
     * Legacy Endpoint – Update the draft and return its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `updateDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Update the draft with a new set of rules
     * @param {PolicyEditorBetaApiUpdateDraftLegacyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateDraftLegacy(requestParameters: PolicyEditorBetaApiUpdateDraftLegacyRequest, options?: RawAxiosRequestConfig): AxiosPromise<LegacyDraftReviewAndValidationResponse>;
};
/**
 * Request parameters for publishDraftLegacy operation in PolicyEditorBetaApi.
 * @export
 * @interface PolicyEditorBetaApiPublishDraftLegacyRequest
 */
export interface PolicyEditorBetaApiPublishDraftLegacyRequest {
    /**
     *
     * @type {LegacyPublishDraftRequest}
     * @memberof PolicyEditorBetaApiPublishDraftLegacy
     */
    readonly legacyPublishDraftRequest: LegacyPublishDraftRequest;
    /**
     * 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 PolicyEditorBetaApiPublishDraftLegacy
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for publishPolicyRules operation in PolicyEditorBetaApi.
 * @export
 * @interface PolicyEditorBetaApiPublishPolicyRulesRequest
 */
export interface PolicyEditorBetaApiPublishPolicyRulesRequest {
    /**
     *
     * @type {LegacyPolicyRules}
     * @memberof PolicyEditorBetaApiPublishPolicyRules
     */
    readonly legacyPolicyRules: LegacyPolicyRules;
    /**
     * 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 PolicyEditorBetaApiPublishPolicyRules
     */
    readonly idempotencyKey?: string;
}
/**
 * Request parameters for updateDraftLegacy operation in PolicyEditorBetaApi.
 * @export
 * @interface PolicyEditorBetaApiUpdateDraftLegacyRequest
 */
export interface PolicyEditorBetaApiUpdateDraftLegacyRequest {
    /**
     *
     * @type {LegacyPolicyRules}
     * @memberof PolicyEditorBetaApiUpdateDraftLegacy
     */
    readonly legacyPolicyRules: LegacyPolicyRules;
    /**
     * 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 PolicyEditorBetaApiUpdateDraftLegacy
     */
    readonly idempotencyKey?: string;
}
/**
 * PolicyEditorBetaApi - object-oriented interface
 * @export
 * @class PolicyEditorBetaApi
 * @extends {BaseAPI}
 */
export declare class PolicyEditorBetaApi extends BaseAPI {
    /**
     * Legacy Endpoint – Returns the active policy and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getActivePolicy` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active policy and its validation
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PolicyEditorBetaApi
     */
    getActivePolicyLegacy(): Promise<import("../response/fireblocksResponse").FireblocksResponse<LegacyPolicyAndValidationResponse>>;
    /**
     * Legacy Endpoint – Returns the active draft and its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `getDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Get the active draft
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PolicyEditorBetaApi
     */
    getDraftLegacy(): Promise<import("../response/fireblocksResponse").FireblocksResponse<LegacyDraftReviewAndValidationResponse>>;
    /**
     * Legacy Endpoint – Send publish request of certain draft id and returns the response.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `publishDraft` endpoint under policy/paths provides improved functionality and better performance. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a certain draft id
     * @param {PolicyEditorBetaApiPublishDraftLegacyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PolicyEditorBetaApi
     */
    publishDraftLegacy(requestParameters: PolicyEditorBetaApiPublishDraftLegacyRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<LegacyPublishResult>>;
    /**
     * Send publish request of set of policy rules and returns the response.  **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Send publish request for a set of policy rules
     * @param {PolicyEditorBetaApiPublishPolicyRulesRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PolicyEditorBetaApi
     */
    publishPolicyRules(requestParameters: PolicyEditorBetaApiPublishPolicyRulesRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<LegacyPublishResult>>;
    /**
     * Legacy Endpoint – Update the draft and return its validation.  **Note:**  - This endpoint will remain available for the foreseeable future and is not deprecated. - The `updateDraft` endpoint under policy/paths provides policy type-specific operations and improved functionality. - These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks TAP, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.
     * @summary Update the draft with a new set of rules
     * @param {PolicyEditorBetaApiUpdateDraftLegacyRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PolicyEditorBetaApi
     */
    updateDraftLegacy(requestParameters: PolicyEditorBetaApiUpdateDraftLegacyRequest): Promise<import("../response/fireblocksResponse").FireblocksResponse<LegacyDraftReviewAndValidationResponse>>;
}
