import type { Query, TransitionName, TransitionStage } from './types'; export type RouteContextType = { path: string; params: Record; query: Query; hash?: string; meta?: M; }; export type RouterState = { loading: boolean; path: string; pendingPath: string; }; export type TransitionState = { name: TransitionName; stage: TransitionStage; }; export declare const LoaderDataContext: import("react").Context; export declare const RouteContext: import("react").Context | null>; export declare const ParamsContext: import("react").Context; export declare const RouterStateContext: import("react").Context; export declare const TransitionContext: import("react").Context; export declare function useLoaderData(): T | undefined; export declare function useRouteContext(): RouteContextType; export declare function useParams

= Record>(): P; export declare function useQuery = Record>(): Q; export declare function useNavigation(): RouterState; export declare function useTransition(): TransitionState; export type RouterData = Record, Q extends Record = Record> = { data?: T; params: P; query: Q; path: string; meta?: any; }; export declare function useSafeLoaderData(): T | undefined; export declare function useRouterData = Record, Q extends Record = Record>(): RouterData;