import { TimeSelectProps } from 'element-plus/es/components/time-select/src/time-select'; import { PlusFormItemProps, PlusRadioProps, PlusDatePickerProps, PlusInputTagProps } from 'plus-pro-components'; import { LooseRequired } from '@vue/shared'; import { FormItemRule, FormItemProp, FormItemContext, FormValidateCallback, FormValidationResult, RowProps, ColProps, CardProps, ElTooltipProps, FormItemProps, ProgressFn, CascaderNode, InputAutoSize, AutocompleteProps, CheckboxGroupProps, ColorPickerProps, DatePickerProps, InputProps, InputNumberProps, RadioGroupProps, RateProps, ISelectProps, SliderProps, SwitchProps, TimePickerDefaultProps, TextProps, ImageProps, LinkProps, TagProps, ProgressProps } from 'element-plus'; import { Arrayable, EpPropFinalized, EpPropMergeType } from 'element-plus/es/utils'; import { DefineComponent, Ref, CreateComponentPublicInstance, ExtractPropTypes, PropType, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps, CSSProperties, Component } from 'vue'; import { PlusFormSelfProps, PlusFormGroupRow } from './type'; import { PlusColumn, FieldValues, RecordType, Mutable, PropsItemType, OmitTypes, CascaderProps, OptionsType, RenderTypes, TableValueType, FormItemValueType, FieldValueType, OptionsRow } from 'plus-pro-components/es/types'; declare const _default: __VLS_WithTemplateSlots< DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { modelValue: () => {}; defaultValues: () => {}; labelWidth: string; labelPosition: string; rowProps: () => {}; colProps: () => {}; labelSuffix: string; hasErrorTip: boolean; hasFooter: boolean; hasReset: boolean; hasLabel: boolean; submitLoading: boolean; submitText: string; resetText: string; footerAlign: string; rules: () => {}; columns: () => never[]; group: boolean; cardProps: () => {}; prevent: boolean; collapseDuration: undefined; collapseTransition: undefined; clearable: boolean; }>, { formInstance: Ref< CreateComponentPublicInstance>>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly labelPosition: EpPropFinalized; readonly requireAsteriskPosition: EpPropFinalized; readonly labelWidth: EpPropFinalized; readonly labelSuffix: EpPropFinalized; readonly inline: BooleanConstructor; readonly inlineMessage: BooleanConstructor; readonly statusIcon: BooleanConstructor; readonly showMessage: EpPropFinalized; readonly validateOnRuleChange: EpPropFinalized; readonly hideRequiredAsterisk: BooleanConstructor; readonly scrollToError: BooleanConstructor; readonly scrollIntoViewOptions: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly size: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly disabled: BooleanConstructor; }>> & { onValidate?: ((prop: FormItemProp, isValid: boolean, message: string) => any) | undefined; }, { COMPONENT_NAME: string; props: Readonly< LooseRequired>>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly labelPosition: EpPropFinalized; readonly requireAsteriskPosition: EpPropFinalized; readonly labelWidth: EpPropFinalized; readonly labelSuffix: EpPropFinalized; readonly inline: BooleanConstructor; readonly inlineMessage: BooleanConstructor; readonly statusIcon: BooleanConstructor; readonly showMessage: EpPropFinalized; readonly validateOnRuleChange: EpPropFinalized; readonly hideRequiredAsterisk: BooleanConstructor; readonly scrollToError: BooleanConstructor; readonly scrollIntoViewOptions: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly size: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly disabled: BooleanConstructor; }>> & { onValidate?: ((prop: FormItemProp, isValid: boolean, message: string) => any) | undefined; }>>; emit: (event: "validate", prop: FormItemProp, isValid: boolean, message: string) => void; fields: FormItemContext[]; formSize: ComputedRef<"" | "default" | "small" | "large">; ns: { namespace: ComputedRef; b: (blockSuffix?: string | undefined) => string; e: (element?: string | undefined) => string; m: (modifier?: string | undefined) => string; be: (blockSuffix?: string | undefined, element?: string | undefined) => string; em: (element?: string | undefined, modifier?: string | undefined) => string; bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string; bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; formClasses: ComputedRef<(string | { [x: string]: boolean | EpPropMergeType; })[]>; getField: (prop: string) => FormItemContext | undefined; addField: (field: FormItemContext) => void; removeField: (field: FormItemContext) => void; resetFields: (props?: Arrayable | undefined) => void; clearValidate: (props?: Arrayable | undefined) => void; isValidatable: ComputedRef; obtainValidateFields: (props: Arrayable) => FormItemContext[]; validate: (callback?: FormValidateCallback | undefined) => FormValidationResult; doValidateField: (props?: Arrayable | undefined) => Promise; validateField: (props?: Arrayable | undefined, callback?: FormValidateCallback | undefined) => FormValidationResult; scrollToField: (prop: FormItemProp) => void; }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, { validate: (prop: FormItemProp, isValid: boolean, message: string) => boolean; }, VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{ readonly model: ObjectConstructor; readonly rules: { readonly type: PropType>>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly labelPosition: EpPropFinalized; readonly requireAsteriskPosition: EpPropFinalized; readonly labelWidth: EpPropFinalized; readonly labelSuffix: EpPropFinalized; readonly inline: BooleanConstructor; readonly inlineMessage: BooleanConstructor; readonly statusIcon: BooleanConstructor; readonly showMessage: EpPropFinalized; readonly validateOnRuleChange: EpPropFinalized; readonly hideRequiredAsterisk: BooleanConstructor; readonly scrollToError: BooleanConstructor; readonly scrollIntoViewOptions: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly size: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly disabled: BooleanConstructor; }>> & { onValidate?: ((prop: FormItemProp, isValid: boolean, message: string) => any) | undefined; }, { readonly disabled: boolean; readonly labelPosition: EpPropMergeType; readonly requireAsteriskPosition: EpPropMergeType; readonly labelWidth: EpPropMergeType; readonly labelSuffix: string; readonly showMessage: EpPropMergeType; readonly validateOnRuleChange: EpPropMergeType; readonly inline: boolean; readonly inlineMessage: boolean; readonly statusIcon: boolean; readonly hideRequiredAsterisk: boolean; readonly scrollToError: boolean; }, true, {}, {}, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly< ExtractPropTypes<{ readonly model: ObjectConstructor; readonly rules: { readonly type: PropType>>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly labelPosition: EpPropFinalized; readonly requireAsteriskPosition: EpPropFinalized; readonly labelWidth: EpPropFinalized; readonly labelSuffix: EpPropFinalized; readonly inline: BooleanConstructor; readonly inlineMessage: BooleanConstructor; readonly statusIcon: BooleanConstructor; readonly showMessage: EpPropFinalized; readonly validateOnRuleChange: EpPropFinalized; readonly hideRequiredAsterisk: BooleanConstructor; readonly scrollToError: BooleanConstructor; readonly scrollIntoViewOptions: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly size: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly disabled: BooleanConstructor; }>> & { onValidate?: ((prop: FormItemProp, isValid: boolean, message: string) => any) | undefined; }, { COMPONENT_NAME: string; props: Readonly< LooseRequired>>>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly labelPosition: EpPropFinalized; readonly requireAsteriskPosition: EpPropFinalized; readonly labelWidth: EpPropFinalized; readonly labelSuffix: EpPropFinalized; readonly inline: BooleanConstructor; readonly inlineMessage: BooleanConstructor; readonly statusIcon: BooleanConstructor; readonly showMessage: EpPropFinalized; readonly validateOnRuleChange: EpPropFinalized; readonly hideRequiredAsterisk: BooleanConstructor; readonly scrollToError: BooleanConstructor; readonly scrollIntoViewOptions: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly size: { readonly type: PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; readonly disabled: BooleanConstructor; }>> & { onValidate?: ((prop: FormItemProp, isValid: boolean, message: string) => any) | undefined; }>>; emit: (event: "validate", prop: FormItemProp, isValid: boolean, message: string) => void; fields: FormItemContext[]; formSize: ComputedRef<"" | "default" | "small" | "large">; ns: { namespace: ComputedRef; b: (blockSuffix?: string | undefined) => string; e: (element?: string | undefined) => string; m: (modifier?: string | undefined) => string; be: (blockSuffix?: string | undefined, element?: string | undefined) => string; em: (element?: string | undefined, modifier?: string | undefined) => string; bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string; bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; formClasses: ComputedRef<(string | { [x: string]: boolean | EpPropMergeType; })[]>; getField: (prop: string) => FormItemContext | undefined; addField: (field: FormItemContext) => void; removeField: (field: FormItemContext) => void; resetFields: (props?: Arrayable | undefined) => void; clearValidate: (props?: Arrayable | undefined) => void; isValidatable: ComputedRef; obtainValidateFields: (props: Arrayable) => FormItemContext[]; validate: (callback?: FormValidateCallback | undefined) => FormValidationResult; doValidateField: (props?: Arrayable | undefined) => Promise; validateField: (props?: Arrayable | undefined, callback?: FormValidateCallback | undefined) => FormValidationResult; scrollToField: (prop: FormItemProp) => void; }, {}, {}, {}, { readonly disabled: boolean; readonly labelPosition: EpPropMergeType; readonly requireAsteriskPosition: EpPropMergeType; readonly labelWidth: EpPropMergeType; readonly labelSuffix: string; readonly showMessage: EpPropMergeType; readonly validateOnRuleChange: EpPropMergeType; readonly inline: boolean; readonly inlineMessage: boolean; readonly statusIcon: boolean; readonly hideRequiredAsterisk: boolean; readonly scrollToError: boolean; }> | null>; handleSubmit: () => Promise; handleReset: () => void; }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, { "update:modelValue": (values: FieldValues) => void; submit: (values: FieldValues) => void; change: (values: FieldValues, column: PlusColumn) => void; reset: (values: FieldValues) => void; submitError: (errors: unknown) => void; validate: (...args: any[]) => void; }, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { modelValue: () => {}; defaultValues: () => {}; labelWidth: string; labelPosition: string; rowProps: () => {}; colProps: () => {}; labelSuffix: string; hasErrorTip: boolean; hasFooter: boolean; hasReset: boolean; hasLabel: boolean; submitLoading: boolean; submitText: string; resetText: string; footerAlign: string; rules: () => {}; columns: () => never[]; group: boolean; cardProps: () => {}; prevent: boolean; collapseDuration: undefined; collapseTransition: undefined; clearable: boolean; }>>> & { onChange?: ((values: FieldValues, column: PlusColumn) => any) | undefined; "onUpdate:modelValue"?: ((values: FieldValues) => any) | undefined; onReset?: ((values: FieldValues) => any) | undefined; onSubmit?: ((values: FieldValues) => any) | undefined; onValidate?: ((...args: any[]) => any) | undefined; onSubmitError?: ((errors: unknown) => any) | undefined; }, { columns: PlusColumn[]; group: false | PlusFormGroupRow[]; modelValue: FieldValues; rules: Partial>>; labelPosition: "top" | "right" | "left"; labelWidth: string | number; labelSuffix: string; hasLabel: boolean; defaultValues: FieldValues; rowProps: Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType>; colProps: Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType>; hasErrorTip: boolean; hasFooter: boolean; hasReset: boolean; submitText: string; resetText: string; submitLoading: boolean; footerAlign: "right" | "left" | "center"; cardProps: Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType>; prevent: boolean; collapseDuration: number; collapseTransition: boolean; clearable: boolean; }, {}>, Partial; name?: string | undefined; icon?: Component | undefined; cardProps?: Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType> | undefined; hideInGroup?: boolean | ComputedRef | undefined; columns?: PlusColumn[] | undefined; }) => any>> & Partial, (_: { column: Readonly, "label" | "index" | "tooltip" | "formItemProps" | "fieldProps" | "options" | "fieldSlots" | "fieldChildrenSlot" | "modelValue" | "hasLabel" | "clearable" | "valueType" | "renderField" | "renderLabel" | "renderErrorMessage" | "optionsMap">> & { readonly label: string | ComputedRef; readonly modelValue: string | number | boolean | RecordType | Date | string[] | boolean[] | number[] | Date[] | [Date, Date] | [number, number] | [string, string] | string[][] | number[][] | null; readonly hasLabel: boolean | Ref | ComputedRef; readonly tooltip: string | Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType> | ComputedRef | ComputedRef & { style?: CSSProperties | undefined; class?: any; } & RecordType>>; readonly formItemProps: PropsItemType< Mutable & { [key: string]: any; style?: CSSProperties | undefined; }>; readonly fieldProps: PropsItemType | EpPropMergeType | undefined; step: string | number; format: string | ProgressFn | undefined; filterMethod: Function | ((node: CascaderNode, keyword: string) => boolean) | undefined; id: string | [string, string]; effect: string; height: string | number; autosize: InputAutoSize; } & Mutable & Omit< CascaderProps, OmitTypes> & Omit< CheckboxGroupProps, OmitTypes> & Omit< ColorPickerProps, OmitTypes> & Omit< DatePickerProps, OmitTypes> & Omit< InputProps, OmitTypes> & Omit< InputNumberProps, OmitTypes> & Omit< RadioGroupProps, OmitTypes> & Omit< RateProps, OmitTypes> & Omit< ISelectProps, OmitTypes> & Omit< SliderProps, OmitTypes> & Omit< SwitchProps, OmitTypes> & Omit< TimePickerDefaultProps, OmitTypes> & Omit< TimeSelectProps, OmitTypes> & Omit< PlusRadioProps, OmitTypes> & Omit< PlusDatePickerProps, OmitTypes> & Omit< PlusInputTagProps, OmitTypes> & Omit< TextProps, OmitTypes> & Omit< ImageProps, OmitTypes> & Omit< LinkProps, OmitTypes> & Omit< TagProps, OmitTypes> & Omit< ProgressProps, OmitTypes>>>>; readonly options: OptionsType; readonly fieldSlots: { [slotName: string]: (data?: any) => RenderTypes; }; readonly valueType: TableValueType | FormItemValueType; readonly renderField: ((value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes) | undefined; readonly renderLabel: ((label: string, props: PlusColumn) => RenderTypes) | undefined; readonly fieldChildrenSlot: ((option?: OptionsRow | undefined) => RenderTypes) | undefined; readonly renderErrorMessage: ((props: PlusColumn & { value?: FieldValueType; error?: string | undefined; label?: string | undefined; }) => RenderTypes) | undefined; readonly optionsMap: { label?: string | undefined; value?: string | undefined; } | undefined; readonly clearable: boolean; readonly index: number; } & { readonly clearable: boolean; }; label: string; fieldProps: RecordType; formItemProps: RecordType; options: OptionsRow[]; fieldInstance?: any; valueIsReady?: Ref | undefined; prop: string; modelValue: string | number | boolean | RecordType | Date | string[] | boolean[] | number[] | Date[] | [Date, Date] | [number, number] | [string, string] | string[][] | number[][] | null; hasLabel: boolean | Ref | ComputedRef; tooltip: string | Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType> | ComputedRef | ComputedRef & { style?: CSSProperties | undefined; class?: any; } & RecordType>>; fieldSlots: { [slotName: string]: (data?: any) => RenderTypes; }; valueType: TableValueType | FormItemValueType; renderField: ((value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes) | undefined; renderLabel: ((label: string, props: PlusColumn) => RenderTypes) | undefined; fieldChildrenSlot: ((option?: OptionsRow | undefined) => RenderTypes) | undefined; renderErrorMessage: ((props: PlusColumn & { value?: FieldValueType; error?: string | undefined; label?: string | undefined; }) => RenderTypes) | undefined; optionsMap: { label?: string | undefined; value?: string | undefined; } | undefined; clearable: boolean; index: number; }) => any>> & Partial, (_: { column: Readonly, "label" | "index" | "tooltip" | "formItemProps" | "fieldProps" | "options" | "fieldSlots" | "fieldChildrenSlot" | "modelValue" | "hasLabel" | "clearable" | "valueType" | "renderField" | "renderLabel" | "renderErrorMessage" | "optionsMap">> & { readonly label: string | ComputedRef; readonly modelValue: string | number | boolean | RecordType | Date | string[] | boolean[] | number[] | Date[] | [Date, Date] | [number, number] | [string, string] | string[][] | number[][] | null; readonly hasLabel: boolean | Ref | ComputedRef; readonly tooltip: string | Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType> | ComputedRef | ComputedRef & { style?: CSSProperties | undefined; class?: any; } & RecordType>>; readonly formItemProps: PropsItemType< Mutable & { [key: string]: any; style?: CSSProperties | undefined; }>; readonly fieldProps: PropsItemType | EpPropMergeType | undefined; step: string | number; format: string | ProgressFn | undefined; filterMethod: Function | ((node: CascaderNode, keyword: string) => boolean) | undefined; id: string | [string, string]; effect: string; height: string | number; autosize: InputAutoSize; } & Mutable & Omit< CascaderProps, OmitTypes> & Omit< CheckboxGroupProps, OmitTypes> & Omit< ColorPickerProps, OmitTypes> & Omit< DatePickerProps, OmitTypes> & Omit< InputProps, OmitTypes> & Omit< InputNumberProps, OmitTypes> & Omit< RadioGroupProps, OmitTypes> & Omit< RateProps, OmitTypes> & Omit< ISelectProps, OmitTypes> & Omit< SliderProps, OmitTypes> & Omit< SwitchProps, OmitTypes> & Omit< TimePickerDefaultProps, OmitTypes> & Omit< TimeSelectProps, OmitTypes> & Omit< PlusRadioProps, OmitTypes> & Omit< PlusDatePickerProps, OmitTypes> & Omit< PlusInputTagProps, OmitTypes> & Omit< TextProps, OmitTypes> & Omit< ImageProps, OmitTypes> & Omit< LinkProps, OmitTypes> & Omit< TagProps, OmitTypes> & Omit< ProgressProps, OmitTypes>>>>; readonly options: OptionsType; readonly fieldSlots: { [slotName: string]: (data?: any) => RenderTypes; }; readonly valueType: TableValueType | FormItemValueType; readonly renderField: ((value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes) | undefined; readonly renderLabel: ((label: string, props: PlusColumn) => RenderTypes) | undefined; readonly fieldChildrenSlot: ((option?: OptionsRow | undefined) => RenderTypes) | undefined; readonly renderErrorMessage: ((props: PlusColumn & { value?: FieldValueType; error?: string | undefined; label?: string | undefined; }) => RenderTypes) | undefined; readonly optionsMap: { label?: string | undefined; value?: string | undefined; } | undefined; readonly clearable: boolean; readonly index: number; } & { readonly clearable: boolean; }; label: string; fieldProps: RecordType; formItemProps: RecordType; options: OptionsRow[]; fieldInstance?: any; valueIsReady?: Ref | undefined; prop: string; modelValue: string | number | boolean | RecordType | Date | string[] | boolean[] | number[] | Date[] | [Date, Date] | [number, number] | [string, string] | string[][] | number[][] | null; hasLabel: boolean | Ref | ComputedRef; tooltip: string | Partial< Mutable & { style?: CSSProperties | undefined; class?: any; } & RecordType> | ComputedRef | ComputedRef & { style?: CSSProperties | undefined; class?: any; } & RecordType>>; fieldSlots: { [slotName: string]: (data?: any) => RenderTypes; }; valueType: TableValueType | FormItemValueType; renderField: ((value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes) | undefined; renderLabel: ((label: string, props: PlusColumn) => RenderTypes) | undefined; fieldChildrenSlot: ((option?: OptionsRow | undefined) => RenderTypes) | undefined; renderErrorMessage: ((props: PlusColumn & { value?: FieldValueType; error?: string | undefined; label?: string | undefined; }) => RenderTypes) | undefined; optionsMap: { label?: string | undefined; value?: string | undefined; } | undefined; clearable: boolean; index: number; }) => any>> & { default?(_: {}): any; "group-header"?(_: { title: string; columns: PlusColumn[] | undefined; icon: Component | undefined; index: number; }): any; footer?(_: { handleReset: () => void; handleSubmit: () => Promise; }): any; }>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: PropType<__VLS_NonUndefinedable>; } : { type: PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };