import { DeepReadonly, InjectionKey, Ref, SlotsType } from 'vue'; import { FormSchema, InjectedFormData, InjectedFormWrapperData, Path, InferFormattedError, InferSchema } from './types'; export declare function defineFormWrapper(formProvideKey: InjectionKey>, wrapperProvideKey: InjectionKey>): import('vue').DefineComponent, { errors: Readonly> | undefined, DeepReadonly> | undefined>> | undefined; fields: Ref>>, Map>>>; fieldsErrors: Ref>, Map>>; formData: Ref<(undefined extends Type ? Partial> : Type) | undefined, (undefined extends Type ? Partial> : Type) | undefined> | undefined; invalid: import('vue').ComputedRef; readonly: import('vue').ComputedRef; clear: (() => void) | undefined; reset: (() => void) | undefined; submit: (() => Promise) | undefined; validate: ((formData?: (undefined extends Type ? Partial> : Type) | undefined, options?: { fields?: Set>> | undefined; superRefine?: ((arg: InferSchema, ctx: import('./types').RefinementCtx) => void | Promise) | undefined; } | undefined) => Promise) | undefined; validateWrapper: () => Promise; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid")[], "invalid" | "valid", import('vue').PublicProps, Readonly> & Readonly<{ onInvalid?: ((...args: any[]) => any) | undefined; onValid?: ((...args: any[]) => any) | undefined; }>, { readonly: boolean; tag: string; }, SlotsType<{ default: { errors?: DeepReadonly>; fieldsErrors: Map>; formData?: undefined extends Type ? Partial> : Type; formErrors?: DeepReadonly>; invalid: boolean; readonly: boolean; clear?: InjectedFormData["clear"]; reset?: InjectedFormData["reset"]; submit?: InjectedFormData["submit"]; validate?: InjectedFormData["validate"]; validateWrapper?: () => Promise; }; }>, {}, {}, "invalid" | "reset" | "readonly" | "clear" | "errors" | "validate" | "submit" | "tag" | "formData" | "fields" | "fieldsErrors" | "validateWrapper", import('vue').ComponentProvideOptions, true, {}, any>;