import type { Configuration } from './configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import type { RequestArgs } from './base';
import { BaseAPI } from './base';
/**
 *
 * @export
 * @interface Access
 */
export interface Access {
    /**
     *
     * @type {Range}
     * @memberof Access
     */
    'receiver'?: Range;
    /**
     *
     * @type {Array<Accessor>}
     * @memberof Access
     */
    'accessors'?: Array<Accessor>;
}
/**
 *
 * @export
 * @interface Accessor
 */
export interface Accessor {
    /**
     *
     * @type {number}
     * @memberof Accessor
     */
    'index'?: number;
    /**
     *
     * @type {string}
     * @memberof Accessor
     */
    'key': string;
    /**
     *
     * @type {Range}
     * @memberof Accessor
     */
    'range': Range;
}
/**
 *
 * @export
 * @interface CheckEnvironment
 */
export interface CheckEnvironment {
    /**
     *
     * @type {{ [key: string]: Expr; }}
     * @memberof CheckEnvironment
     */
    'exprs'?: {
        [key: string]: Expr;
    };
    /**
     *
     * @type {{ [key: string]: Value; }}
     * @memberof CheckEnvironment
     */
    'properties'?: {
        [key: string]: Value;
    };
    /**
     *
     * @type {any}
     * @memberof CheckEnvironment
     */
    'schema'?: any;
    /**
     *
     * @type {EvaluatedExecutionContext}
     * @memberof CheckEnvironment
     */
    'executionContext'?: EvaluatedExecutionContext;
    /**
     *
     * @type {Array<EnvironmentDiagnostic>}
     * @memberof CheckEnvironment
     */
    'diagnostics'?: Array<EnvironmentDiagnostic>;
}
/**
 *
 * @export
 * @interface CloneEnvironment
 */
export interface CloneEnvironment {
    /**
     *
     * @type {string}
     * @memberof CloneEnvironment
     */
    'project': string;
    /**
     *
     * @type {string}
     * @memberof CloneEnvironment
     */
    'name': string;
    /**
     *
     * @type {boolean}
     * @memberof CloneEnvironment
     */
    'preserveAccess'?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CloneEnvironment
     */
    'preserveEnvironmentTags'?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CloneEnvironment
     */
    'preserveHistory'?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof CloneEnvironment
     */
    'preserveRevisionTags'?: boolean;
}
/**
 *
 * @export
 * @interface CreateEnvironment
 */
export interface CreateEnvironment {
    /**
     *
     * @type {string}
     * @memberof CreateEnvironment
     */
    'project': string;
    /**
     *
     * @type {string}
     * @memberof CreateEnvironment
     */
    'name': string;
}
/**
 *
 * @export
 * @interface CreateEnvironmentRevisionTag
 */
export interface CreateEnvironmentRevisionTag {
    /**
     *
     * @type {string}
     * @memberof CreateEnvironmentRevisionTag
     */
    'name': string;
    /**
     *
     * @type {number}
     * @memberof CreateEnvironmentRevisionTag
     */
    'revision': number;
}
/**
 *
 * @export
 * @interface CreateEnvironmentTag
 */
export interface CreateEnvironmentTag {
    /**
     *
     * @type {string}
     * @memberof CreateEnvironmentTag
     */
    'name': string;
    /**
     *
     * @type {string}
     * @memberof CreateEnvironmentTag
     */
    'value': string;
}
/**
 *
 * @export
 * @interface Environment
 */
export interface Environment {
    /**
     *
     * @type {{ [key: string]: Expr; }}
     * @memberof Environment
     */
    'exprs'?: {
        [key: string]: Expr;
    };
    /**
     *
     * @type {{ [key: string]: Value; }}
     * @memberof Environment
     */
    'properties'?: {
        [key: string]: Value;
    };
    /**
     *
     * @type {any}
     * @memberof Environment
     */
    'schema'?: any;
    /**
     *
     * @type {EvaluatedExecutionContext}
     * @memberof Environment
     */
    'executionContext'?: EvaluatedExecutionContext;
}
/**
 *
 * @export
 * @interface EnvironmentDefinition
 */
export interface EnvironmentDefinition {
    /**
     *
     * @type {Array<string>}
     * @memberof EnvironmentDefinition
     */
    'imports'?: Array<string>;
    /**
     *
     * @type {EnvironmentDefinitionValues}
     * @memberof EnvironmentDefinition
     */
    'values'?: EnvironmentDefinitionValues;
}
/**
 *
 * @export
 * @interface EnvironmentDefinitionValues
 */
export interface EnvironmentDefinitionValues {
    [key: string]: object | any;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof EnvironmentDefinitionValues
     */
    'pulumiConfig'?: {
        [key: string]: any;
    };
    /**
     *
     * @type {{ [key: string]: string; }}
     * @memberof EnvironmentDefinitionValues
     */
    'environmentVariables'?: {
        [key: string]: string;
    };
    /**
     *
     * @type {{ [key: string]: string; }}
     * @memberof EnvironmentDefinitionValues
     */
    'files'?: {
        [key: string]: string;
    };
}
/**
 *
 * @export
 * @interface EnvironmentDiagnostic
 */
export interface EnvironmentDiagnostic {
    [key: string]: object | any;
    /**
     *
     * @type {string}
     * @memberof EnvironmentDiagnostic
     */
    'summary': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentDiagnostic
     */
    'path'?: string;
    /**
     *
     * @type {Range}
     * @memberof EnvironmentDiagnostic
     */
    'range'?: Range;
}
/**
 *
 * @export
 * @interface EnvironmentDiagnostics
 */
export interface EnvironmentDiagnostics {
    /**
     *
     * @type {Array<EnvironmentDiagnostic>}
     * @memberof EnvironmentDiagnostics
     */
    'diagnostics'?: Array<EnvironmentDiagnostic>;
}
/**
 *
 * @export
 * @interface EnvironmentRevision
 */
export interface EnvironmentRevision {
    /**
     *
     * @type {number}
     * @memberof EnvironmentRevision
     */
    'number': number;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevision
     */
    'creatorLogin'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevision
     */
    'created'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevision
     */
    'creatorName'?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof EnvironmentRevision
     */
    'tags'?: Array<string>;
}
/**
 *
 * @export
 * @interface EnvironmentRevisionTag
 */
export interface EnvironmentRevisionTag {
    /**
     *
     * @type {number}
     * @memberof EnvironmentRevisionTag
     */
    'revision': number;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTag
     */
    'name': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTag
     */
    'created'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTag
     */
    'modified'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTag
     */
    'editorLogin'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTag
     */
    'editorName'?: string;
}
/**
 *
 * @export
 * @interface EnvironmentRevisionTags
 */
export interface EnvironmentRevisionTags {
    /**
     *
     * @type {Array<EnvironmentRevisionTag>}
     * @memberof EnvironmentRevisionTags
     */
    'tags'?: Array<EnvironmentRevisionTag>;
    /**
     *
     * @type {string}
     * @memberof EnvironmentRevisionTags
     */
    'nextToken'?: string;
}
/**
 *
 * @export
 * @interface EnvironmentTag
 */
export interface EnvironmentTag {
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'name': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'value'?: string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'created': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'modified': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'editorLogin': string;
    /**
     *
     * @type {string}
     * @memberof EnvironmentTag
     */
    'editorName': string;
}
/**
 *
 * @export
 * @interface EvaluatedExecutionContext
 */
export interface EvaluatedExecutionContext {
    /**
     *
     * @type {{ [key: string]: Value; }}
     * @memberof EvaluatedExecutionContext
     */
    'properties'?: {
        [key: string]: Value;
    };
    /**
     *
     * @type {any}
     * @memberof EvaluatedExecutionContext
     */
    'schema'?: any;
}
/**
 *
 * @export
 * @interface Expr
 */
export interface Expr {
    /**
     *
     * @type {Range}
     * @memberof Expr
     */
    'range'?: Range;
    /**
     *
     * @type {Expr}
     * @memberof Expr
     */
    'base'?: Expr;
    /**
     *
     * @type {any}
     * @memberof Expr
     */
    'schema'?: any;
    /**
     *
     * @type {{ [key: string]: Range; }}
     * @memberof Expr
     */
    'keyRanges'?: {
        [key: string]: Range;
    };
    /**
     *
     * @type {any}
     * @memberof Expr
     */
    'literal'?: any;
    /**
     *
     * @type {Array<Interpolation>}
     * @memberof Expr
     */
    'interpolate'?: Array<Interpolation>;
    /**
     *
     * @type {Array<PropertyAccessor>}
     * @memberof Expr
     */
    'symbol'?: Array<PropertyAccessor>;
    /**
     *
     * @type {Array<Access>}
     * @memberof Expr
     */
    'access'?: Array<Access>;
    /**
     *
     * @type {Array<Expr>}
     * @memberof Expr
     */
    'list'?: Array<Expr>;
    /**
     *
     * @type {{ [key: string]: Expr; }}
     * @memberof Expr
     */
    'object'?: {
        [key: string]: Expr;
    };
    /**
     *
     * @type {ExprBuiltin}
     * @memberof Expr
     */
    'builtin'?: ExprBuiltin;
}
/**
 *
 * @export
 * @interface ExprBuiltin
 */
export interface ExprBuiltin {
    /**
     *
     * @type {string}
     * @memberof ExprBuiltin
     */
    'name': string;
    /**
     *
     * @type {Range}
     * @memberof ExprBuiltin
     */
    'nameRange'?: Range;
    /**
     *
     * @type {any}
     * @memberof ExprBuiltin
     */
    'argSchema'?: any;
    /**
     *
     * @type {Expr}
     * @memberof ExprBuiltin
     */
    'arg'?: Expr;
}
/**
 *
 * @export
 * @interface Interpolation
 */
export interface Interpolation {
    /**
     *
     * @type {string}
     * @memberof Interpolation
     */
    'text'?: string;
    /**
     *
     * @type {Array<PropertyAccessor>}
     * @memberof Interpolation
     */
    'value'?: Array<PropertyAccessor>;
}
/**
 *
 * @export
 * @interface ListEnvironmentTags
 */
export interface ListEnvironmentTags {
    /**
     *
     * @type {{ [key: string]: EnvironmentTag; }}
     * @memberof ListEnvironmentTags
     */
    'tags': {
        [key: string]: EnvironmentTag;
    };
    /**
     *
     * @type {string}
     * @memberof ListEnvironmentTags
     */
    'nextToken': string;
}
/**
 *
 * @export
 * @interface ModelError
 */
export interface ModelError {
    /**
     *
     * @type {string}
     * @memberof ModelError
     */
    'message': string;
    /**
     *
     * @type {number}
     * @memberof ModelError
     */
    'code': number;
}
/**
 *
 * @export
 * @interface OpenEnvironment
 */
export interface OpenEnvironment {
    /**
     * Open environment session identifier
     * @type {string}
     * @memberof OpenEnvironment
     */
    'id': string;
    /**
     *
     * @type {EnvironmentDiagnostics}
     * @memberof OpenEnvironment
     */
    'diagnostics'?: EnvironmentDiagnostics;
}
/**
 *
 * @export
 * @interface OrgEnvironment
 */
export interface OrgEnvironment {
    [key: string]: object | any;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironment
     */
    'organization'?: string;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironment
     */
    'project': string;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironment
     */
    'name': string;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironment
     */
    'created': string;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironment
     */
    'modified': string;
}
/**
 *
 * @export
 * @interface OrgEnvironments
 */
export interface OrgEnvironments {
    /**
     *
     * @type {Array<OrgEnvironment>}
     * @memberof OrgEnvironments
     */
    'environments'?: Array<OrgEnvironment>;
    /**
     *
     * @type {string}
     * @memberof OrgEnvironments
     */
    'nextToken'?: string;
}
/**
 *
 * @export
 * @interface Pos
 */
export interface Pos {
    /**
     * Line is the source code line where this position points. Lines are counted starting at 1 and incremented for each newline character encountered.
     * @type {number}
     * @memberof Pos
     */
    'line': number;
    /**
     * Column is the source code column where this position points. Columns are counted in visual cells starting at 1, and are incremented roughly per grapheme cluster encountered.
     * @type {number}
     * @memberof Pos
     */
    'column': number;
    /**
     * Byte is the byte offset into the file where the indicated position begins.
     * @type {number}
     * @memberof Pos
     */
    'byte': number;
}
/**
 *
 * @export
 * @interface PropertyAccessor
 */
export interface PropertyAccessor {
    /**
     *
     * @type {number}
     * @memberof PropertyAccessor
     */
    'index'?: number;
    /**
     *
     * @type {string}
     * @memberof PropertyAccessor
     */
    'key': string;
    /**
     *
     * @type {Range}
     * @memberof PropertyAccessor
     */
    'range': Range;
    /**
     *
     * @type {Range}
     * @memberof PropertyAccessor
     */
    'value'?: Range;
}
/**
 *
 * @export
 * @interface Range
 */
export interface Range {
    /**
     *
     * @type {string}
     * @memberof Range
     */
    'environment': string;
    /**
     *
     * @type {Pos}
     * @memberof Range
     */
    'begin': Pos;
    /**
     *
     * @type {Pos}
     * @memberof Range
     */
    'end': Pos;
}
/**
 *
 * @export
 * @interface Reference
 */
export interface Reference {
    /**
     *
     * @type {string}
     * @memberof Reference
     */
    '$ref': string;
}
/**
 *
 * @export
 * @interface Trace
 */
export interface Trace {
    /**
     *
     * @type {Range}
     * @memberof Trace
     */
    'def'?: Range;
    /**
     *
     * @type {Value}
     * @memberof Trace
     */
    'base'?: Value;
}
/**
 *
 * @export
 * @interface UpdateEnvironmentRevisionTag
 */
export interface UpdateEnvironmentRevisionTag {
    /**
     *
     * @type {number}
     * @memberof UpdateEnvironmentRevisionTag
     */
    'revision': number;
}
/**
 *
 * @export
 * @interface UpdateEnvironmentTag
 */
export interface UpdateEnvironmentTag {
    /**
     *
     * @type {UpdateEnvironmentTagCurrentTag}
     * @memberof UpdateEnvironmentTag
     */
    'currentTag': UpdateEnvironmentTagCurrentTag;
    /**
     *
     * @type {UpdateEnvironmentTagNewTag}
     * @memberof UpdateEnvironmentTag
     */
    'newTag': UpdateEnvironmentTagNewTag;
}
/**
 *
 * @export
 * @interface UpdateEnvironmentTagCurrentTag
 */
export interface UpdateEnvironmentTagCurrentTag {
    /**
     *
     * @type {string}
     * @memberof UpdateEnvironmentTagCurrentTag
     */
    'value': string;
}
/**
 *
 * @export
 * @interface UpdateEnvironmentTagNewTag
 */
export interface UpdateEnvironmentTagNewTag {
    /**
     *
     * @type {string}
     * @memberof UpdateEnvironmentTagNewTag
     */
    'name': string;
    /**
     *
     * @type {string}
     * @memberof UpdateEnvironmentTagNewTag
     */
    'value': string;
}
/**
 *
 * @export
 * @interface Value
 */
export interface Value {
    /**
     *
     * @type {any}
     * @memberof Value
     */
    'value': any;
    /**
     *
     * @type {boolean}
     * @memberof Value
     */
    'secret'?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof Value
     */
    'unknown'?: boolean;
    /**
     *
     * @type {Trace}
     * @memberof Value
     */
    'trace': Trace;
}
/**
 * EscApi - axios parameter creator
 * @export
 */
export declare const EscApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * Checks an environment definition for errors
     * @summary Checks an environment definition for errors
     * @param {string} orgName Organization name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    checkEnvironmentYaml: (orgName: string, body: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Clones an environment
     * @summary Clones an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CloneEnvironment} cloneEnvironment Clone environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cloneEnvironment: (orgName: string, projectName: string, envName: string, cloneEnvironment: CloneEnvironment, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Creates an environment in the given org with the given name.
     * @summary Create a new environment
     * @param {string} orgName Organization name
     * @param {CreateEnvironment} createEnvironment Create Environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironment: (orgName: string, createEnvironment: CreateEnvironment, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Create environment revision tag
     * @summary Create environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentRevisionTag} createEnvironmentRevisionTag Create environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentRevisionTag: (orgName: string, projectName: string, envName: string, createEnvironmentRevisionTag: CreateEnvironmentRevisionTag, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Create environment tag
     * @summary Create environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentTag} createEnvironmentTag Create environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentTag: (orgName: string, projectName: string, envName: string, createEnvironmentTag: CreateEnvironmentTag, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Reads the definition for the given environment with static secrets in plaintext
     * @summary Reads the definition for the given environment with static secrets in plaintext
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    decryptEnvironment: (orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Delete an environment
     * @summary Delete an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironment: (orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Delete environment revision tag
     * @summary Delete environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentRevisionTag: (orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Delete environment tag
     * @summary Delete environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentTag: (orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Read an environment
     * @summary Read an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironment: (orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Read an environmentat a specific revision or tag
     * @summary Read an environment at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentAtVersion: (orgName: string, projectName: string, envName: string, version: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Returns the ETag for the given environment if it exists.
     * @summary Return an Environment ETag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentETag: (orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Read environment revision tag
     * @summary Read environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentRevisionTag: (orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Read an environment tag
     * @summary Read an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentTag: (orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisionTags: (orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {number} [before] before revision number for pagination
     * @param {number} [count] limit of revisions to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisions: (orgName: string, projectName: string, envName: string, before?: number, count?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List environment tags
     * @summary List environment tags
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentTags: (orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * List environments in the organization available to the current user
     * @summary List environments in the organization
     * @param {string} orgName Organization name
     * @param {string} [continuationToken] continuation Token from previous query to fetch next page of results
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironments: (orgName: string, continuationToken?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Opens a session the given environment for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironment: (orgName: string, projectName: string, envName: string, duration?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Opens a session the given environment at a specific version for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironmentAtVersion: (orgName: string, projectName: string, envName: string, version: string, duration?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironment: (orgName: string, projectName: string, envName: string, openSessionID: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {string} property Path to a specific property using Pulumi path syntax https://www.pulumi.com/docs/concepts/config/#structured-configuration
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironmentProperty: (orgName: string, projectName: string, envName: string, openSessionID: string, property: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update environment revision tag
     * @summary Update environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentRevisionTag} updateEnvironmentRevisionTag Update environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentRevisionTag: (orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentRevisionTag: UpdateEnvironmentRevisionTag, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Update an environment tag
     * @summary Update an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentTag} updateEnvironmentTag Update environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentTag: (orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentTag: UpdateEnvironmentTag, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
    /**
     * Validates and updates the given environment\'s definition.
     * @summary Update an existing environment with Yaml file
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentYaml: (orgName: string, projectName: string, envName: string, body: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * EscApi - functional programming interface
 * @export
 */
export declare const EscApiFp: (configuration?: Configuration) => {
    /**
     * Checks an environment definition for errors
     * @summary Checks an environment definition for errors
     * @param {string} orgName Organization name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    checkEnvironmentYaml(orgName: string, body: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CheckEnvironment>>;
    /**
     * Clones an environment
     * @summary Clones an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CloneEnvironment} cloneEnvironment Clone environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cloneEnvironment(orgName: string, projectName: string, envName: string, cloneEnvironment: CloneEnvironment, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Creates an environment in the given org with the given name.
     * @summary Create a new environment
     * @param {string} orgName Organization name
     * @param {CreateEnvironment} createEnvironment Create Environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironment(orgName: string, createEnvironment: CreateEnvironment, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Error>>;
    /**
     * Create environment revision tag
     * @summary Create environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentRevisionTag} createEnvironmentRevisionTag Create environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, createEnvironmentRevisionTag: CreateEnvironmentRevisionTag, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Create environment tag
     * @summary Create environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentTag} createEnvironmentTag Create environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentTag(orgName: string, projectName: string, envName: string, createEnvironmentTag: CreateEnvironmentTag, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentTag>>;
    /**
     * Reads the definition for the given environment with static secrets in plaintext
     * @summary Reads the definition for the given environment with static secrets in plaintext
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    decryptEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentDefinition>>;
    /**
     * Delete an environment
     * @summary Delete an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Error>>;
    /**
     * Delete environment revision tag
     * @summary Delete environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Delete environment tag
     * @summary Delete environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Read an environment
     * @summary Read an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentDefinition>>;
    /**
     * Read an environmentat a specific revision or tag
     * @summary Read an environment at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentDefinition>>;
    /**
     * Returns the ETag for the given environment if it exists.
     * @summary Return an Environment ETag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentETag(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Read environment revision tag
     * @summary Read environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentRevisionTag>>;
    /**
     * Read an environment tag
     * @summary Read an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentTag>>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisionTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentRevisionTags>>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {number} [before] before revision number for pagination
     * @param {number} [count] limit of revisions to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisions(orgName: string, projectName: string, envName: string, before?: number, count?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<EnvironmentRevision>>>;
    /**
     * List environment tags
     * @summary List environment tags
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ListEnvironmentTags>>;
    /**
     * List environments in the organization available to the current user
     * @summary List environments in the organization
     * @param {string} orgName Organization name
     * @param {string} [continuationToken] continuation Token from previous query to fetch next page of results
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironments(orgName: string, continuationToken?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OrgEnvironments>>;
    /**
     * Opens a session the given environment for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironment(orgName: string, projectName: string, envName: string, duration?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OpenEnvironment>>;
    /**
     * Opens a session the given environment at a specific version for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, duration?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<OpenEnvironment>>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironment(orgName: string, projectName: string, envName: string, openSessionID: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Environment>>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {string} property Path to a specific property using Pulumi path syntax https://www.pulumi.com/docs/concepts/config/#structured-configuration
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironmentProperty(orgName: string, projectName: string, envName: string, openSessionID: string, property: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Value>>;
    /**
     * Update environment revision tag
     * @summary Update environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentRevisionTag} updateEnvironmentRevisionTag Update environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentRevisionTag: UpdateEnvironmentRevisionTag, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
    /**
     * Update an environment tag
     * @summary Update an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentTag} updateEnvironmentTag Update environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentTag: UpdateEnvironmentTag, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentTag>>;
    /**
     * Validates and updates the given environment\'s definition.
     * @summary Update an existing environment with Yaml file
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentYaml(orgName: string, projectName: string, envName: string, body: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EnvironmentDiagnostics>>;
};
/**
 * EscApi - factory interface
 * @export
 */
export declare const EscApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * Checks an environment definition for errors
     * @summary Checks an environment definition for errors
     * @param {string} orgName Organization name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    checkEnvironmentYaml(orgName: string, body: string, options?: any): AxiosPromise<CheckEnvironment>;
    /**
     * Clones an environment
     * @summary Clones an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CloneEnvironment} cloneEnvironment Clone environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    cloneEnvironment(orgName: string, projectName: string, envName: string, cloneEnvironment: CloneEnvironment, options?: any): AxiosPromise<void>;
    /**
     * Creates an environment in the given org with the given name.
     * @summary Create a new environment
     * @param {string} orgName Organization name
     * @param {CreateEnvironment} createEnvironment Create Environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironment(orgName: string, createEnvironment: CreateEnvironment, options?: any): AxiosPromise<Error>;
    /**
     * Create environment revision tag
     * @summary Create environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentRevisionTag} createEnvironmentRevisionTag Create environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, createEnvironmentRevisionTag: CreateEnvironmentRevisionTag, options?: any): AxiosPromise<void>;
    /**
     * Create environment tag
     * @summary Create environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentTag} createEnvironmentTag Create environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    createEnvironmentTag(orgName: string, projectName: string, envName: string, createEnvironmentTag: CreateEnvironmentTag, options?: any): AxiosPromise<EnvironmentTag>;
    /**
     * Reads the definition for the given environment with static secrets in plaintext
     * @summary Reads the definition for the given environment with static secrets in plaintext
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    decryptEnvironment(orgName: string, projectName: string, envName: string, options?: any): AxiosPromise<EnvironmentDefinition>;
    /**
     * Delete an environment
     * @summary Delete an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironment(orgName: string, projectName: string, envName: string, options?: any): AxiosPromise<Error>;
    /**
     * Delete environment revision tag
     * @summary Delete environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: any): AxiosPromise<void>;
    /**
     * Delete environment tag
     * @summary Delete environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    deleteEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: any): AxiosPromise<void>;
    /**
     * Read an environment
     * @summary Read an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironment(orgName: string, projectName: string, envName: string, options?: any): AxiosPromise<EnvironmentDefinition>;
    /**
     * Read an environmentat a specific revision or tag
     * @summary Read an environment at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, options?: any): AxiosPromise<EnvironmentDefinition>;
    /**
     * Returns the ETag for the given environment if it exists.
     * @summary Return an Environment ETag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentETag(orgName: string, projectName: string, envName: string, options?: any): AxiosPromise<void>;
    /**
     * Read environment revision tag
     * @summary Read environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: any): AxiosPromise<EnvironmentRevisionTag>;
    /**
     * Read an environment tag
     * @summary Read an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    getEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: any): AxiosPromise<EnvironmentTag>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisionTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: any): AxiosPromise<EnvironmentRevisionTags>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {number} [before] before revision number for pagination
     * @param {number} [count] limit of revisions to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentRevisions(orgName: string, projectName: string, envName: string, before?: number, count?: number, options?: any): AxiosPromise<Array<EnvironmentRevision>>;
    /**
     * List environment tags
     * @summary List environment tags
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironmentTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: any): AxiosPromise<ListEnvironmentTags>;
    /**
     * List environments in the organization available to the current user
     * @summary List environments in the organization
     * @param {string} orgName Organization name
     * @param {string} [continuationToken] continuation Token from previous query to fetch next page of results
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    listEnvironments(orgName: string, continuationToken?: string, options?: any): AxiosPromise<OrgEnvironments>;
    /**
     * Opens a session the given environment for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironment(orgName: string, projectName: string, envName: string, duration?: string, options?: any): AxiosPromise<OpenEnvironment>;
    /**
     * Opens a session the given environment at a specific version for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    openEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, duration?: string, options?: any): AxiosPromise<OpenEnvironment>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironment(orgName: string, projectName: string, envName: string, openSessionID: string, options?: any): AxiosPromise<Environment>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {string} property Path to a specific property using Pulumi path syntax https://www.pulumi.com/docs/concepts/config/#structured-configuration
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    readOpenEnvironmentProperty(orgName: string, projectName: string, envName: string, openSessionID: string, property: string, options?: any): AxiosPromise<Value>;
    /**
     * Update environment revision tag
     * @summary Update environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentRevisionTag} updateEnvironmentRevisionTag Update environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentRevisionTag: UpdateEnvironmentRevisionTag, options?: any): AxiosPromise<void>;
    /**
     * Update an environment tag
     * @summary Update an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentTag} updateEnvironmentTag Update environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentTag: UpdateEnvironmentTag, options?: any): AxiosPromise<EnvironmentTag>;
    /**
     * Validates and updates the given environment\'s definition.
     * @summary Update an existing environment with Yaml file
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    updateEnvironmentYaml(orgName: string, projectName: string, envName: string, body: string, options?: any): AxiosPromise<EnvironmentDiagnostics>;
};
/**
 * EscApi - object-oriented interface
 * @export
 * @class EscApi
 * @extends {BaseAPI}
 */
export declare class EscApi extends BaseAPI {
    /**
     * Checks an environment definition for errors
     * @summary Checks an environment definition for errors
     * @param {string} orgName Organization name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    checkEnvironmentYaml(orgName: string, body: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CheckEnvironment, any>>;
    /**
     * Clones an environment
     * @summary Clones an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CloneEnvironment} cloneEnvironment Clone environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    cloneEnvironment(orgName: string, projectName: string, envName: string, cloneEnvironment: CloneEnvironment, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Creates an environment in the given org with the given name.
     * @summary Create a new environment
     * @param {string} orgName Organization name
     * @param {CreateEnvironment} createEnvironment Create Environment
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    createEnvironment(orgName: string, createEnvironment: CreateEnvironment, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Error, any>>;
    /**
     * Create environment revision tag
     * @summary Create environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentRevisionTag} createEnvironmentRevisionTag Create environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    createEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, createEnvironmentRevisionTag: CreateEnvironmentRevisionTag, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Create environment tag
     * @summary Create environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {CreateEnvironmentTag} createEnvironmentTag Create environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    createEnvironmentTag(orgName: string, projectName: string, envName: string, createEnvironmentTag: CreateEnvironmentTag, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentTag, any>>;
    /**
     * Reads the definition for the given environment with static secrets in plaintext
     * @summary Reads the definition for the given environment with static secrets in plaintext
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    decryptEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentDefinition, any>>;
    /**
     * Delete an environment
     * @summary Delete an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    deleteEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Error, any>>;
    /**
     * Delete environment revision tag
     * @summary Delete environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    deleteEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Delete environment tag
     * @summary Delete environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    deleteEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Read an environment
     * @summary Read an environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    getEnvironment(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentDefinition, any>>;
    /**
     * Read an environmentat a specific revision or tag
     * @summary Read an environment at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    getEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentDefinition, any>>;
    /**
     * Returns the ETag for the given environment if it exists.
     * @summary Return an Environment ETag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    getEnvironmentETag(orgName: string, projectName: string, envName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Read environment revision tag
     * @summary Read environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    getEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentRevisionTag, any>>;
    /**
     * Read an environment tag
     * @summary Read an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    getEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentTag, any>>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    listEnvironmentRevisionTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentRevisionTags, any>>;
    /**
     * List environment revisions
     * @summary List environment revisions
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {number} [before] before revision number for pagination
     * @param {number} [count] limit of revisions to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    listEnvironmentRevisions(orgName: string, projectName: string, envName: string, before?: number, count?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentRevision[], any>>;
    /**
     * List environment tags
     * @summary List environment tags
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [after] after tag for pagination
     * @param {number} [count] limit of tags to return
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    listEnvironmentTags(orgName: string, projectName: string, envName: string, after?: string, count?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ListEnvironmentTags, any>>;
    /**
     * List environments in the organization available to the current user
     * @summary List environments in the organization
     * @param {string} orgName Organization name
     * @param {string} [continuationToken] continuation Token from previous query to fetch next page of results
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    listEnvironments(orgName: string, continuationToken?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OrgEnvironments, any>>;
    /**
     * Opens a session the given environment for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    openEnvironment(orgName: string, projectName: string, envName: string, duration?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OpenEnvironment, any>>;
    /**
     * Opens a session the given environment at a specific version for the indicated duration. This returns a session id that can be used to then read values. The default duration is 1 hour.
     * @summary Open an environment session at a specific version
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} version Revision or tag
     * @param {string} [duration] open duration - A duration string is a possibly signed sequence of decimal numbers, each with optional fraction and a unit suffix, such as “300ms”, “1.5h” or “2h45m”. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    openEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string, duration?: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<OpenEnvironment, any>>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    readOpenEnvironment(orgName: string, projectName: string, envName: string, openSessionID: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Environment, any>>;
    /**
     * Reads and decrypts secrets including retrieving dynamic secrets from providers.
     * @summary Read an open environment
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} openSessionID Open session ID returned from environment open
     * @param {string} property Path to a specific property using Pulumi path syntax https://www.pulumi.com/docs/concepts/config/#structured-configuration
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    readOpenEnvironmentProperty(orgName: string, projectName: string, envName: string, openSessionID: string, property: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<Value, any>>;
    /**
     * Update environment revision tag
     * @summary Update environment revision tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentRevisionTag} updateEnvironmentRevisionTag Update environment revision tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    updateEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentRevisionTag: UpdateEnvironmentRevisionTag, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * Update an environment tag
     * @summary Update an environment tag
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} tagName Tag name
     * @param {UpdateEnvironmentTag} updateEnvironmentTag Update environment tag
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    updateEnvironmentTag(orgName: string, projectName: string, envName: string, tagName: string, updateEnvironmentTag: UpdateEnvironmentTag, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentTag, any>>;
    /**
     * Validates and updates the given environment\'s definition.
     * @summary Update an existing environment with Yaml file
     * @param {string} orgName Organization name
     * @param {string} projectName Project name
     * @param {string} envName Environment name
     * @param {string} body Environment Yaml content
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof EscApi
     */
    updateEnvironmentYaml(orgName: string, projectName: string, envName: string, body: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<EnvironmentDiagnostics, any>>;
}
