@tanstack/router-core 1.171.15 → 1.171.16-pre.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/cjs/Matches.cjs.map +1 -1
  2. package/dist/cjs/Matches.d.cts +3 -12
  3. package/dist/cjs/await-signal.cjs +21 -0
  4. package/dist/cjs/await-signal.cjs.map +1 -0
  5. package/dist/cjs/await-signal.d.cts +1 -0
  6. package/dist/cjs/index.cjs +3 -1
  7. package/dist/cjs/index.d.cts +3 -2
  8. package/dist/cjs/isServer/client.cjs +2 -0
  9. package/dist/cjs/isServer/client.cjs.map +1 -1
  10. package/dist/cjs/isServer/client.d.cts +1 -0
  11. package/dist/cjs/isServer/development.cjs +2 -0
  12. package/dist/cjs/isServer/development.cjs.map +1 -1
  13. package/dist/cjs/isServer/development.d.cts +1 -0
  14. package/dist/cjs/isServer/server.cjs +2 -0
  15. package/dist/cjs/isServer/server.cjs.map +1 -1
  16. package/dist/cjs/isServer/server.d.cts +1 -0
  17. package/dist/cjs/load-client.cjs +1470 -0
  18. package/dist/cjs/load-client.cjs.map +1 -0
  19. package/dist/cjs/load-client.d.cts +147 -0
  20. package/dist/cjs/load-server.cjs +565 -0
  21. package/dist/cjs/load-server.cjs.map +1 -0
  22. package/dist/cjs/load-server.d.cts +16 -0
  23. package/dist/cjs/redirect.cjs.map +1 -1
  24. package/dist/cjs/redirect.d.cts +0 -1
  25. package/dist/cjs/route.cjs.map +1 -1
  26. package/dist/cjs/router.cjs +187 -442
  27. package/dist/cjs/router.cjs.map +1 -1
  28. package/dist/cjs/router.d.cts +61 -51
  29. package/dist/cjs/ssr/client.cjs +2 -2
  30. package/dist/cjs/ssr/createRequestHandler.cjs +60 -9
  31. package/dist/cjs/ssr/createRequestHandler.cjs.map +1 -1
  32. package/dist/cjs/ssr/createRequestHandler.d.cts +1 -0
  33. package/dist/cjs/ssr/handlerCallback.cjs +49 -4
  34. package/dist/cjs/ssr/handlerCallback.cjs.map +1 -1
  35. package/dist/cjs/ssr/handlerCallback.d.cts +3 -0
  36. package/dist/cjs/ssr/server.cjs +4 -0
  37. package/dist/cjs/ssr/server.d.cts +2 -2
  38. package/dist/cjs/ssr/ssr-client.d.cts +1 -10
  39. package/dist/cjs/ssr/ssr-match-id.cjs +2 -2
  40. package/dist/cjs/ssr/ssr-match-id.cjs.map +1 -1
  41. package/dist/cjs/ssr/ssr-server.cjs +6 -6
  42. package/dist/cjs/ssr/ssr-server.cjs.map +1 -1
  43. package/dist/cjs/ssr/transformStreamWithRouter.cjs +27 -1
  44. package/dist/cjs/ssr/transformStreamWithRouter.cjs.map +1 -1
  45. package/dist/cjs/ssr/transformStreamWithRouter.d.cts +2 -0
  46. package/dist/cjs/ssr/types.d.cts +0 -1
  47. package/dist/cjs/stores.cjs +30 -104
  48. package/dist/cjs/stores.cjs.map +1 -1
  49. package/dist/cjs/stores.d.cts +7 -32
  50. package/dist/cjs/utils.cjs +0 -4
  51. package/dist/cjs/utils.cjs.map +1 -1
  52. package/dist/esm/Matches.d.ts +3 -12
  53. package/dist/esm/Matches.js.map +1 -1
  54. package/dist/esm/await-signal.d.ts +1 -0
  55. package/dist/esm/await-signal.js +21 -0
  56. package/dist/esm/await-signal.js.map +1 -0
  57. package/dist/esm/index.d.ts +3 -2
  58. package/dist/esm/index.js +3 -2
  59. package/dist/esm/isServer/client.d.ts +1 -0
  60. package/dist/esm/isServer/client.js +2 -1
  61. package/dist/esm/isServer/client.js.map +1 -1
  62. package/dist/esm/isServer/development.d.ts +1 -0
  63. package/dist/esm/isServer/development.js +2 -1
  64. package/dist/esm/isServer/development.js.map +1 -1
  65. package/dist/esm/isServer/server.d.ts +1 -0
  66. package/dist/esm/isServer/server.js +2 -1
  67. package/dist/esm/isServer/server.js.map +1 -1
  68. package/dist/esm/load-client.d.ts +147 -0
  69. package/dist/esm/load-client.js +1462 -0
  70. package/dist/esm/load-client.js.map +1 -0
  71. package/dist/esm/load-server.d.ts +16 -0
  72. package/dist/esm/load-server.js +565 -0
  73. package/dist/esm/load-server.js.map +1 -0
  74. package/dist/esm/redirect.d.ts +0 -1
  75. package/dist/esm/redirect.js.map +1 -1
  76. package/dist/esm/route.js.map +1 -1
  77. package/dist/esm/router.d.ts +61 -51
  78. package/dist/esm/router.js +188 -444
  79. package/dist/esm/router.js.map +1 -1
  80. package/dist/esm/ssr/client.js +1 -1
  81. package/dist/esm/ssr/createRequestHandler.d.ts +1 -0
  82. package/dist/esm/ssr/createRequestHandler.js +61 -11
  83. package/dist/esm/ssr/createRequestHandler.js.map +1 -1
  84. package/dist/esm/ssr/handlerCallback.d.ts +3 -0
  85. package/dist/esm/ssr/handlerCallback.js +47 -5
  86. package/dist/esm/ssr/handlerCallback.js.map +1 -1
  87. package/dist/esm/ssr/server.d.ts +2 -2
  88. package/dist/esm/ssr/server.js +3 -3
  89. package/dist/esm/ssr/ssr-client.d.ts +1 -10
  90. package/dist/esm/ssr/ssr-match-id.js +2 -2
  91. package/dist/esm/ssr/ssr-match-id.js.map +1 -1
  92. package/dist/esm/ssr/ssr-server.js +6 -6
  93. package/dist/esm/ssr/ssr-server.js.map +1 -1
  94. package/dist/esm/ssr/transformStreamWithRouter.d.ts +2 -0
  95. package/dist/esm/ssr/transformStreamWithRouter.js +27 -1
  96. package/dist/esm/ssr/transformStreamWithRouter.js.map +1 -1
  97. package/dist/esm/ssr/types.d.ts +0 -1
  98. package/dist/esm/stores.d.ts +7 -32
  99. package/dist/esm/stores.js +30 -104
  100. package/dist/esm/stores.js.map +1 -1
  101. package/dist/esm/utils.js +1 -4
  102. package/dist/esm/utils.js.map +1 -1
  103. package/package.json +3 -3
  104. package/src/Matches.ts +6 -21
  105. package/src/await-signal.ts +27 -0
  106. package/src/index.ts +1 -3
  107. package/src/isServer/client.ts +1 -0
  108. package/src/isServer/development.ts +1 -0
  109. package/src/isServer/server.ts +1 -0
  110. package/src/load-client.ts +2701 -0
  111. package/src/load-server.ts +849 -0
  112. package/src/redirect.ts +0 -1
  113. package/src/route.ts +2 -11
  114. package/src/router.ts +379 -769
  115. package/src/ssr/createRequestHandler.ts +109 -16
  116. package/src/ssr/handlerCallback.ts +76 -10
  117. package/src/ssr/server.ts +4 -1
  118. package/src/ssr/ssr-client.ts +1 -310
  119. package/src/ssr/ssr-match-id.ts +11 -2
  120. package/src/ssr/ssr-server.ts +9 -8
  121. package/src/ssr/transformStreamWithRouter.ts +37 -1
  122. package/src/ssr/types.ts +0 -1
  123. package/src/stores.ts +46 -208
  124. package/dist/cjs/load-matches.cjs +0 -658
  125. package/dist/cjs/load-matches.cjs.map +0 -1
  126. package/dist/cjs/load-matches.d.cts +0 -18
  127. package/dist/cjs/ssr/ssr-client.cjs +0 -183
  128. package/dist/cjs/ssr/ssr-client.cjs.map +0 -1
  129. package/dist/esm/load-matches.d.ts +0 -18
  130. package/dist/esm/load-matches.js +0 -656
  131. package/dist/esm/load-matches.js.map +0 -1
  132. package/dist/esm/ssr/ssr-client.js +0 -183
  133. package/dist/esm/ssr/ssr-client.js.map +0 -1
  134. package/src/load-matches.ts +0 -1278
package/dist/esm/index.js CHANGED
@@ -7,9 +7,10 @@ import { decode, encode } from "./qss.js";
7
7
  import { defaultParseSearch, defaultStringifySearch, parseSearchWith, stringifySearchWith } from "./searchParams.js";
8
8
  import { rootRouteId } from "./root.js";
9
9
  import { isRedirect, isResolvedRedirect, parseRedirect, redirect } from "./redirect.js";
10
+ import { _getAssetMatches, _getRenderedMatches } from "./load-client.js";
10
11
  import { composeRewrites, executeRewriteInput } from "./rewrite.js";
11
12
  import { createNonReactiveMutableStore, createNonReactiveReadonlyStore } from "./stores.js";
12
- import { PathParamError, RouterCore, SearchParamError, defaultSerializeError, getInitialRouterState, getLocationChangeInfo, getMatchedRoutes, lazyFn, trailingSlashOptions } from "./router.js";
13
+ import { PathParamError, RouterCore, SearchParamError, defaultSerializeError, getInitialRouterState, getLocationChangeInfo, lazyFn, trailingSlashOptions } from "./router.js";
13
14
  import { TSR_DEFERRED_PROMISE, defer } from "./defer.js";
14
15
  import { preloadWarning } from "./link.js";
15
16
  import { DEV_STYLES_ATTR, appendUniqueUserTags, createInlineCssStyleAsset, getAssetCrossOrigin, getManifestScriptFormat, getScriptPreloadAttrs, getStylesheetHref, resolveManifestAssetLink, resolveManifestCssLink } from "./manifest.js";
@@ -20,4 +21,4 @@ import { retainSearchParams, stripSearchParams } from "./searchMiddleware.js";
20
21
  import { createSerializationAdapter, makeSerovalPlugin, makeSsrSerovalPlugin } from "./ssr/serializer/transformer.js";
21
22
  import { RawStream, createRawStreamDeserializePlugin, createRawStreamRPCPlugin } from "./ssr/serializer/RawStream.js";
22
23
  import { defaultSerovalPlugins } from "./ssr/serializer/seroval-plugins.js";
23
- export { BaseRootRoute, BaseRoute, BaseRouteApi, DEFAULT_PROTOCOL_ALLOWLIST, DEV_STYLES_ATTR, PathParamError, RawStream, RouterCore, SearchParamError, TSR_DEFERRED_PROMISE, appendUniqueUserTags, buildDevStylesUrl, cleanPath, composeRewrites, createControlledPromise, createInlineCssStyleAsset, createNonReactiveMutableStore, createNonReactiveReadonlyStore, createRawStreamDeserializePlugin, createRawStreamRPCPlugin, createRouterConfig, createSerializationAdapter, decode, deepEqual, defaultGetScrollRestorationKey, defaultParseSearch, defaultSerializeError, defaultSerovalPlugins, defaultStringifySearch, defer, encode, escapeHtml, exactPathTest, executeRewriteInput, functionalUpdate, getAssetCrossOrigin, getElementScrollRestorationEntry, getInitialRouterState, getLocationChangeInfo, getManifestScriptFormat, getMatchedRoutes, getScriptPreloadAttrs, getStylesheetHref, hasKeys, interpolatePath, invariant, isDangerousProtocol, isMatch, isModuleNotFoundError, isNotFound, isPlainArray, isPlainObject, isRedirect, isResolvedRedirect, joinPaths, lazyFn, makeSerovalPlugin, makeSsrSerovalPlugin, notFound, parseRedirect, parseSearchWith, preloadWarning, redirect, removeTrailingSlash, replaceEqualDeep, resolveManifestAssetLink, resolveManifestCssLink, resolvePath, retainSearchParams, rootRouteId, setupScrollRestoration, storageKey, stringifySearchWith, stripSearchParams, trailingSlashOptions, trimPath, trimPathLeft, trimPathRight };
24
+ export { BaseRootRoute, BaseRoute, BaseRouteApi, DEFAULT_PROTOCOL_ALLOWLIST, DEV_STYLES_ATTR, PathParamError, RawStream, RouterCore, SearchParamError, TSR_DEFERRED_PROMISE, _getAssetMatches, _getRenderedMatches, appendUniqueUserTags, buildDevStylesUrl, cleanPath, composeRewrites, createControlledPromise, createInlineCssStyleAsset, createNonReactiveMutableStore, createNonReactiveReadonlyStore, createRawStreamDeserializePlugin, createRawStreamRPCPlugin, createRouterConfig, createSerializationAdapter, decode, deepEqual, defaultGetScrollRestorationKey, defaultParseSearch, defaultSerializeError, defaultSerovalPlugins, defaultStringifySearch, defer, encode, escapeHtml, exactPathTest, executeRewriteInput, functionalUpdate, getAssetCrossOrigin, getElementScrollRestorationEntry, getInitialRouterState, getLocationChangeInfo, getManifestScriptFormat, getScriptPreloadAttrs, getStylesheetHref, hasKeys, interpolatePath, invariant, isDangerousProtocol, isMatch, isModuleNotFoundError, isNotFound, isPlainArray, isPlainObject, isRedirect, isResolvedRedirect, joinPaths, lazyFn, makeSerovalPlugin, makeSsrSerovalPlugin, notFound, parseRedirect, parseSearchWith, preloadWarning, redirect, removeTrailingSlash, replaceEqualDeep, resolveManifestAssetLink, resolveManifestCssLink, resolvePath, retainSearchParams, rootRouteId, setupScrollRestoration, storageKey, stringifySearchWith, stripSearchParams, trailingSlashOptions, trimPath, trimPathLeft, trimPathRight };
@@ -1 +1,2 @@
1
1
  export declare const isServer = false;
2
+ export declare const loadServerRoute: never;
@@ -1,6 +1,7 @@
1
1
  //#region src/isServer/client.ts
2
2
  const isServer = false;
3
+ const loadServerRoute = void 0;
3
4
  //#endregion
4
- export { isServer };
5
+ export { isServer, loadServerRoute };
5
6
 
6
7
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","names":[],"sources":["../../../src/isServer/client.ts"],"sourcesContent":["export const isServer = false\n"],"mappings":";AAAA,MAAa,WAAW"}
1
+ {"version":3,"file":"client.js","names":[],"sources":["../../../src/isServer/client.ts"],"sourcesContent":["export const isServer = false\nexport const loadServerRoute: never = undefined as never\n"],"mappings":";AAAA,MAAa,WAAW;AACxB,MAAa,kBAAyB,KAAA"}
@@ -1 +1,2 @@
1
1
  export declare const isServer: boolean | undefined;
2
+ export { loadServerRoute } from '../load-server.js';
@@ -1,6 +1,7 @@
1
+ import { loadServerRoute } from "../load-server.js";
1
2
  //#region src/isServer/development.ts
2
3
  const isServer = void 0;
3
4
  //#endregion
4
- export { isServer };
5
+ export { isServer, loadServerRoute };
5
6
 
6
7
  //# sourceMappingURL=development.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"development.js","names":[],"sources":["../../../src/isServer/development.ts"],"sourcesContent":["// Development/test mode - returns undefined so fallback to router.isServer is used\nexport const isServer: boolean | undefined = undefined\n"],"mappings":";AACA,MAAa,WAAgC,KAAA"}
1
+ {"version":3,"file":"development.js","names":[],"sources":["../../../src/isServer/development.ts"],"sourcesContent":["// Development/test mode - returns undefined so fallback to router.isServer is used\nexport const isServer: boolean | undefined = undefined\nexport { loadServerRoute } from '../load-server'\n"],"mappings":";;AACA,MAAa,WAAgC,KAAA"}
@@ -1 +1,2 @@
1
1
  export declare const isServer: boolean | undefined;
2
+ export { loadServerRoute } from '../load-server.js';
@@ -1,6 +1,7 @@
1
+ import { loadServerRoute } from "../load-server.js";
1
2
  //#region src/isServer/server.ts
2
3
  const isServer = process.env.NODE_ENV === "test" ? void 0 : true;
3
4
  //#endregion
4
- export { isServer };
5
+ export { isServer, loadServerRoute };
5
6
 
6
7
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","names":[],"sources":["../../../src/isServer/server.ts"],"sourcesContent":["export const isServer = process.env.NODE_ENV === 'test' ? undefined : true\n"],"mappings":";AAAA,MAAa,WAAA,QAAA,IAAA,aAAoC,SAAS,KAAA,IAAY"}
1
+ {"version":3,"file":"server.js","names":[],"sources":["../../../src/isServer/server.ts"],"sourcesContent":["export const isServer = process.env.NODE_ENV === 'test' ? undefined : true\nexport { loadServerRoute } from '../load-server'\n"],"mappings":";;AAAA,MAAa,WAAA,QAAA,IAAA,aAAoC,SAAS,KAAA,IAAY"}
@@ -0,0 +1,147 @@
1
+ import { GLOBAL_SEROVAL, GLOBAL_TSR } from './ssr/constants.js';
2
+ import { TsrSsrGlobal } from './ssr/types.js';
3
+ import { ParsedLocation } from './location.js';
4
+ import { AnyRouteMatch } from './Matches.js';
5
+ import { NotFoundError } from './not-found.js';
6
+ import { AnyRoute } from './route.js';
7
+ import { AnyRedirect } from './redirect.js';
8
+ import { AnyRouter } from './router.js';
9
+ export declare function replaceRouteChunk(route: AnyRoute, lazyFn: AnyRoute['lazyFn']): void;
10
+ export declare function loadRouteChunk(route: AnyRoute, componentType?: 'errorComponent' | 'notFoundComponent' | false): Promise<void> | undefined;
11
+ /** Return the structural lane through the first terminal render boundary. */
12
+ export declare function _getRenderedMatches(matches: Array<AnyRouteMatch>): Array<AnyRouteMatch>;
13
+ /** Return the lane whose document assets belong to the current presentation. */
14
+ export declare function _getAssetMatches(matches: Array<AnyRouteMatch>): Array<AnyRouteMatch>;
15
+ declare const lanePhase: unique symbol;
16
+ type LanePhase = 'matched' | 'contextualized' | 'reduced' | 'projected';
17
+ /**
18
+ * Lane matches carry their lane's phase so functions can demand evidence of
19
+ * pipeline position (e.g. `commitMatches` only accepts a projected lane's
20
+ * matches). The brand is phantom — it never exists at runtime.
21
+ */
22
+ type LaneMatches<TPhase extends LanePhase> = Array<WorkMatch> & {
23
+ readonly [lanePhase]?: TPhase;
24
+ };
25
+ type Lane<TPhase extends LanePhase> = [
26
+ location: ParsedLocation,
27
+ matches: LaneMatches<TPhase>,
28
+ background?: Array<BackgroundLoaderTask>,
29
+ backgroundSettlement?: Promise<IndexedOutcome | undefined>
30
+ ] & {
31
+ readonly [lanePhase]?: TPhase;
32
+ };
33
+ type ReducedLane = Lane<'reduced'>;
34
+ type ProjectedLane = Lane<'projected'>;
35
+ declare const SUCCESS = 0;
36
+ declare const ERROR = 1;
37
+ declare const NOT_FOUND = 2;
38
+ declare const REDIRECTED = 3;
39
+ declare const CANCELED = 4;
40
+ type LoaderOutcome = [typeof SUCCESS, data: unknown] | [typeof ERROR, error: unknown] | [typeof NOT_FOUND, error: NotFoundError] | [typeof REDIRECTED, redirect: AnyRedirect] | [typeof CANCELED];
41
+ type IndexedOutcome = [index: number, outcome: LoaderOutcome, boundary?: number];
42
+ export type LoaderFlight = [
43
+ outcome: Promise<LoaderOutcome>,
44
+ controller: AbortController,
45
+ leases: number
46
+ ];
47
+ type WorkMatch = AnyRouteMatch & {
48
+ _flight?: LoaderFlight;
49
+ };
50
+ declare const matchPhase: unique symbol;
51
+ /**
52
+ * A match whose loader outcome has been applied by `settleInto`, which is the
53
+ * sole granter of this brand (phantom, zero-runtime). Consumers that require
54
+ * it — e.g. `cacheLoaderMatch` — can only be reached after settlement, so the
55
+ * compiler enforces the loader→settle→cache ordering. Sources that arrive
56
+ * already settled (dehydrated server data) must cast at a named boundary.
57
+ */
58
+ type SettledMatch = WorkMatch & {
59
+ readonly [matchPhase]: 'settled';
60
+ };
61
+ export type LaneInputs = [
62
+ routeTree: AnyRoute,
63
+ context: unknown,
64
+ additionalContext: unknown,
65
+ state: object,
66
+ search: object,
67
+ maskedLocation: [
68
+ href: string,
69
+ state: object,
70
+ search: object,
71
+ unmaskOnReload: boolean | undefined
72
+ ] | undefined
73
+ ];
74
+ export type ActivePreload = [
75
+ matches: Array<AnyRouteMatch>,
76
+ controller: AbortController,
77
+ result: Promise<LaneResult>,
78
+ semanticOwner: Array<AnyRouteMatch>,
79
+ inputs: LaneInputs,
80
+ redirects: number
81
+ ];
82
+ export type LoadTransaction = [
83
+ controller: AbortController,
84
+ redirects: number,
85
+ location: ParsedLocation,
86
+ matches: Array<AnyRouteMatch>,
87
+ startedAt: number,
88
+ done: Promise<void>,
89
+ /**
90
+ * Dev-only HMR refresh mode. Presence is the mode flag; a refresh always
91
+ * carries the presentation it started from, while the hydration handoff is
92
+ * genuinely optional — the tuple makes a half-armed refresh unrepresentable.
93
+ */
94
+ refresh?: [
95
+ presentation: Array<AnyRouteMatch>,
96
+ handoff: NonNullable<AnyRouter['_handoff']> | undefined
97
+ ]
98
+ ];
99
+ export type PendingSession = [
100
+ owner: LoadTransaction,
101
+ boundary: number,
102
+ /** Pending reveal time until acknowledged, then minimum-visible-until time. */
103
+ deadline: number,
104
+ timer?: ReturnType<typeof setTimeout>,
105
+ ack?: Promise<boolean>,
106
+ component?: unknown
107
+ ];
108
+ type CoordinatorRouter = AnyRouter & {
109
+ /** Whole speculative lanes that a matching navigation may adopt. */
110
+ _preloads?: Map<string, ActivePreload>;
111
+ _refreshNextLoad?: boolean;
112
+ _rollbackRefresh?: () => void;
113
+ _cancelTransition?: () => void;
114
+ };
115
+ type BackgroundLoaderTask = [
116
+ index: number,
117
+ outcome: Promise<LoaderOutcome>,
118
+ ready: Promise<IndexedOutcome | undefined>,
119
+ candidate: WorkMatch
120
+ ];
121
+ type ControlOutcome = [typeof REDIRECTED, redirect: AnyRedirect] | [typeof CANCELED];
122
+ type LaneResult = ProjectedLane | ControlOutcome;
123
+ export declare function waitFor<T>(value: T | PromiseLike<T>, signal: AbortSignal): Promise<T>;
124
+ export declare function getRoute(router: AnyRouter, match: WorkMatch): AnyRoute;
125
+ export declare function navigateFrom(router: AnyRouter, location: ParsedLocation): (opts: any) => Promise<void>;
126
+ export declare function laneInputs(router: AnyRouter, location: ParsedLocation): LaneInputs;
127
+ /**
128
+ * Not passing in a `next` ownership recipient
129
+ * is equivalent to discarding the match resources
130
+ */
131
+ export declare function transferMatchResources(router: AnyRouter, previous: Array<AnyRouteMatch>, next?: Array<AnyRouteMatch>): void;
132
+ export declare function cacheLoaderMatch(router: CoordinatorRouter, match: SettledMatch, planned: AnyRouteMatch | undefined): void;
133
+ export declare function projectLane(router: AnyRouter, lane: ReducedLane, signal: AbortSignal, start?: number, end?: number): Promise<ProjectedLane>;
134
+ export declare function loadClientRoute(router: CoordinatorRouter, opts?: {
135
+ sync?: boolean;
136
+ _dedupe?: boolean;
137
+ }): Promise<void>;
138
+ export declare function refreshClientRoute(router: CoordinatorRouter): Promise<void>;
139
+ export declare function preloadClientRoute(router: CoordinatorRouter, opts: any, redirects?: number): Promise<Array<AnyRouteMatch> | undefined>;
140
+ declare global {
141
+ interface Window {
142
+ [GLOBAL_TSR]?: TsrSsrGlobal;
143
+ [GLOBAL_SEROVAL]?: any;
144
+ }
145
+ }
146
+ export declare function hydrate(router: AnyRouter): Promise<void>;
147
+ export {};