import { PropType } from 'vue'; import { Icon } from '@wikimedia/codex-icons'; import { TextInputType, ValidationStatusType } from '../../types'; /** * A form element that accepts a single line of text input from the user. */ declare const _default: import("vue").DefineComponent; default: string; validator: import("../../types").StringTypeValidator<"number" | "text" | "search" | "email" | "month" | "password" | "tel" | "url" | "week" | "date" | "datetime-local" | "time">; }; /** * `status` attribute of the input. */ status: { type: PropType; default: string; validator: import("../../types").StringTypeValidator<"default" | "warning" | "error" | "success">; }; /** * Whether the input is disabled. */ disabled: { type: BooleanConstructor; default: boolean; }; /** * An icon at the start of the `` element. Similar to a `::before` pseudo-element. */ startIcon: { type: PropType; default: undefined; }; /** * An icon at the end of the `` element. Similar to an `::after` pseudo-element. */ endIcon: { type: PropType; default: undefined; }; /** * Add a clear button at the end of the `` element. * * When the clear button is pressed, the input's value is set to an empty string. * The clear button is displayed when input text is present. */ clearable: { type: BooleanConstructor; default: boolean; }; }>, { computedInputId: import("vue").ComputedRef; descriptionId: import("vue").ComputedRef | undefined; wrappedModel: import("vue").WritableComputedRef; isClearable: import("vue").ComputedRef; rootClasses: import("vue").ComputedRef>; rootStyle: import("vue").ComputedRef; otherAttrsMinusId: import("vue").ComputedRef<{ [x: string]: unknown; }>; inputClasses: import("vue").ComputedRef<{ 'cdx-text-input__input--has-value': boolean; }>; computedDisabled: import("vue").ComputedRef; onClear: (event: MouseEvent) => void; onInput: (event: Event) => void; onChange: (event: Event) => void; onKeydown: (event: KeyboardEvent) => void; onFocus: (event: FocusEvent) => void; onBlur: (event: FocusEvent) => void; onCompositionStart: (event: CompositionEvent) => void; onCompositionUpdate: (event: CompositionEvent) => void; onCompositionEnd: (event: CompositionEvent) => void; onInvalid: (event: Event, doPreventDefault: boolean) => void; shouldPreventDefault: import("vue").Ref; cdxIconClear: string; }, {}, {}, { /** * Focus the component's `` element. * * @public */ focus(): void; /** * Blur the component's `` element. * * @public */ blur(): void; /** * Check the validity of the `` element according to its constraint attributes. * Emits an 'invalid' event if the input is invalid. See: * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/checkValidity * * @public * @return {boolean} Whether the input is valid */ checkValidity(): boolean; /** * Check the validity of the `` element and report it as a pop up on the UI. See: * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/reportValidity * * @public * @return {boolean} Whether the input is valid */ reportValidity(): boolean; /** * Set custom validity and message for the `` element. See: * https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setCustomValidity * * @public * @param {string} message The custom validation message to set */ setCustomValidity(message: string): void; }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "clear" | "update:modelValue" | "focus" | "blur" | "keydown" | "change" | "compositionend" | "compositionstart" | "compositionupdate" | "invalid")[], "input" | "clear" | "update:modelValue" | "focus" | "blur" | "keydown" | "change" | "compositionend" | "compositionstart" | "compositionupdate" | "invalid", import("vue").PublicProps, Readonly; default: string; validator: import("../../types").StringTypeValidator<"number" | "text" | "search" | "email" | "month" | "password" | "tel" | "url" | "week" | "date" | "datetime-local" | "time">; }; /** * `status` attribute of the input. */ status: { type: PropType; default: string; validator: import("../../types").StringTypeValidator<"default" | "warning" | "error" | "success">; }; /** * Whether the input is disabled. */ disabled: { type: BooleanConstructor; default: boolean; }; /** * An icon at the start of the `` element. Similar to a `::before` pseudo-element. */ startIcon: { type: PropType; default: undefined; }; /** * An icon at the end of the `` element. Similar to an `::after` pseudo-element. */ endIcon: { type: PropType; default: undefined; }; /** * Add a clear button at the end of the `` element. * * When the clear button is pressed, the input's value is set to an empty string. * The clear button is displayed when input text is present. */ clearable: { type: BooleanConstructor; default: boolean; }; }>> & Readonly<{ onCompositionend?: ((...args: any[]) => any) | undefined; onCompositionstart?: ((...args: any[]) => any) | undefined; onCompositionupdate?: ((...args: any[]) => any) | undefined; onFocus?: ((...args: any[]) => any) | undefined; onBlur?: ((...args: any[]) => any) | undefined; onChange?: ((...args: any[]) => any) | undefined; onInput?: ((...args: any[]) => any) | undefined; onInvalid?: ((...args: any[]) => any) | undefined; onKeydown?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; }>, { modelValue: string | number; disabled: boolean; status: "default" | "warning" | "error" | "success"; inputType: "number" | "text" | "search" | "email" | "month" | "password" | "tel" | "url" | "week" | "date" | "datetime-local" | "time"; startIcon: Icon | undefined; endIcon: Icon | undefined; clearable: boolean; }, {}, { CdxIcon: import("vue").DefineComponent; required: true; }; iconLabel: { type: StringConstructor; default: string; }; lang: { type: PropType; default: null; }; dir: { type: PropType; default: null; }; size: { type: PropType; default: string; validator: import("../../types").StringTypeValidator<"medium" | "small" | "x-small">; }; }>, { rootElement: import("vue").Ref; rootClasses: import("vue").ComputedRef<{ [x: string]: boolean; 'cdx-icon--flipped': boolean; }>; iconSvg: import("vue").ComputedRef; iconPath: import("vue").ComputedRef; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; required: true; }; iconLabel: { type: StringConstructor; default: string; }; lang: { type: PropType; default: null; }; dir: { type: PropType; default: null; }; size: { type: PropType; default: string; validator: import("../../types").StringTypeValidator<"medium" | "small" | "x-small">; }; }>> & Readonly<{}>, { lang: string | null; iconLabel: string; dir: import("../../types").HTMLDirection | null; size: "medium" | "small" | "x-small"; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;