@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
190 lines • 9.87 kB
TypeScript
import { IdObjectSkeletonInterface, PagedResult } from '../api/ApiTypes';
import { ConnectorServerStatusInterface, SystemObjectPatchOperationInterface, SystemStatusInterface } from '../api/IdmSystemApi';
import { State } from '../shared/State';
import { ObjectTypeSkeleton } from './ConnectorOps';
export type IdmSystem = {
/**
* Test connector servers
* @returns {Promise<ConnectorServerStatusInterface[]>} a promise that resolves to an array of ConnectorServerStatusInterface objects
*/
testConnectorServers(): Promise<ConnectorServerStatusInterface[]>;
/**
* Read available systems/connectors status
* @returns {Promise<SystemStatusInterface[]>} a promise resolving to an array of system status objects
*/
readAvailableSystems(): Promise<SystemStatusInterface[]>;
/**
* Read system/connector status
* @returns {Promise<SystemStatusInterface>} a promise resolving to a system status object
*/
readSystemStatus(systemName: string): Promise<SystemStatusInterface>;
/**
* Authenticate a system object using username and password (pass-through authentication)
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} username system object username
* @param {string} password system object password
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object containing only the _id
*/
authenticateSystemObject(systemName: string, systemObjectType: string, username: string, password: string): Promise<IdObjectSkeletonInterface>;
/**
* Run system script
* @param {string} systemName name of system/connector
* @param {string} scriptName name of script
* @returns {Promise<any>} a promise resolving to a status object
*/
runSystemScript(systemName: string, scriptName: string): Promise<any>;
/**
* Query all system object ids
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {number} pageSize page size (default value: 1000)
* @param {string} pageCookie paged results cookie
* @returns {Promise<PagedResult<IdObjectSkeletonInterface>>} a promise resolving to an array of IdObjectSkeletonInterface objects
*/
queryAllSystemObjectIds(systemName: string, systemObjectType: string, pageSize?: number, pageCookie?: string): Promise<PagedResult<IdObjectSkeletonInterface>>;
/**
* Query system objects using a search filter
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} filter search filter
* @param {string[]} fields array of fields to return
* @param {number} pageSize page size (default value: 1000)
* @param {string} pageCookie paged results cookie
* @returns {Promise<PagedResult<IdObjectSkeletonInterface>>} a promise resolving to an array of IdObjectSkeletonInterface objects
*/
querySystemObjects(systemName: string, systemObjectType: string, filter: string, fields?: string[], pageSize?: number, pageCookie?: string): Promise<PagedResult<IdObjectSkeletonInterface>>;
/**
* Read system object
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} systemObjectId id of system object
* @param {string[]} fields array of fields to return (default: `['*']`)
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object
*/
readSystemObject(systemName: string, systemObjectType: string, systemObjectId: string, fields?: string[]): Promise<IdObjectSkeletonInterface>;
/**
* Create system object
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {IdObjectSkeletonInterface} systemObjectData system object data
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object
*/
createSystemObject(systemName: string, systemObjectType: string, systemObjectData: IdObjectSkeletonInterface): Promise<IdObjectSkeletonInterface>;
/**
* Update or create system object
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} systemObjectId id of system object
* @param {IdObjectSkeletonInterface} systemObjectData system object data
* @param {boolean} failIfExists fail if object exists (default value: false)
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object
*/
updateSystemObject(systemName: string, systemObjectType: string, systemObjectId: string, systemObjectData: IdObjectSkeletonInterface, failIfExists?: boolean): Promise<IdObjectSkeletonInterface>;
/**
* Partially update system object through a collection of patch operations.
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} systemObjectId id of system object
* @param {SystemObjectPatchOperationInterface[]} operations collection of patch operations to perform on the object
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object
*/
updateSystemObjectProperties(systemName: string, systemObjectType: string, systemObjectId: string, operations: SystemObjectPatchOperationInterface[]): Promise<IdObjectSkeletonInterface>;
/**
* Delete system object
* @param {string} systemName name of system/connector
* @param {string} systemObjectType type of system object
* @param {string} systemObjectId id of system object
* @returns {Promise<IdObjectSkeletonInterface>} a promise resolving to an IdObjectSkeletonInterface object
*/
deleteSystemObject(systemName: string, systemObjectType: string, systemObjectId: string): Promise<IdObjectSkeletonInterface>;
/**
* Read system schema
* @param {string} systemName name of system/connector
* @returns {Promise<Record<string, ObjectTypeSkeleton>>} a promise resolving to a map of Record<string, ObjectTypeSkeleton>
*/
readSystemSchema(systemName: string): Promise<Record<string, ObjectTypeSkeleton>>;
};
declare const _default: (state: State) => IdmSystem;
export default _default;
/**
* Test connector servers
* @returns {Promise<ConnectorServerStatusInterface[]>} a promise that resolves to an array of ConnectorServerStatusInterface objects
*/
export declare function testConnectorServers({ state, }: {
state: State;
}): Promise<ConnectorServerStatusInterface[]>;
export declare function readAvailableSystems({ state, }: {
state: State;
}): Promise<SystemStatusInterface[]>;
export declare function readSystemStatus({ systemName, state, }: {
systemName: string;
state: State;
}): Promise<SystemStatusInterface>;
export declare function authenticateSystemObject({ systemName, systemObjectType, username, password, state, }: {
systemName: string;
systemObjectType: string;
username: string;
password: string;
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function runSystemScript({ systemName, scriptName, state, }: {
systemName: string;
scriptName: string;
state: State;
}): Promise<any>;
export declare function queryAllSystemObjectIds({ systemName, systemObjectType, pageSize, pageCookie, state, }: {
systemName: string;
systemObjectType: string;
pageSize?: number;
pageCookie?: string;
state: State;
}): Promise<PagedResult<IdObjectSkeletonInterface>>;
export declare function querySystemObjects({ systemName, systemObjectType, filter, fields, pageSize, pageCookie, state, }: {
systemName: string;
systemObjectType: string;
filter: string;
fields?: string[];
pageSize?: number;
pageCookie?: string;
state: State;
}): Promise<PagedResult<IdObjectSkeletonInterface>>;
export declare function readSystemObject({ systemName, systemObjectType, systemObjectId, fields, state, }: {
systemName: string;
systemObjectType: string;
systemObjectId: string;
fields?: string[];
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function createSystemObject({ systemName, systemObjectType, systemObjectData, state, }: {
systemName: string;
systemObjectType: string;
systemObjectData: IdObjectSkeletonInterface;
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function updateSystemObject({ systemName, systemObjectType, systemObjectId, systemObjectData, failIfExists, state, }: {
systemName: string;
systemObjectType: string;
systemObjectId: string;
systemObjectData: IdObjectSkeletonInterface;
failIfExists?: boolean;
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function updateSystemObjectProperties({ systemName, systemObjectType, systemObjectId, operations, state, }: {
systemName: string;
systemObjectType: string;
systemObjectId: string;
operations: SystemObjectPatchOperationInterface[];
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function deleteSystemObject({ systemName, systemObjectType, systemObjectId, state, }: {
systemName: string;
systemObjectType: string;
systemObjectId: string;
state: State;
}): Promise<IdObjectSkeletonInterface>;
export declare function readSystemSchema({ systemName, state, }: {
systemName: string;
state: State;
}): Promise<Record<string, ObjectTypeSkeleton>>;
//# sourceMappingURL=IdmSystemOps.d.ts.map