@5minds/processcube_engine
Version:
The ProcessCube Engine. Stores and executes BPMNs.
30 lines (29 loc) • 1.81 kB
TypeScript
import { Identity, Model } from '@5minds/processcube_engine_sdk';
import { ProcessDefinitionDatabaseAdapter } from './DatabaseAdaptersSequelize/index';
import { IamService } from './Iam/index';
export declare class ProcessDefinitionMediator {
private readonly bpmnModelParser;
private readonly definitionsCache;
private readonly iamService;
private readonly logger;
private readonly processDefinitionDatabaseAdapter;
constructor(iamService: IamService, processDefinitionAdapter: ProcessDefinitionDatabaseAdapter);
persistProcessDefinitions(identity: Identity, xml: string | Array<string>, overwriteExisting?: boolean): Promise<void>;
getAll(identity: Identity, offset?: number, limit?: number, includeCount?: boolean): Promise<Array<Model.Definitions>>;
getDefinitionsWithRunningInstances(identity: Identity, processModelIds?: string | Array<string>): Promise<Array<Model.Definitions>>;
getByName(identity: Identity, name: string): Promise<Model.Definitions>;
getByHash(identity: Identity, hash: string, includeDeleted?: boolean): Promise<Model.Definitions>;
getByProcessModelId(identity: Identity, processModelId: string): Promise<Model.Definitions>;
deleteById(processDefinitionId: string, deleteAllRelatedData: boolean): Promise<void>;
setIsExecutableFlagForProcessModel(processModelId: string, isExecutable: boolean): Promise<void>;
private applyFlagsToProcessDefinition;
private getFlagsForProcessModels;
private parseAndValidateDefinition;
private parseProcessDefinition;
private filterInaccessibleProcessDefinitions;
private filterInaccessibleProcessModels;
private filterInaccessibleProcessModelElements;
private filterOutInaccessibleLanes;
private getFlowNodesForLaneSet;
private isUserAnAdminOrObserver;
}