import { FormModels, IDetailTableItem, IFormModelItem, IRenderModel } from '../types'; import { EventEmitterEx } from './events'; import { ViewLinkageStore } from './view-linkage'; import { ViewLinkageType } from './view-linkage/types'; import { DetailTableStore } from './detail-table'; declare class FormStore { /** * 表单数据模型 */ private models; /** * dataKey 映射 id 对应关系 * @private */ private dataKeyMap; /** * 明细表 id 映射 id 对应关系 * @private */ private tableIdMap; /** * 表单原始数据 */ private originalModel; /** * 校验失败错误信息 */ private errorMessages; /** * 组件关系 * key:id * value 子级集合 */ private compRelationship; /** * 表单数据 * @private */ private mainFormData; /** * 表单禁用 */ formDisabled: import("vue").Ref; /** * 表单只读 */ formReadonly: import("vue").Ref; /** * 事件中心 */ events: EventEmitterEx; /** * 显示属性联动 store */ viewLinkageStore: ViewLinkageStore; /** * 明细表数据 */ detailTableStore: DetailTableStore; /** * id 生成器 */ idGenerator: () => string; /** * 初始化表单 * @param options - 初始化选项 * @param options.models - 表单模型 * @param options.viewLinkage - 视图联动类型 */ init(options: { models: FormModels; viewLinkage?: ViewLinkageType; }): void; /** * 通过 dataKey 获取 model id * @param dataKey */ getModelIdByDataKey: (dataKey: string) => string; /** * 获取表单模型 */ getFormModels: () => { [x: string]: any; dataKey: string; value: unknown; isVirtualKey?: boolean | undefined; valueItems?: string[] | undefined; detailTableId?: string | undefined; hideLabel?: boolean | undefined; rules?: string | undefined; errorMessage?: string | undefined; description?: string | undefined; id: string; label?: string | undefined; labelWidth?: string | number | undefined; component: string | import("vue").FunctionalComponent | { new (...args: any[]): any; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; } | { [x: string]: any; setup?: ((this: void, props: import("@vue/shared").LooseRequired, ctx: { attrs: { [x: string]: unknown; }; slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void); expose: (exposed?: Record | undefined) => void; }) => any) | undefined; name?: string | undefined; template?: string | object | undefined; render?: Function | undefined; components?: Record> | undefined; directives?: Record> | undefined; inheritAttrs?: boolean | undefined; emits?: any; slots?: {} | undefined; expose?: string[] | undefined; serverPrefetch?: (() => void | Promise) | undefined; compilerOptions?: { isCustomElement?: ((tag: string) => boolean) | undefined; whitespace?: "preserve" | "condense" | undefined; comments?: boolean | undefined; delimiters?: [string, string] | undefined; } | undefined; call?: ((this: unknown, ...args: unknown[]) => never) | undefined; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; __defaults?: any; compatConfig?: { GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined; GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined; GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined; GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined; GLOBAL_SET?: boolean | "suppress-warning" | undefined; GLOBAL_DELETE?: boolean | "suppress-warning" | undefined; GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined; GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined; CONFIG_SILENT?: boolean | "suppress-warning" | undefined; CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined; CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined; CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined; CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined; CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined; CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined; INSTANCE_SET?: boolean | "suppress-warning" | undefined; INSTANCE_DELETE?: boolean | "suppress-warning" | undefined; INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined; INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined; INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined; INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined; INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined; INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined; INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined; OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined; OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined; OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined; OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined; WATCH_ARRAY?: boolean | "suppress-warning" | undefined; PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined; V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined; CUSTOM_DIR?: boolean | "suppress-warning" | undefined; ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined; ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined; TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined; TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined; COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined; COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined; COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined; RENDER_FUNCTION?: boolean | "suppress-warning" | undefined; FILTERS?: boolean | "suppress-warning" | undefined; PRIVATE_APIS?: boolean | "suppress-warning" | undefined; MODE?: 2 | 3 | ((comp: import("vue").Component | null) => 2 | 3) | undefined; } | undefined; data?: ((this: any, vm: any) => any) | undefined; computed?: import("vue").ComputedOptions | undefined; methods?: import("vue").MethodOptions | undefined; watch?: { [x: string]: (string | import("vue").WatchCallback | ({ handler: string | import("vue").WatchCallback; } & import("vue").WatchOptions)) | (string | import("vue").WatchCallback | ({ handler: string | import("vue").WatchCallback; } & import("vue").WatchOptions))[]; } | undefined; provide?: import("vue").ComponentProvideOptions | undefined; inject?: {} | string[] | undefined; filters?: Record | undefined; mixins?: any[] | undefined; extends?: any; beforeCreate?: (() => void) | undefined; created?: (() => void) | undefined; beforeMount?: (() => void) | undefined; mounted?: (() => void) | undefined; beforeUpdate?: (() => void) | undefined; updated?: (() => void) | undefined; activated?: (() => void) | undefined; deactivated?: (() => void) | undefined; beforeDestroy?: (() => void) | undefined; beforeUnmount?: (() => void) | undefined; destroyed?: (() => void) | undefined; unmounted?: (() => void) | undefined; renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined; renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined; errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}> | null, info: string) => boolean | void) | undefined; delimiters?: [string, string] | undefined; __differentiator?: string | number | symbol | undefined; __isBuiltIn?: boolean | undefined; __file?: string | undefined; __name?: string | undefined; }; componentType?: string | undefined; layout: any; display?: boolean | undefined; disabled?: boolean | undefined; readonly?: boolean | undefined; required?: boolean | undefined; }[]; /** * 更新单个字段数据 * @param dataKey * @param value * @param rowId * @deprecated 主版本发布后废弃,改为 updateFieldValue */ updateSingleValue(dataKey: string, value: any, rowId?: string): void; /** * 更新单个字段数据 * @param dataKey * @param value * @param rowId */ updateFieldValue(dataKey: string, value: any, rowId?: string): void; /** * 更新多个字段数据,默认会执行校验 * @param data * @param validate 是否执行校验 */ updateData(data: Record, validate?: boolean): void; /** * 更新表单模型 * @param id - 组件 ID * @param item - 组件模型 */ updateModel(id: string, item: Partial): void; /** * 更新表单模型 * @param options - 初始化选项 * @param options.models - 表单模型 * @param options.viewLinkage - 视图联动类型 */ updateModels(options: { models: FormModels; viewLinkage?: ViewLinkageType; }): void; /** * 获取单个 item 信息 * @param id * @deprecated 主版本发布后废弃,改为 getModel */ getItem(id: string): T; /** * 获取单个 model 信息 * @param id */ getModel(id: string): T; /** * 获取明细表信息 * @param tableId 明细表 id */ getModelByTableId(tableId: string): IDetailTableItem; /** * 获取子级集合 * @param parentId 父级 id */ getChildren(parentId: string): IFormModelItem[]; /** * 获取父级信息 * @param id */ getParent(id: string): T; /** * 获取父级集合 * @param id */ getParents(id: string): IRenderModel[]; /** * 获取明细表 id * @param id */ getDetailTableId(id: string): string; /** * 获取单个字段 value * @param dataKey * @param rowId */ getFieldValue(dataKey: string, rowId?: string): any; /** * 获取单个字段 value * @param dataKey * @param rowId * @deprecated 主版本发布后去除,需要改为 getFieldValue */ getSingleValue(dataKey: string, rowId?: string): any; /** * 获取表单数据 */ getFormData(): { [x: string]: any; }; /** * 设置显示隐藏 * @param id * @param value */ setDisplay(id: string, value: boolean): void; /** * 设置只读 * @param id * @param value */ setReadonly(id: string, value: boolean): void; /** * 设置禁用 * @param id * @param value */ setDisabled(id: string, value: boolean): void; /** * 设置必填 * @param id * @param value */ setRequired(id: string, value: boolean): void; /** * 设置整表禁用 * @param value */ setFormDisabled(value: boolean): void; /** * 设置整表只读 * @param value */ setFormReadonly(value: boolean): void; /** * 表单重置 */ reset(): void; /** * 表单校验 */ validate(): Promise; /** * 单个校验 * @param dataKey 数据键名 * @param detailTableId * @param rowId */ singleValidate(dataKey: string, detailTableId?: string, rowId?: string): Promise; /** * 获取单个字段的错误信息 * @param dataKey 数据键名 * @param detailTableId 明细表 id * @param rowId 明细表行数据 id */ getSingleMessage(dataKey: string, detailTableId?: string, rowId?: string): string; /** * 清空所有校验信息 */ clearMessages(): void; /** * 转换表单模型 */ convertModel: () => { [x: string]: any; dataKey: string; value: unknown; isVirtualKey?: boolean | undefined; valueItems?: string[] | undefined; detailTableId?: string | undefined; hideLabel?: boolean | undefined; rules?: string | undefined; errorMessage?: string | undefined; description?: string | undefined; id: string; label?: string | undefined; labelWidth?: string | number | undefined; component: string | import("vue").FunctionalComponent | { new (...args: any[]): any; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; } | { [x: string]: any; setup?: ((this: void, props: import("@vue/shared").LooseRequired, ctx: { attrs: { [x: string]: unknown; }; slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void); expose: (exposed?: Record | undefined) => void; }) => any) | undefined; name?: string | undefined; template?: string | object | undefined; render?: Function | undefined; components?: Record> | undefined; directives?: Record> | undefined; inheritAttrs?: boolean | undefined; emits?: any; slots?: {} | undefined; expose?: string[] | undefined; serverPrefetch?: (() => void | Promise) | undefined; compilerOptions?: { isCustomElement?: ((tag: string) => boolean) | undefined; whitespace?: "preserve" | "condense" | undefined; comments?: boolean | undefined; delimiters?: [string, string] | undefined; } | undefined; call?: ((this: unknown, ...args: unknown[]) => never) | undefined; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; __defaults?: any; compatConfig?: { GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined; GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined; GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined; GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined; GLOBAL_SET?: boolean | "suppress-warning" | undefined; GLOBAL_DELETE?: boolean | "suppress-warning" | undefined; GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined; GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined; CONFIG_SILENT?: boolean | "suppress-warning" | undefined; CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined; CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined; CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined; CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined; CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined; CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined; INSTANCE_SET?: boolean | "suppress-warning" | undefined; INSTANCE_DELETE?: boolean | "suppress-warning" | undefined; INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined; INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined; INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined; INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined; INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined; INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined; INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined; OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined; OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined; OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined; OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined; WATCH_ARRAY?: boolean | "suppress-warning" | undefined; PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined; V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined; CUSTOM_DIR?: boolean | "suppress-warning" | undefined; ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined; ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined; TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined; TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined; COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined; COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined; COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined; RENDER_FUNCTION?: boolean | "suppress-warning" | undefined; FILTERS?: boolean | "suppress-warning" | undefined; PRIVATE_APIS?: boolean | "suppress-warning" | undefined; MODE?: 2 | 3 | ((comp: import("vue").Component | null) => 2 | 3) | undefined; } | undefined; data?: ((this: any, vm: any) => any) | undefined; computed?: import("vue").ComputedOptions | undefined; methods?: import("vue").MethodOptions | undefined; watch?: { [x: string]: (string | import("vue").WatchCallback | ({ handler: string | import("vue").WatchCallback; } & import("vue").WatchOptions)) | (string | import("vue").WatchCallback | ({ handler: string | import("vue").WatchCallback; } & import("vue").WatchOptions))[]; } | undefined; provide?: import("vue").ComponentProvideOptions | undefined; inject?: {} | string[] | undefined; filters?: Record | undefined; mixins?: any[] | undefined; extends?: any; beforeCreate?: (() => void) | undefined; created?: (() => void) | undefined; beforeMount?: (() => void) | undefined; mounted?: (() => void) | undefined; beforeUpdate?: (() => void) | undefined; updated?: (() => void) | undefined; activated?: (() => void) | undefined; deactivated?: (() => void) | undefined; beforeDestroy?: (() => void) | undefined; beforeUnmount?: (() => void) | undefined; destroyed?: (() => void) | undefined; unmounted?: (() => void) | undefined; renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined; renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined; errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}> | null, info: string) => boolean | void) | undefined; delimiters?: [string, string] | undefined; __differentiator?: string | number | symbol | undefined; __isBuiltIn?: boolean | undefined; __file?: string | undefined; __name?: string | undefined; }; componentType?: string | undefined; layout: any; display?: boolean | undefined; disabled?: boolean | undefined; readonly?: boolean | undefined; required?: boolean | undefined; }[]; destroy(): void; /** * 清理 store 相关数据 */ private clear; } export { FormStore }; export * from './view-linkage/types'; export * from './detail-table/types';