export interface IOTPInput { /** * Maximum length of the OTP * @default 6 */ maxLength?: number; /** * Current value of the OTP */ value: string; /** * Callback when value changes */ onChange: (value: string) => void; /** * Auto focus the input on mount * @default false */ autoFocus?: boolean; /** * Disable the input * @default false */ disabled?: boolean; /** * Input type - numeric only or alphanumeric * @default 'numeric' */ type?: 'numeric' | 'alphanumeric'; /** * Custom styles */ style?: any; } export interface IOTPContext { value: string; activeIndex: number; isFocused: boolean; maxLength: number; } export interface IOTPGroup { children: React.ReactNode; }