import React from 'react';
import { PartialState, NavigationState, NavigationContainerRef } from '@react-navigation/native';
export declare const RootNavigation: {
    navigate(name: string): void;
    goBack(): void;
    resetRoot(state?: PartialState<NavigationState> | NavigationState): void;
    getRootState(): NavigationState;
};
export declare const setRootNavigation: (ref: React.RefObject<NavigationContainerRef>) => void;
/**
 * Gets the current screen from any navigation state.
 */
export declare function getActiveRouteName(state: NavigationState | PartialState<NavigationState>): any;
/**
 * Hook that handles Android back button presses and forwards those on to
 * the navigation or allows exiting the app.
 */
export declare function useBackButtonHandler(ref: React.RefObject<NavigationContainerRef>, canExit: (routeName: string) => boolean): void;
/**
 * Custom hook for persisting navigation state.
 */
export declare function useNavigationPersistence(storage: any, persistenceKey: string): {
    onNavigationStateChange: (state: any) => void;
    restoreState: () => Promise<void>;
    initialNavigationState: undefined;
};
//# sourceMappingURL=navigation-utilities.d.ts.map