import { NewSchema } from "./NewSchema"; import { Schema } from "./Schema"; /** * 高级表达式语法校验返回值 * @property closeable 表达式编辑器是否可关闭 * @properry expression 表达式文本 * @property semantic 语义化文本 * @date 2022-08-02 上午10:00 */ export declare class AdvancedCheckResult { closeable: boolean; expression: string; semantic: string; } /** * 表达式上下文 * @property expr 计算表达式文本 * @property sexpr 简易表达式文本 * @property sessionEntities 会话变量 * @property contextEntities 上下文变量 * @property funcEntities 扩展函数 * @property schemaMap 旧版Schema数据模型Map * @property newSchemaMap 新版NewSchema数据模型Map * @property injectedEntities 注入实体,决定展示哪个数据模型 * @property smartHelpEntities 注入帮助 */ export declare class ExpressionContextEntity { expr: string; sexpr: string; sessionEntities: VarEntity[]; contextEntities: VarEntity[]; functionEntities: FunctionEntity[]; schemaMap: Map; newSchemaMap: Map; injectedEntities: InjectedEntity[]; smartHelpEntities: SmartHelpInfo[]; } /** * 定制的计算表达式页面 * @param Function_ShowExtend 是否展示扩展函数 * @param DataModel_ShowChildSymbol 是否展示子表[0],默认展示 * @param DataArea_DefaultSelect 数据区域的选中tab页,默认为数据模型 * @param DataArea_Variable_Context 上下文变量设置(null代表无特殊设置;数组代表展示的变量,元素为变量名称) * @param DataArea_Variable_Session 会话变量设置(null代表无特殊设置;数组代表展示的变量,元素为变量名称) */ export declare class CustomizedSetting { Function_ShowExtend: boolean; Function_ShowExtendItems: any; DataModel_ShowChildSymbol: boolean; DataArea_DefaultSelect: DataArea; DataArea_Variable_Items: any; DataArea_Variable_Context: any; DataArea_Variable_Session: any; static from(copy: any): any; } /** * 表达式模型&变量信息 * @property properties 数据模型字段 * @property contextVariables 上下文变量 * @property sessionVariables 会话变量 */ export declare class ExpressionModelDetail { properties: Array<{ code: any; name: any; type: any; }>; contextVariables: Array<{ code: any; name: any; }>; sessionVariables: Array<{ code: any; name: any; }>; } /** * 数据区域tab页 * @param DataModel 数据模型 * @param Variable 变量 * @param Help 帮助 */ export declare enum DataArea { DataModel = "DataModel", Variable = "Variable", Help = "Help" } /** * 表达式返回值 * @property expr 计算表达式结果字符串 * @property sexpr 简单表达式结果字符串,高级表达式不用 */ export declare class ExpressionEntity { expr: string; sexpr: string; } /** * 表达式打开模式 * @enum Conditional 简易表达式 * @enum Advanced 计算表达式 */ export declare enum ExprEditMode { Conditional = 0, Advanced = 1 } /** * 注入实体(决定展示哪个数据模型) * @property name 自定义模型根节点名,可不填 * @property schemaName 决定展示哪个数据模型,为方法addSchema/addNewSchema第一个参数 * @property injectedType 注入对象类型(EntitySet,EntityType) * @property injectedName 注入实体的名称,对应EntityType.code/EntitySet.code */ export declare class InjectedEntity { name: string; schemaName: string; injectedType: InjectedType; injectedName: string; } /** * 注入对象类型 * @member EntitySet 实体集 * @member EntityType 实体类型 */ export declare enum InjectedType { EntitySet = 0, EntityType = 1, EntityEnum = 2, EntityType_ChildTable = 3 } /** * 变量实体,用于会话变量、上下文变量构造 * @property key 变量key(唯一标识,不可重复) * @property name 变量名称 * @property description 变量描述 */ export declare class VarEntity { key: string; name: string; description: string; } export declare class CurrentNode { id: string; code: string; name: string; nodeType: any; } export declare class SmartHelpInfo { code: string; name: string; description: string; instance: SmartHelp; } export interface SmartHelp { show(): Promise; } /** * 函数实体 * @property key 扩展函数所在Java类中的函数名(唯一标识,不可重复) * @property name 函数名称 * @property type 函数类型 * @property description 函数描述 * @property params 函数参数列表 * @property keyFront 函数前缀(扩展函数所在Java类名) * @property className 类路径(扩展函数所在Java类全限定类名) * @property isLatestExtendFunc 是否新型扩展函数 */ export declare class FunctionEntity { key: string; name: string; type: any; description: string; params: Parameter[]; keyFront: string; className: string; isLatestExtendFunc: boolean; } /** * 函数类型 * @member Advanced 高级 * @member Analytical 子表 * @member DateTime 日期时间 * @member Math 数字 * @member String 字符串 * @member Translate 转换 * @member Extend 扩展 */ export declare enum FuncType { Advanced = "Advanced", Analytical = "Analytical", DateTime = "DateTime", Math = "Math", String = "String", Translate = "Translate", Extend = "Extend" } /** * 参数信息 * @param key 某一函数中参数的唯一标识,key取值应有实际意义 * @property name 参数语义化名 * @property type 参数类型 */ export declare class Parameter { key: string; name: string; type: any; } /** * 函数实体列表 * @deprecated * @property funcs 函数实体列表 */ export declare class FuncEntities { funcs: FuncEntity[]; } /** * 函数实体 * @deprecated * @property key 函数key值(唯一标识,不可重复) * @property name 函数名称 * @property type 函数类型 * @property description 函数描述 * @property params 函数参数列表 * @property className 所在类名(扩展函数所在Java类全限定类名) */ export declare class FuncEntity { key: string; name: string; type: FuncType; description: string; params: Parameter[]; className: string; } /** * 新型扩展函数实体 * @property token 扩展函数唯一标识(唯一标识,不可重复) * @property key 若为新型扩展函数,此字段失效 * @property name 函数名称 * @property type 设置为FuncType.Extend * @property description 函数描述 * @property params 函数参数列表 * @property keyFront 若为新型扩展函数,此字段失效 * @property className 若为新型扩展函数,此字段失效 * @property isLatestExtendFunc 是否新型扩展函数 */ export declare class ExtendFunction { token: string; key: string; name: string; type: any; description: string; params: Parameter[]; keyFront: string; className: string; isLatestExtendFunc: boolean; }