import React, { PureComponent } from 'react'; import { ValidationEvents, ValidationRule } from '../../types'; export declare enum InputStatus { Invalid = "invalid", Valid = "valid" } interface Props extends React.HTMLProps { validationEvents?: ValidationEvents; hideErrorMessage?: boolean; onBlur?: (event: React.FocusEvent, status?: InputStatus) => void; onFocus?: (event: React.FocusEvent, status?: InputStatus) => void; onChange?: (event: React.ChangeEvent, status?: InputStatus) => void; } interface State { error: string | null; } export declare class Input extends PureComponent { static defaultProps: { className: string; }; state: { error: null; }; readonly status: InputStatus; readonly isInvalid: boolean; validatorAsync: (validationRules: ValidationRule[]) => (evt: React.ChangeEvent) => void; populateEventPropsWithStatus: (restProps: any, validationEvents: ValidationEvents | undefined) => any; render(): JSX.Element; } export {};