import { MutableRefObject } from 'react';
import { Editor } from '@tiptap/react';

export interface CachedTabEditorRenderEntry {
    tabId: string;
    editor: Editor;
    isActive: boolean;
}
interface UseTabEditorCacheArgs {
    activeTabId: string;
    tabIds?: string[];
    activeTabIdRef: MutableRefObject<string>;
    activeEditorRef: MutableRefObject<Editor | null>;
    editorRef?: MutableRefObject<Editor | null>;
    readyState: boolean;
    createEditorForTab: (tabId: string) => Editor;
    destroyEditor: (editor: Editor) => void;
}
export declare const useTabEditorCache: ({ activeTabId, tabIds, activeTabIdRef, activeEditorRef, editorRef, readyState, createEditorForTab, destroyEditor, }: UseTabEditorCacheArgs) => {
    editor: Editor | null;
    cachedEditorEntries: CachedTabEditorRenderEntry[];
};
export {};
