import BaseFoundation, { DefaultAdapter } from '../base/foundation'; export interface PinCodeBaseProps { disabled?: boolean; value?: string; format?: "number" | "mixed" | RegExp | ((value: string) => boolean); onChange: (value: string) => void; defaultValue?: string; count?: number; autoFocus?: boolean; onComplete?: (value: string) => void; } export interface PinCodeBaseState { valueList: string[]; currentActiveIndex: number; } export interface PinCodeAdapter

, S = Record> extends DefaultAdapter { onCurrentActiveIndexChange: (index: number) => Promise | void; notifyValueChange: (values: string[]) => void; changeSpecificInputFocusState: (index: number, state: "blur" | "focus") => void; updateValueList: (newValueList: PinCodeBaseState['valueList']) => Promise | void; } declare class PinCodeFoundation

, S = Record> extends BaseFoundation, P, S> { constructor(adapter: PinCodeAdapter); static numberReg: RegExp; static mixedReg: RegExp; handleCurrentActiveIndexChange: (index: number, state: "focus" | "blur") => void; completeSingleInput: (i: number, singleInputValue: string) => Promise; validateValue: (value?: string) => boolean; updateValueList: (newValueList: PinCodeBaseState['valueList']) => Promise; handlePaste: (e: ClipboardEvent, startInputIndex: number) => Promise; handleKeyDownOnSingleInput: (e: KeyboardEvent, index: number) => void; } export default PinCodeFoundation;