import { BaseSyntheticEvent, Dispatch, RefObject, SetStateAction } from "react"; declare const Validators: { required: (value: string) => boolean; email: (value: string) => boolean; password: (value: string) => boolean; }; export declare type OnChangeHandler = (e: BaseSyntheticEvent) => void; export declare type UseInput = { defaultValue: T; value: T; reset: () => void; setValue: Dispatch>; onChange: OnChangeHandler; isValid: boolean; dirty: boolean; ref: RefObject; bind: { onChange: OnChangeHandler; defaultValue?: T; value?: T; type?: string; placeholder?: string; }; }; declare type ValidationFunction = (value: T) => boolean; export interface UseInputOptions { placeholder?: string; defaultValue?: T; validate?: ValidationFunction[]; bind?: any; } export declare function useInput(options?: T | UseInputOptions): UseInput; export default useInput; export { Validators, };