/**
* Consent OTP Input Web Component
*
* Individual digit input boxes for one-time password entry.
* Supports auto-focus, paste handling, and keyboard navigation.
* Implements Form Associated Custom Elements for proper form participation.
*
* @module components/consent-otp-input
*/
import { LitElement, TemplateResult } from 'lit';
/**
* ConsentOTPInput - OTP digit input boxes
*
* @example
* ```html
*
* ```
*
* @fires input - Fired on each digit entry
* @fires complete - Fired when all digits are entered
* @fires change - Fired when value changes
* @csspart container - The container for all digit boxes
* @csspart input - Individual digit input
* @cssprop --consent-primary - Primary brand color for focus state
*/
export declare class ConsentOTPInput extends LitElement {
static formAssociated: boolean;
private internals;
constructor();
/**
* Number of OTP digits
*/
length: number;
/**
* Form field name
*/
name: string;
/**
* Current OTP value
*/
value: string;
/**
* Disabled state
*/
disabled: boolean;
/**
* Error state
*/
error: boolean;
/**
* Auto-focus first input on mount
*/
autoFocus: boolean;
/**
* Input type (text or number)
*/
inputType: 'text' | 'number';
/**
* Internal digit values
*/
private digits;
private inputs;
static styles: import("lit").CSSResult;
connectedCallback(): void;
private initializeDigits;
protected firstUpdated(): void;
protected updated(changedProperties: Map): void;
private getFullValue;
private handleInput;
private handleKeyDown;
private handlePaste;
private handleFocus;
/**
* Focus the first empty input or the last input
*/
focus(): void;
/**
* Clear all digits
*/
clear(): void;
private renderDigitInput;
render(): TemplateResult<1>;
}
declare global {
interface HTMLElementTagNameMap {
'consent-otp-input': ConsentOTPInput;
}
}
//# sourceMappingURL=consent-otp-input.d.ts.map