@rockcarver/frodo-lib
Version:
A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.
108 lines • 3.46 kB
TypeScript
import { State } from '../shared/State';
import { AmConfigEntityInterface, type IdObjectSkeletonInterface, type NoIdObjectSkeletonInterface, type PagedResult, type QueryResult } from './ApiTypes';
export interface NodeRefSkeletonInterface {
connections: Record<string, string>;
displayName: string;
nodeType: string;
x: number;
y: number;
}
export interface StaticNodeRefSkeletonInterface {
x: number;
y: number;
}
export interface InnerNodeRefSkeletonInterface {
_id: string;
displayName: string;
nodeType: string;
}
export type NodeSkeleton = AmConfigEntityInterface & {
nodes?: InnerNodeRefSkeletonInterface[];
tree?: string;
identityResource?: string;
script?: string;
emailTemplateName?: string;
filteredProviders?: string[];
useScript?: boolean;
useFilterScript?: boolean;
};
export type NodeTypeSkeleton = IdObjectSkeletonInterface & {
name: string;
collection: boolean;
tags: string[];
metadata: {
tags: string[];
[k: string]: string | number | boolean | string[];
};
help: string;
};
/**
* Get all node types
* @returns {Promise<QueryResult<NodeTypeSkeleton>>} a promise that resolves to an array of node type objects
*/
export declare function getNodeTypes({ state, }: {
state: State;
}): Promise<QueryResult<NodeTypeSkeleton>>;
/**
* Get all nodes
* @returns {Promise} a promise that resolves to an object containing an array of node objects
*/
export declare function getNodes({ state, }: {
state: State;
}): Promise<QueryResult<NodeSkeleton>>;
/**
* Get all nodes by type
* @param {string} nodeType node type
* @returns {Promise<PagedResult<NodeSkeleton>>} a promise that resolves to an object containing an array of node objects of the requested type
*/
export declare function getNodesByType({ nodeType, state, }: {
nodeType: string;
state: State;
}): Promise<PagedResult<NodeSkeleton>>;
/**
* Get node by uuid and type
* @param {string} nodeId node uuid
* @param {string} nodeType node type
* @returns {Promise<NodeSkeleton>} a promise that resolves to a node object
*/
export declare function getNode({ nodeId, nodeType, state, }: {
nodeId: string;
nodeType: string;
state: State;
}): Promise<NodeSkeleton>;
/**
* Create node by type
* @param {string} nodeType node type
* @param {object} nodeData node object
* @returns {Promise<NodeSkeleton>} a promise that resolves to a node object
*/
export declare function createNode({ nodeType, nodeData, state, }: {
nodeType: string;
nodeData: NodeSkeleton;
state: State;
}): Promise<NodeSkeleton>;
/**
* Put node by uuid and type
* @param {string} nodeId node uuid
* @param {string} nodeType node type
* @param {object} nodeData node object
* @returns {Promise} a promise that resolves to an object containing a node object
*/
export declare function putNode({ nodeId, nodeType, nodeData, state, }: {
nodeId: string;
nodeType: string;
nodeData: NodeSkeleton | NoIdObjectSkeletonInterface;
state: State;
}): Promise<any>;
/**
* Delete node by uuid and type
* @param {String} nodeId node uuid
* @param {String} nodeType node type
* @returns {Promise} a promise that resolves to an object containing a node object
*/
export declare function deleteNode({ nodeId, nodeType, state, }: {
nodeId: string;
nodeType: string;
state: State;
}): Promise<any>;
//# sourceMappingURL=NodeApi.d.ts.map