import { RuleExpression } from 'vee-validate'; import { PropType } from 'vue'; import { Optional } from '../../../../shared/dist/esm/index'; import { PropAnyComponent } from '../../helpers/common/components'; import { InputColor } from '../../composables/form/textInput'; import { LabelPosition } from '../../composables/form/input'; type InputType = 'text' | 'email' | 'password' | 'url' | 'search' | 'number' | string; type InputSize = 'sm' | 'base' | 'lg' | 'xl'; declare function __VLS_template(): { attrs: Partial<{}>; slots: { 'input-right'?(_: {}): any; }; refs: { inputElement: HTMLInputElement; }; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent; default: string; }; /** * Unique ID for the input (must be unique page-wide) */ name: { type: StringConstructor; required: true; }; /** * Whether to show label (label will always be shown to screen readers) */ showLabel: { type: BooleanConstructor; required: false; }; /** * Optional help text */ help: { type: PropType>; default: undefined; }; /** * Placeholder text */ placeholder: { type: PropType>; default: undefined; }; /** * Set label text explicitly */ label: { type: PropType>; default: undefined; }; /** * Whether to show the red "required" asterisk */ showRequired: { type: BooleanConstructor; default: boolean; }; /** * Whether to show the "optional" text */ showOptional: { type: BooleanConstructor; default: boolean; }; /** * Whether to disable the component, blocking it from user input */ disabled: { type: BooleanConstructor; default: boolean; }; /** * Whether to disable editing the component, making it read only */ readOnly: { type: BooleanConstructor; default: boolean; }; /** * vee-validate validation rules */ rules: { type: PropType>; default: undefined; }; /** * vee-validate validation() on component mount */ validateOnMount: { type: BooleanConstructor; default: boolean; }; /** * Whether to trigger validation whenever the value changes */ validateOnValueUpdate: { type: BooleanConstructor; default: boolean; }; /** * Will replace the generic "Value" text with the name of the input in error messages */ useLabelInErrors: { type: BooleanConstructor; default: boolean; }; /** * Set a custom icon to use inside the input */ customIcon: { type: PropType>; default: undefined; }; iconClasses: { type: StringConstructor; default: null; }; /** * Whether to focus on the input when component is mounted */ autoFocus: { type: BooleanConstructor; default: boolean; }; modelValue: { type: StringConstructor; default: string; }; size: { type: PropType; default: string; }; showClear: { type: BooleanConstructor; default: boolean; }; inputClasses: { type: StringConstructor; default: null; }; fullWidth: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; hideErrorMessage: { type: BooleanConstructor; default: boolean; }; customErrorMessage: { type: StringConstructor; default: null; }; wrapperClasses: { type: StringConstructor; default: () => string; }; color: { type: PropType; default: string; }; labelPosition: { type: PropType; default: string; }; rightIcon: { type: PropType>; default: undefined; }; rightIconTitle: { type: StringConstructor; default: undefined; }; tooltipText: { type: StringConstructor; default: undefined; }; customHelpClass: { type: StringConstructor; default: undefined; }; }>, { focus: () => void; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & { clear: () => any; input: (val: { event?: Event; value: string; }) => any; "update:modelValue": (val: string) => any; change: (val: { event?: Event; value: string; }) => any; focus: () => any; blur: () => any; rightIconClick: () => any; }, string, import('vue').PublicProps, Readonly; default: string; }; /** * Unique ID for the input (must be unique page-wide) */ name: { type: StringConstructor; required: true; }; /** * Whether to show label (label will always be shown to screen readers) */ showLabel: { type: BooleanConstructor; required: false; }; /** * Optional help text */ help: { type: PropType>; default: undefined; }; /** * Placeholder text */ placeholder: { type: PropType>; default: undefined; }; /** * Set label text explicitly */ label: { type: PropType>; default: undefined; }; /** * Whether to show the red "required" asterisk */ showRequired: { type: BooleanConstructor; default: boolean; }; /** * Whether to show the "optional" text */ showOptional: { type: BooleanConstructor; default: boolean; }; /** * Whether to disable the component, blocking it from user input */ disabled: { type: BooleanConstructor; default: boolean; }; /** * Whether to disable editing the component, making it read only */ readOnly: { type: BooleanConstructor; default: boolean; }; /** * vee-validate validation rules */ rules: { type: PropType>; default: undefined; }; /** * vee-validate validation() on component mount */ validateOnMount: { type: BooleanConstructor; default: boolean; }; /** * Whether to trigger validation whenever the value changes */ validateOnValueUpdate: { type: BooleanConstructor; default: boolean; }; /** * Will replace the generic "Value" text with the name of the input in error messages */ useLabelInErrors: { type: BooleanConstructor; default: boolean; }; /** * Set a custom icon to use inside the input */ customIcon: { type: PropType>; default: undefined; }; iconClasses: { type: StringConstructor; default: null; }; /** * Whether to focus on the input when component is mounted */ autoFocus: { type: BooleanConstructor; default: boolean; }; modelValue: { type: StringConstructor; default: string; }; size: { type: PropType; default: string; }; showClear: { type: BooleanConstructor; default: boolean; }; inputClasses: { type: StringConstructor; default: null; }; fullWidth: { type: BooleanConstructor; default: boolean; }; loading: { type: BooleanConstructor; default: boolean; }; hideErrorMessage: { type: BooleanConstructor; default: boolean; }; customErrorMessage: { type: StringConstructor; default: null; }; wrapperClasses: { type: StringConstructor; default: () => string; }; color: { type: PropType; default: string; }; labelPosition: { type: PropType; default: string; }; rightIcon: { type: PropType>; default: undefined; }; rightIconTitle: { type: StringConstructor; default: undefined; }; tooltipText: { type: StringConstructor; default: undefined; }; customHelpClass: { type: StringConstructor; default: undefined; }; }>> & Readonly<{ onClear?: (() => any) | undefined; onInput?: ((val: { event?: Event; value: string; }) => any) | undefined; "onUpdate:modelValue"?: ((val: string) => any) | undefined; onChange?: ((val: { event?: Event; value: string; }) => any) | undefined; onFocus?: (() => any) | undefined; onBlur?: (() => any) | undefined; onRightIconClick?: (() => any) | undefined; }>, { size: InputSize; fullWidth: boolean; color: InputColor; disabled: boolean; loading: boolean; type: string; iconClasses: string; placeholder: Optional; label: Optional; modelValue: string; rules: RuleExpression; validateOnMount: boolean; showRequired: boolean; labelPosition: LabelPosition; validateOnValueUpdate: boolean; help: Optional; showLabel: boolean; autoFocus: boolean; showClear: boolean; useLabelInErrors: boolean; customErrorMessage: string; hideErrorMessage: boolean; customHelpClass: string; showOptional: boolean; wrapperClasses: string; readOnly: boolean; customIcon: Optional; inputClasses: string; rightIcon: Optional; rightIconTitle: string; tooltipText: string; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, { inputElement: HTMLInputElement; }, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };