import { EventEmitter } from '../../stencil-public-runtime'; import type { FormatterValueObject, EventDetail } from 'q2-tecton-common/lib/types/elements'; import { CursorData } from './q2-input-types'; import { Q2Icon } from '../q2-icon/q2-icon'; import { Q2Badge } from '../q2-badge/q2-badge'; declare const inputTypeMap: { text: string; tel: string; number: string; password: string; search: string; url: string; email: string; currency: string; phone: string; ssn: string; alphanumeric: string; alpha: string; numeric: string; percentage: string; postal: string; date: string; 'credit-card': string; cif: string; routingnumber: string; swift: string; iban: string; clabe: string; }; export type InputType = keyof typeof inputTypeMap; /** * @name Input * @category Forms * @summary Use for single-line text entry including email, phone, currency, SSN, and password. * @slot label - An optional slot to display a custom label. * @slot input-left - An optional slot to add a [Button](https://tecton.q2developer.com/design-system/q2-btn) on the left-hand side of the input field. * @slot input-right - An optional slot to add a [Button](https://tecton.q2developer.com/design-system/q2-btn) on the right-hand side of the input field. * @slot custom-display - An optional slot to display custom content in the input field. */ export declare class Q2Input { guid: number; inputRef: HTMLInputElement; isClickEvent: boolean; isMobile: boolean; mutationObserver: MutationObserver; resizeObserver: ResizeObserver; scheduledAfterRender: (() => void)[]; textSelectedForDeletion: boolean; valueOnFocus: string; visibleLastContentRef: HTMLSpanElement; hostElement: HTMLElement; checkSlotCount: number; formattedValueObject: FormatterValueObject; hasFocus: boolean; isSmall: boolean; /** * Provides additional descriptive text for the native input. * @private */ _ariaDescription: string; /** * Sets readonly to true on the input without adding the "read only" label. * * Can be used to prevent user input while still presenting the necessary information for assistive technology. * @private */ _preventEntry: boolean; /** * Allows for correct semantics of q2-input element when aria-expanded. * @private * Defaults to undefined * Will assign role to combobox when used inside q2-select and q2-calendar. */ _role: 'combobox' | undefined; /** * Determines whether the input updates its value property as native input occurs. * * @private */ _updateValueOnInput: boolean; ariaActivedescendant: string; ariaControls: string; ariaExpanded: string; ariaHaspopup: string; /** @deprecated */ ariaLabel: string; ariaOwns: string; /** * The `autocapitalize` attribute is an enumerated attribute that controls whether and how text input is automatically capitalized as it is entered/edited by the user. * * [See MDN for a list of supported values](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize#value). * @info * This attribute only affects the behavior of input mechanisms like virtual keyboards on mobile devices and voice input. */ autocapitalize: string; /** * The HTML autocomplete attribute lets web developers specify what permission (if any) the user agent has to provide automated assistance in filling out form field values, * as well as guidance to the browser as to the type of information expected in the field. * * [See MDN for a list of supported values](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values). */ autocomplete: string; /** * A string that indicates whether or not to activate automatic correction while the user is editing this field. * @warning * This is currently only supported in Safari. */ autocorrect: 'on' | 'off'; /** * Autofocus is enabled when the property is added to an element. To disable, remove attribute or set it to false. * If applied to multiple elements, the first one will receive focus. */ autofocus: boolean; /** The color of the badge when in the active state. The property `badgeValue` must be provided. */ badgeTheme: Q2Badge['theme']; /** Displays a `q2-badge` element on the right side of the input. */ badgeValue: string; /** Renders an icon button when the field is non-empty. Pressing the button clears all input from the field. */ clearable: boolean; /** * If provided a value, it sets the `aria-current` attribute on the inner input. * [See MDN for more information on aria-current](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current). */ current: 'page' | 'step' | 'location' | 'date' | 'time' | 'true' | 'false'; /** Indicates the field cannot be focused or interacted with. */ disabled: boolean; /** * Each item in the `errors` array will appear below the input field when the field is focused. * @localizable */ errors: string[]; /** * Defines the field's expected input format, and automatically masks user input to conform. * Specific types support different modifier options. See the section on Format Modifiers for all available options. */ formatModifier: string; /** * Hide's the field's `