@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
86 lines • 3.32 kB
TypeScript
import { State } from '../../shared/State';
import { IdObjectSkeletonInterface, PagedResult } from '../ApiTypes';
/**
* Variable types
*
* @summary
* You can use the expressionType parameter to set a type when you create an ESV variable.
* This lets Identity Cloud correctly transform the value of the ESV
* to match the configuration property type when substituting it into configuration.
*
* The type is set when the ESV is created, and cannot be modified after creation.
* If you do not specify a type, it will default to string.
*
* Before the expressionType parameter was introduced, it was only possible to set types
* from within configuration, using expression level syntax; for example,
* {"$int": "&{esv.journey.ldap.port|1389}"}.
* The expressionType parameter supplements this expression level syntax and allows the
* ESV type to be identified without inspecting configuration.
*
* @see
* {@link https://backstage.forgerock.com/docs/idcloud/latest/tenants/esvs.html#variable_types | ForgeRock Documentation}
*/
export type VariableExpressionType = 'array' | 'base64encodedinlined' | 'bool' | 'int' | 'keyvaluelist' | 'list' | 'number' | 'object' | 'string';
/**
* Variable object skeleton
*/
export type VariableSkeleton = IdObjectSkeletonInterface & {
valueBase64?: string;
value?: string;
description?: string;
loaded?: boolean;
lastChangedBy?: string;
lastChangeDate?: string;
expressionType?: VariableExpressionType;
};
/**
* Get all variables
* @returns {Promise<PagedResult<VariableSkeleton>>} a promise that resolves to an array of variable objects
*/
export declare function getVariables({ state, }: {
state: State;
}): Promise<PagedResult<VariableSkeleton>>;
/**
* Get variable by id/name
* @param {string} variableId variable id/name
* @returns {Promise<VariableSkeleton>} a promise that resolves to a variable object
*/
export declare function getVariable({ variableId, state, }: {
variableId: string;
state: State;
}): Promise<VariableSkeleton>;
/**
* Create or update variable by id/name
* @param {string} variableId variable id/name
* @param {string} valueBase64 base64-encoded variable value
* @param {string} description variable description
* @returns {Promise<unknown>} a promise that resolves to a variable object
*/
export declare function putVariable({ variableId, valueBase64, description, expressionType, state, }: {
variableId: string;
valueBase64: string;
description?: string;
expressionType?: VariableExpressionType;
state: State;
}): Promise<VariableSkeleton>;
/**
* Set variable description
* @param {string} variableId variable id/name
* @param {string} description variable description
* @returns {Promise<any>} a promise that resolves to an empty string.
*/
export declare function setVariableDescription({ variableId, description, state, }: {
variableId: string;
description: string;
state: State;
}): Promise<any>;
/**
* Delete variable by id/name
* @param {string} variableId variable id/name
* @returns {Promise<VariableSkeleton>} a promise that resolves to a variable object
*/
export declare function deleteVariable({ variableId, state, }: {
variableId: string;
state: State;
}): Promise<VariableSkeleton>;
//# sourceMappingURL=VariablesApi.d.ts.map