@pulumi/esc-sdk
Version:
NodeJS SDK for Pulumi ESC
319 lines (318 loc) • 17.4 kB
TypeScript
import { Environment, EnvironmentDefinitionValues, OpenEnvironment, OrgEnvironments, OrgEnvironment, EnvironmentDefinition, EscApi as EscRawApi, Configuration, Value, EnvironmentDiagnostics, CheckEnvironment, Pos, Range, Trace, EnvironmentRevision, EnvironmentRevisionTag, EnvironmentRevisionTags, EnvironmentTag, ListEnvironmentTags } from "./raw/index";
export { Configuration, Environment, EnvironmentDefinitionValues, OpenEnvironment, OrgEnvironments, OrgEnvironment, EnvironmentDefinition, EscRawApi, Value, EnvironmentDiagnostics, CheckEnvironment, Pos, Range, Trace, EnvironmentRevision, EnvironmentRevisionTag, EnvironmentRevisionTags, };
export interface EnvironmentDefinitionResponse {
definition: EnvironmentDefinition;
yaml: string;
}
export interface EnvironmentResponse {
environment?: Environment;
values?: EnvironmentDefinitionValues;
}
export interface EnvironmentPropertyResponse {
property: Value;
value: any;
}
export interface CloneEnvironmentOptions {
preserveHistory?: boolean;
preserveAccess?: boolean;
preserveEnvironmentTags?: boolean;
preserveRevisionTags?: boolean;
}
/**
*
* EscApi is a client for the ESC API.
* It wraps the raw API client and provides a more convenient interface.
* @export
* @class EscApi
*/
export declare class EscApi {
rawApi: EscRawApi;
config: Configuration;
constructor(config: Configuration);
/**
* listEnvironments lists the environments in an organization.
* @summary List environments
* @param {string} orgName Organization name
* @param {string} continuationToken continuation Token from previous query to fetch next page of results
* @returns {Promise<OrgEnvironments | undefined>} A list of environments
*/
listEnvironments(orgName: string, continuationToken?: string): Promise<OrgEnvironments | undefined>;
/**
* getEnvironment gets the definition of an environment.
* @summary Get environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<EnvironmentDefinitionResponse | undefined>} The environment definition and the YAML representation
*/
getEnvironment(orgName: string, projectName: string, envName: string): Promise<EnvironmentDefinitionResponse | undefined>;
/**
* getEnvironmentAtVersion gets the definition of an environment at a specific version.
* @summary Get environment at version
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} version Version of the environment
* @returns {Promise<EnvironmentDefinitionResponse | undefined>} The environment definition and the YAML representation
*/
getEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string): Promise<EnvironmentDefinitionResponse | undefined>;
/**
* openEnvironment opens an environment session
* @summary Open environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<OpenEnvironment | undefined>} The open environment session information
*/
openEnvironment(orgName: string, projectName: string, envName: string): Promise<OpenEnvironment | undefined>;
/**
* openEnvironmentAtVersion opens an environment session at a specific version
* @summary Open environment at version
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} version Version of the environment
* @returns {Promise<OpenEnvironment | undefined>} The open environment session information
*/
openEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string): Promise<OpenEnvironment | undefined>;
/**
* readOpenEnvironment reads the environment properties in an open session,
* resolving configuration variables and secrets.
* @summary Read environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} openSessionID Open session ID
* @returns {Promise<EnvironmentResponse | undefined>} The environment and its values
*/
readOpenEnvironment(orgName: string, projectName: string, envName: string, openSessionID: string): Promise<EnvironmentResponse | undefined>;
/**
* openAndReadEnvironment opens an environment session and reads the environment properties,
* resolving configuration variables and secrets.
* @summary Open and read environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<EnvironmentResponse | undefined>} The environment and its values
*/
openAndReadEnvironment(orgName: string, projectName: string, envName: string): Promise<EnvironmentResponse | undefined>;
/**
* openAndReadEnvironmentAtVersion opens an environment session at a specific version and reads the environment properties,
* resolving configuration variables and secrets.
* @summary Open and read environment at version
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} version Version of the environment
* @returns {Promise<EnvironmentResponse | undefined>} The environment and its values
*/
openAndReadEnvironmentAtVersion(orgName: string, projectName: string, envName: string, version: string): Promise<EnvironmentResponse | undefined>;
/**
* readOpenEnvironmentProperty reads a specific environment property in an open session,
* resolving configuration variables and secrets.
* @summary Read environment property
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} openSessionID Open session ID
* @param {string} property Property name
* @returns {Promise<EnvironmentPropertyResponse | undefined>} The environment property and its value
*/
readOpenEnvironmentProperty(orgName: string, projectName: string, envName: string, openSessionID: string, property: string): Promise<EnvironmentPropertyResponse | undefined>;
/**
* createEnvironment creates a new environment.
* @summary Create environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<void>} A promise that resolves when the environment is created
*/
createEnvironment(orgName: string, projectName: string, envName: string): Promise<void>;
/**
* cloneEnvironment clones an environment
* @summary Clone environment
* @param {string} orgName Organization name
* @param {string} cloneProjectName Clone project name
* @param {string} cloneEnvName Clone environment name
* @param {string} destProjectName Destination project name
* @param {string} destEnvName Destionation environment name
* @param {CloneEnvironmentOptions} cloneOptions Clone options
* @returns {Promise<void>} A promise that resolves when the environment is created
*/
cloneEnvironment(orgName: string, srcProjectName: string, srcEnvName: string, destProjectName: string, destEnvName: string, cloneOptions?: CloneEnvironmentOptions): Promise<void>;
/**
* updateEnvironmentYaml updates the environment definition from a YAML string.
* @summary Update environment YAML
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} yaml YAML representation of the environment
* @returns {Promise<EnvironmentDiagnostics | undefined>} The environment diagnostics
*/
updateEnvironmentYaml(orgName: string, projectName: string, envName: string, yaml: string): Promise<EnvironmentDiagnostics | undefined>;
/**
* updateEnvironment updates the environment definition.
* @summary Update environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {EnvironmentDefinition} values The environment definition
* @returns {Promise<EnvironmentDiagnostics | undefined>} The environment diagnostics
*/
updateEnvironment(orgName: string, projectName: string, envName: string, values: EnvironmentDefinition): Promise<EnvironmentDiagnostics | undefined>;
/**
* deleteEnvironment deletes an environment.
* @summary Delete environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<void>} A promise that resolves when the environment is deleted
*/
deleteEnvironment(orgName: string, projectName: string, envName: string): Promise<void>;
/**
* checkEnvironmentYaml checks the environment definition from a YAML string.
* @summary Check environment YAML
* @param {string} orgName Organization name
* @param {string} yaml YAML representation of the environment
* @returns {Promise<CheckEnvironment | undefined>} The environment diagnostics
*/
checkEnvironmentYaml(orgName: string, yaml: string): Promise<CheckEnvironment | undefined>;
/**
* checkEnvironment checks the environment definition.
* @summary Check environment
* @param {string} orgName Organization name
* @param {EnvironmentDefinition} env The environment definition
* @returns {Promise<CheckEnvironment | undefined>} The environment diagnostics
*/
checkEnvironment(orgName: string, env: EnvironmentDefinition): Promise<CheckEnvironment | undefined>;
/**
* decryptEnvironment decrypts the environment definition.
* @summary Decrypt environment
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @returns {Promise<EnvironmentDefinitionResponse | undefined>} The decrypted environment definition and the YAML representation
*/
decryptEnvironment(orgName: string, projectName: string, envName: string): Promise<EnvironmentDefinitionResponse | undefined>;
/**
* listEnvironmentRevisions lists the environment revisions, from oldest to newest.
* @summary List environment revisions
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {number} before The revision number to start listing from
* @param {number} count The number of revisions to list
* @returns {Promise<Array<EnvironmentRevision> | undefined>} A list of environment revisions
*/
listEnvironmentRevisions(orgName: string, projectName: string, envName: string, before?: number, count?: number): Promise<Array<EnvironmentRevision> | undefined>;
/**
* listEnvironmentRevisionTags lists the environment revision tags.
* @summary List environment revision tags
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} after The tag to start listing from
* @param {number} count The number of tags to list
* @returns {Promise<EnvironmentRevisionTags | undefined>} A list of environment revision tags
*/
listEnvironmentRevisionTags(orgName: string, projectName: string, envName: string, after?: string, count?: number): Promise<EnvironmentRevisionTags | undefined>;
/**
* getEnvironmentRevisionTag gets the environment revision tag.
* @summary Get environment revision tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @returns {Promise<EnvironmentRevisionTag | undefined>} The environment revision tag
*/
getEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tag: string): Promise<EnvironmentRevisionTag | undefined>;
/**
* createEnvironmentRevisionTag creates a new environment revision tag.
* @summary Create environment revision tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @param {number} revision The revision number
* @returns {Promise<void>} A promise that resolves when the tag is created
*/
createEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tag: string, revision: number): Promise<void>;
/**
* updateEnvironmentRevisionTag updates the 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} tag The tag name
* @param {number} revision The revision number
* @returns {Promise<void>} A promise that resolves when the tag is updated
*/
updateEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tag: string, revision: number): Promise<void>;
/**
* deleteEnvironmentRevisionTag deletes the 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} tag The tag name
* @returns {Promise<void>} A promise that resolves when the tag is deleted
*/
deleteEnvironmentRevisionTag(orgName: string, projectName: string, envName: string, tag: string): Promise<void>;
/**
* listEnvironmentTags lists the environment tags.
* @summary List environment tags
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} after The tag to start listing from
* @param {number} count The number of tags to list
* @returns {Promise<ListEnvironmentTags | undefined>} A list of environment tags
*/
listEnvironmentTags(orgName: string, projectName: string, envName: string, after?: string, count?: number): Promise<ListEnvironmentTags | undefined>;
/**
* getEnvironmentTag gets the environment tag.
* @summary Get environment tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @returns {Promise<EnvironmentTag | undefined>} The environment tag
*/
getEnvironmentTag(orgName: string, projectName: string, envName: string, tag: string): Promise<EnvironmentTag | undefined>;
/**
* createEnvironmentTag creates a new environment tag.
* @summary Create environment tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @param {string} value The tag value
* @returns {Promise<EnvironmentTag>} A promise that resolves when the tag is created
*/
createEnvironmentTag(orgName: string, projectName: string, envName: string, tag: string, value: string): Promise<void>;
/**
* updateEnvironmentTag updates the environment tag.
* @summary Update environment tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @param {string} current_value The tag value
* @param {string} new_tag The new tag name
* @param {string} new_value The new tag value
* @returns {Promise<EnvironmentTag>} A promise that resolves when the tag is updated
*/
updateEnvironmentTag(orgName: string, projectName: string, envName: string, tag: string, current_value: string, new_tag: string, new_value: string): Promise<void>;
/**
* deleteEnvironmentTag deletes the environment tag.
* @summary Delete environment tag
* @param {string} orgName Organization name
* @param {string} projectName Project name
* @param {string} envName Environment name
* @param {string} tag The tag name
* @returns {Promise<void>} A promise that resolves when the tag is deleted
*/
deleteEnvironmentTag(orgName: string, projectName: string, envName: string, tag: string): Promise<void>;
}
export declare function DefaultConfiguration(config?: Configuration): Configuration;
export declare function DefaultClient(config?: Configuration): EscApi;