import { ExtractPropTypes, PropType } from 'vue'; import { BooleanType, DirectionType, ShapeType, SizeType, ThemeType } from '../const/types'; import { ColProps, FormRule } from './types'; export interface FormSubmitEvent { valid: boolean; } declare const formProps: { layout: { type: PropType; default: string; }; model: PropType>; name: StringConstructor; labelCol: PropType; wrapperCol: PropType; rules: { type: PropType>; }; size: { type: PropType; }; theme: PropType; shape: PropType; disabled: BooleanType; onSubmit: { type: PropType<(e: FormSubmitEvent) => void>; }; onReset: { type: PropType<() => void>; }; }; export interface FormExpose { validate: (callback?: (result: { valid: boolean; }) => void) => void; reset: () => void; test: (key: string) => void; submit: (e: FormSubmitEvent) => void; } export type FormProps = ExtractPropTypes; declare const Form: import('vue').DefineComponent; default: string; }; model: PropType>; name: StringConstructor; labelCol: PropType; wrapperCol: PropType; rules: { type: PropType>; }; size: { type: PropType; }; theme: PropType; shape: PropType; disabled: BooleanType; onSubmit: { type: PropType<(e: FormSubmitEvent) => void>; }; onReset: { type: PropType<() => void>; }; }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly; default: string; }; model: PropType>; name: StringConstructor; labelCol: PropType; wrapperCol: PropType; rules: { type: PropType>; }; size: { type: PropType; }; theme: PropType; shape: PropType; disabled: BooleanType; onSubmit: { type: PropType<(e: FormSubmitEvent) => void>; }; onReset: { type: PropType<() => void>; }; }>> & Readonly<{}>, { layout: DirectionType; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>; export default Form;