@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
93 lines • 3.46 kB
TypeScript
import { State } from '../shared/State';
import { type IdObjectSkeletonInterface, type PagedResult } from './ApiTypes';
export type ScriptLanguage = 'GROOVY' | 'JAVASCRIPT';
export type ScriptContext = 'OAUTH2_ACCESS_TOKEN_MODIFICATION' | 'AUTHENTICATION_CLIENT_SIDE' | 'AUTHENTICATION_TREE_DECISION_NODE' | 'AUTHENTICATION_SERVER_SIDE' | 'SOCIAL_IDP_PROFILE_TRANSFORMATION' | 'OAUTH2_VALIDATE_SCOPE' | 'CONFIG_PROVIDER_NODE' | 'OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER' | 'OAUTH2_EVALUATE_SCOPE' | 'POLICY_CONDITION' | 'OIDC_CLAIMS' | 'SAML2_IDP_ADAPTER' | 'SAML2_IDP_ATTRIBUTE_MAPPER' | 'OAUTH2_MAY_ACT' | 'LIBRARY';
export type ScriptSkeleton = IdObjectSkeletonInterface & {
name: string;
description: string;
default: boolean;
script: string | string[];
language: ScriptLanguage;
context: ScriptContext;
createdBy: string;
creationDate: number;
lastModifiedBy: string;
lastModifiedDate: number;
exports?: {
arity?: number;
id: string;
type: string;
}[];
};
export type LibraryScriptConfigSkeleton = IdObjectSkeletonInterface & {
name: string;
exports: {
arity?: number;
id: string;
type: string;
}[];
};
/**
* Get all scripts
* @returns {Promise} a promise that resolves to an object containing an array of script objects
*/
export declare function getScripts({ state, }: {
state: State;
}): Promise<PagedResult<ScriptSkeleton>>;
/**
* Get script by name
* @param {String} scriptName script name
* @returns {Promise<PagedResult<ScriptSkeleton>>} a promise that resolves to an object containing a script object
*/
export declare function getScriptByName({ scriptName, state, }: {
scriptName: string;
state: State;
}): Promise<PagedResult<ScriptSkeleton>>;
/**
* Get script by id
* @param {String} scriptId script uuid/name
* @returns {Promise<ScriptSkeleton>} a promise that resolves to a script object
*/
export declare function getScript({ scriptId, state, }: {
scriptId: string;
state: State;
}): Promise<ScriptSkeleton>;
/**
* Get library script config by name
* @param {String} scriptName script name
* @returns {Promise<PagedResult<LibraryScriptConfigSkeleton>>} a promise that resolves to an object containing the library script config
*/
export declare function getLibraryScriptConfigByName({ scriptName, state, }: {
scriptName: string;
state: State;
}): Promise<PagedResult<LibraryScriptConfigSkeleton>>;
/**
* Put script
* @param {string} scriptId script uuid
* @param {Object} scriptData script object
* @returns {Promise<ScriptSkeleton>} a promise that resolves to an object containing a script object
*/
export declare function putScript({ scriptId, scriptData, state, }: {
scriptId: string;
scriptData: ScriptSkeleton;
state: State;
}): Promise<ScriptSkeleton>;
/**
* Delete script by id
* @param {String} scriptId script uuid
* @returns {Promise<ScriptSkeleton>} a promise that resolves to a script object
*/
export declare function deleteScript({ scriptId, state, }: {
scriptId: string;
state: State;
}): Promise<ScriptSkeleton>;
/**
* Delete script by name
* @param {String} scriptId script name
* @returns {Promise<ScriptSkeleton>} a promise that resolves to a script object
*/
export declare function deleteScriptByName({ scriptName, state, }: {
scriptName: string;
state: State;
}): Promise<ScriptSkeleton>;
//# sourceMappingURL=ScriptApi.d.ts.map