import type { ColumnType, ICommonColumn } from '../../common'; import type { FormItemRule } from 'element-plus'; import type { ExtractPropTypes } from 'vue'; type EventHandlers = { [K in `event${string}`]?: (...args: any[]) => any; }; /** * @description 公开的form column配置 */ export interface IFormCommonColumn extends EventHandlers { /** * 表单校验规则 */ rules?: FormItemRule[]; /** * @description 单个标签宽度 */ labelWidth?: string; /** * @description 表单排序 */ order?: number; /** * @description 栅栏宽度 */ span?: number; /** * @description 最大长度 */ maxlength?: number; /** * @description 是否显示字数统计,仅对type为textarea有效 */ showWordLimit?: boolean; /** * @description 是否显示密码切换按钮,仅对type为password有效 */ showPassword?: boolean; /** * @description 默认值 */ value?: any; /** * @description 占位文本 */ placeholder?: string; /** * @description 表单禁用 */ disabled?: boolean; /** * @description 可清除 */ clearable?: boolean; } export interface IFormColumn extends ICommonColumn, IFormCommonColumn { /** * @description 组件类型 */ type?: ColumnType; } /** * @description 公开的form配置 */ export interface IFormCommonOption { /** * @description 标签宽度 */ labelWidth?: string; } export interface IFormOption extends IFormCommonOption { /** * @description 表单列 */ column: IFormColumn[]; } export declare const formProps: { readonly size: { readonly type: import("vue").PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly model: { readonly type: import("vue").PropType>; readonly required: true; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly loading: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly permission: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly readonly: import("m-eleplus-crud/es/utils").EpPropFinalized; readonly option: { readonly type: import("vue").PropType; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; }; export type FormProps = ExtractPropTypes; export declare const formEmits: {}; export type FormEmits = typeof formEmits; export {};