import { EventEmitter } from '../../stencil-public-runtime'; import { IxInputFieldComponent, ValidationResults } from '../utils/input'; /** * @form-ready * @slot start - Element will be displayed at the start of the input * @slot end - Element will be displayed at the end of the input */ export declare class Input implements IxInputFieldComponent { hostElement: HTMLIxInputElement; formInternals: ElementInternals; /** * The type of the text field. Possible values are 'text', 'email', or 'password'. */ type: 'text' | 'email' | 'password' | 'tel' | 'url'; /** * The name of the text field. */ name?: string; /** * The placeholder text for the text field. */ placeholder?: string; /** * The value of the text field. */ value: string; /** * Specifies whether the text field is required. */ required: boolean; /** * Specifies whether the text field is disabled. */ disabled: boolean; /** * Specifies whether the text field is readonly. */ readonly: boolean; /** * The helper text for the text field. */ helperText?: string; /** * The info text for the text field. */ infoText?: string; /** * Specifies whether to show the text as a tooltip. */ showTextAsTooltip?: boolean; /** * The valid text for the text field. */ validText?: string; /** * The warning text for the text field. */ warningText?: string; /** * The label for the text field. */ label?: string; /** * The error text for the text field. */ invalidText?: string; /** * The pattern for the text field. */ pattern?: string; /** * The maximum length of the text field. */ maxLength?: number; /** * The minimum length of the text field. */ minLength?: number; /** * The allowed characters pattern for the text field. */ allowedCharactersPattern?: string; /** * If false, pressing Enter will submit the form (if inside a form). * Set to true to suppress submit on Enter. */ suppressSubmitOnEnter: boolean; /** * Text alignment within the input. 'start' aligns the text to the start of the input, 'end' aligns the text to the end of the input. */ textAlignment: 'start' | 'end'; /** * Event emitted when the value of the text field changes. */ valueChange: EventEmitter; /** * Event emitted when the validity state of the text field changes. */ validityStateChange: EventEmitter; /** * Event emitted when the text field loses focus. */ ixBlur: EventEmitter; /** * Event emitted when the text field loses focus and the value has changed. * @since 4.4.0 */ ixChange: EventEmitter; isInvalid: boolean; isValid: boolean; isInfo: boolean; isWarning: boolean; isInvalidByRequired: boolean; inputType: string; /** @internal */ initialValue?: string; private readonly inputRef; private readonly slotEndRef; private readonly slotStartRef; private readonly inputId; private touched; private disposableChangesAndVisibilityObservers?; updateClassMappings(result: ValidationResults): void; updateInputType(): void; componentWillLoad(): void; connectedCallback(): void; private updatePaddings; disconnectedCallback(): void; updateFormInternalValue(value: string): void; /** @internal */ getAssociatedFormElement(): Promise; /** @internal */ hasValidValue(): Promise; /** * Returns the native input element used in the text field. */ getNativeInputElement(): Promise; /** * Returns the validity state of the input field. */ getValidityState(): Promise; /** * Focuses the input field */ focusInput(): Promise; /** * Returns whether the text field has been touched. * @internal */ isTouched(): Promise; render(): any; }