import { MutableRefObject, RefObject } from 'react';
interface UseEntityNavigationStateOptions {
    activeTab: string;
    activeContentRef: RefObject<HTMLDivElement>;
    contextEntity: any;
    state: any;
    restoreInProgressRef: MutableRefObject<boolean>;
    showAddPanel: boolean;
    reverseSidebarVisible: boolean;
    highlightRequiredProperties: boolean;
    iconView: boolean;
    tabPaneWidth: number;
    onSaveCrate: () => void;
    debugScroll?: (...args: any[]) => void;
}
interface CaptureViewContextOptions {
    updateActiveTab?: boolean;
}
declare const useEntityNavigationState: ({ activeTab, activeContentRef, contextEntity, state, restoreInProgressRef, showAddPanel, reverseSidebarVisible, highlightRequiredProperties, iconView, tabPaneWidth, onSaveCrate, debugScroll, }: UseEntityNavigationStateOptions) => {
    captureCurrentViewContext: (tabName?: string) => void;
    captureViewContext: (tabName?: string, explicitScrollTop?: number, options?: CaptureViewContextOptions) => void;
    saveCratePreservingView: () => void;
    saveTabToState: (tabName: string) => void;
};
export default useEntityNavigationState;
