import { LitElement } from 'lit'; import '@material/web/textfield/filled-text-field.js'; import '@material/web/textfield/outlined-text-field.js'; import { TextFieldType, UnsupportedTextFieldType } from '@material/web/textfield/internal/text-field.js'; import '@digital-realty/ix-icon/ix-icon.js'; import '@digital-realty/ix-phone-input/ix-phone-input.js'; declare const IxTextboxBase: typeof LitElement & import("@digital-realty/ix-shared-fns/aria-forward-mixin.js").Constructor; export declare class IxTextbox extends IxTextboxBase { readonly component: HTMLInputElement; filled: boolean; disabled: boolean; /** * Gets or sets whether or not the text field is in a visually invalid state. * * Calling `reportValidity()` will automatically update `error`. */ error: boolean; /** * The error message that replaces supporting text when `error` is true. If * `errorText` is an empty string, then the supporting text will continue to * show. * * Calling `reportValidity()` will automatically update `errorText` to the * native `validationMessage`. */ errorText: string; label: string; required: boolean; /** * The current value of the text field. It is always a string. */ value: string; /** * The name of the text field. It is always a string. */ name: string; /** * An optional prefix to display before the input value. */ prefixText: string; /** * An optional suffix to display after the input value. */ suffixText: string; /** * Name of icon. It is always a string. */ leadingIcon: string; /** * Name of icon. It is always a string. */ trailingIcon: string; /** * Enables navigation icons for search input types. */ searchEnabled: boolean; /** * The number of search results found. */ searchResultCount: number; /** * The index of the selected search result. This property is 1-based (i.e. begins with 1, not zero-based). */ searchResultIndex: number; /** * Conveys additional information below the text field, such as how it should * be used. */ supportingText: string; /** * Override the input text CSS `direction`. Useful for RTL languages that use * LTR notation for fractions. */ textDirection: string; /** * The number of rows to display for a `type="textarea"` text field. * Defaults to 2. */ rows: number; inputMode: string; /** * Defines the greatest value in the range of permitted values. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#max */ max: string; /** * The maximum number of characters a user can enter into the text field. Set * to -1 for none. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#maxlength */ maxLength: number; /** * Defines the most negative value in the range of permitted values. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#min */ min: string; /** * The minimum number of characters a user can enter into the text field. Set * to -1 for none. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#minlength */ minLength: number; /** * A regular expression that the text field's value must match to pass * constraint validation. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#pattern */ pattern: string; placeholder: string; /** * Indicates whether or not a user should be able to edit the text field's * value. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#readonly */ readOnly: boolean; /** * Indicates that input accepts multiple email addresses. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/email#multiple */ multiple: boolean; /** * Returns or sets the element's step attribute, which works with min and max * to limit the increments at which a numeric or date-time value can be set. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#step */ step: string; /** * The `` type to use, defaults to "text". The type greatly changes how * the text field behaves. * * Text fields support a limited number of `` types: * * - text * - textarea * - email * - number * - password * - search * - tel * - url * * See * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types * for more details on each input type. */ type: TextFieldType | UnsupportedTextFieldType; /** * Describes what, if any, type of autocomplete functionality the input * should provide. * * https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete */ autocomplete: string; /** * True if the input has text. */ hasText: boolean; textarea: HTMLElement | null | undefined; handleKeydownHandler: any; connectedCallback(): void; firstUpdated(): Promise; disconnectedCallback(): void; resizeTextArea: () => void; focus(): void; protected createRenderRoot(): this; renderStyles(): import("lit-html").TemplateResult<1>; /** * Handles search navigation icon clicks and emits search-navigation event. */ private onSearchNavigation; /** * Handles input event and sets hasText state when an input event is received. */ private onInput; /** * Clears the input field and resets hasText state. */ private clearInput; /** * Sets the search result text based on the current search state. * @returns The search result text. */ private setSearchResultText; protected render(): import("lit-html").TemplateResult<1 | 2 | 3>; } export {};