import { EventEmitter } from '../../stencil-public-runtime'; import { InputSize, InputStatus, InputType } from './types'; export declare class BcmInput { el: HTMLElement; private inputRef; isFocused: boolean; validationMessage: string; isValid: boolean; internalStatus: InputStatus; internalErrorMessage: string; isPasswordVisible: boolean; /** Input value */ value: string; /** Input placeholder text */ placeholder?: string; /** Input name */ name?: string; /** Input id */ _id?: string; /** Controls the input size */ size: InputSize; /** Defines the input's status/state */ status: InputStatus; /** Full width input */ fullWidth: boolean; /** HTML input type */ type: InputType; /** Whether the input is disabled */ disabled: boolean; /** Whether the input is readonly */ readonly: boolean; /** Whether the input is required */ required: boolean; /** Input autocomplete attribute */ autocomplete?: string; /** Min length for text input */ minLength?: number; /** Max length for text input */ maxLength?: number; /** Min value for number input */ min?: number; /** Max value for number input */ max?: number; /** Step value for number input */ step?: number; /** Pattern for validation */ pattern?: string; /** Input label for accessibility */ label?: string; /** Error message to display */ errorMessage?: string; /** Caption text to display below input */ captionText?: string; /** ID of associated label element */ labelledby?: string; /** ID of associated caption/error text element */ describedby?: string; /** Prefix icon class name */ prefixIcon?: string; /** Suffix icon class name */ suffixIcon?: string; /** Whether to use native form validation * If false, component will handle validation internally */ useNativeValidation: boolean; /** Custom validation function */ validator?: (value: string) => string | undefined; internals: ElementInternals; bcmInput: EventEmitter; bcmChange: EventEmitter; bcmFocus: EventEmitter; bcmBlur: EventEmitter; bcmKeyDown: EventEmitter; bcmKeyUp: EventEmitter; handleValueChange(newValue: string): void; watchStatus(newValue: InputStatus): void; watchErrorMessage(newValue: string): void; setFocus(): Promise; setBlur(): Promise; select(): Promise; /** * When the parent
is reset, reset input state as well. */ formResetCallback(): void; /** Sets locale and messages for all inputs */ setLocale(locale: string, messages: Record): Promise; componentWillLoad(): void; private validateInput; private onInput; private onChange; private onFocus; private onBlur; private onKeyDown; private onKeyUp; private hasSlotContent; private styleClass; private getDefaultIconForType; private togglePasswordVisibility; private PasswordToggleButton; private iconSize; render(): any; }