UNPKG

@ctodev/cclibrary-typings

Version:

Library typings for use with CLARC INFINITY

212 lines (211 loc) 7.73 kB
import { TccTranslation, TccC4Node } from './shared.model'; export declare namespace TccWorkflow { enum LineDirection { horizontal = 0, vertical = 1 } interface Position { x: number; y: number; } interface Line { direction: LineDirection; startPosition: Position; } type IncomingConnectors = Array<connectionPointDirection>; interface iShapeElement extends iElement { IncomingConnectors?: IncomingConnectors; } interface SpaceLinesElement { a?: Array<string>; b?: Array<string>; } interface SpaceLines { [propname: number]: { [propname: number]: SpaceLinesElement; }; } interface Paths { [propname: string]: Path; } interface Path { position: Position; previous: Position; length: number; lines: number; direction: LineDirection; crossLine: string; order: number; } interface ElementsObj { [propname: string]: iElement; } type ShapeElement = ElementEventStart | ElementEventEnd | ElementActivityTaskUser | ElementActivityTaskScript | ElementActivityTaskService | ElementActivityTaskSubWorkflow | ElementGatewayExclusive | ElementGatewayParallel; const swimLaneMinHeight: number; type TccRect = Array<number>; type TccPoint = Array<number>; type TccId = string; type TccColor = string; type TccBusinessObjectItemEvents = any; type TccMemberDictionary = any; type TccPoints = Array<TccPoint>; enum State { ccWS_Unknown = "ccWS_Unknown", ccWS_Idle = "ccWS_Idle", ccWS_Finished = "ccWS_Finished" } enum connectionPointDirection { top = 1, right = 2, bottom = 3, left = 4 } enum AnnotationIcons { ccAI_None = "ccAI_None", AI_Scanner = "AI_Scanner", ccAI_Printer = "ccAI_Printer", ccAI_Document = "ccAI_Document", ccAI_List = "ccAI_List", ccAI_Object = "ccAI_Object", ccAI_Process = "ccAI_Process", ccAI_Worker = "ccAI_Worker", ccAI_User = "ccAI_User", ccAI_Group = "ccAI_Group" } enum ActivityTaskService { ccTS_None = "ccTS_None", ccTS_Xtract = "ccTS_Xtract", ccTS_Classify = "ccTS_Classify" } enum ElementType { ElementEventStart = "TccWorkFlowElementEventStart", ElementEventIntermediate = "TccWorkFlowElementEventIntermediate", ElementEventEnd = "TccWorkFlowElementEventEnd", ElementActivityTaskUser = "TccWorkFlowElementActivityTaskUser", ElementActivityTaskScript = "TccWorkFlowElementActivityTaskScript", ElementActivityTaskService = "TccWorkFlowElementActivityTaskService", ElementActivityTaskSubWorkflow = "TccWorkFlowElementActivityTaskSubWorkflow", ElementConnectionSequenceFlow = "TccWorkFlowElementConnectionSequenceFlow", ElementConnectionDefaultFlow = "TccWorkFlowElementConnectionDefaultFlow", ElementConnectionConditionalFlow = "TccWorkFlowElementConnectionConditionalFlow", ElementGatewayExclusive = "TccWorkFlowElementGatewayExclusive", ElementGatewayParallel = "TccWorkFlowElementGatewayParallel" } interface TextAnnotation { Text: TccTranslation; Position: TccPoint; } type IconAnnotation = string; interface Annotations { Text: TextAnnotation; Icon: IconAnnotation; } interface ElementConnector { ElementId: TccId; SourcePoint?: number; TargetPoint?: number; } type ElementConnectors = Array<ElementConnector>; interface iElement { Id: TccId; Text?: TccTranslation; Description?: TccTranslation; Color?: TccColor; Position?: TccRect; Annotations?: Annotations; Connectors?: ElementConnectors; Type?: ElementType; SwimLane?: TccId; } type Elements = Array<Element>; interface ElementEventStart extends iShapeElement { BusinessObjectId: TccId; ItemEvents: TccBusinessObjectItemEvents; } interface ElementEventIntermediate extends iShapeElement { } interface ElementEventStartContainer { TccWorkFlowElementEventStart: ElementEventStart; } interface ElementEventIntermediateContainer { TccWorkFlowElementEventIntermediate: ElementEventIntermediate; } interface ElementEventEndContainer { TccWorkFlowElementEventEnd: ElementEventEnd; } interface ElementConnectionSequenceFlowContainer { TccWorkFlowElementConnectionSequenceFlow: ElementConnectionSequenceFlow; } interface ElementConnectionDefaultFlowContainer { TccWorkFlowElementConnectionDefaultFlow: ElementConnectionDefaultFlow; } interface ElementConnectionConditionalFlowContainer { TccWorkFlowElementConnectionConditionalFlow: ElementConnectionConditionalFlow; } interface ElementGatewayExclusiveContainer { TccWorkFlowElementGatewayExclusive: ElementGatewayExclusive; } interface ElementGatewayParallelContainer { TccWorkFlowElementGatewayParallel: ElementGatewayParallel; } interface ElementActivityTaskUserContainer { TccWorkFlowElementActivityTaskUser: ElementActivityTaskUser; } interface ElementActivityTaskScriptContainer { TccWorkFlowElementActivityTaskScript: ElementActivityTaskScript; } interface ElementActivityTaskServiceContainer { TccWorkFlowElementActivityTaskService: ElementActivityTaskService; } interface ElementActivityTaskSubWorkflowContainer { TccWorkFlowElementActivityTaskSubWorkflow: ElementActivityTaskSubWorkflow; } type Element = ElementEventStartContainer | ElementEventIntermediateContainer | ElementEventEndContainer | ElementActivityTaskUserContainer | ElementActivityTaskScriptContainer | ElementActivityTaskServiceContainer | ElementActivityTaskSubWorkflowContainer | ElementConnectionSequenceFlowContainer | ElementConnectionDefaultFlowContainer | ElementConnectionConditionalFlowContainer | ElementGatewayExclusiveContainer | ElementGatewayParallelContainer; interface ElementEventEnd extends iShapeElement { } interface ElementActivityTaskUser extends iShapeElement { Members: TccMemberDictionary; } interface ElementActivityTaskScript extends iShapeElement { ScriptId: TccId; } interface ElementActivityTaskService extends iShapeElement { Service: ActivityTaskService; ServiceId: TccId; } interface ElementActivityTaskSubWorkflow extends iShapeElement { WorkflowId: TccId; } interface ElementConnectionSequenceFlow extends iElement { WayPoints?: TccPoints; Lines?: Array<Line>; endPosition?: Position; } interface ElementConnectionDefaultFlow extends ElementConnectionSequenceFlow { } interface ElementConnectionConditionalFlow extends ElementConnectionSequenceFlow { Conditions: string; } interface ElementGatewayExclusive extends iShapeElement { } interface ElementGatewayParallel extends iShapeElement { } interface SwimLane extends iElement { Elements: Elements; } type SwimLanes = Array<SwimLane>; interface ElementGroup extends iElement { Elements: Array<TccId>; } interface ElementGroups { [k: string]: ElementGroup; } interface Pool extends iElement { SwimLanes: SwimLanes; Groups?: ElementGroups; } type Pools = Array<Pool>; interface Workflow extends TccC4Node { Pools: Pools; } }