import { FlowEvent, FlowEventSelectType, FlowNode, Menu, OriginConfigType } from "./type";
import { BehaviorType } from "../../../../src/utils/CLowCodeService/type";
export declare function getTreeDepth(node: any): number;
/**
 * 动作和条件只能添加一个
 * @param menus
 * @returns
 */
export declare function isActionAndCondition(menus: Menu[]): boolean;
export declare function getComMenus(): Menu[];
export declare function getInterposition(): {
    key: FlowEvent;
    label: any;
    nodeType: FlowEvent;
    nodeName: any;
}[];
export declare function getDeleteMenus(): Menu[];
export declare function getActionRequestMenus(): {
    key: FlowEvent;
    label: any;
    nodeType: FlowEvent;
    nodeName: FlowEvent;
}[];
/**
 * 检测是否含有多个规则节点
 * @param node
 * @returns
 */
export declare function checkMultiRuleNode(node: FlowNode): boolean;
/**
 * 校验节点至少得有一个结束节点
 * @param node
 */
export declare function isEffectivePluginId(pluginId: number | undefined): boolean;
export declare function getActionDataSource(): {
    label: any;
    value: BehaviorType;
}[];
export declare function getOriginOptions(): {
    label: any;
    value: OriginConfigType;
}[];
export declare function getFlowEventOptions(): {
    label: any;
    value: FlowEventSelectType;
}[];
/**
 * 获取全部按钮上的事件流过滤自己
 * @returns
 */
export declare function getFlowEventOptionsBySchema(componentKey?: string): any;
