import React, { CSSProperties } from 'react'; import PropTypes from 'prop-types'; import PinCodeFoundation, { PinCodeAdapter, PinCodeBaseProps, PinCodeBaseState } from '@douyinfe/semi-foundation/lib/cjs/pincode/foundation'; import BaseComponent from '../_base/baseComponent'; import { InputProps } from '../input'; import '@douyinfe/semi-foundation/lib/cjs/pincode/pincode.css'; export interface PinCodeProps extends PinCodeBaseProps { className?: string; style?: CSSProperties; size?: InputProps['size']; } export interface PinCodeState extends PinCodeBaseState { } declare class PinCode extends BaseComponent { static __SemiComponentName__: string; static propTypes: { value: PropTypes.Requireable; format: PropTypes.Requireable>; onChange: PropTypes.Requireable<(...args: any[]) => any>; defaultValue: PropTypes.Requireable; count: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; autoFocus: PropTypes.Requireable; onComplete: PropTypes.Requireable<(...args: any[]) => any>; }; static defaultProps: any; inputDOMList: HTMLInputElement[]; foundation: PinCodeFoundation; constructor(props: PinCodeProps); componentDidUpdate(prevProps: Readonly, prevState: Readonly, snapshot?: any): void; get adapter(): PinCodeAdapter; focus: (index: number) => void; blur: (index: number) => void; renderSingleInput: (index: number) => React.JSX.Element; render(): React.JSX.Element; } export default PinCode;