Files
med-notes/.pnpm-store/v10/files/d5/d3a530c2701985c6ffa3e383cf5d694a590044e0acf72126113fd1d3e23dc949f091571b14de5936040103705a0c45a8ef054fdc252fc35465b52bc018b778
2025-05-09 05:30:08 +02:00

10 lines
1010 B
Plaintext

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