import {
  relationType,
  ifType,
  conditionMethodType,
  assignMethodType,
  valueType,
  childConditionType,
} from "@/enums/process";
declare global {
  interface IProcess {
    id: string;
    name: string;
    assemble: Array<IAssemble>;
    relation: relationType;
  }
  interface IAssemble {
    id: string;
    remark: string;
    condition: ICondition;
    return: string,
    assign: Array<IAssign>
  }
  interface IAssign {
    label: string,
    id: string,
    method: assignMethodType,
    value: any
  }
  interface ICondition {
    relation: relationType;
    id: string;
    group: Array<IGroup>;
  }
  interface IGroup {
    type: groupType;
    data: IJudge | ICondition;
  }
  interface IJudge {
    if: IIf;
    method: conditionMethodType;
    value: IValue;
    id: string;
  }
  interface IIf {
    type: ifType;
    id: string;
    label: string;
  }
  interface IValue {
    type: valueType;
    id: string;
    label: string;
  }
}
export { };
