import type { ChangeEvent, FocusEvent } from 'react'; import type { InputDateProps } from '../InputDate'; import type { InputPasswordProps } from '../InputPassword'; import type { InputTextProps } from '../InputText'; interface BaseInputProps { name: string; id?: string; type?: 'date' | 'password' | string; onFocus?: T extends never ? () => void : (e: FocusEvent) => void; onBlur?: T extends never ? () => void : (e: FocusEvent) => void; onChange: T extends never ? (value: V) => void : (value: V, e: ChangeEvent) => void; } interface BaseInputDateProps extends BaseInputProps { type: 'date'; } interface BaseInputPasswordProps extends BaseInputProps { type: 'password'; } interface BaseInputTextProps extends BaseInputProps { type?: string; } export type InputProps = (BaseInputDateProps & InputDateProps) | (BaseInputPasswordProps & InputPasswordProps) | (BaseInputTextProps & InputTextProps); export declare const Input: import("react").ForwardRefExoticComponent<((BaseInputDateProps & InputDateProps) | (BaseInputPasswordProps & InputPasswordProps) | Omit & import("react").InputHTMLAttributes, "ref">) & import("react").RefAttributes>; export {}; //# sourceMappingURL=index.d.ts.map