import * as React from "react";
import { FormContextInterface } from "./FormContext";
import { FormProviderProps } from "./FormProviderProps";
interface FormProviderState {
    loading: boolean;
    unparsedError?: any;
}
export declare class FormProvider extends React.Component<FormProviderProps, FormProviderState> {
    static readonly propTypes: import("prop-types").ValidationMap<FormProviderProps>;
    readonly state: FormProviderState;
    private registeredElements;
    render(): React.ReactNode;
    protected readonly childContext: FormContextInterface;
    protected registerElement: (attribute: string, element: any) => boolean;
    protected unregisterElement: (attribute: string) => void;
    protected handleSubmit: () => Promise<void>;
    protected handleValidate: (groups?: string[]) => Promise<void>;
    protected handleSetModelValue: (attribute: string, value: any) => void;
    protected readonly hasErrors: boolean;
    private focusOnError;
    private tryToParseError;
    private getBeforeSubmitHandler;
    private getAfterSubmitHandler;
}
export {};
