import * as React from "react"; import * as PropTypes from "prop-types"; import { FormContext } from "../Form"; export declare enum Event { onChange = "onChange", onFocus = "onFocus", onBlur = "onBlur" } export interface EventInterceptorProps { onBlur?: (attribute: string, value: string) => void; onFocus?: (attribute: string, value: string) => void; onChange?: (attribute: string, nextValue: string, prevValue: string) => void; events: Event[]; } export declare const EventInterceptorPropTypes: { [P in keyof EventInterceptorProps]: PropTypes.Validator; }; export interface EventInterceptorContext { onChange: (attribute: string, value: any) => void; onFocus?: (attribute: string, value: any) => void; onBlur?: (attribute: string, value: any) => void; } export declare const EventInterceptorContextTypes: { [P in keyof EventInterceptorContext]: PropTypes.Validator; }; export declare class EventInterceptor extends React.Component { static readonly childContextTypes: { onChange: PropTypes.Validator; onFocus?: PropTypes.Validator | undefined; onBlur?: PropTypes.Validator | undefined; }; static readonly propTypes: { onBlur?: PropTypes.Validator | undefined; onFocus?: PropTypes.Validator | undefined; onChange?: PropTypes.Validator | undefined; events: PropTypes.Validator; }; static readonly contextTypes: { values: PropTypes.Validator; addError: PropTypes.Validator; getError: PropTypes.Validator; onChange: PropTypes.Validator; onMount: PropTypes.Validator; onUnmount: PropTypes.Validator; onReset: PropTypes.Validator; readonly validate: PropTypes.Validator; readonly getDOMElement: PropTypes.Validator; isLoading: PropTypes.Validator; }; readonly context: FormContext; getChildContext(): EventInterceptorContext; render(): React.ReactNode; protected handleChange: (attribute: string, value: any) => void; protected getValue: (name: string) => string; }