import * as React from 'react'; import { FieldFeedbackValidation } from './FieldFeedbackValidation'; import { FormWithConstraintsChildContext } from './FormWithConstraints'; import { InputElement } from './InputElement'; import { Nullable } from './Nullable'; export interface FieldFeedbacksProps { for?: string; /** * first-* => stops on the first * encountered * no => shows everything * Default is 'first-error' */ stop: 'first' | 'first-error' | 'first-warning' | 'first-info' | 'no'; children?: React.ReactNode; } export declare type FieldFeedbacksContext = FormWithConstraintsChildContext & Partial>; export interface FieldFeedbacksChildContext { fieldFeedbacks: FieldFeedbacks; } declare class FieldFeedbacksComponent extends React.PureComponent { } declare const FieldFeedbacks_base: { new (...args: any[]): { validateFieldEventEmitter: import("./EventEmitter").EventEmitter<[InputElement], FieldFeedbackValidation | (FieldFeedbackValidation | undefined)[] | undefined>; emitValidateFieldEvent(input: InputElement): Promise<(FieldFeedbackValidation | (FieldFeedbackValidation | undefined)[] | undefined)[]>; addValidateFieldEventListener(listener: (input: InputElement) => FieldFeedbackValidation | (FieldFeedbackValidation | undefined)[] | Promise | undefined): void; removeValidateFieldEventListener(listener: (input: InputElement) => FieldFeedbackValidation | (FieldFeedbackValidation | undefined)[] | Promise | undefined): void; }; } & typeof FieldFeedbacksComponent; export declare class FieldFeedbacks extends FieldFeedbacks_base implements React.ChildContextProvider { static defaultProps: FieldFeedbacksProps; static contextTypes: React.ValidationMap; context: FieldFeedbacksContext; static childContextTypes: React.ValidationMap; getChildContext(): FieldFeedbacksChildContext; readonly key: string; readonly fieldName: string; constructor(props: FieldFeedbacksProps, context: FieldFeedbacksContext); private fieldFeedbackKeyCounter; computeFieldFeedbackKey(): string; addFieldFeedback(): string; componentDidMount(): void; componentWillUnmount(): void; validate: (input: InputElement) => Promise<(FieldFeedbackValidation | undefined)[] | undefined>; _validate(input: InputElement): Promise<(FieldFeedbackValidation | undefined)[]>; render(): string | number | boolean | React.ReactElement> | React.ReactFragment | null; } export {};