import { TranslatorGenerator } from '@lcap/nasl-translator'; import type View from './View__'; import type ProcessDefinitionV2 from './ProcessDefinitionV2__'; import type ProcessV2 from './ProcessV2__'; import * as types from './utils/types'; import BaseNode from '../common/BaseNode'; import type Rect from './Rect__'; import type Point from './Point__'; import type BindAttribute from './BindAttribute__'; import type FieldPermissionV2 from './FieldPermissionV2__'; import type OperatePermissionV2 from './OperatePermissionV2__'; import type FlowConditionV2 from './FlowConditionV2__'; import type SubLogic from './SubLogic__'; import type Logic from './Logic__'; import type BindEvent from './BindEvent__'; import type SubProcessDataMappingRule from './SubProcessDataMappingRule__'; /** * 流程元素 */ export declare class ProcessElementV2 extends BaseNode { /** 类名 */ static readonly ConceptName: string; /** * 是否为抽象类 * 抽象类不能产生 concept: string */ static isAbstract: boolean; /** 继承链 */ static readonly inheritanceChain: string[]; /** * 产品概念 */ readonly concept: 'ProcessElementV2'; /** * 流程元素名称 */ name: string; /** * 流程元素标题 */ title: string; /** * 流程元素描述 */ description: string; /** * type */ type: 'StartNoneEvent' | 'EndNoneEvent' | 'SubmitTask' | 'ApprovalTask' | 'ExclusiveGateway' | 'ParallelGateway' | 'SequenceFlow' | 'ConditionalFlow' | 'InitiateTask' | 'ServiceTask' | 'CCTask' | 'CallSubProcess'; /** * 源节点 */ sourceRef: string; /** * 目标节点 */ targetRef: string; /** * 矩形信息 */ bounds: Rect; /** * 点信息列表 */ waypoints: Array; /** * 元素绑定属性列表 */ bindAttrs: Array; /** * 字段权限控制 */ fieldPermissions: Array; /** * 操作权限控制 */ operatePermissions: Array; /** * 条件流的条件 */ flowCondition?: FlowConditionV2 | SubLogic; /** * 条件流的优先级 */ flowPriority: number; /** * 任务实例标题 */ taskTitle?: BindAttribute; /** * 逻辑 */ logic: Logic; /** * 元素绑定事件列表 */ bindEvents: Array; /** * 审批策略 */ approvalPolicy: types.ApprovalPolicyV2Node; /** * 是否为默认流 */ isDefault: boolean; /** * 自动审批策略 */ automaticApprovalStrategies?: Array<'SameAsProcInsStartBy' | 'OneOfPreviousNodeAssignees'>; /** * 无人审批策略 */ unmannedApprovalStrategy?: types.UnmannedApprovalStrategyV2Node; /** * 关联子流程 */ subProcessKey: string; /** * 流转规则 */ circulationRule?: 'wait' | 'continue'; /** * 自动提交 */ autoCommit?: boolean; /** * 子流程数据映射规则 */ dataMappingRule?: SubProcessDataMappingRule; /** * @param source 需要合并的部分参数 */ constructor(source?: Partial); static from(source: any, parentNode?: any, parentKey?: string): ProcessElementV2; /** * 设置流程元素名称 */ setName(name: string): void; /** * 设置流程元素标题 */ setTitle(title: string): void; /** * 设置流程元素描述 */ setDescription(description: string): void; /** * 设置源节点 */ setSourceRef(sourceRef: string): void; /** * 设置目标节点 */ setTargetRef(targetRef: string): void; /** * 设置矩形信息 */ setBounds(bounds: Rect): void; /** * 设置任务实例标题 */ setTaskTitle(taskTitle: BindAttribute): void; getPointExistingNames(excludedList?: Array): string[]; getPointUniqueName(name?: string): string; /** * 插入点信息 * @internal * @param name 点信息名称,如果不填会自动生成一个唯一名称 */ _insertPointAt(name: string, index: number): Point; /** * 插入点信息 * @internal * @param pointOptions 点信息参数 */ _insertPointAt(pointOptions: Partial, index: number): Point; /** * 插入点信息 * @internal * @param point 已有的点信息实例 */ _insertPointAt(point: Point, index: number): Point; /** * 插入点信息 * @param name 点信息名称,如果不填会自动生成一个唯一名称 */ insertPointAt(name: string, index: number): Point; /** * 插入点信息 * @param pointOptions 点信息参数 */ insertPointAt(pointOptions: Partial, index: number): Point; /** * 插入点信息 * @param point 已有的点信息实例 */ insertPointAt(point: Point, index: number): Point; /** * 添加点信息 * @internal * @param name 点信息名称,如果不填会自动生成一个唯一名称 */ _addPoint(name?: string): Point; /** * 添加点信息 * @internal * @param pointOptions 点信息参数 */ _addPoint(pointOptions: Partial): Point; /** * 添加点信息 * @internal * @param point 已有的点信息实例 */ _addPoint(point: Point): Point; /** * 添加点信息 * @internal * @param name 点信息名称,如果不填会自动生成一个唯一名称 */ addPoint(name?: string): Point; /** * 添加点信息 * @param pointOptions 点信息参数 */ addPoint(pointOptions: Partial): Point; /** * 添加点信息 * @param point 已有的点信息实例 */ addPoint(point: Point): Point; getBindAttributeExistingNames(excludedList?: Array): string[]; getBindAttributeUniqueName(name?: string): string; /** * 插入元素绑定属性 * @internal * @param name 元素绑定属性名称,如果不填会自动生成一个唯一名称 */ _insertBindAttributeAt(name: string, index: number): BindAttribute; /** * 插入元素绑定属性 * @internal * @param bindAttributeOptions 元素绑定属性参数 */ _insertBindAttributeAt(bindAttributeOptions: Partial, index: number): BindAttribute; /** * 插入元素绑定属性 * @internal * @param bindAttribute 已有的元素绑定属性实例 */ _insertBindAttributeAt(bindAttribute: BindAttribute, index: number): BindAttribute; /** * 插入元素绑定属性 * @param name 元素绑定属性名称,如果不填会自动生成一个唯一名称 */ insertBindAttributeAt(name: string, index: number): BindAttribute; /** * 插入元素绑定属性 * @param bindAttributeOptions 元素绑定属性参数 */ insertBindAttributeAt(bindAttributeOptions: Partial, index: number): BindAttribute; /** * 插入元素绑定属性 * @param bindAttribute 已有的元素绑定属性实例 */ insertBindAttributeAt(bindAttribute: BindAttribute, index: number): BindAttribute; /** * 添加元素绑定属性 * @internal * @param name 元素绑定属性名称,如果不填会自动生成一个唯一名称 */ _addBindAttribute(name?: string): BindAttribute; /** * 添加元素绑定属性 * @internal * @param bindAttributeOptions 元素绑定属性参数 */ _addBindAttribute(bindAttributeOptions: Partial): BindAttribute; /** * 添加元素绑定属性 * @internal * @param bindAttribute 已有的元素绑定属性实例 */ _addBindAttribute(bindAttribute: BindAttribute): BindAttribute; /** * 添加元素绑定属性 * @internal * @param name 元素绑定属性名称,如果不填会自动生成一个唯一名称 */ addBindAttribute(name?: string): BindAttribute; /** * 添加元素绑定属性 * @param bindAttributeOptions 元素绑定属性参数 */ addBindAttribute(bindAttributeOptions: Partial): BindAttribute; /** * 添加元素绑定属性 * @param bindAttribute 已有的元素绑定属性实例 */ addBindAttribute(bindAttribute: BindAttribute): BindAttribute; getFieldPermissionV2ExistingNames(excludedList?: Array): string[]; getFieldPermissionV2UniqueName(name?: string): string; /** * 插入字段权限控制详情 * @internal * @param name 字段权限控制详情名称,如果不填会自动生成一个唯一名称 */ _insertFieldPermissionV2At(name: string, index: number): FieldPermissionV2; /** * 插入字段权限控制详情 * @internal * @param fieldPermissionV2Options 字段权限控制详情参数 */ _insertFieldPermissionV2At(fieldPermissionV2Options: Partial, index: number): FieldPermissionV2; /** * 插入字段权限控制详情 * @internal * @param fieldPermissionV2 已有的字段权限控制详情实例 */ _insertFieldPermissionV2At(fieldPermissionV2: FieldPermissionV2, index: number): FieldPermissionV2; /** * 插入字段权限控制详情 * @param name 字段权限控制详情名称,如果不填会自动生成一个唯一名称 */ insertFieldPermissionV2At(name: string, index: number): FieldPermissionV2; /** * 插入字段权限控制详情 * @param fieldPermissionV2Options 字段权限控制详情参数 */ insertFieldPermissionV2At(fieldPermissionV2Options: Partial, index: number): FieldPermissionV2; /** * 插入字段权限控制详情 * @param fieldPermissionV2 已有的字段权限控制详情实例 */ insertFieldPermissionV2At(fieldPermissionV2: FieldPermissionV2, index: number): FieldPermissionV2; /** * 添加字段权限控制详情 * @internal * @param name 字段权限控制详情名称,如果不填会自动生成一个唯一名称 */ _addFieldPermissionV2(name?: string): FieldPermissionV2; /** * 添加字段权限控制详情 * @internal * @param fieldPermissionV2Options 字段权限控制详情参数 */ _addFieldPermissionV2(fieldPermissionV2Options: Partial): FieldPermissionV2; /** * 添加字段权限控制详情 * @internal * @param fieldPermissionV2 已有的字段权限控制详情实例 */ _addFieldPermissionV2(fieldPermissionV2: FieldPermissionV2): FieldPermissionV2; /** * 添加字段权限控制详情 * @internal * @param name 字段权限控制详情名称,如果不填会自动生成一个唯一名称 */ addFieldPermissionV2(name?: string): FieldPermissionV2; /** * 添加字段权限控制详情 * @param fieldPermissionV2Options 字段权限控制详情参数 */ addFieldPermissionV2(fieldPermissionV2Options: Partial): FieldPermissionV2; /** * 添加字段权限控制详情 * @param fieldPermissionV2 已有的字段权限控制详情实例 */ addFieldPermissionV2(fieldPermissionV2: FieldPermissionV2): FieldPermissionV2; getOperatePermissionV2ExistingNames(excludedList?: Array): ("approve" | "reject" | "reassign" | "revert" | "submit" | "withdraw" | "addSign")[]; getOperatePermissionV2UniqueName(name?: string): string; /** * 插入操作权限控制 * @internal * @param name 操作权限控制名称,如果不填会自动生成一个唯一名称 */ _insertOperatePermissionV2At(name: string, index: number): OperatePermissionV2; /** * 插入操作权限控制 * @internal * @param operatePermissionV2Options 操作权限控制参数 */ _insertOperatePermissionV2At(operatePermissionV2Options: Partial, index: number): OperatePermissionV2; /** * 插入操作权限控制 * @internal * @param operatePermissionV2 已有的操作权限控制实例 */ _insertOperatePermissionV2At(operatePermissionV2: OperatePermissionV2, index: number): OperatePermissionV2; /** * 插入操作权限控制 * @param name 操作权限控制名称,如果不填会自动生成一个唯一名称 */ insertOperatePermissionV2At(name: string, index: number): OperatePermissionV2; /** * 插入操作权限控制 * @param operatePermissionV2Options 操作权限控制参数 */ insertOperatePermissionV2At(operatePermissionV2Options: Partial, index: number): OperatePermissionV2; /** * 插入操作权限控制 * @param operatePermissionV2 已有的操作权限控制实例 */ insertOperatePermissionV2At(operatePermissionV2: OperatePermissionV2, index: number): OperatePermissionV2; /** * 添加操作权限控制 * @internal * @param name 操作权限控制名称,如果不填会自动生成一个唯一名称 */ _addOperatePermissionV2(name?: string): OperatePermissionV2; /** * 添加操作权限控制 * @internal * @param operatePermissionV2Options 操作权限控制参数 */ _addOperatePermissionV2(operatePermissionV2Options: Partial): OperatePermissionV2; /** * 添加操作权限控制 * @internal * @param operatePermissionV2 已有的操作权限控制实例 */ _addOperatePermissionV2(operatePermissionV2: OperatePermissionV2): OperatePermissionV2; /** * 添加操作权限控制 * @internal * @param name 操作权限控制名称,如果不填会自动生成一个唯一名称 */ addOperatePermissionV2(name?: string): OperatePermissionV2; /** * 添加操作权限控制 * @param operatePermissionV2Options 操作权限控制参数 */ addOperatePermissionV2(operatePermissionV2Options: Partial): OperatePermissionV2; /** * 添加操作权限控制 * @param operatePermissionV2 已有的操作权限控制实例 */ addOperatePermissionV2(operatePermissionV2: OperatePermissionV2): OperatePermissionV2; getBindEventExistingNames(excludedList?: Array): string[]; getBindEventUniqueName(name?: string): string; /** * 插入元素绑定事件 * @internal * @param name 元素绑定事件名称,如果不填会自动生成一个唯一名称 */ _insertBindEventAt(name: string, index: number): BindEvent; /** * 插入元素绑定事件 * @internal * @param bindEventOptions 元素绑定事件参数 */ _insertBindEventAt(bindEventOptions: Partial, index: number): BindEvent; /** * 插入元素绑定事件 * @internal * @param bindEvent 已有的元素绑定事件实例 */ _insertBindEventAt(bindEvent: BindEvent, index: number): BindEvent; /** * 插入元素绑定事件 * @param name 元素绑定事件名称,如果不填会自动生成一个唯一名称 */ insertBindEventAt(name: string, index: number): BindEvent; /** * 插入元素绑定事件 * @param bindEventOptions 元素绑定事件参数 */ insertBindEventAt(bindEventOptions: Partial, index: number): BindEvent; /** * 插入元素绑定事件 * @param bindEvent 已有的元素绑定事件实例 */ insertBindEventAt(bindEvent: BindEvent, index: number): BindEvent; /** * 添加元素绑定事件 * @internal * @param name 元素绑定事件名称,如果不填会自动生成一个唯一名称 */ _addBindEvent(name?: string): BindEvent; /** * 添加元素绑定事件 * @internal * @param bindEventOptions 元素绑定事件参数 */ _addBindEvent(bindEventOptions: Partial): BindEvent; /** * 添加元素绑定事件 * @internal * @param bindEvent 已有的元素绑定事件实例 */ _addBindEvent(bindEvent: BindEvent): BindEvent; /** * 添加元素绑定事件 * @internal * @param name 元素绑定事件名称,如果不填会自动生成一个唯一名称 */ addBindEvent(name?: string): BindEvent; /** * 添加元素绑定事件 * @param bindEventOptions 元素绑定事件参数 */ addBindEvent(bindEventOptions: Partial): BindEvent; /** * 添加元素绑定事件 * @param bindEvent 已有的元素绑定事件实例 */ addBindEvent(bindEvent: BindEvent): BindEvent; /** * 删除点信息 * @param name 点信息名称 */ removePoint(name: string): void; /** * 删除点信息 * @param point 已有的点信息实例 */ removePoint(point: Point): void; /** * 删除元素绑定属性 * @param name 元素绑定属性名称 */ removeBindAttribute(name: string): void; /** * 删除元素绑定属性 * @param bindAttribute 已有的元素绑定属性实例 */ removeBindAttribute(bindAttribute: BindAttribute): void; /** * 删除字段权限控制详情 * @param name 字段权限控制详情名称 */ removeFieldPermissionV2(name: string): void; /** * 删除字段权限控制详情 * @param fieldPermissionV2 已有的字段权限控制详情实例 */ removeFieldPermissionV2(fieldPermissionV2: FieldPermissionV2): void; /** * 删除操作权限控制 * @param name 操作权限控制名称 */ removeOperatePermissionV2(name: string): void; /** * 删除操作权限控制 * @param operatePermissionV2 已有的操作权限控制实例 */ removeOperatePermissionV2(operatePermissionV2: OperatePermissionV2): void; /** * 删除元素绑定事件 * @param name 元素绑定事件名称 */ removeBindEvent(name: string): void; /** * 删除元素绑定事件 * @param bindEvent 已有的元素绑定事件实例 */ removeBindEvent(bindEvent: BindEvent): void; /** * 获取当前逻辑下所有elements上bindEvents下的logic */ _cacheFlowConditionV2: FlowConditionV2; /** * 获取当前逻辑下所有elements上bindEvents下的logic */ _cacheSubLogic: SubLogic; get processV2(): ProcessV2; get isFormProcess(): boolean; get isAutoTask(): boolean; get isManualTask(): boolean; get isTask(): boolean; get isFlow(): boolean; get isBranch(): boolean; get __isVirtual(): boolean; get AssigneeV2(): import("./AssigneeV2__").AssigneeV2; get assigneeLogics(): Logic[]; get logicVariables(): import("./Variable__").Variable[]; get processDefinitions(): ProcessDefinitionV2; get likeProcessV2(): ProcessDefinitionV2; get flowSubLogics(): (SubLogic | FlowConditionV2)[]; get callSubProcessSubLogics(): SubLogic[]; get isCallSubProcess(): boolean; getLogicExistingNames(excludedList?: Array): string[]; getSubLogicUniqueName(name?: string): string; getSubLogicExistingNames(excludedList?: Array): any[]; getPrefixProcessElements(): ProcessElementV2[]; getNamespace(ns: string): string; cancelBindDelete(processDelete: boolean): Promise; uniqueTaskId(view: View): string; getBackNodes(): { label: any; value: any; }[]; toEmbeddedTS(state?: import("@lcap/nasl-types/out/translator").TranslatorState): TranslatorGenerator; subLogics: Array; getSubLogics(): void; } export default ProcessElementV2; //# sourceMappingURL=ProcessElementV2__.d.ts.map