@ctodev/cclibrary-typings
Version:
Library typings for use with CLARC INFINITY
212 lines (211 loc) • 7.73 kB
TypeScript
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;
}
}