import { useValidation } from '../../composables/validation.js'; import type { GenericProps } from '../../util/index.js'; export type VValidationSlots = { default: ReturnType; }; export declare const VValidation: { new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; } & { 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; name?: string | undefined; label?: string | undefined; validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; validationValue?: any; } & {}, () => import("vue").VNode[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ 'update:modelValue': (value: any) => true; }, "$children" | "modelValue" | "update:modelValue" | "v-slot:default" | "v-slots">, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; }, true, {}, import("vue").SlotsType; isDirty: import("vue").ComputedRef; isDisabled: import("vue").ComputedRef; isReadonly: import("vue").ComputedRef; isPristine: import("vue").ShallowRef; isValid: import("vue").ComputedRef; isValidating: import("vue").ShallowRef; reset: () => Promise; resetValidation: () => Promise; validate: (silent?: boolean) => Promise; validationClasses: import("vue").ComputedRef<{ [x: string]: boolean; }>; }) => import("vue").VNode[]; }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, { focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; } & { 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; name?: string | undefined; label?: string | undefined; validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; validationValue?: any; } & {}, () => import("vue").VNode[] | undefined, {}, {}, {}, { focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase<{ focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; } & { 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; name?: string | undefined; label?: string | undefined; validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; validationValue?: any; } & {}, () => import("vue").VNode[] | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ 'update:modelValue': (value: any) => true; }, "$children" | "modelValue" | "update:modelValue" | "v-slot:default" | "v-slots">, string, { focused: boolean; disabled: boolean | null; error: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; }, {}, string, import("vue").SlotsType; isDirty: import("vue").ComputedRef; isDisabled: import("vue").ComputedRef; isReadonly: import("vue").ComputedRef; isPristine: import("vue").ShallowRef; isValid: import("vue").ComputedRef; isValidating: import("vue").ShallowRef; reset: () => Promise; resetValidation: () => Promise; validate: (silent?: boolean) => Promise; validationClasses: import("vue").ComputedRef<{ [x: string]: boolean; }>; }) => import("vue").VNode[]; }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new (props: { modelValue?: T | null; 'onUpdate:modelValue'?: (value: T | null) => void; }, slots: VValidationSlots) => GenericProps) & import("../../util/index.js").FilterPropsOptions<{ focused: BooleanConstructor; 'onUpdate:focused': import("vue").PropType<(args_0: boolean) => void>; disabled: { type: import("vue").PropType; default: null; }; error: BooleanConstructor; errorMessages: { type: import("vue").PropType; default: () => never[]; }; maxErrors: { type: (NumberConstructor | StringConstructor)[]; default: number; }; name: StringConstructor; label: StringConstructor; readonly: { type: import("vue").PropType; default: null; }; rules: { type: import("vue").PropType | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; default: () => never[]; }; modelValue: null; validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; validationValue: null; }, import("vue").ExtractPropTypes<{ focused: BooleanConstructor; 'onUpdate:focused': import("vue").PropType<(args_0: boolean) => void>; disabled: { type: import("vue").PropType; default: null; }; error: BooleanConstructor; errorMessages: { type: import("vue").PropType; default: () => never[]; }; maxErrors: { type: (NumberConstructor | StringConstructor)[]; default: number; }; name: StringConstructor; label: StringConstructor; readonly: { type: import("vue").PropType; default: null; }; rules: { type: import("vue").PropType | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; default: () => never[]; }; modelValue: null; validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; validationValue: null; }>>; export type VValidation = InstanceType;