import { IconValue } from "../../composables/icons.js"; import type { ComputedRef, PropType, Ref } from 'vue'; import type { VMessageSlot } from "../VMessages/VMessages.js"; import type { GenericProps } from "../../util/index.js"; export interface VInputSlot { id: ComputedRef; messagesId: ComputedRef; isDirty: ComputedRef; isDisabled: ComputedRef; isReadonly: ComputedRef; isPristine: Ref; isValid: ComputedRef; isValidating: Ref; hasDetails: Ref; reset: () => void; resetValidation: () => void; validate: () => void; } export declare const makeVInputProps: (defaults?: Defaults | undefined) => { focused: unknown extends Defaults["focused"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["focused"] ? boolean : boolean | Defaults["focused"]; }; 'onUpdate:focused': unknown extends Defaults["onUpdate:focused"] ? PropType<(args_0: boolean) => void> : { type: PropType void : ((args_0: boolean) => void) | Defaults["onUpdate:focused"]>; default: unknown extends Defaults["onUpdate:focused"] ? (args_0: boolean) => void : ((args_0: boolean) => void) | Defaults["onUpdate:focused"]; }; disabled: unknown extends Defaults["disabled"] ? { type: PropType; default: null; } : Omit<{ type: PropType; default: null; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["disabled"] ? boolean | null : NonNullable | Defaults["disabled"]; }; error: unknown extends Defaults["error"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["error"] ? boolean : boolean | Defaults["error"]; }; errorMessages: unknown extends Defaults["errorMessages"] ? { type: PropType; default: () => never[]; } : Omit<{ type: PropType; default: () => never[]; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["errorMessages"] ? string | readonly string[] | null : NonNullable | Defaults["errorMessages"]; }; maxErrors: unknown extends Defaults["maxErrors"] ? { type: (StringConstructor | NumberConstructor)[]; default: number; } : Omit<{ type: (StringConstructor | NumberConstructor)[]; default: number; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["maxErrors"] ? string | number : NonNullable | Defaults["maxErrors"]; }; name: unknown extends Defaults["name"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["name"] ? string : string | Defaults["name"]; }; label: unknown extends Defaults["label"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["label"] ? string : string | Defaults["label"]; }; readonly: unknown extends Defaults["readonly"] ? { type: PropType; default: null; } : Omit<{ type: PropType; default: null; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["readonly"] ? boolean | null : NonNullable | Defaults["readonly"]; }; rules: unknown extends Defaults["rules"] ? { type: PropType; default: () => never[]; } : Omit<{ type: PropType; default: () => never[]; }, "type" | "default"> & { type: PropType | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[] : readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[] | Defaults["rules"]>; default: unknown extends Defaults["rules"] ? readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[] : readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[] | Defaults["rules"]; }; modelValue: unknown extends Defaults["modelValue"] ? null : { type: PropType; default: unknown extends Defaults["modelValue"] ? any : any; }; validateOn: unknown extends Defaults["validateOn"] ? PropType<("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined> : { type: PropType; default: unknown extends Defaults["validateOn"] ? ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined : NonNullable<("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined> | Defaults["validateOn"]; }; validationValue: unknown extends Defaults["validationValue"] ? null : { type: PropType; default: unknown extends Defaults["validationValue"] ? any : any; }; theme: unknown extends Defaults["theme"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["theme"] ? string : string | Defaults["theme"]; }; width: unknown extends Defaults["width"] ? (StringConstructor | NumberConstructor)[] : { type: PropType; default: unknown extends Defaults["width"] ? string | number : NonNullable | Defaults["width"]; }; maxWidth: unknown extends Defaults["maxWidth"] ? (StringConstructor | NumberConstructor)[] : { type: PropType; default: unknown extends Defaults["maxWidth"] ? string | number : NonNullable | Defaults["maxWidth"]; }; minWidth: unknown extends Defaults["minWidth"] ? (StringConstructor | NumberConstructor)[] : { type: PropType; default: unknown extends Defaults["minWidth"] ? string | number : NonNullable | Defaults["minWidth"]; }; density: unknown extends Defaults["density"] ? { type: PropType; default: string; validator: (v: any) => boolean; } : Omit<{ type: PropType; default: string; validator: (v: any) => boolean; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["density"] ? import("../../composables/density.js").Density : NonNullable | Defaults["density"]; }; class: unknown extends Defaults["class"] ? PropType : { type: PropType; default: unknown extends Defaults["class"] ? any : any; }; style: unknown extends Defaults["style"] ? { type: PropType; default: null; } : Omit<{ type: PropType; default: null; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["style"] ? import("vue").StyleValue : NonNullable | Defaults["style"]; }; id: unknown extends Defaults["id"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["id"] ? string : string | Defaults["id"]; }; appendIcon: unknown extends Defaults["appendIcon"] ? PropType : { type: PropType; default: unknown extends Defaults["appendIcon"] ? IconValue : NonNullable | Defaults["appendIcon"]; }; baseColor: unknown extends Defaults["baseColor"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["baseColor"] ? string : string | Defaults["baseColor"]; }; centerAffix: unknown extends Defaults["centerAffix"] ? { type: BooleanConstructor; default: boolean; } : Omit<{ type: BooleanConstructor; default: boolean; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["centerAffix"] ? boolean : boolean | Defaults["centerAffix"]; }; color: unknown extends Defaults["color"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["color"] ? string : string | Defaults["color"]; }; glow: unknown extends Defaults["glow"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["glow"] ? boolean : boolean | Defaults["glow"]; }; iconColor: unknown extends Defaults["iconColor"] ? (StringConstructor | BooleanConstructor)[] : { type: PropType; default: unknown extends Defaults["iconColor"] ? string | boolean : NonNullable | Defaults["iconColor"]; }; prependIcon: unknown extends Defaults["prependIcon"] ? PropType : { type: PropType; default: unknown extends Defaults["prependIcon"] ? IconValue : NonNullable | Defaults["prependIcon"]; }; hideDetails: unknown extends Defaults["hideDetails"] ? PropType : { type: PropType; default: unknown extends Defaults["hideDetails"] ? boolean | "auto" : Defaults["hideDetails"] | NonNullable; }; hideSpinButtons: unknown extends Defaults["hideSpinButtons"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["hideSpinButtons"] ? boolean : boolean | Defaults["hideSpinButtons"]; }; hint: unknown extends Defaults["hint"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["hint"] ? string : string | Defaults["hint"]; }; persistentHint: unknown extends Defaults["persistentHint"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["persistentHint"] ? boolean : boolean | Defaults["persistentHint"]; }; messages: unknown extends Defaults["messages"] ? { type: PropType; default: () => never[]; } : Omit<{ type: PropType; default: () => never[]; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["messages"] ? string | readonly string[] : NonNullable | Defaults["messages"]; }; direction: unknown extends Defaults["direction"] ? { type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; } : Omit<{ type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; }, "type" | "default"> & { type: PropType; default: unknown extends Defaults["direction"] ? "horizontal" | "vertical" : NonNullable<"horizontal" | "vertical"> | Defaults["direction"]; }; 'onClick:prepend': unknown extends Defaults["onClick:prepend"] ? PropType<(args_0: MouseEvent) => void> : { type: PropType void : ((args_0: MouseEvent) => void) | Defaults["onClick:prepend"]>; default: unknown extends Defaults["onClick:prepend"] ? (args_0: MouseEvent) => void : ((args_0: MouseEvent) => void) | Defaults["onClick:prepend"]; }; 'onClick:append': unknown extends Defaults["onClick:append"] ? PropType<(args_0: MouseEvent) => void> : { type: PropType void : ((args_0: MouseEvent) => void) | Defaults["onClick:append"]>; default: unknown extends Defaults["onClick:append"] ? (args_0: MouseEvent) => void : ((args_0: MouseEvent) => void) | Defaults["onClick:append"]; }; }; export type VInputSlots = { default: VInputSlot; prepend: VInputSlot; append: VInputSlot; details: VInputSlot; message: VMessageSlot; }; export declare const VInput: { new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; } & { name?: string | undefined; id?: string | undefined; width?: string | number | undefined; color?: string | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; label?: string | undefined; class?: any; theme?: string | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined; validationValue?: any; baseColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; iconColor?: string | boolean | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; } & {}, { reset: () => Promise; resetValidation: () => Promise; validate: (silent?: boolean) => Promise; isValid: ComputedRef; errorMessages: ComputedRef; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ 'update:modelValue': (value: any) => true; }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue" | "v-slot:prepend" | "v-slot:append" | "v-slot:message" | "v-slot:details">, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; }, true, {}, import("vue").SlotsType import("vue").VNode[]; prepend: (arg: VInputSlot) => import("vue").VNode[]; append: (arg: VInputSlot) => import("vue").VNode[]; details: (arg: VInputSlot) => import("vue").VNode[]; message: (arg: VMessageSlot) => import("vue").VNode[]; }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, { error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; } & { name?: string | undefined; id?: string | undefined; width?: string | number | undefined; color?: string | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; label?: string | undefined; class?: any; theme?: string | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined; validationValue?: any; baseColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; iconColor?: string | boolean | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; } & {}, { reset: () => Promise; resetValidation: () => Promise; validate: (silent?: boolean) => Promise; isValid: ComputedRef; errorMessages: ComputedRef; }, {}, {}, {}, { error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase<{ error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; } & { name?: string | undefined; id?: string | undefined; width?: string | number | undefined; color?: string | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; label?: string | undefined; class?: any; theme?: string | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined; validationValue?: any; baseColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; iconColor?: string | boolean | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; } & {}, { reset: () => Promise; resetValidation: () => Promise; validate: (silent?: boolean) => Promise; isValid: ComputedRef; errorMessages: ComputedRef; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ 'update:modelValue': (value: any) => true; }, "$children" | "v-slots" | "v-slot:default" | "modelValue" | "update:modelValue" | "v-slot:prepend" | "v-slot:append" | "v-slot:message" | "v-slot:details">, string, { error: boolean; direction: "horizontal" | "vertical"; style: import("vue").StyleValue; disabled: boolean | null; readonly: boolean | null; messages: string | readonly string[]; rules: readonly (string | boolean | PromiseLike | ((value: any) => import("../../composables/validation.js").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; density: import("../../composables/density.js").Density; centerAffix: boolean; glow: boolean; hideSpinButtons: boolean; persistentHint: boolean; }, {}, string, import("vue").SlotsType import("vue").VNode[]; prepend: (arg: VInputSlot) => import("vue").VNode[]; append: (arg: VInputSlot) => import("vue").VNode[]; details: (arg: VInputSlot) => import("vue").VNode[]; message: (arg: VMessageSlot) => 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: VInputSlots) => GenericProps) & import("../../util/index.js").FilterPropsOptions<{ focused: BooleanConstructor; 'onUpdate:focused': PropType<(args_0: boolean) => void>; disabled: { type: PropType; default: null; }; error: BooleanConstructor; errorMessages: { type: PropType; default: () => never[]; }; maxErrors: { type: (StringConstructor | NumberConstructor)[]; default: number; }; name: StringConstructor; label: StringConstructor; readonly: { type: PropType; default: null; }; rules: { type: PropType; default: () => never[]; }; modelValue: null; validateOn: PropType; validationValue: null; theme: StringConstructor; width: (StringConstructor | NumberConstructor)[]; maxWidth: (StringConstructor | NumberConstructor)[]; minWidth: (StringConstructor | NumberConstructor)[]; density: { type: PropType; default: string; validator: (v: any) => boolean; }; class: PropType; style: { type: PropType; default: null; }; id: StringConstructor; appendIcon: PropType; baseColor: StringConstructor; centerAffix: { type: BooleanConstructor; default: boolean; }; color: StringConstructor; glow: BooleanConstructor; iconColor: (StringConstructor | BooleanConstructor)[]; prependIcon: PropType; hideDetails: PropType; hideSpinButtons: BooleanConstructor; hint: StringConstructor; persistentHint: BooleanConstructor; messages: { type: PropType; default: () => never[]; }; direction: { type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; }; 'onClick:prepend': PropType<(args_0: MouseEvent) => void>; 'onClick:append': PropType<(args_0: MouseEvent) => void>; }, import("vue").ExtractPropTypes<{ focused: BooleanConstructor; 'onUpdate:focused': PropType<(args_0: boolean) => void>; disabled: { type: PropType; default: null; }; error: BooleanConstructor; errorMessages: { type: PropType; default: () => never[]; }; maxErrors: { type: (StringConstructor | NumberConstructor)[]; default: number; }; name: StringConstructor; label: StringConstructor; readonly: { type: PropType; default: null; }; rules: { type: PropType; default: () => never[]; }; modelValue: null; validateOn: PropType; validationValue: null; theme: StringConstructor; width: (StringConstructor | NumberConstructor)[]; maxWidth: (StringConstructor | NumberConstructor)[]; minWidth: (StringConstructor | NumberConstructor)[]; density: { type: PropType; default: string; validator: (v: any) => boolean; }; class: PropType; style: { type: PropType; default: null; }; id: StringConstructor; appendIcon: PropType; baseColor: StringConstructor; centerAffix: { type: BooleanConstructor; default: boolean; }; color: StringConstructor; glow: BooleanConstructor; iconColor: (StringConstructor | BooleanConstructor)[]; prependIcon: PropType; hideDetails: PropType; hideSpinButtons: BooleanConstructor; hint: StringConstructor; persistentHint: BooleanConstructor; messages: { type: PropType; default: () => never[]; }; direction: { type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; }; 'onClick:prepend': PropType<(args_0: MouseEvent) => void>; 'onClick:append': PropType<(args_0: MouseEvent) => void>; }>>; export type VInput = InstanceType;