import React, { ReactNode } from 'react';
interface ErrorBoundaryProps {
    children: ReactNode;
    renderErrorComponent?: (errorMessage: string) => ReactNode;
    onError?: (error: Error, errorInfo: React.ErrorInfo) => void;
    onMount?: () => void;
}
interface ErrorBoundaryState {
    hasError: boolean;
    error: Error | null;
    errorInfo: React.ErrorInfo | null;
}
declare class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryState> {
    constructor(props: ErrorBoundaryProps);
    static getDerivedStateFromError(error: Error): Partial<ErrorBoundaryState>;
    componentDidMount(): void;
    componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
    render(): React.ReactNode;
}
export default ErrorBoundary;
