import { Vertex, LEVEL_ENUM, Interface, Param, Return, Variable, ProcessComponent, ProcessInterface, Process, ActionOptions } from '..';
import View from '../page/View';
import { LogicItem } from './LogicItem';
/**
* 逻辑类
*/
export declare class Logic extends Vertex {
/**
* 概念类型
*/
readonly level: LEVEL_ENUM;
/**
* Id
*/
readonly id: string;
/**
* 名称
*/
readonly name: string;
/**
* 描述
*/
readonly description: string;
/**
* serviceId 或者 viewId
*/
readonly moduleId: string;
/**
* 值为 view 或者 microService 或者 processComponent
*/
readonly moduleType: 'view' | 'microService' | 'process';
/**
* serviceId 或者 viewId
*/
readonly serviceId: string;
/**
* 值为 view 或者 microService
*/
readonly serviceType: 'view' | 'entity' | 'microService';
/**
* 所属实体 Id
*/
readonly entityId: string;
/**
* 输入参数列表
*/
readonly params: Array;
/**
* 输出参数列表
*/
readonly returns: Array;
/**
* 局部变量列表
*/
readonly variables: Array;
/**
* 逻辑体
*/
readonly body: Array;
/**
* 画布
*/
readonly playgroundId: string;
/**
* 画布
*/
readonly playground: Array;
/**
* 接口
*/
readonly interface: Interface;
/**
* 视图
*/
readonly view: View;
/**
* 流程组件
*/
readonly processComponent: ProcessComponent;
/**
* 流程组件
*/
readonly process: Process;
/**
* 正在请求的 Promise
* 前端 UI 状态
*/
contentPromise: Promise;
/**
* 树组件的子节点字段
*/
readonly moreChildrenFields: Array;
/**
* @param source 需要合并的部分参数
*/
constructor(source?: Partial);
/**
* 添加逻辑
*/
create(none?: void, actionOptions?: ActionOptions): Promise;
/**
* 删除逻辑
*/
delete(none?: void, actionOptions?: ActionOptions): Promise;
/**
* 修改逻辑
*/
update(none?: void, actionOptions?: ActionOptions, then?: () => Promise): Promise;
/**
* 设置逻辑名称
*/
setName(name: string): Promise;
/**
* 设置逻辑描述
*/
setDescription(description: string): Promise;
_onChange(): void;
/**
* 按当前 id 加载逻辑数据
*/
load(): Promise;
isContentLoaded(): boolean;
/**
* 批量添加参数
*/
addParamList(params: Array): Promise;
/**
* 添加逻辑节点
* @param item
*/
addItem(item: LogicItem, actionOptions?: ActionOptions): Promise;
/**
* 删除逻辑节点
* @param item
*/
removeItem(item: LogicItem, actionOptions?: ActionOptions): Promise;
/**
*
* @param type
* @returns
*/
findLogicItemByType(type: string): LogicItem;
/**
* 从后端 JSON 生成规范的 Logic 对象
*/
static from(source: any, parent: Interface | View | ProcessComponent | ProcessInterface, currentLogic?: Logic): Logic;
}
export default Logic;