import React from "react"; type AssistantUiRecoverableErrorKind = "assistant-ui-stale-message-index" | "assistant-ui-duplicate-resource-key" | "assistant-ui-react-fiber-unmount"; export declare function assistantUiRecoverableRenderErrorKind(error: unknown): AssistantUiRecoverableErrorKind | null; export declare function isAssistantUiStaleIndexError(error: unknown): boolean; export declare function isAssistantUiRecoverableRenderError(error: unknown): boolean; type AssistantUiStaleIndexErrorBoundaryProps = { resetKey: string; /** Remount children when the recovery scope changes. */ remountOnResetKey?: boolean; componentName?: string; children: React.ReactNode; }; type AssistantUiStaleIndexErrorBoundaryState = { error: Error | null; retryToken: number; recovery: { signature: string; retryCount: number; } | null; }; export declare class AssistantUiStaleIndexErrorBoundary extends React.Component { state: AssistantUiStaleIndexErrorBoundaryState; private retryTimer; private recoverySignature; static getDerivedStateFromError(error: unknown): Partial; componentDidCatch(error: unknown, info: React.ErrorInfo): void; componentDidUpdate(prevProps: AssistantUiStaleIndexErrorBoundaryProps, prevState: AssistantUiStaleIndexErrorBoundaryState): void; componentWillUnmount(): void; render(): React.JSX.Element | null; } export declare function AssistantMessageListErrorBoundary({ resetKey, children, }: { resetKey: string; children: React.ReactNode; }): React.JSX.Element; export {}; //# sourceMappingURL=assistant-ui-recovery.d.ts.map