import { AllContext, RouteById } from './routeInfo.js'; import { AnyRouter } from './router.js'; import { Expand, StrictOrFrom } from './utils.js'; export interface UseRouteContextBaseOptions { select?: (search: ResolveUseRouteContext) => TSelected; } export type UseRouteContextOptions = StrictOrFrom & UseRouteContextBaseOptions; export type ResolveUseRouteContext = TStrict extends false ? AllContext : Expand['types']['allContext']>; export type UseRouteContextResult = unknown extends TSelected ? ResolveUseRouteContext : TSelected;