import { PathnameWithSearchOrHash, RouteId, RouteIdWithSearchOrHash, RouteParams } from '$app/types'; type StripSearchOrHash = T extends `${infer Pathname}?${string}` ? Pathname : T extends `${infer Pathname}#${string}` ? Pathname : T; export type ResolveArgs = T extends RouteId ? RouteParams extends Record ? [route: T] : [route: T, params: RouteParams] : StripSearchOrHash extends infer U extends RouteId ? RouteParams extends Record ? [route: T] : [route: T, params: RouteParams] : [route: T];