import { NavigateOptions, ToOptions } from './link.js'; import { ParsedLocation } from './location.js'; import { RoutePaths } from './routeInfo.js'; import { AnyRouter, RegisteredRouter, ViewTransitionOptions } from './router.js'; export interface MatchLocation { to?: string | number | null; fuzzy?: boolean; caseSensitive?: boolean; from?: string; } export interface CommitLocationOptions { replace?: boolean; resetScroll?: boolean; hashScrollIntoView?: boolean | ScrollIntoViewOptions; viewTransition?: boolean | ViewTransitionOptions; /** * @deprecated All navigations use React transitions under the hood now **/ startTransition?: boolean; ignoreBlocker?: boolean; } export type NavigateFn = | string = string, TMaskFrom extends RoutePaths | string = TFrom, TMaskTo extends string = ''>(opts: NavigateOptions) => Promise | void; export type BuildLocationFn = | string = string, TMaskFrom extends RoutePaths | string = TFrom, TMaskTo extends string = ''>(opts: ToOptions & { leaveParams?: boolean; _includeValidateSearch?: boolean; }) => ParsedLocation;