import type { ExtractParams, TransitionName } from './types';
export type NavigateOpts
= {
transition?: TransitionName;
forceReload?: boolean;
params?: ExtractParams
;
query?: Record;
hash?: string;
shallow?: boolean;
duration?: number;
};
export declare function addBeforeNavigationHook(fn: (path: string) => boolean | Promise): void;
export declare function addAfterNavigationHook(fn: (path: string) => void | Promise): void;
export declare function navigate(path: P, opts?: NavigateOpts
): Promise;
export declare namespace navigate {
var replace: (path: P, opts?: NavigateOpts
) => Promise;
}
export declare function redirect(path: P, opts?: NavigateOpts
): Promise;
export declare function useNavigate(): {
(path: P, opts?: NavigateOpts
): Promise;
replace(path: P, opts?: NavigateOpts
): Promise;
};
export declare function useRouteMatch(pathPattern: string): boolean;
export declare function usePrefetch(path: P, opts?: NavigateOpts
): () => void;