/**
 * Error Boundaries Index
 *
 * Centralized exports for all specialized error boundary components.
 * These components provide robust error handling for different failure scenarios
 * in the React/Ink terminal UI.
 */
import React, { ReactNode } from 'react';
import { ToolErrorBoundary, withToolErrorBoundary, ToolErrorType } from './tool-error-boundary';
import { NetworkErrorBoundary, withNetworkErrorBoundary, NetworkErrorType, ConnectionStatus } from './network-error-boundary';
import { FileErrorBoundary, withFileErrorBoundary, FileErrorType } from './file-error-boundary';
export { ToolErrorBoundary, withToolErrorBoundary, ToolErrorType };
export { NetworkErrorBoundary, withNetworkErrorBoundary, NetworkErrorType, ConnectionStatus };
export { FileErrorBoundary, withFileErrorBoundary, FileErrorType };
export { ErrorBoundary, withErrorBoundary, StreamingErrorBoundary } from '../ErrorBoundary';
/**
 * Composite error boundary that combines all specialized boundaries
 *
 * Usage:
 * ```tsx
 * <CompositeErrorBoundary>
 *   <YourComponent />
 * </CompositeErrorBoundary>
 * ```
 */
interface CompositeErrorBoundaryProps {
    children: ReactNode;
    toolName?: string;
    apiEndpoint?: string;
    filePath?: string;
    showDetails?: boolean;
    onError?: (error: Error, source: 'tool' | 'network' | 'file') => void;
}
export declare const CompositeErrorBoundary: React.FC<CompositeErrorBoundaryProps>;
/**
 * Error boundary selector - automatically chooses the appropriate boundary based on error type
 */
export declare function createErrorBoundary(type: 'tool' | 'network' | 'file' | 'composite'): typeof FileErrorBoundary | typeof ToolErrorBoundary | typeof NetworkErrorBoundary | React.FC<CompositeErrorBoundaryProps>;
/**
 * Helper to detect error type from error object
 */
export declare function detectErrorBoundaryType(error: Error): 'tool' | 'network' | 'file' | 'unknown';
declare const _default: {
    ToolErrorBoundary: typeof ToolErrorBoundary;
    NetworkErrorBoundary: typeof NetworkErrorBoundary;
    FileErrorBoundary: typeof FileErrorBoundary;
    CompositeErrorBoundary: React.FC<CompositeErrorBoundaryProps>;
    withToolErrorBoundary: typeof withToolErrorBoundary;
    withNetworkErrorBoundary: typeof withNetworkErrorBoundary;
    withFileErrorBoundary: typeof withFileErrorBoundary;
    createErrorBoundary: typeof createErrorBoundary;
    detectErrorBoundaryType: typeof detectErrorBoundaryType;
};
export default _default;
