UNPKG

vuetify

Version:

Vue Material Component Framework

1,031 lines (1,019 loc) 43.2 kB
import * as vue from 'vue'; import { ComponentPropsOptions, ExtractPropTypes, JSXComponent, PropType, ComputedRef, Ref } from 'vue'; interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> { filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): Partial<Pick<T, U>>; } interface LoaderSlotProps { color: string | undefined; isActive: boolean; } type VMessageSlot = { message: string; }; type VCounterSlot = { counter: string; max: string | number | undefined; value: string | number | undefined; }; type Density = null | 'default' | 'comfortable' | 'compact'; type ValidationResult = string | boolean; type ValidationRule = ValidationResult | PromiseLike<ValidationResult> | ((value: any) => ValidationResult) | ((value: any) => PromiseLike<ValidationResult>); type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent; declare const IconValue: PropType<IconValue>; interface VInputSlot { id: ComputedRef<string>; messagesId: ComputedRef<string>; isDirty: ComputedRef<boolean>; isDisabled: ComputedRef<boolean>; isReadonly: ComputedRef<boolean>; isPristine: Ref<boolean>; isValid: ComputedRef<boolean | null>; isValidating: Ref<boolean>; reset: () => void; resetValidation: () => void; validate: () => void; } interface DefaultInputSlot { isActive: Ref<boolean>; isFocused: Ref<boolean>; controlRef: Ref<HTMLElement | undefined>; focus: () => void; blur: () => void; } type ControlSlot = { click: (e: MouseEvent) => void; }; type ControlVariant = 'default' | 'stacked' | 'split'; declare const VNumberInput: { new (...args: any[]): vue.CreateComponentPublicInstance<{ reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; } & { class?: any; id?: string | undefined; label?: string | undefined; width?: string | number | undefined; theme?: string | undefined; color?: string | undefined; name?: string | undefined; prefix?: string | undefined; loading?: string | boolean | undefined; placeholder?: string | undefined; counter?: string | number | boolean | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; modelValue?: any; validateOn?: ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined; validationValue?: any; rounded?: string | number | boolean | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; role?: string | undefined; baseColor?: string | undefined; bgColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; 'onClick:clear'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:appendInner'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prependInner'?: ((args_0: MouseEvent) => void) | undefined; centerAffix?: boolean | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; suffix?: string | undefined; counterValue?: number | ((value: any) => number) | undefined; modelModifiers?: Record<string, boolean> | undefined; } & { $children?: {} | vue.VNodeChild | { clear?: ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; }; 'v-slots'?: { clear?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } | undefined; } & { "v-slot:clear"?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:label"?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:counter"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:loader"?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:increment"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; "v-slot:decrement"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } & { "onUpdate:modelValue"?: ((val: number) => any) | undefined; }, void, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { 'update:modelValue': (val: number) => true; }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & { reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; } & { class?: any; id?: string | undefined; label?: string | undefined; width?: string | number | undefined; theme?: string | undefined; color?: string | undefined; name?: string | undefined; prefix?: string | undefined; loading?: string | boolean | undefined; placeholder?: string | undefined; counter?: string | number | boolean | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; modelValue?: any; validateOn?: ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined; validationValue?: any; rounded?: string | number | boolean | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; role?: string | undefined; baseColor?: string | undefined; bgColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; 'onClick:clear'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:appendInner'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prependInner'?: ((args_0: MouseEvent) => void) | undefined; centerAffix?: boolean | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; suffix?: string | undefined; counterValue?: number | ((value: any) => number) | undefined; modelModifiers?: Record<string, boolean> | undefined; } & { $children?: {} | vue.VNodeChild | { clear?: ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; }; 'v-slots'?: { clear?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } | undefined; } & { "v-slot:clear"?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:label"?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:counter"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:loader"?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:increment"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; "v-slot:decrement"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } & { "onUpdate:modelValue"?: ((val: number) => any) | undefined; }, { reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; rounded: string | number | boolean; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; centerAffix: boolean; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; }, true, {}, vue.SlotsType<Partial<{ clear: (arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; details: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; label: (arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; counter: (arg: VCounterSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; message: (arg: VMessageSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; prepend: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; append: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; loader: (arg: LoaderSlotProps) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; 'prepend-inner': (arg: DefaultInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; 'append-inner': (arg: DefaultInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; increment: (arg: ControlSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; decrement: (arg: ControlSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; }>>, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, { reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; } & { class?: any; id?: string | undefined; label?: string | undefined; width?: string | number | undefined; theme?: string | undefined; color?: string | undefined; name?: string | undefined; prefix?: string | undefined; loading?: string | boolean | undefined; placeholder?: string | undefined; counter?: string | number | boolean | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; modelValue?: any; validateOn?: ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined; validationValue?: any; rounded?: string | number | boolean | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; role?: string | undefined; baseColor?: string | undefined; bgColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; 'onClick:clear'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:appendInner'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prependInner'?: ((args_0: MouseEvent) => void) | undefined; centerAffix?: boolean | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; suffix?: string | undefined; counterValue?: number | ((value: any) => number) | undefined; modelModifiers?: Record<string, boolean> | undefined; } & { $children?: {} | vue.VNodeChild | { clear?: ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; }; 'v-slots'?: { clear?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } | undefined; } & { "v-slot:clear"?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:label"?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:counter"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:loader"?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:increment"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; "v-slot:decrement"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } & { "onUpdate:modelValue"?: ((val: number) => any) | undefined; }, {}, {}, {}, {}, { reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; rounded: string | number | boolean; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; centerAffix: boolean; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; }>; __isFragment?: undefined; __isTeleport?: undefined; __isSuspense?: undefined; } & vue.ComponentOptionsBase<{ reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; } & { class?: any; id?: string | undefined; label?: string | undefined; width?: string | number | undefined; theme?: string | undefined; color?: string | undefined; name?: string | undefined; prefix?: string | undefined; loading?: string | boolean | undefined; placeholder?: string | undefined; counter?: string | number | boolean | undefined; 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined; modelValue?: any; validateOn?: ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined; validationValue?: any; rounded?: string | number | boolean | undefined; maxWidth?: string | number | undefined; minWidth?: string | number | undefined; role?: string | undefined; baseColor?: string | undefined; bgColor?: string | undefined; prependIcon?: IconValue | undefined; appendIcon?: IconValue | undefined; 'onClick:clear'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:appendInner'?: ((args_0: MouseEvent) => void) | undefined; 'onClick:prependInner'?: ((args_0: MouseEvent) => void) | undefined; centerAffix?: boolean | undefined; hint?: string | undefined; hideDetails?: boolean | "auto" | undefined; suffix?: string | undefined; counterValue?: number | ((value: any) => number) | undefined; modelModifiers?: Record<string, boolean> | undefined; } & { $children?: {} | vue.VNodeChild | { clear?: ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: ((arg: ControlSlot) => vue.VNodeChild) | undefined; }; 'v-slots'?: { clear?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; label?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; counter?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; loader?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; 'prepend-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; 'append-inner'?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; increment?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; decrement?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } | undefined; } & { "v-slot:clear"?: false | ((arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:label"?: false | ((arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNodeChild) | undefined; "v-slot:counter"?: false | ((arg: VCounterSlot) => vue.VNodeChild) | undefined; "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined; "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined; "v-slot:loader"?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined; "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined; "v-slot:increment"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; "v-slot:decrement"?: false | ((arg: ControlSlot) => vue.VNodeChild) | undefined; } & { "onUpdate:modelValue"?: ((val: number) => any) | undefined; }, void, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, { 'update:modelValue': (val: number) => true; }, string, { reverse: boolean; flat: boolean; style: vue.StyleValue; type: string; active: boolean; error: boolean; disabled: boolean; messages: string | readonly string[]; focused: boolean; errorMessages: string | readonly string[] | null; maxErrors: string | number; readonly: boolean | null; rules: readonly ValidationRule[]; rounded: string | number | boolean; variant: "underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled"; inset: boolean; tile: boolean; density: Density; direction: "horizontal" | "vertical"; max: number; clearIcon: IconValue; centerAffix: boolean; hideSpinButtons: boolean; persistentHint: boolean; autofocus: boolean; clearable: boolean; dirty: boolean; persistentClear: boolean; singleLine: boolean; persistentPlaceholder: boolean; persistentCounter: boolean; min: number; step: number; hideInput: boolean; controlVariant: ControlVariant; }, {}, string, vue.SlotsType<Partial<{ clear: (arg: DefaultInputSlot & { props: Record<string, any>; }) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; details: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; label: (arg: DefaultInputSlot & { label: string | undefined; props: Record<string, any>; }) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; counter: (arg: VCounterSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; message: (arg: VMessageSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; prepend: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; append: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; loader: (arg: LoaderSlotProps) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; 'prepend-inner': (arg: DefaultInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; 'append-inner': (arg: DefaultInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; increment: (arg: ControlSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; decrement: (arg: ControlSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, { [key: string]: any; }>[]; }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{ reverse: BooleanConstructor; flat: BooleanConstructor; class: PropType<any>; style: { type: PropType<vue.StyleValue>; default: null; }; id: StringConstructor; label: StringConstructor; type: { type: StringConstructor; default: string; }; width: (StringConstructor | NumberConstructor)[]; active: BooleanConstructor; error: BooleanConstructor; theme: StringConstructor; color: StringConstructor; name: StringConstructor; prefix: StringConstructor; disabled: { type: BooleanConstructor; default: null; }; loading: (StringConstructor | BooleanConstructor)[]; messages: { type: PropType<string | readonly string[]>; default: () => never[]; }; placeholder: StringConstructor; counter: (StringConstructor | NumberConstructor | BooleanConstructor)[]; focused: BooleanConstructor; 'onUpdate:focused': PropType<(args_0: boolean) => void>; errorMessages: { type: PropType<string | readonly string[] | null>; default: () => never[]; }; maxErrors: { type: (StringConstructor | NumberConstructor)[]; default: number; }; readonly: { type: PropType<boolean | null>; default: null; }; rules: { type: PropType<readonly ValidationRule[]>; default: () => never[]; }; modelValue: null; validateOn: PropType<("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined>; validationValue: null; rounded: { type: (StringConstructor | NumberConstructor | BooleanConstructor)[]; default: undefined; }; variant: { type: PropType<"underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled">; default: string; validator: (v: any) => boolean; }; maxWidth: (StringConstructor | NumberConstructor)[]; minWidth: (StringConstructor | NumberConstructor)[]; tile: BooleanConstructor; role: StringConstructor; density: { type: PropType<Density>; default: string; validator: (v: any) => boolean; }; direction: { type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; }; baseColor: StringConstructor; bgColor: StringConstructor; prependIcon: PropType<IconValue>; appendIcon: PropType<IconValue>; clearIcon: { type: PropType<IconValue>; default: string; }; 'onClick:clear': PropType<(args_0: MouseEvent) => void>; 'onClick:prepend': PropType<(args_0: MouseEvent) => void>; 'onClick:append': PropType<(args_0: MouseEvent) => void>; 'onClick:appendInner': PropType<(args_0: MouseEvent) => void>; 'onClick:prependInner': PropType<(args_0: MouseEvent) => void>; centerAffix: { type: BooleanConstructor; default: undefined; }; hideSpinButtons: BooleanConstructor; hint: StringConstructor; persistentHint: BooleanConstructor; hideDetails: PropType<boolean | "auto">; autofocus: BooleanConstructor; clearable: BooleanConstructor; dirty: BooleanConstructor; persistentClear: BooleanConstructor; singleLine: BooleanConstructor; persistentPlaceholder: BooleanConstructor; persistentCounter: BooleanConstructor; suffix: StringConstructor; counterValue: PropType<number | ((value: any) => number)>; modelModifiers: PropType<Record<string, boolean>>; controlVariant: { type: PropType<ControlVariant>; default: string; }; inset: BooleanConstructor; hideInput: BooleanConstructor; min: { type: NumberConstructor; default: number; }; max: { type: NumberConstructor; default: number; }; step: { type: NumberConstructor; default: number; }; }, vue.ExtractPropTypes<{ reverse: BooleanConstructor; flat: BooleanConstructor; class: PropType<any>; style: { type: PropType<vue.StyleValue>; default: null; }; id: StringConstructor; label: StringConstructor; type: { type: StringConstructor; default: string; }; width: (StringConstructor | NumberConstructor)[]; active: BooleanConstructor; error: BooleanConstructor; theme: StringConstructor; color: StringConstructor; name: StringConstructor; prefix: StringConstructor; disabled: { type: BooleanConstructor; default: null; }; loading: (StringConstructor | BooleanConstructor)[]; messages: { type: PropType<string | readonly string[]>; default: () => never[]; }; placeholder: StringConstructor; counter: (StringConstructor | NumberConstructor | BooleanConstructor)[]; focused: BooleanConstructor; 'onUpdate:focused': PropType<(args_0: boolean) => void>; errorMessages: { type: PropType<string | readonly string[] | null>; default: () => never[]; }; maxErrors: { type: (StringConstructor | NumberConstructor)[]; default: number; }; readonly: { type: PropType<boolean | null>; default: null; }; rules: { type: PropType<readonly ValidationRule[]>; default: () => never[]; }; modelValue: null; validateOn: PropType<("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | "lazy" | undefined>; validationValue: null; rounded: { type: (StringConstructor | NumberConstructor | BooleanConstructor)[]; default: undefined; }; variant: { type: PropType<"underlined" | "filled" | "outlined" | "plain" | "solo" | "solo-inverted" | "solo-filled">; default: string; validator: (v: any) => boolean; }; maxWidth: (StringConstructor | NumberConstructor)[]; minWidth: (StringConstructor | NumberConstructor)[]; tile: BooleanConstructor; role: StringConstructor; density: { type: PropType<Density>; default: string; validator: (v: any) => boolean; }; direction: { type: PropType<"horizontal" | "vertical">; default: string; validator: (v: any) => boolean; }; baseColor: StringConstructor; bgColor: StringConstructor; prependIcon: PropType<IconValue>; appendIcon: PropType<IconValue>; clearIcon: { type: PropType<IconValue>; default: string; }; 'onClick:clear': PropType<(args_0: MouseEvent) => void>; 'onClick:prepend': PropType<(args_0: MouseEvent) => void>; 'onClick:append': PropType<(args_0: MouseEvent) => void>; 'onClick:appendInner': PropType<(args_0: MouseEvent) => void>; 'onClick:prependInner': PropType<(args_0: MouseEvent) => void>; centerAffix: { type: BooleanConstructor; default: undefined; }; hideSpinButtons: BooleanConstructor; hint: StringConstructor; persistentHint: BooleanConstructor; hideDetails: PropType<boolean | "auto">; autofocus: BooleanConstructor; clearable: BooleanConstructor; dirty: BooleanConstructor; persistentClear: BooleanConstructor; singleLine: BooleanConstructor; persistentPlaceholder: BooleanConstructor; persistentCounter: BooleanConstructor; suffix: StringConstructor; counterValue: PropType<number | ((value: any) => number)>; modelModifiers: PropType<Record<string, boolean>>; controlVariant: { type: PropType<ControlVariant>; default: string; }; inset: BooleanConstructor; hideInput: BooleanConstructor; min: { type: NumberConstructor; default: number; }; max: { type: NumberConstructor; default: number; }; step: { type: NumberConstructor; default: number; }; }>>; type VNumberInput = InstanceType<typeof VNumberInput>; export { VNumberInput };