import { EventEmitter } from '../../stencil-public-runtime'; /** * @name One-Time Password * @category Forms * @summary Use for entering a short one-time verification code. */ export declare class Q2Otp { private readonly defaultSendCodeLabel; private readonly defaultSubmitLabel; guid: number; hasAutoFocused: boolean; inputRef: HTMLInputElement; sendCodeRef: HTMLElement; hostElement: HTMLElement; hasFocus: boolean; /** Focuses the first one-time password field when the component loads. */ autoFocus: boolean; /** Emits submission event when the last field is filled. */ autoSubmit: boolean; /** Clears all fields and returns focus to the first field when `state` becomes `error`. */ clearOnError: boolean; /** Disables all one-time password fields. */ disabled: boolean; /** * Error message rendered below the submit area. * @localizable */ errorMessage: string; /** * Helper text content. * @localizable */ helperText: string; /** * Visible label above the one-time password fields. * @localizable */ label: string; /** * Number of one-time password fields. Use a number for ungrouped fields or an array for grouped fields with dash * separators. */ length: number | number[] | string[] | string; /** Obscures entered characters. */ masked: boolean; /** * Button text during processing. * @localizable */ processingLabel: string; /** * Button text for the send-code action. * @localizable */ sendCodeLabel: string; /** Toggles helper text visibility. */ showHelperText: boolean; /** Toggles visibility of the send-code button while `state` is `ready`. */ showSendCode: boolean; /** * Sets the visual status for the one-time password fields. * * - `ready` — Shows the send-code button when `showSendCode` is enabled and hides the input fields until the user * requests a code. * - `error` — Displays an error style on the fields. If `errorMessage` is set, it renders below the submit area. * When `clearOnError` is enabled, all fields are cleared and focus returns to the first field. * - `success` — Locks the input, replaces the submit button with a success indicator, and displays the * `successMessage` if provided. * - `verifying` — Locks the input and puts the submit button into a loading state. When combined with `autoSubmit`, * a processing overlay with `processingLabel` is shown over the fields. */ state: 'error' | 'ready' | 'success' | 'verifying' | undefined; /** * Renders a submit button with this label. * @localizable */ submitLabel: string; /** * Success message rendered below the submit area. * @localizable */ successMessage: string; /** The composed one-time password value. */ value: string; /** Emitted when the fields are cleared. */ tctClear: EventEmitter<{ value: string; }>; /** Emitted when all fields are filled. */ tctComplete: EventEmitter<{ value: string; }>; /** Emitted when any field value changes. */ tctInput: EventEmitter<{ value: string; }>; /** Emitted when the send-code button is clicked. */ tctSendCode: EventEmitter; /** Emitted when the submit button is clicked or auto-submit triggers. */ tctSubmit: EventEmitter<{ value: string; }>; componentWillLoad(): void; componentDidLoad(): void; componentDidRender(): void; onHostElementFocus(event: FocusEvent): void; /** * Clears all fields, focuses the first field, and emits `tctClear`. */ clear(): Promise; /** * Clears the component and resets error, success, and processing state. */ reset(): Promise; lengthObserver(): void; stateObserver(state: string | null): void; valueObserver(): void; get activeSlotIndex(): number; get componentId(): string; get describedBy(): string | undefined; get hasVisibleHelperText(): boolean; get helperTextId(): string; get inputAriaLabel(): string; get isAwaitingSendCode(): boolean; get isComplete(): boolean; get isSuccess(): boolean; get isVerifying(): boolean; get labelId(): string; get lengthGroups(): number[]; get localizedHelperText(): string; get localizedLabel(): string; get localizedProcessingLabel(): string; get localizedSendCodeLabel(): string; get localizedSubmitLabel(): string; get locksInput(): boolean; get messageId(): string; get normalizedLength(): number; get separatorIndexes(): number[]; clearValue(emitEvent?: boolean): void; filterDigits(value: string): string; focusOnLoad(): void; handleComplete(digits: string): void; handleFocusIn: () => void; handleFocusOut: (event: FocusEvent) => void; handleInputEvent: () => void; handleKeyDown: (event: KeyboardEvent) => void; handlePaste: (event: ClipboardEvent) => void; handleSendCodeClick: () => void; handleSubmitClick: () => void; isValidLength(length: number): boolean; submit(value?: string): void; truncateValueToLength(): void; renderFields(): any[][]; renderHelperText(): any; renderLabel(): any; renderMessage(): any; renderProcessingOverlay(): any; renderSendCodeButton(): any; renderSubmitArea(): any; render(): any; }