import { FormItemProps, FormItemRule } from 'naive-ui'; import { BaseCon, BaseRightRenderK, IConRenderOp, IConRightRenderItemOp, IConRightRenderOp } from './BaseCon'; import { JSX } from 'vue/jsx-runtime'; export interface IRule { type: FormItemRule["type"] | ""; message: string; required?: boolean; trigger?: FormItemRule["trigger"]; level?: FormItemRule["level"]; validator?: string; pattern?: string; min?: number; max?: number; len?: number; enum?: string; whitespace?: boolean; fields?: Record; } /** * 表单控件基类 */ export declare class BaseForm extends BaseCon<"form"> { label: string; /** 将值收集到外层表单 model 对象的路径 */ path: string | undefined; /** * 表单的一些属性 * 见文档 https://www.naiveui.com/zh-CN/os-theme/components/form#FormItem-Props */ private labelAlign; private labelPlacement; private labelStyle; private labelWidth; private showFeedback; private showLabel; private showRequireMark; private requireMarkPlacement; private size; /** 校验规则列表 */ private rule; private selfProps; /** 表单默认值 */ formDefaultValue: any; constructor(); getFormDefaultValue(): any; /** * 添加一个表单验证规则 * @param op * @param editable */ addRule(op: IRule): void; getFormItemProps(): FormItemProps; /** * 设置是否显示label * @param value */ setShowLabel(value: FormItemProps["showLabel"]): void; /** * 获取表单值ref,如果存在formdata的话就改formdata里面的值,反之则改formDefaultValue * @param formData */ getFormValueRef(formData: any, v: V): { value: V; }; renderMiddleware(op: IConRenderOp): JSX.Element; getRightDefaultExpanded(): (BaseRightRenderK | "form")[]; getRight(op: IConRightRenderOp): IConRightRenderItemOp<"com" | "form">[]; getRightRule(): IConRightRenderItemOp["childs"]; }