@rangojs/router 0.0.0-experimental.tapabs3 → 0.1.1

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 (1350) hide show
  1. package/dist/bin/rango.js +19 -41
  2. package/dist/types/__internal.d.ts +127 -0
  3. package/dist/types/bin/rango.d.ts +1 -0
  4. package/dist/types/browser/action-coordinator.d.ts +57 -0
  5. package/dist/types/browser/action-fence.d.ts +33 -0
  6. package/dist/types/browser/app-shell.d.ts +34 -0
  7. package/dist/types/browser/app-version.d.ts +6 -0
  8. package/dist/types/browser/connection-warmup.d.ts +31 -0
  9. package/dist/types/browser/cookie-name.d.ts +66 -0
  10. package/dist/types/browser/dev-discovery.d.ts +11 -0
  11. package/dist/types/browser/event-controller.d.ts +221 -0
  12. package/dist/types/browser/history-state.d.ts +26 -0
  13. package/dist/types/browser/index.d.ts +1 -0
  14. package/dist/types/browser/intercept-utils.d.ts +30 -0
  15. package/dist/types/browser/invalidate-client-cache.d.ts +17 -0
  16. package/dist/types/browser/link-interceptor.d.ts +43 -0
  17. package/dist/types/browser/logging.d.ts +33 -0
  18. package/dist/types/browser/merge-segment-loaders.d.ts +38 -0
  19. package/dist/types/browser/navigation-bridge.d.ts +27 -0
  20. package/dist/types/browser/navigation-client.d.ts +17 -0
  21. package/dist/types/browser/navigation-store-handle.d.ts +25 -0
  22. package/dist/types/browser/navigation-store.d.ts +85 -0
  23. package/dist/types/browser/navigation-transaction.d.ts +75 -0
  24. package/dist/types/browser/network-error-handler.d.ts +35 -0
  25. package/dist/types/browser/partial-update.d.ts +61 -0
  26. package/dist/types/browser/prefetch/cache.d.ts +183 -0
  27. package/dist/types/browser/prefetch/fetch.d.ts +52 -0
  28. package/dist/types/browser/prefetch/loader.d.ts +10 -0
  29. package/dist/types/browser/prefetch/observer.d.ts +27 -0
  30. package/dist/types/browser/prefetch/policy.d.ts +13 -0
  31. package/dist/types/browser/prefetch/queue.d.ts +48 -0
  32. package/dist/types/browser/prefetch/resource-ready.d.ts +28 -0
  33. package/dist/types/browser/prefetch/runtime.d.ts +3 -0
  34. package/dist/types/browser/rango-state.d.ts +52 -0
  35. package/dist/types/browser/react/Link.d.ts +140 -0
  36. package/dist/types/browser/react/NavigationProvider.d.ts +88 -0
  37. package/dist/types/browser/react/ScrollRestoration.d.ts +78 -0
  38. package/dist/types/browser/react/context.d.ts +54 -0
  39. package/dist/types/browser/react/filter-segment-order.d.ts +35 -0
  40. package/dist/types/browser/react/index.d.ts +1 -0
  41. package/dist/types/browser/react/location-state-shared.d.ts +162 -0
  42. package/dist/types/browser/react/location-state.d.ts +29 -0
  43. package/dist/types/browser/react/mount-context.d.ts +23 -0
  44. package/dist/types/browser/react/nonce-context.d.ts +14 -0
  45. package/dist/types/browser/react/shallow-equal.d.ts +5 -0
  46. package/dist/types/browser/react/use-action.d.ts +61 -0
  47. package/dist/types/browser/react/use-handle.d.ts +21 -0
  48. package/dist/types/browser/react/use-href.d.ts +32 -0
  49. package/dist/types/browser/react/use-link-status.d.ts +36 -0
  50. package/dist/types/browser/react/use-mount.d.ts +24 -0
  51. package/dist/types/browser/react/use-navigation.d.ts +15 -0
  52. package/dist/types/browser/react/use-params.d.ts +21 -0
  53. package/dist/types/browser/react/use-pathname.d.ts +13 -0
  54. package/dist/types/browser/react/use-reverse.d.ts +40 -0
  55. package/dist/types/browser/react/use-router.d.ts +23 -0
  56. package/dist/types/browser/react/use-search-params.d.ts +19 -0
  57. package/dist/types/browser/react/use-segments.d.ts +29 -0
  58. package/dist/types/browser/response-adapter.d.ts +58 -0
  59. package/dist/types/browser/rsc-router.d.ts +141 -0
  60. package/dist/types/browser/scroll-restoration.d.ts +103 -0
  61. package/dist/types/browser/segment-reconciler.d.ts +74 -0
  62. package/dist/types/browser/segment-structure-assert.d.ts +16 -0
  63. package/dist/types/browser/server-action-bridge.d.ts +29 -0
  64. package/dist/types/browser/types.d.ts +518 -0
  65. package/dist/types/browser/validate-redirect-origin.d.ts +28 -0
  66. package/dist/types/build/collect-fallback-refs.d.ts +5 -0
  67. package/dist/types/build/generate-manifest.d.ts +106 -0
  68. package/dist/types/build/generate-route-types.d.ts +8 -0
  69. package/dist/types/build/index.d.ts +21 -0
  70. package/dist/types/build/prefix-tree-utils.d.ts +56 -0
  71. package/dist/types/build/route-trie.d.ts +89 -0
  72. package/dist/types/build/route-types/ast-helpers.d.ts +3 -0
  73. package/dist/types/build/route-types/ast-route-extraction.d.ts +13 -0
  74. package/dist/types/build/route-types/codegen.d.ts +16 -0
  75. package/dist/types/build/route-types/include-resolution.d.ts +74 -0
  76. package/dist/types/build/route-types/param-extraction.d.ts +13 -0
  77. package/dist/types/build/route-types/per-module-writer.d.ts +18 -0
  78. package/dist/types/build/route-types/router-processing.d.ts +82 -0
  79. package/dist/types/build/route-types/scan-filter.d.ts +17 -0
  80. package/dist/types/build/route-types/source-scan.d.ts +13 -0
  81. package/dist/types/build/runtime-discovery.d.ts +24 -0
  82. package/dist/types/cache/background-task.d.ts +21 -0
  83. package/dist/types/cache/cache-error.d.ts +71 -0
  84. package/dist/types/cache/cache-key-utils.d.ts +35 -0
  85. package/dist/types/cache/cache-policy.d.ts +59 -0
  86. package/dist/types/cache/cache-runtime.d.ts +51 -0
  87. package/dist/types/cache/cache-scope.d.ts +136 -0
  88. package/dist/types/cache/cache-tag.d.ts +79 -0
  89. package/dist/types/cache/cf/cf-base64.d.ts +4 -0
  90. package/dist/types/cache/cf/cf-cache-constants.d.ts +105 -0
  91. package/dist/types/cache/cf/cf-cache-store.d.ts +589 -0
  92. package/dist/types/cache/cf/cf-cache-types.d.ts +363 -0
  93. package/dist/types/cache/cf/cf-kv-utils.d.ts +22 -0
  94. package/dist/types/cache/cf/cf-tag-marker-memo.d.ts +15 -0
  95. package/dist/types/cache/cf/cf-zone-purge.d.ts +31 -0
  96. package/dist/types/cache/cf/index.d.ts +4 -0
  97. package/dist/types/cache/document-cache.d.ts +69 -0
  98. package/dist/types/cache/handle-capture.d.ts +23 -0
  99. package/dist/types/cache/handle-snapshot.d.ts +39 -0
  100. package/dist/types/cache/index.d.ts +7 -0
  101. package/dist/types/cache/memory-segment-store.d.ts +163 -0
  102. package/dist/types/cache/profile-registry.d.ts +40 -0
  103. package/dist/types/cache/read-through-swr.d.ts +60 -0
  104. package/dist/types/cache/segment-codec.d.ts +78 -0
  105. package/dist/types/cache/shell-snapshot.d.ts +186 -0
  106. package/dist/types/cache/tag-invalidation.d.ts +74 -0
  107. package/dist/types/cache/taint.d.ts +71 -0
  108. package/dist/types/cache/types.d.ts +435 -0
  109. package/dist/types/cache/vercel/index.d.ts +1 -0
  110. package/dist/types/cache/vercel/vercel-cache-store.d.ts +268 -0
  111. package/dist/types/client.d.ts +184 -0
  112. package/dist/types/client.rsc.d.ts +39 -0
  113. package/dist/types/cloudflare/index.d.ts +7 -0
  114. package/dist/types/cloudflare/tracing.d.ts +53 -0
  115. package/dist/types/component-utils.d.ts +46 -0
  116. package/dist/types/components/DefaultDocument.d.ts +13 -0
  117. package/dist/types/context-var.d.ts +84 -0
  118. package/dist/types/debug.d.ts +57 -0
  119. package/dist/types/decode-loader-results.d.ts +5 -0
  120. package/dist/types/default-error-boundary.d.ts +10 -0
  121. package/dist/types/defer.d.ts +89 -0
  122. package/dist/types/deps/browser.d.ts +1 -0
  123. package/dist/types/deps/html-stream-client.d.ts +1 -0
  124. package/dist/types/deps/html-stream-server.d.ts +1 -0
  125. package/dist/types/deps/rsc.d.ts +1 -0
  126. package/dist/types/deps/ssr.d.ts +1 -0
  127. package/dist/types/dev-discovery-protocol.d.ts +5 -0
  128. package/dist/types/encode-kv.d.ts +35 -0
  129. package/dist/types/errors.d.ts +226 -0
  130. package/dist/types/escape-script.d.ts +44 -0
  131. package/dist/types/handle.d.ts +93 -0
  132. package/dist/types/handles/MetaTags.d.ts +17 -0
  133. package/dist/types/handles/Scripts.d.ts +38 -0
  134. package/dist/types/handles/breadcrumbs.d.ts +43 -0
  135. package/dist/types/handles/deferred-resolution.d.ts +53 -0
  136. package/dist/types/handles/is-thenable.d.ts +12 -0
  137. package/dist/types/handles/meta.d.ts +43 -0
  138. package/dist/types/handles/script.d.ts +139 -0
  139. package/dist/types/host/cookie-handler.d.ts +8 -0
  140. package/dist/types/host/errors.d.ts +40 -0
  141. package/dist/types/host/index.d.ts +33 -0
  142. package/dist/types/host/pattern-matcher.d.ts +30 -0
  143. package/dist/types/host/router.d.ts +12 -0
  144. package/dist/types/host/testing.d.ts +41 -0
  145. package/dist/types/host/types.d.ts +148 -0
  146. package/dist/types/host/utils.d.ts +20 -0
  147. package/dist/types/href-client.d.ts +214 -0
  148. package/dist/types/index.d.ts +112 -0
  149. package/dist/types/index.rsc.d.ts +51 -0
  150. package/dist/types/internal-debug.d.ts +1 -0
  151. package/dist/types/loader-store.d.ts +193 -0
  152. package/dist/types/loader.d.ts +18 -0
  153. package/dist/types/loader.rsc.d.ts +18 -0
  154. package/dist/types/missing-id-error.d.ts +1 -0
  155. package/dist/types/outlet-context.d.ts +12 -0
  156. package/dist/types/outlet-provider.d.ts +12 -0
  157. package/dist/types/prerender/build-shell-capture.d.ts +104 -0
  158. package/dist/types/prerender/param-hash.d.ts +6 -0
  159. package/dist/types/prerender/shell-manifest-key.d.ts +18 -0
  160. package/dist/types/prerender/store.d.ts +63 -0
  161. package/dist/types/prerender.d.ts +292 -0
  162. package/dist/types/redirect-origin.d.ts +67 -0
  163. package/dist/types/regex-escape.d.ts +6 -0
  164. package/dist/types/render-error-thrower.d.ts +13 -0
  165. package/dist/types/response-utils.d.ts +35 -0
  166. package/dist/types/reverse.d.ts +206 -0
  167. package/dist/types/root-error-boundary.d.ts +32 -0
  168. package/dist/types/route-content-wrapper.d.ts +40 -0
  169. package/dist/types/route-definition/dsl-helpers.d.ts +130 -0
  170. package/dist/types/route-definition/helper-factories.d.ts +22 -0
  171. package/dist/types/route-definition/helpers-types.d.ts +392 -0
  172. package/dist/types/route-definition/index.d.ts +7 -0
  173. package/dist/types/route-definition/redirect.d.ts +48 -0
  174. package/dist/types/route-definition/resolve-handler-use.d.ts +19 -0
  175. package/dist/types/route-definition/use-item-types.d.ts +1 -0
  176. package/dist/types/route-definition.d.ts +1 -0
  177. package/dist/types/route-map-builder.d.ts +102 -0
  178. package/dist/types/route-name.d.ts +27 -0
  179. package/dist/types/route-types.d.ts +172 -0
  180. package/dist/types/router/basename.d.ts +10 -0
  181. package/dist/types/router/content-negotiation.d.ts +91 -0
  182. package/dist/types/router/debug-manifest.d.ts +7 -0
  183. package/dist/types/router/error-handling.d.ts +76 -0
  184. package/dist/types/router/find-match.d.ts +19 -0
  185. package/dist/types/router/handler-context.d.ts +41 -0
  186. package/dist/types/router/instrument.d.ts +161 -0
  187. package/dist/types/router/intercept-resolution.d.ts +79 -0
  188. package/dist/types/router/lazy-includes.d.ts +26 -0
  189. package/dist/types/router/loader-resolution.d.ts +63 -0
  190. package/dist/types/router/logging.d.ts +41 -0
  191. package/dist/types/router/manifest.d.ts +8 -0
  192. package/dist/types/router/match-api.d.ts +19 -0
  193. package/dist/types/router/match-context.d.ts +184 -0
  194. package/dist/types/router/match-handlers.d.ts +49 -0
  195. package/dist/types/router/match-middleware/background-revalidation.d.ts +113 -0
  196. package/dist/types/router/match-middleware/cache-lookup.d.ts +113 -0
  197. package/dist/types/router/match-middleware/cache-store.d.ts +112 -0
  198. package/dist/types/router/match-middleware/index.d.ts +80 -0
  199. package/dist/types/router/match-middleware/intercept-resolution.d.ts +116 -0
  200. package/dist/types/router/match-middleware/segment-resolution.d.ts +94 -0
  201. package/dist/types/router/match-pipelines.d.ts +103 -0
  202. package/dist/types/router/match-result.d.ts +114 -0
  203. package/dist/types/router/metrics.d.ts +6 -0
  204. package/dist/types/router/middleware-types.d.ts +74 -0
  205. package/dist/types/router/middleware.d.ts +116 -0
  206. package/dist/types/router/navigation-snapshot.d.ts +22 -0
  207. package/dist/types/router/params-util.d.ts +8 -0
  208. package/dist/types/router/parse-pattern.d.ts +38 -0
  209. package/dist/types/router/pattern-matching.d.ts +169 -0
  210. package/dist/types/router/prefetch-cache-ttl.d.ts +27 -0
  211. package/dist/types/router/prefetch-limits.d.ts +20 -0
  212. package/dist/types/router/prerender-match.d.ts +53 -0
  213. package/dist/types/router/preview-match.d.ts +22 -0
  214. package/dist/types/router/request-classification.d.ts +104 -0
  215. package/dist/types/router/revalidation.d.ts +57 -0
  216. package/dist/types/router/route-snapshot.d.ts +112 -0
  217. package/dist/types/router/router-context.d.ts +137 -0
  218. package/dist/types/router/router-interfaces.d.ts +434 -0
  219. package/dist/types/router/router-options.d.ts +738 -0
  220. package/dist/types/router/router-registry.d.ts +15 -0
  221. package/dist/types/router/segment-resolution/fresh.d.ts +55 -0
  222. package/dist/types/router/segment-resolution/helpers.d.ts +93 -0
  223. package/dist/types/router/segment-resolution/loader-cache.d.ts +33 -0
  224. package/dist/types/router/segment-resolution/loader-mask.d.ts +44 -0
  225. package/dist/types/router/segment-resolution/loader-snapshot.d.ts +90 -0
  226. package/dist/types/router/segment-resolution/mask-nested.d.ts +53 -0
  227. package/dist/types/router/segment-resolution/revalidation.d.ts +85 -0
  228. package/dist/types/router/segment-resolution/static-store.d.ts +17 -0
  229. package/dist/types/router/segment-resolution/streamed-handler-telemetry.d.ts +16 -0
  230. package/dist/types/router/segment-resolution/view-transition-default.d.ts +28 -0
  231. package/dist/types/router/segment-resolution.d.ts +3 -0
  232. package/dist/types/router/segment-wrappers.d.ts +53 -0
  233. package/dist/types/router/state-cookie-name.d.ts +1 -0
  234. package/dist/types/router/substitute-pattern-params.d.ts +23 -0
  235. package/dist/types/router/telemetry-otel.d.ts +113 -0
  236. package/dist/types/router/telemetry.d.ts +216 -0
  237. package/dist/types/router/timeout.d.ts +96 -0
  238. package/dist/types/router/tracing.d.ts +125 -0
  239. package/dist/types/router/trie-matching.d.ts +32 -0
  240. package/dist/types/router/types.d.ts +98 -0
  241. package/dist/types/router/url-params.d.ts +26 -0
  242. package/dist/types/router.d.ts +7 -0
  243. package/dist/types/rsc/capture-queue.d.ts +6 -0
  244. package/dist/types/rsc/full-payload.d.ts +22 -0
  245. package/dist/types/rsc/handler-context.d.ts +32 -0
  246. package/dist/types/rsc/handler.d.ts +9 -0
  247. package/dist/types/rsc/helpers.d.ts +124 -0
  248. package/dist/types/rsc/index.d.ts +17 -0
  249. package/dist/types/rsc/json-route-result.d.ts +20 -0
  250. package/dist/types/rsc/loader-fetch.d.ts +14 -0
  251. package/dist/types/rsc/manifest-init.d.ts +18 -0
  252. package/dist/types/rsc/nonce.d.ts +28 -0
  253. package/dist/types/rsc/origin-guard.d.ts +50 -0
  254. package/dist/types/rsc/progressive-enhancement.d.ts +19 -0
  255. package/dist/types/rsc/redirect-guard.d.ts +37 -0
  256. package/dist/types/rsc/render-pipeline.d.ts +139 -0
  257. package/dist/types/rsc/response-cache-serve.d.ts +46 -0
  258. package/dist/types/rsc/response-error.d.ts +19 -0
  259. package/dist/types/rsc/response-route-handler.d.ts +29 -0
  260. package/dist/types/rsc/rsc-rendering.d.ts +18 -0
  261. package/dist/types/rsc/runtime-warnings.d.ts +22 -0
  262. package/dist/types/rsc/server-action.d.ts +68 -0
  263. package/dist/types/rsc/shell-build-manifest.d.ts +84 -0
  264. package/dist/types/rsc/shell-capture-constants.d.ts +27 -0
  265. package/dist/types/rsc/shell-capture.d.ts +370 -0
  266. package/dist/types/rsc/shell-serve.d.ts +174 -0
  267. package/dist/types/rsc/ssr-setup.d.ts +73 -0
  268. package/dist/types/rsc/transition-gate.d.ts +27 -0
  269. package/dist/types/rsc/types.d.ts +292 -0
  270. package/dist/types/runtime-env.d.ts +1 -0
  271. package/dist/types/search-params.d.ts +125 -0
  272. package/dist/types/segment-content-promise.d.ts +13 -0
  273. package/dist/types/segment-fragments.d.ts +56 -0
  274. package/dist/types/segment-loader-promise.d.ts +22 -0
  275. package/dist/types/segment-system.d.ts +84 -0
  276. package/dist/types/serialize.d.ts +164 -0
  277. package/dist/types/server/context.d.ts +510 -0
  278. package/dist/types/server/cookie-parse.d.ts +10 -0
  279. package/dist/types/server/cookie-store.d.ts +107 -0
  280. package/dist/types/server/fetchable-loader-store.d.ts +20 -0
  281. package/dist/types/server/handle-store.d.ts +100 -0
  282. package/dist/types/server/loader-registry.d.ts +32 -0
  283. package/dist/types/server/request-context.d.ts +628 -0
  284. package/dist/types/server/root-layout.d.ts +3 -0
  285. package/dist/types/server.d.ts +15 -0
  286. package/dist/types/ssr/index.d.ts +233 -0
  287. package/dist/types/ssr/inject-rsc-eager.d.ts +3 -0
  288. package/dist/types/ssr/preinit-client-references.d.ts +71 -0
  289. package/dist/types/ssr/ssr-root.d.ts +69 -0
  290. package/dist/types/static-handler.d.ts +57 -0
  291. package/dist/types/testing/cache-status.d.ts +63 -0
  292. package/dist/types/testing/collect-handle.d.ts +20 -0
  293. package/dist/types/testing/dispatch.d.ts +127 -0
  294. package/dist/types/testing/dom.entry.d.ts +15 -0
  295. package/dist/types/testing/e2e/fixture.d.ts +37 -0
  296. package/dist/types/testing/e2e/index.d.ts +31 -0
  297. package/dist/types/testing/e2e/matchers.d.ts +17 -0
  298. package/dist/types/testing/e2e/page-helpers.d.ts +62 -0
  299. package/dist/types/testing/e2e/parity.d.ts +111 -0
  300. package/dist/types/testing/e2e/server.d.ts +35 -0
  301. package/dist/types/testing/flight-matchers.d.ts +55 -0
  302. package/dist/types/testing/flight-normalize.d.ts +1 -0
  303. package/dist/types/testing/flight-tree.d.ts +192 -0
  304. package/dist/types/testing/flight.d.ts +115 -0
  305. package/dist/types/testing/flight.entry.d.ts +27 -0
  306. package/dist/types/testing/generated-routes.d.ts +66 -0
  307. package/dist/types/testing/index.d.ts +54 -0
  308. package/dist/types/testing/internal/context.d.ts +225 -0
  309. package/dist/types/testing/internal/flight-client-globals.d.ts +1 -0
  310. package/dist/types/testing/internal/seed-vars.d.ts +30 -0
  311. package/dist/types/testing/render-handler.d.ts +160 -0
  312. package/dist/types/testing/render-route.d.ts +246 -0
  313. package/dist/types/testing/run-loader.d.ts +186 -0
  314. package/dist/types/testing/run-middleware.d.ts +132 -0
  315. package/dist/types/testing/run-transition-when.d.ts +77 -0
  316. package/dist/types/testing/shell-status.d.ts +58 -0
  317. package/dist/types/testing/vitest-stubs/cloudflare-email.d.ts +6 -0
  318. package/dist/types/testing/vitest-stubs/cloudflare-workers.d.ts +13 -0
  319. package/dist/types/testing/vitest-stubs/plugin-rsc.d.ts +7 -0
  320. package/dist/types/testing/vitest-stubs/version.d.ts +1 -0
  321. package/dist/types/testing/vitest.d.ts +205 -0
  322. package/dist/types/theme/ThemeProvider.d.ts +13 -0
  323. package/dist/types/theme/ThemeScript.d.ts +45 -0
  324. package/dist/types/theme/constants.d.ts +39 -0
  325. package/dist/types/theme/index.d.ts +29 -0
  326. package/dist/types/theme/theme-context.d.ts +21 -0
  327. package/dist/types/theme/theme-script.d.ts +26 -0
  328. package/dist/types/theme/types.d.ts +162 -0
  329. package/dist/types/theme/use-theme.d.ts +8 -0
  330. package/dist/types/types/boundaries.d.ts +93 -0
  331. package/dist/types/types/cache-types.d.ts +191 -0
  332. package/dist/types/types/error-types.d.ts +114 -0
  333. package/dist/types/types/global-namespace.d.ts +90 -0
  334. package/dist/types/types/handler-context.d.ts +658 -0
  335. package/dist/types/types/index.d.ts +11 -0
  336. package/dist/types/types/loader-types.d.ts +182 -0
  337. package/dist/types/types/request-scope.d.ts +93 -0
  338. package/dist/types/types/route-config.d.ts +105 -0
  339. package/dist/types/types/route-entry.d.ts +98 -0
  340. package/dist/types/types/segments.d.ts +234 -0
  341. package/dist/types/types.d.ts +1 -0
  342. package/dist/types/urls/include-helper.d.ts +17 -0
  343. package/dist/types/urls/include-provider.d.ts +27 -0
  344. package/dist/types/urls/index.d.ts +6 -0
  345. package/dist/types/urls/path-helper-types.d.ts +197 -0
  346. package/dist/types/urls/path-helper.d.ts +12 -0
  347. package/dist/types/urls/pattern-types.d.ts +166 -0
  348. package/dist/types/urls/response-types.d.ts +67 -0
  349. package/dist/types/urls/type-extraction.d.ts +157 -0
  350. package/dist/types/urls/urls-function.d.ts +24 -0
  351. package/dist/types/urls.d.ts +1 -0
  352. package/dist/types/use-loader.d.ts +150 -0
  353. package/dist/types/vercel/index.d.ts +10 -0
  354. package/dist/types/vercel/tracing.d.ts +70 -0
  355. package/dist/types/vite/debug.d.ts +80 -0
  356. package/dist/types/vite/discovery/bundle-postprocess.d.ts +12 -0
  357. package/dist/types/vite/discovery/dev-prerender-cache.d.ts +65 -0
  358. package/dist/types/vite/discovery/discover-routers.d.ts +17 -0
  359. package/dist/types/vite/discovery/discovery-errors.d.ts +113 -0
  360. package/dist/types/vite/discovery/gate-state.d.ts +79 -0
  361. package/dist/types/vite/discovery/prerender-collection.d.ts +24 -0
  362. package/dist/types/vite/discovery/route-types-writer.d.ts +32 -0
  363. package/dist/types/vite/discovery/self-gen-tracking.d.ts +22 -0
  364. package/dist/types/vite/discovery/shell-prerender-phase.d.ts +40 -0
  365. package/dist/types/vite/discovery/state.d.ts +163 -0
  366. package/dist/types/vite/discovery/virtual-module-codegen.d.ts +15 -0
  367. package/dist/types/vite/index.d.ts +11 -0
  368. package/dist/types/vite/inject-client-debug.d.ts +56 -0
  369. package/dist/types/vite/plugin-types.d.ts +298 -0
  370. package/dist/types/vite/plugins/cjs-to-esm.d.ts +6 -0
  371. package/dist/types/vite/plugins/client-ref-dedup.d.ts +40 -0
  372. package/dist/types/vite/plugins/client-ref-hashing.d.ts +35 -0
  373. package/dist/types/vite/plugins/cloudflare-protocol-stub.d.ts +64 -0
  374. package/dist/types/vite/plugins/expose-action-id.d.ts +18 -0
  375. package/dist/types/vite/plugins/expose-id-utils.d.ts +37 -0
  376. package/dist/types/vite/plugins/expose-ids/export-analysis.d.ts +19 -0
  377. package/dist/types/vite/plugins/expose-ids/handler-transform.d.ts +10 -0
  378. package/dist/types/vite/plugins/expose-ids/loader-transform.d.ts +8 -0
  379. package/dist/types/vite/plugins/expose-ids/router-transform.d.ts +13 -0
  380. package/dist/types/vite/plugins/expose-ids/types.d.ts +29 -0
  381. package/dist/types/vite/plugins/expose-internal-ids.d.ts +6 -0
  382. package/dist/types/vite/plugins/performance-tracks.d.ts +25 -0
  383. package/dist/types/vite/plugins/refresh-cmd.d.ts +20 -0
  384. package/dist/types/vite/plugins/use-cache-transform.d.ts +20 -0
  385. package/dist/types/vite/plugins/vercel-output.d.ts +85 -0
  386. package/dist/types/vite/plugins/version-injector.d.ts +21 -0
  387. package/dist/types/vite/plugins/version-plugin.d.ts +19 -0
  388. package/dist/types/vite/plugins/virtual-entries.d.ts +36 -0
  389. package/dist/types/vite/plugins/virtual-stub-plugin.d.ts +7 -0
  390. package/dist/types/vite/rango.d.ts +29 -0
  391. package/dist/types/vite/router-discovery.d.ts +23 -0
  392. package/dist/types/vite/utils/ast-handler-extract.d.ts +64 -0
  393. package/dist/types/vite/utils/banner.d.ts +2 -0
  394. package/dist/types/vite/utils/bundle-analysis.d.ts +28 -0
  395. package/dist/types/vite/utils/client-chunks.d.ts +55 -0
  396. package/dist/types/vite/utils/directive-prologue.d.ts +16 -0
  397. package/dist/types/vite/utils/forward-user-plugins.d.ts +37 -0
  398. package/dist/types/vite/utils/manifest-utils.d.ts +7 -0
  399. package/dist/types/vite/utils/package-resolution.d.ts +6 -0
  400. package/dist/types/vite/utils/prerender-utils.d.ts +32 -0
  401. package/dist/types/vite/utils/shared-utils.d.ts +55 -0
  402. package/dist/vite/index.js +1208 -431
  403. package/package.json +45 -34
  404. package/skills/caching/SKILL.md +1 -1
  405. package/skills/catalog.json +6 -0
  406. package/skills/cloudflare/SKILL.md +149 -0
  407. package/skills/cloudflare/agents/openai.yaml +4 -0
  408. package/skills/cloudflare/references/d1-and-local-dev.md +131 -0
  409. package/skills/cloudflare/references/streaming-and-deploy.md +107 -0
  410. package/skills/cloudflare/references/webhooks-and-crypto.md +147 -0
  411. package/skills/composability/SKILL.md +14 -0
  412. package/skills/debug-manifest/SKILL.md +2 -10
  413. package/skills/links/SKILL.md +12 -0
  414. package/skills/middleware/SKILL.md +33 -0
  415. package/skills/migrate-nextjs/SKILL.md +65 -16
  416. package/skills/migrate-nextjs/backend-host-swap.md +120 -0
  417. package/skills/migrate-react-router/SKILL.md +6 -6
  418. package/skills/mime-routes/SKILL.md +25 -17
  419. package/skills/ppr/SKILL.md +148 -19
  420. package/skills/prerender/SKILL.md +44 -1
  421. package/skills/rango/SKILL.md +10 -10
  422. package/skills/response-routes/SKILL.md +41 -4
  423. package/skills/route/SKILL.md +6 -0
  424. package/skills/testing/SKILL.md +1 -0
  425. package/skills/testing/cache-prerender.md +43 -2
  426. package/skills/testing/response-routes.md +2 -2
  427. package/src/browser/dev-discovery.ts +66 -0
  428. package/src/browser/event-controller.ts +16 -2
  429. package/src/browser/navigation-client.ts +6 -0
  430. package/src/browser/navigation-store.ts +4 -271
  431. package/src/browser/partial-update.ts +7 -14
  432. package/src/browser/prefetch/cache.ts +1 -1
  433. package/src/browser/prefetch/loader.ts +110 -0
  434. package/src/browser/prefetch/runtime.ts +7 -0
  435. package/src/browser/react/Link.tsx +7 -10
  436. package/src/browser/react/NavigationProvider.tsx +1 -1
  437. package/src/browser/react/use-router.ts +1 -1
  438. package/src/browser/rsc-router.tsx +15 -2
  439. package/src/browser/types.ts +4 -27
  440. package/src/build/generate-manifest.ts +16 -36
  441. package/src/build/route-trie.ts +5 -50
  442. package/src/cache/cache-key-utils.ts +0 -1
  443. package/src/cache/cache-scope.ts +54 -5
  444. package/src/cache/cf/cf-cache-store.ts +522 -89
  445. package/src/cache/cf/cf-cache-types.ts +66 -0
  446. package/src/cache/cf/cf-tag-marker-memo.ts +5 -2
  447. package/src/cache/cf/cf-zone-purge.ts +101 -0
  448. package/src/cache/cf/index.ts +5 -0
  449. package/src/cache/handle-snapshot.ts +22 -1
  450. package/src/cache/index.ts +2 -0
  451. package/src/cache/memory-segment-store.ts +44 -1
  452. package/src/cache/segment-codec.ts +47 -0
  453. package/src/cache/shell-snapshot.ts +124 -29
  454. package/src/cache/types.ts +57 -2
  455. package/src/cache/vercel/vercel-cache-store.ts +113 -14
  456. package/src/deps/ssr.ts +4 -1
  457. package/src/dev-discovery-protocol.ts +11 -0
  458. package/src/index.rsc.ts +7 -0
  459. package/src/index.ts +1 -0
  460. package/src/prerender/build-shell-capture.ts +453 -0
  461. package/src/prerender/shell-manifest-key.ts +20 -0
  462. package/src/prerender/store.ts +15 -1
  463. package/src/prerender.ts +3 -3
  464. package/src/redirect-origin.ts +37 -8
  465. package/src/route-definition/dsl-helpers.ts +7 -2
  466. package/src/route-map-builder.ts +61 -54
  467. package/src/router/content-negotiation.ts +47 -5
  468. package/src/router/handler-context.ts +31 -15
  469. package/src/router/intercept-resolution.ts +30 -1
  470. package/src/router/lazy-includes.ts +1 -0
  471. package/src/router/loader-resolution.ts +16 -0
  472. package/src/router/match-api.ts +14 -3
  473. package/src/router/match-middleware/cache-lookup.ts +12 -1
  474. package/src/router/metrics.ts +17 -2
  475. package/src/router/middleware-types.ts +17 -0
  476. package/src/router/middleware.ts +4 -0
  477. package/src/router/prerender-match.ts +47 -2
  478. package/src/router/router-interfaces.ts +11 -6
  479. package/src/router/router-options.ts +13 -8
  480. package/src/router/segment-resolution/fresh.ts +21 -2
  481. package/src/router/segment-resolution/helpers.ts +1 -1
  482. package/src/router/segment-resolution/loader-cache.ts +38 -7
  483. package/src/router/segment-resolution/mask-nested.ts +19 -3
  484. package/src/router/segment-resolution/revalidation.ts +9 -0
  485. package/src/router/segment-resolution/static-store.ts +36 -10
  486. package/src/router/telemetry-otel.ts +11 -0
  487. package/src/router/telemetry.ts +1 -0
  488. package/src/router/timeout.ts +41 -1
  489. package/src/router.ts +39 -7
  490. package/src/rsc/capture-queue.ts +67 -0
  491. package/src/rsc/handler-context.ts +1 -0
  492. package/src/rsc/handler.ts +153 -77
  493. package/src/rsc/helpers.ts +67 -4
  494. package/src/rsc/loader-fetch.ts +2 -2
  495. package/src/rsc/manifest-init.ts +4 -11
  496. package/src/rsc/progressive-enhancement.ts +66 -54
  497. package/src/rsc/redirect-guard.ts +3 -1
  498. package/src/rsc/render-pipeline.ts +567 -0
  499. package/src/rsc/response-cache-serve.ts +39 -18
  500. package/src/rsc/response-route-handler.ts +9 -45
  501. package/src/rsc/rsc-rendering.ts +455 -194
  502. package/src/rsc/server-action.ts +50 -42
  503. package/src/rsc/shell-build-manifest.ts +316 -0
  504. package/src/rsc/shell-capture-constants.ts +27 -0
  505. package/src/rsc/shell-capture.ts +622 -73
  506. package/src/rsc/shell-serve.ts +133 -3
  507. package/src/rsc/ssr-setup.ts +102 -23
  508. package/src/rsc/types.ts +2 -0
  509. package/src/segment-fragments.ts +124 -0
  510. package/src/server/context.ts +212 -8
  511. package/src/server/request-context.ts +322 -48
  512. package/src/server.ts +0 -2
  513. package/src/ssr/index.tsx +167 -32
  514. package/src/ssr/preinit-client-references.ts +106 -0
  515. package/src/ssr/ssr-root.tsx +35 -2
  516. package/src/testing/dispatch.ts +133 -67
  517. package/src/testing/e2e/index.ts +8 -0
  518. package/src/testing/index.ts +9 -1
  519. package/src/testing/internal/context.ts +9 -0
  520. package/src/testing/render-handler.ts +15 -1
  521. package/src/testing/run-middleware.ts +14 -0
  522. package/src/testing/shell-status.ts +100 -0
  523. package/src/types/handler-context.ts +13 -2
  524. package/src/types/route-entry.ts +3 -0
  525. package/src/urls/include-helper.ts +1 -0
  526. package/src/urls/path-helper-types.ts +1 -1
  527. package/src/urls/path-helper.ts +8 -4
  528. package/src/urls/pattern-types.ts +29 -0
  529. package/src/vite/discovery/bundle-postprocess.ts +10 -7
  530. package/src/vite/discovery/discover-routers.ts +39 -79
  531. package/src/vite/discovery/prerender-collection.ts +29 -2
  532. package/src/vite/discovery/shell-prerender-phase.ts +397 -0
  533. package/src/vite/discovery/state.ts +48 -4
  534. package/src/vite/discovery/virtual-module-codegen.ts +201 -62
  535. package/src/vite/index.ts +1 -0
  536. package/src/vite/plugin-types.ts +33 -0
  537. package/src/vite/plugins/version-injector.ts +0 -1
  538. package/src/vite/plugins/version-plugin.ts +8 -0
  539. package/src/vite/plugins/virtual-entries.ts +48 -5
  540. package/src/vite/rango.ts +42 -2
  541. package/src/vite/router-discovery.ts +564 -43
  542. package/src/vite/utils/manifest-utils.ts +1 -4
  543. package/src/vite/utils/package-resolution.ts +1 -0
  544. package/src/vite/utils/prerender-utils.ts +25 -6
  545. package/src/vite/utils/shared-utils.ts +11 -2
  546. package/dist/__internal.d.ts +0 -83
  547. package/dist/__internal.d.ts.map +0 -1
  548. package/dist/__internal.js +0 -19
  549. package/dist/__internal.js.map +0 -1
  550. package/dist/__mocks__/version.d.ts +0 -7
  551. package/dist/__mocks__/version.d.ts.map +0 -1
  552. package/dist/__mocks__/version.js +0 -7
  553. package/dist/__mocks__/version.js.map +0 -1
  554. package/dist/__tests__/client-href.test.d.ts +0 -2
  555. package/dist/__tests__/client-href.test.d.ts.map +0 -1
  556. package/dist/__tests__/client-href.test.js +0 -74
  557. package/dist/__tests__/client-href.test.js.map +0 -1
  558. package/dist/__tests__/component-utils.test.d.ts +0 -2
  559. package/dist/__tests__/component-utils.test.d.ts.map +0 -1
  560. package/dist/__tests__/component-utils.test.js +0 -51
  561. package/dist/__tests__/component-utils.test.js.map +0 -1
  562. package/dist/__tests__/event-controller.test.d.ts +0 -2
  563. package/dist/__tests__/event-controller.test.d.ts.map +0 -1
  564. package/dist/__tests__/event-controller.test.js +0 -538
  565. package/dist/__tests__/event-controller.test.js.map +0 -1
  566. package/dist/__tests__/helpers/route-tree.d.ts +0 -118
  567. package/dist/__tests__/helpers/route-tree.d.ts.map +0 -1
  568. package/dist/__tests__/helpers/route-tree.js +0 -374
  569. package/dist/__tests__/helpers/route-tree.js.map +0 -1
  570. package/dist/__tests__/match-result.test.d.ts +0 -2
  571. package/dist/__tests__/match-result.test.d.ts.map +0 -1
  572. package/dist/__tests__/match-result.test.js +0 -154
  573. package/dist/__tests__/match-result.test.js.map +0 -1
  574. package/dist/__tests__/navigation-store.test.d.ts +0 -2
  575. package/dist/__tests__/navigation-store.test.d.ts.map +0 -1
  576. package/dist/__tests__/navigation-store.test.js +0 -440
  577. package/dist/__tests__/navigation-store.test.js.map +0 -1
  578. package/dist/__tests__/partial-update.test.d.ts +0 -2
  579. package/dist/__tests__/partial-update.test.d.ts.map +0 -1
  580. package/dist/__tests__/partial-update.test.js +0 -1009
  581. package/dist/__tests__/partial-update.test.js.map +0 -1
  582. package/dist/__tests__/reverse-types.test.d.ts +0 -8
  583. package/dist/__tests__/reverse-types.test.d.ts.map +0 -1
  584. package/dist/__tests__/reverse-types.test.js +0 -656
  585. package/dist/__tests__/reverse-types.test.js.map +0 -1
  586. package/dist/__tests__/route-definition.test.d.ts +0 -2
  587. package/dist/__tests__/route-definition.test.d.ts.map +0 -1
  588. package/dist/__tests__/route-definition.test.js +0 -55
  589. package/dist/__tests__/route-definition.test.js.map +0 -1
  590. package/dist/__tests__/router-helpers.test.d.ts +0 -2
  591. package/dist/__tests__/router-helpers.test.d.ts.map +0 -1
  592. package/dist/__tests__/router-helpers.test.js +0 -377
  593. package/dist/__tests__/router-helpers.test.js.map +0 -1
  594. package/dist/__tests__/router-integration-2.test.d.ts +0 -2
  595. package/dist/__tests__/router-integration-2.test.d.ts.map +0 -1
  596. package/dist/__tests__/router-integration-2.test.js +0 -426
  597. package/dist/__tests__/router-integration-2.test.js.map +0 -1
  598. package/dist/__tests__/router-integration.test.d.ts +0 -2
  599. package/dist/__tests__/router-integration.test.d.ts.map +0 -1
  600. package/dist/__tests__/router-integration.test.js +0 -1051
  601. package/dist/__tests__/router-integration.test.js.map +0 -1
  602. package/dist/__tests__/search-params.test.d.ts +0 -5
  603. package/dist/__tests__/search-params.test.d.ts.map +0 -1
  604. package/dist/__tests__/search-params.test.js +0 -306
  605. package/dist/__tests__/search-params.test.js.map +0 -1
  606. package/dist/__tests__/segment-system.test.d.ts +0 -2
  607. package/dist/__tests__/segment-system.test.d.ts.map +0 -1
  608. package/dist/__tests__/segment-system.test.js +0 -627
  609. package/dist/__tests__/segment-system.test.js.map +0 -1
  610. package/dist/__tests__/static-handler-types.test.d.ts +0 -8
  611. package/dist/__tests__/static-handler-types.test.d.ts.map +0 -1
  612. package/dist/__tests__/static-handler-types.test.js +0 -63
  613. package/dist/__tests__/static-handler-types.test.js.map +0 -1
  614. package/dist/__tests__/urls.test.d.ts +0 -2
  615. package/dist/__tests__/urls.test.d.ts.map +0 -1
  616. package/dist/__tests__/urls.test.js +0 -421
  617. package/dist/__tests__/urls.test.js.map +0 -1
  618. package/dist/__tests__/use-mount.test.d.ts +0 -2
  619. package/dist/__tests__/use-mount.test.d.ts.map +0 -1
  620. package/dist/__tests__/use-mount.test.js +0 -35
  621. package/dist/__tests__/use-mount.test.js.map +0 -1
  622. package/dist/bin/rango.d.ts +0 -2
  623. package/dist/bin/rango.d.ts.map +0 -1
  624. package/dist/bin/rango.js.map +0 -1
  625. package/dist/browser/event-controller.d.ts +0 -191
  626. package/dist/browser/event-controller.d.ts.map +0 -1
  627. package/dist/browser/event-controller.js +0 -559
  628. package/dist/browser/event-controller.js.map +0 -1
  629. package/dist/browser/index.d.ts +0 -2
  630. package/dist/browser/index.d.ts.map +0 -1
  631. package/dist/browser/index.js +0 -14
  632. package/dist/browser/index.js.map +0 -1
  633. package/dist/browser/link-interceptor.d.ts +0 -38
  634. package/dist/browser/link-interceptor.d.ts.map +0 -1
  635. package/dist/browser/link-interceptor.js +0 -99
  636. package/dist/browser/link-interceptor.js.map +0 -1
  637. package/dist/browser/logging.d.ts +0 -10
  638. package/dist/browser/logging.d.ts.map +0 -1
  639. package/dist/browser/logging.js +0 -29
  640. package/dist/browser/logging.js.map +0 -1
  641. package/dist/browser/lru-cache.d.ts +0 -17
  642. package/dist/browser/lru-cache.d.ts.map +0 -1
  643. package/dist/browser/lru-cache.js +0 -50
  644. package/dist/browser/lru-cache.js.map +0 -1
  645. package/dist/browser/merge-segment-loaders.d.ts +0 -39
  646. package/dist/browser/merge-segment-loaders.d.ts.map +0 -1
  647. package/dist/browser/merge-segment-loaders.js +0 -102
  648. package/dist/browser/merge-segment-loaders.js.map +0 -1
  649. package/dist/browser/navigation-bridge.d.ts +0 -102
  650. package/dist/browser/navigation-bridge.d.ts.map +0 -1
  651. package/dist/browser/navigation-bridge.js +0 -708
  652. package/dist/browser/navigation-bridge.js.map +0 -1
  653. package/dist/browser/navigation-client.d.ts +0 -25
  654. package/dist/browser/navigation-client.d.ts.map +0 -1
  655. package/dist/browser/navigation-client.js +0 -157
  656. package/dist/browser/navigation-client.js.map +0 -1
  657. package/dist/browser/navigation-store.d.ts +0 -101
  658. package/dist/browser/navigation-store.d.ts.map +0 -1
  659. package/dist/browser/navigation-store.js +0 -625
  660. package/dist/browser/navigation-store.js.map +0 -1
  661. package/dist/browser/partial-update.d.ts +0 -75
  662. package/dist/browser/partial-update.d.ts.map +0 -1
  663. package/dist/browser/partial-update.js +0 -426
  664. package/dist/browser/partial-update.js.map +0 -1
  665. package/dist/browser/react/Link.d.ts +0 -86
  666. package/dist/browser/react/Link.d.ts.map +0 -1
  667. package/dist/browser/react/Link.js +0 -128
  668. package/dist/browser/react/Link.js.map +0 -1
  669. package/dist/browser/react/NavigationProvider.d.ts +0 -63
  670. package/dist/browser/react/NavigationProvider.d.ts.map +0 -1
  671. package/dist/browser/react/NavigationProvider.js +0 -216
  672. package/dist/browser/react/NavigationProvider.js.map +0 -1
  673. package/dist/browser/react/ScrollRestoration.d.ts +0 -75
  674. package/dist/browser/react/ScrollRestoration.d.ts.map +0 -1
  675. package/dist/browser/react/ScrollRestoration.js +0 -57
  676. package/dist/browser/react/ScrollRestoration.js.map +0 -1
  677. package/dist/browser/react/context.d.ts +0 -46
  678. package/dist/browser/react/context.d.ts.map +0 -1
  679. package/dist/browser/react/context.js +0 -10
  680. package/dist/browser/react/context.js.map +0 -1
  681. package/dist/browser/react/index.d.ts +0 -11
  682. package/dist/browser/react/index.d.ts.map +0 -1
  683. package/dist/browser/react/index.js +0 -22
  684. package/dist/browser/react/index.js.map +0 -1
  685. package/dist/browser/react/location-state-shared.d.ts +0 -63
  686. package/dist/browser/react/location-state-shared.d.ts.map +0 -1
  687. package/dist/browser/react/location-state-shared.js +0 -81
  688. package/dist/browser/react/location-state-shared.js.map +0 -1
  689. package/dist/browser/react/location-state.d.ts +0 -23
  690. package/dist/browser/react/location-state.d.ts.map +0 -1
  691. package/dist/browser/react/location-state.js +0 -29
  692. package/dist/browser/react/location-state.js.map +0 -1
  693. package/dist/browser/react/mount-context.d.ts +0 -24
  694. package/dist/browser/react/mount-context.d.ts.map +0 -1
  695. package/dist/browser/react/mount-context.js +0 -24
  696. package/dist/browser/react/mount-context.js.map +0 -1
  697. package/dist/browser/react/use-action.d.ts +0 -64
  698. package/dist/browser/react/use-action.d.ts.map +0 -1
  699. package/dist/browser/react/use-action.js +0 -134
  700. package/dist/browser/react/use-action.js.map +0 -1
  701. package/dist/browser/react/use-client-cache.d.ts +0 -41
  702. package/dist/browser/react/use-client-cache.d.ts.map +0 -1
  703. package/dist/browser/react/use-client-cache.js +0 -39
  704. package/dist/browser/react/use-client-cache.js.map +0 -1
  705. package/dist/browser/react/use-handle.d.ts +0 -31
  706. package/dist/browser/react/use-handle.d.ts.map +0 -1
  707. package/dist/browser/react/use-handle.js +0 -144
  708. package/dist/browser/react/use-handle.js.map +0 -1
  709. package/dist/browser/react/use-href.d.ts +0 -33
  710. package/dist/browser/react/use-href.d.ts.map +0 -1
  711. package/dist/browser/react/use-href.js +0 -39
  712. package/dist/browser/react/use-href.js.map +0 -1
  713. package/dist/browser/react/use-link-status.d.ts +0 -37
  714. package/dist/browser/react/use-link-status.d.ts.map +0 -1
  715. package/dist/browser/react/use-link-status.js +0 -99
  716. package/dist/browser/react/use-link-status.js.map +0 -1
  717. package/dist/browser/react/use-mount.d.ts +0 -25
  718. package/dist/browser/react/use-mount.d.ts.map +0 -1
  719. package/dist/browser/react/use-mount.js +0 -30
  720. package/dist/browser/react/use-mount.js.map +0 -1
  721. package/dist/browser/react/use-navigation.d.ts +0 -27
  722. package/dist/browser/react/use-navigation.d.ts.map +0 -1
  723. package/dist/browser/react/use-navigation.js +0 -87
  724. package/dist/browser/react/use-navigation.js.map +0 -1
  725. package/dist/browser/react/use-segments.d.ts +0 -38
  726. package/dist/browser/react/use-segments.d.ts.map +0 -1
  727. package/dist/browser/react/use-segments.js +0 -130
  728. package/dist/browser/react/use-segments.js.map +0 -1
  729. package/dist/browser/request-controller.d.ts +0 -26
  730. package/dist/browser/request-controller.d.ts.map +0 -1
  731. package/dist/browser/request-controller.js +0 -147
  732. package/dist/browser/request-controller.js.map +0 -1
  733. package/dist/browser/rsc-router.d.ts +0 -129
  734. package/dist/browser/rsc-router.d.ts.map +0 -1
  735. package/dist/browser/rsc-router.js +0 -195
  736. package/dist/browser/rsc-router.js.map +0 -1
  737. package/dist/browser/scroll-restoration.d.ts +0 -93
  738. package/dist/browser/scroll-restoration.d.ts.map +0 -1
  739. package/dist/browser/scroll-restoration.js +0 -321
  740. package/dist/browser/scroll-restoration.js.map +0 -1
  741. package/dist/browser/segment-structure-assert.d.ts +0 -17
  742. package/dist/browser/segment-structure-assert.d.ts.map +0 -1
  743. package/dist/browser/segment-structure-assert.js +0 -59
  744. package/dist/browser/segment-structure-assert.js.map +0 -1
  745. package/dist/browser/server-action-bridge.d.ts +0 -26
  746. package/dist/browser/server-action-bridge.d.ts.map +0 -1
  747. package/dist/browser/server-action-bridge.js +0 -668
  748. package/dist/browser/server-action-bridge.js.map +0 -1
  749. package/dist/browser/shallow.d.ts +0 -12
  750. package/dist/browser/shallow.d.ts.map +0 -1
  751. package/dist/browser/shallow.js +0 -34
  752. package/dist/browser/shallow.js.map +0 -1
  753. package/dist/browser/types.d.ts +0 -369
  754. package/dist/browser/types.d.ts.map +0 -1
  755. package/dist/browser/types.js +0 -2
  756. package/dist/browser/types.js.map +0 -1
  757. package/dist/build/__tests__/generate-cli.test.d.ts +0 -2
  758. package/dist/build/__tests__/generate-cli.test.d.ts.map +0 -1
  759. package/dist/build/__tests__/generate-cli.test.js +0 -237
  760. package/dist/build/__tests__/generate-cli.test.js.map +0 -1
  761. package/dist/build/__tests__/generate-manifest.test.d.ts +0 -2
  762. package/dist/build/__tests__/generate-manifest.test.d.ts.map +0 -1
  763. package/dist/build/__tests__/generate-manifest.test.js +0 -119
  764. package/dist/build/__tests__/generate-manifest.test.js.map +0 -1
  765. package/dist/build/__tests__/generate-route-types.test.d.ts +0 -2
  766. package/dist/build/__tests__/generate-route-types.test.d.ts.map +0 -1
  767. package/dist/build/__tests__/generate-route-types.test.js +0 -620
  768. package/dist/build/__tests__/generate-route-types.test.js.map +0 -1
  769. package/dist/build/__tests__/per-router-manifest.test.d.ts +0 -2
  770. package/dist/build/__tests__/per-router-manifest.test.d.ts.map +0 -1
  771. package/dist/build/__tests__/per-router-manifest.test.js +0 -308
  772. package/dist/build/__tests__/per-router-manifest.test.js.map +0 -1
  773. package/dist/build/generate-manifest.d.ts +0 -81
  774. package/dist/build/generate-manifest.d.ts.map +0 -1
  775. package/dist/build/generate-manifest.js +0 -276
  776. package/dist/build/generate-manifest.js.map +0 -1
  777. package/dist/build/generate-route-types.d.ts +0 -115
  778. package/dist/build/generate-route-types.d.ts.map +0 -1
  779. package/dist/build/generate-route-types.js +0 -740
  780. package/dist/build/generate-route-types.js.map +0 -1
  781. package/dist/build/index.d.ts +0 -21
  782. package/dist/build/index.d.ts.map +0 -1
  783. package/dist/build/index.js +0 -21
  784. package/dist/build/index.js.map +0 -1
  785. package/dist/build/route-trie.d.ts +0 -71
  786. package/dist/build/route-trie.d.ts.map +0 -1
  787. package/dist/build/route-trie.js +0 -175
  788. package/dist/build/route-trie.js.map +0 -1
  789. package/dist/cache/__tests__/cache-scope.test.d.ts +0 -2
  790. package/dist/cache/__tests__/cache-scope.test.d.ts.map +0 -1
  791. package/dist/cache/__tests__/cache-scope.test.js +0 -208
  792. package/dist/cache/__tests__/cache-scope.test.js.map +0 -1
  793. package/dist/cache/__tests__/document-cache.test.d.ts +0 -2
  794. package/dist/cache/__tests__/document-cache.test.d.ts.map +0 -1
  795. package/dist/cache/__tests__/document-cache.test.js +0 -345
  796. package/dist/cache/__tests__/document-cache.test.js.map +0 -1
  797. package/dist/cache/__tests__/memory-segment-store.test.d.ts +0 -2
  798. package/dist/cache/__tests__/memory-segment-store.test.d.ts.map +0 -1
  799. package/dist/cache/__tests__/memory-segment-store.test.js +0 -425
  800. package/dist/cache/__tests__/memory-segment-store.test.js.map +0 -1
  801. package/dist/cache/__tests__/memory-store.test.d.ts +0 -2
  802. package/dist/cache/__tests__/memory-store.test.d.ts.map +0 -1
  803. package/dist/cache/__tests__/memory-store.test.js +0 -367
  804. package/dist/cache/__tests__/memory-store.test.js.map +0 -1
  805. package/dist/cache/cache-scope.d.ts +0 -102
  806. package/dist/cache/cache-scope.d.ts.map +0 -1
  807. package/dist/cache/cache-scope.js +0 -440
  808. package/dist/cache/cache-scope.js.map +0 -1
  809. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts +0 -2
  810. package/dist/cache/cf/__tests__/cf-cache-store.test.d.ts.map +0 -1
  811. package/dist/cache/cf/__tests__/cf-cache-store.test.js +0 -330
  812. package/dist/cache/cf/__tests__/cf-cache-store.test.js.map +0 -1
  813. package/dist/cache/cf/cf-cache-store.d.ts +0 -165
  814. package/dist/cache/cf/cf-cache-store.d.ts.map +0 -1
  815. package/dist/cache/cf/cf-cache-store.js +0 -242
  816. package/dist/cache/cf/cf-cache-store.js.map +0 -1
  817. package/dist/cache/cf/index.d.ts +0 -14
  818. package/dist/cache/cf/index.d.ts.map +0 -1
  819. package/dist/cache/cf/index.js +0 -17
  820. package/dist/cache/cf/index.js.map +0 -1
  821. package/dist/cache/document-cache.d.ts +0 -64
  822. package/dist/cache/document-cache.d.ts.map +0 -1
  823. package/dist/cache/document-cache.js +0 -228
  824. package/dist/cache/document-cache.js.map +0 -1
  825. package/dist/cache/index.d.ts +0 -19
  826. package/dist/cache/index.d.ts.map +0 -1
  827. package/dist/cache/index.js +0 -21
  828. package/dist/cache/index.js.map +0 -1
  829. package/dist/cache/memory-segment-store.d.ts +0 -110
  830. package/dist/cache/memory-segment-store.d.ts.map +0 -1
  831. package/dist/cache/memory-segment-store.js +0 -117
  832. package/dist/cache/memory-segment-store.js.map +0 -1
  833. package/dist/cache/memory-store.d.ts +0 -41
  834. package/dist/cache/memory-store.d.ts.map +0 -1
  835. package/dist/cache/memory-store.js +0 -191
  836. package/dist/cache/memory-store.js.map +0 -1
  837. package/dist/cache/types.d.ts +0 -317
  838. package/dist/cache/types.d.ts.map +0 -1
  839. package/dist/cache/types.js +0 -12
  840. package/dist/cache/types.js.map +0 -1
  841. package/dist/client.d.ts +0 -248
  842. package/dist/client.d.ts.map +0 -1
  843. package/dist/client.js +0 -367
  844. package/dist/client.js.map +0 -1
  845. package/dist/client.rsc.d.ts +0 -26
  846. package/dist/client.rsc.d.ts.map +0 -1
  847. package/dist/client.rsc.js +0 -46
  848. package/dist/client.rsc.js.map +0 -1
  849. package/dist/component-utils.d.ts +0 -36
  850. package/dist/component-utils.d.ts.map +0 -1
  851. package/dist/component-utils.js +0 -61
  852. package/dist/component-utils.js.map +0 -1
  853. package/dist/components/DefaultDocument.d.ts +0 -13
  854. package/dist/components/DefaultDocument.d.ts.map +0 -1
  855. package/dist/components/DefaultDocument.js +0 -15
  856. package/dist/components/DefaultDocument.js.map +0 -1
  857. package/dist/debug.d.ts +0 -58
  858. package/dist/debug.d.ts.map +0 -1
  859. package/dist/debug.js +0 -157
  860. package/dist/debug.js.map +0 -1
  861. package/dist/default-error-boundary.d.ts +0 -11
  862. package/dist/default-error-boundary.d.ts.map +0 -1
  863. package/dist/default-error-boundary.js +0 -45
  864. package/dist/default-error-boundary.js.map +0 -1
  865. package/dist/deps/browser.d.ts +0 -2
  866. package/dist/deps/browser.d.ts.map +0 -1
  867. package/dist/deps/browser.js +0 -3
  868. package/dist/deps/browser.js.map +0 -1
  869. package/dist/deps/html-stream-client.d.ts +0 -2
  870. package/dist/deps/html-stream-client.d.ts.map +0 -1
  871. package/dist/deps/html-stream-client.js +0 -3
  872. package/dist/deps/html-stream-client.js.map +0 -1
  873. package/dist/deps/html-stream-server.d.ts +0 -2
  874. package/dist/deps/html-stream-server.d.ts.map +0 -1
  875. package/dist/deps/html-stream-server.js +0 -3
  876. package/dist/deps/html-stream-server.js.map +0 -1
  877. package/dist/deps/rsc.d.ts +0 -2
  878. package/dist/deps/rsc.d.ts.map +0 -1
  879. package/dist/deps/rsc.js +0 -4
  880. package/dist/deps/rsc.js.map +0 -1
  881. package/dist/deps/ssr.d.ts +0 -2
  882. package/dist/deps/ssr.d.ts.map +0 -1
  883. package/dist/deps/ssr.js +0 -3
  884. package/dist/deps/ssr.js.map +0 -1
  885. package/dist/errors.d.ts +0 -174
  886. package/dist/errors.d.ts.map +0 -1
  887. package/dist/errors.js +0 -241
  888. package/dist/errors.js.map +0 -1
  889. package/dist/handle.d.ts +0 -78
  890. package/dist/handle.d.ts.map +0 -1
  891. package/dist/handle.js +0 -82
  892. package/dist/handle.js.map +0 -1
  893. package/dist/handles/MetaTags.d.ts +0 -14
  894. package/dist/handles/MetaTags.d.ts.map +0 -1
  895. package/dist/handles/MetaTags.js +0 -136
  896. package/dist/handles/MetaTags.js.map +0 -1
  897. package/dist/handles/index.d.ts +0 -6
  898. package/dist/handles/index.d.ts.map +0 -1
  899. package/dist/handles/index.js +0 -6
  900. package/dist/handles/index.js.map +0 -1
  901. package/dist/handles/meta.d.ts +0 -39
  902. package/dist/handles/meta.d.ts.map +0 -1
  903. package/dist/handles/meta.js +0 -202
  904. package/dist/handles/meta.js.map +0 -1
  905. package/dist/host/__tests__/errors.test.d.ts +0 -2
  906. package/dist/host/__tests__/errors.test.d.ts.map +0 -1
  907. package/dist/host/__tests__/errors.test.js +0 -76
  908. package/dist/host/__tests__/errors.test.js.map +0 -1
  909. package/dist/host/__tests__/pattern-comprehensive.test.d.ts +0 -2
  910. package/dist/host/__tests__/pattern-comprehensive.test.d.ts.map +0 -1
  911. package/dist/host/__tests__/pattern-comprehensive.test.js +0 -732
  912. package/dist/host/__tests__/pattern-comprehensive.test.js.map +0 -1
  913. package/dist/host/__tests__/pattern-matcher.test.d.ts +0 -2
  914. package/dist/host/__tests__/pattern-matcher.test.d.ts.map +0 -1
  915. package/dist/host/__tests__/pattern-matcher.test.js +0 -251
  916. package/dist/host/__tests__/pattern-matcher.test.js.map +0 -1
  917. package/dist/host/__tests__/router.test.d.ts +0 -2
  918. package/dist/host/__tests__/router.test.d.ts.map +0 -1
  919. package/dist/host/__tests__/router.test.js +0 -241
  920. package/dist/host/__tests__/router.test.js.map +0 -1
  921. package/dist/host/__tests__/testing.test.d.ts +0 -2
  922. package/dist/host/__tests__/testing.test.d.ts.map +0 -1
  923. package/dist/host/__tests__/testing.test.js +0 -64
  924. package/dist/host/__tests__/testing.test.js.map +0 -1
  925. package/dist/host/__tests__/utils.test.d.ts +0 -2
  926. package/dist/host/__tests__/utils.test.d.ts.map +0 -1
  927. package/dist/host/__tests__/utils.test.js +0 -29
  928. package/dist/host/__tests__/utils.test.js.map +0 -1
  929. package/dist/host/cookie-handler.d.ts +0 -34
  930. package/dist/host/cookie-handler.d.ts.map +0 -1
  931. package/dist/host/cookie-handler.js +0 -124
  932. package/dist/host/cookie-handler.js.map +0 -1
  933. package/dist/host/errors.d.ts +0 -56
  934. package/dist/host/errors.d.ts.map +0 -1
  935. package/dist/host/errors.js +0 -79
  936. package/dist/host/errors.js.map +0 -1
  937. package/dist/host/index.d.ts +0 -29
  938. package/dist/host/index.d.ts.map +0 -1
  939. package/dist/host/index.js +0 -32
  940. package/dist/host/index.js.map +0 -1
  941. package/dist/host/pattern-matcher.d.ts +0 -36
  942. package/dist/host/pattern-matcher.d.ts.map +0 -1
  943. package/dist/host/pattern-matcher.js +0 -172
  944. package/dist/host/pattern-matcher.js.map +0 -1
  945. package/dist/host/router.d.ts +0 -26
  946. package/dist/host/router.d.ts.map +0 -1
  947. package/dist/host/router.js +0 -218
  948. package/dist/host/router.js.map +0 -1
  949. package/dist/host/testing.d.ts +0 -36
  950. package/dist/host/testing.d.ts.map +0 -1
  951. package/dist/host/testing.js +0 -55
  952. package/dist/host/testing.js.map +0 -1
  953. package/dist/host/types.d.ts +0 -115
  954. package/dist/host/types.d.ts.map +0 -1
  955. package/dist/host/types.js +0 -7
  956. package/dist/host/types.js.map +0 -1
  957. package/dist/host/utils.d.ts +0 -21
  958. package/dist/host/utils.d.ts.map +0 -1
  959. package/dist/host/utils.js +0 -23
  960. package/dist/host/utils.js.map +0 -1
  961. package/dist/href-client.d.ts +0 -131
  962. package/dist/href-client.d.ts.map +0 -1
  963. package/dist/href-client.js +0 -64
  964. package/dist/href-client.js.map +0 -1
  965. package/dist/href-context.d.ts +0 -29
  966. package/dist/href-context.d.ts.map +0 -1
  967. package/dist/href-context.js +0 -21
  968. package/dist/href-context.js.map +0 -1
  969. package/dist/index.d.ts +0 -73
  970. package/dist/index.d.ts.map +0 -1
  971. package/dist/index.js +0 -91
  972. package/dist/index.js.map +0 -1
  973. package/dist/index.rsc.d.ts +0 -32
  974. package/dist/index.rsc.d.ts.map +0 -1
  975. package/dist/index.rsc.js +0 -40
  976. package/dist/index.rsc.js.map +0 -1
  977. package/dist/internal-debug.d.ts +0 -2
  978. package/dist/internal-debug.d.ts.map +0 -1
  979. package/dist/internal-debug.js +0 -5
  980. package/dist/internal-debug.js.map +0 -1
  981. package/dist/loader.d.ts +0 -14
  982. package/dist/loader.d.ts.map +0 -1
  983. package/dist/loader.js +0 -20
  984. package/dist/loader.js.map +0 -1
  985. package/dist/loader.rsc.d.ts +0 -19
  986. package/dist/loader.rsc.d.ts.map +0 -1
  987. package/dist/loader.rsc.js +0 -99
  988. package/dist/loader.rsc.js.map +0 -1
  989. package/dist/network-error-thrower.d.ts +0 -17
  990. package/dist/network-error-thrower.d.ts.map +0 -1
  991. package/dist/network-error-thrower.js +0 -14
  992. package/dist/network-error-thrower.js.map +0 -1
  993. package/dist/outlet-context.d.ts +0 -13
  994. package/dist/outlet-context.d.ts.map +0 -1
  995. package/dist/outlet-context.js +0 -3
  996. package/dist/outlet-context.js.map +0 -1
  997. package/dist/prerender/__tests__/param-hash.test.d.ts +0 -2
  998. package/dist/prerender/__tests__/param-hash.test.d.ts.map +0 -1
  999. package/dist/prerender/__tests__/param-hash.test.js +0 -148
  1000. package/dist/prerender/__tests__/param-hash.test.js.map +0 -1
  1001. package/dist/prerender/param-hash.d.ts +0 -16
  1002. package/dist/prerender/param-hash.d.ts.map +0 -1
  1003. package/dist/prerender/param-hash.js +0 -36
  1004. package/dist/prerender/param-hash.js.map +0 -1
  1005. package/dist/prerender/store.d.ts +0 -38
  1006. package/dist/prerender/store.d.ts.map +0 -1
  1007. package/dist/prerender/store.js +0 -61
  1008. package/dist/prerender/store.js.map +0 -1
  1009. package/dist/prerender.d.ts +0 -66
  1010. package/dist/prerender.d.ts.map +0 -1
  1011. package/dist/prerender.js +0 -57
  1012. package/dist/prerender.js.map +0 -1
  1013. package/dist/reverse.d.ts +0 -196
  1014. package/dist/reverse.d.ts.map +0 -1
  1015. package/dist/reverse.js +0 -78
  1016. package/dist/reverse.js.map +0 -1
  1017. package/dist/root-error-boundary.d.ts +0 -33
  1018. package/dist/root-error-boundary.d.ts.map +0 -1
  1019. package/dist/root-error-boundary.js +0 -165
  1020. package/dist/root-error-boundary.js.map +0 -1
  1021. package/dist/route-content-wrapper.d.ts +0 -46
  1022. package/dist/route-content-wrapper.d.ts.map +0 -1
  1023. package/dist/route-content-wrapper.js +0 -77
  1024. package/dist/route-content-wrapper.js.map +0 -1
  1025. package/dist/route-definition.d.ts +0 -421
  1026. package/dist/route-definition.d.ts.map +0 -1
  1027. package/dist/route-definition.js +0 -868
  1028. package/dist/route-definition.js.map +0 -1
  1029. package/dist/route-map-builder.d.ts +0 -155
  1030. package/dist/route-map-builder.d.ts.map +0 -1
  1031. package/dist/route-map-builder.js +0 -237
  1032. package/dist/route-map-builder.js.map +0 -1
  1033. package/dist/route-types.d.ts +0 -165
  1034. package/dist/route-types.d.ts.map +0 -1
  1035. package/dist/route-types.js +0 -7
  1036. package/dist/route-types.js.map +0 -1
  1037. package/dist/router/__tests__/handler-context.test.d.ts +0 -2
  1038. package/dist/router/__tests__/handler-context.test.d.ts.map +0 -1
  1039. package/dist/router/__tests__/handler-context.test.js +0 -65
  1040. package/dist/router/__tests__/handler-context.test.js.map +0 -1
  1041. package/dist/router/__tests__/loader-cycle-detection.test.d.ts +0 -2
  1042. package/dist/router/__tests__/loader-cycle-detection.test.d.ts.map +0 -1
  1043. package/dist/router/__tests__/loader-cycle-detection.test.js +0 -221
  1044. package/dist/router/__tests__/loader-cycle-detection.test.js.map +0 -1
  1045. package/dist/router/__tests__/match-context.test.d.ts +0 -2
  1046. package/dist/router/__tests__/match-context.test.d.ts.map +0 -1
  1047. package/dist/router/__tests__/match-context.test.js +0 -92
  1048. package/dist/router/__tests__/match-context.test.js.map +0 -1
  1049. package/dist/router/__tests__/match-pipelines.test.d.ts +0 -2
  1050. package/dist/router/__tests__/match-pipelines.test.d.ts.map +0 -1
  1051. package/dist/router/__tests__/match-pipelines.test.js +0 -417
  1052. package/dist/router/__tests__/match-pipelines.test.js.map +0 -1
  1053. package/dist/router/__tests__/match-result.test.d.ts +0 -2
  1054. package/dist/router/__tests__/match-result.test.d.ts.map +0 -1
  1055. package/dist/router/__tests__/match-result.test.js +0 -457
  1056. package/dist/router/__tests__/match-result.test.js.map +0 -1
  1057. package/dist/router/__tests__/on-error.test.d.ts +0 -2
  1058. package/dist/router/__tests__/on-error.test.d.ts.map +0 -1
  1059. package/dist/router/__tests__/on-error.test.js +0 -678
  1060. package/dist/router/__tests__/on-error.test.js.map +0 -1
  1061. package/dist/router/__tests__/pattern-matching.test.d.ts +0 -2
  1062. package/dist/router/__tests__/pattern-matching.test.d.ts.map +0 -1
  1063. package/dist/router/__tests__/pattern-matching.test.js +0 -629
  1064. package/dist/router/__tests__/pattern-matching.test.js.map +0 -1
  1065. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts +0 -2
  1066. package/dist/router/__tests__/segment-resolution-parallel-loading.test.d.ts.map +0 -1
  1067. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js +0 -155
  1068. package/dist/router/__tests__/segment-resolution-parallel-loading.test.js.map +0 -1
  1069. package/dist/router/error-handling.d.ts +0 -77
  1070. package/dist/router/error-handling.d.ts.map +0 -1
  1071. package/dist/router/error-handling.js +0 -202
  1072. package/dist/router/error-handling.js.map +0 -1
  1073. package/dist/router/handler-context.d.ts +0 -20
  1074. package/dist/router/handler-context.d.ts.map +0 -1
  1075. package/dist/router/handler-context.js +0 -198
  1076. package/dist/router/handler-context.js.map +0 -1
  1077. package/dist/router/intercept-resolution.d.ts +0 -66
  1078. package/dist/router/intercept-resolution.d.ts.map +0 -1
  1079. package/dist/router/intercept-resolution.js +0 -246
  1080. package/dist/router/intercept-resolution.js.map +0 -1
  1081. package/dist/router/loader-resolution.d.ts +0 -64
  1082. package/dist/router/loader-resolution.d.ts.map +0 -1
  1083. package/dist/router/loader-resolution.js +0 -284
  1084. package/dist/router/loader-resolution.js.map +0 -1
  1085. package/dist/router/logging.d.ts +0 -15
  1086. package/dist/router/logging.d.ts.map +0 -1
  1087. package/dist/router/logging.js +0 -99
  1088. package/dist/router/logging.js.map +0 -1
  1089. package/dist/router/manifest.d.ts +0 -22
  1090. package/dist/router/manifest.d.ts.map +0 -1
  1091. package/dist/router/manifest.js +0 -181
  1092. package/dist/router/manifest.js.map +0 -1
  1093. package/dist/router/match-api.d.ts +0 -35
  1094. package/dist/router/match-api.d.ts.map +0 -1
  1095. package/dist/router/match-api.js +0 -406
  1096. package/dist/router/match-api.js.map +0 -1
  1097. package/dist/router/match-context.d.ts +0 -206
  1098. package/dist/router/match-context.d.ts.map +0 -1
  1099. package/dist/router/match-context.js +0 -17
  1100. package/dist/router/match-context.js.map +0 -1
  1101. package/dist/router/match-middleware/background-revalidation.d.ts +0 -127
  1102. package/dist/router/match-middleware/background-revalidation.d.ts.map +0 -1
  1103. package/dist/router/match-middleware/background-revalidation.js +0 -75
  1104. package/dist/router/match-middleware/background-revalidation.js.map +0 -1
  1105. package/dist/router/match-middleware/cache-lookup.d.ts +0 -112
  1106. package/dist/router/match-middleware/cache-lookup.d.ts.map +0 -1
  1107. package/dist/router/match-middleware/cache-lookup.js +0 -257
  1108. package/dist/router/match-middleware/cache-lookup.js.map +0 -1
  1109. package/dist/router/match-middleware/cache-store.d.ts +0 -113
  1110. package/dist/router/match-middleware/cache-store.d.ts.map +0 -1
  1111. package/dist/router/match-middleware/cache-store.js +0 -108
  1112. package/dist/router/match-middleware/cache-store.js.map +0 -1
  1113. package/dist/router/match-middleware/index.d.ts +0 -81
  1114. package/dist/router/match-middleware/index.d.ts.map +0 -1
  1115. package/dist/router/match-middleware/index.js +0 -80
  1116. package/dist/router/match-middleware/index.js.map +0 -1
  1117. package/dist/router/match-middleware/intercept-resolution.d.ts +0 -117
  1118. package/dist/router/match-middleware/intercept-resolution.d.ts.map +0 -1
  1119. package/dist/router/match-middleware/intercept-resolution.js +0 -134
  1120. package/dist/router/match-middleware/intercept-resolution.js.map +0 -1
  1121. package/dist/router/match-middleware/segment-resolution.d.ts +0 -99
  1122. package/dist/router/match-middleware/segment-resolution.d.ts.map +0 -1
  1123. package/dist/router/match-middleware/segment-resolution.js +0 -53
  1124. package/dist/router/match-middleware/segment-resolution.js.map +0 -1
  1125. package/dist/router/match-pipelines.d.ts +0 -147
  1126. package/dist/router/match-pipelines.d.ts.map +0 -1
  1127. package/dist/router/match-pipelines.js +0 -82
  1128. package/dist/router/match-pipelines.js.map +0 -1
  1129. package/dist/router/match-result.d.ts +0 -126
  1130. package/dist/router/match-result.d.ts.map +0 -1
  1131. package/dist/router/match-result.js +0 -93
  1132. package/dist/router/match-result.js.map +0 -1
  1133. package/dist/router/metrics.d.ts +0 -20
  1134. package/dist/router/metrics.d.ts.map +0 -1
  1135. package/dist/router/metrics.js +0 -47
  1136. package/dist/router/metrics.js.map +0 -1
  1137. package/dist/router/middleware.d.ts +0 -249
  1138. package/dist/router/middleware.d.ts.map +0 -1
  1139. package/dist/router/middleware.js +0 -434
  1140. package/dist/router/middleware.js.map +0 -1
  1141. package/dist/router/middleware.test.d.ts +0 -2
  1142. package/dist/router/middleware.test.d.ts.map +0 -1
  1143. package/dist/router/middleware.test.js +0 -816
  1144. package/dist/router/middleware.test.js.map +0 -1
  1145. package/dist/router/pattern-matching.d.ts +0 -149
  1146. package/dist/router/pattern-matching.d.ts.map +0 -1
  1147. package/dist/router/pattern-matching.js +0 -349
  1148. package/dist/router/pattern-matching.js.map +0 -1
  1149. package/dist/router/revalidation.d.ts +0 -44
  1150. package/dist/router/revalidation.d.ts.map +0 -1
  1151. package/dist/router/revalidation.js +0 -147
  1152. package/dist/router/revalidation.js.map +0 -1
  1153. package/dist/router/router-context.d.ts +0 -135
  1154. package/dist/router/router-context.d.ts.map +0 -1
  1155. package/dist/router/router-context.js +0 -36
  1156. package/dist/router/router-context.js.map +0 -1
  1157. package/dist/router/segment-resolution.d.ts +0 -127
  1158. package/dist/router/segment-resolution.d.ts.map +0 -1
  1159. package/dist/router/segment-resolution.js +0 -919
  1160. package/dist/router/segment-resolution.js.map +0 -1
  1161. package/dist/router/trie-matching.d.ts +0 -40
  1162. package/dist/router/trie-matching.d.ts.map +0 -1
  1163. package/dist/router/trie-matching.js +0 -127
  1164. package/dist/router/trie-matching.js.map +0 -1
  1165. package/dist/router/types.d.ts +0 -136
  1166. package/dist/router/types.d.ts.map +0 -1
  1167. package/dist/router/types.js +0 -7
  1168. package/dist/router/types.js.map +0 -1
  1169. package/dist/router.d.ts +0 -753
  1170. package/dist/router.d.ts.map +0 -1
  1171. package/dist/router.gen.d.ts +0 -6
  1172. package/dist/router.gen.d.ts.map +0 -1
  1173. package/dist/router.gen.js +0 -6
  1174. package/dist/router.gen.js.map +0 -1
  1175. package/dist/router.js +0 -1304
  1176. package/dist/router.js.map +0 -1
  1177. package/dist/rsc/__tests__/helpers.test.d.ts +0 -2
  1178. package/dist/rsc/__tests__/helpers.test.d.ts.map +0 -1
  1179. package/dist/rsc/__tests__/helpers.test.js +0 -140
  1180. package/dist/rsc/__tests__/helpers.test.js.map +0 -1
  1181. package/dist/rsc/handler.d.ts +0 -45
  1182. package/dist/rsc/handler.d.ts.map +0 -1
  1183. package/dist/rsc/handler.js +0 -1172
  1184. package/dist/rsc/handler.js.map +0 -1
  1185. package/dist/rsc/helpers.d.ts +0 -16
  1186. package/dist/rsc/helpers.d.ts.map +0 -1
  1187. package/dist/rsc/helpers.js +0 -55
  1188. package/dist/rsc/helpers.js.map +0 -1
  1189. package/dist/rsc/index.d.ts +0 -22
  1190. package/dist/rsc/index.d.ts.map +0 -1
  1191. package/dist/rsc/index.js +0 -23
  1192. package/dist/rsc/index.js.map +0 -1
  1193. package/dist/rsc/nonce.d.ts +0 -9
  1194. package/dist/rsc/nonce.d.ts.map +0 -1
  1195. package/dist/rsc/nonce.js +0 -18
  1196. package/dist/rsc/nonce.js.map +0 -1
  1197. package/dist/rsc/types.d.ts +0 -206
  1198. package/dist/rsc/types.d.ts.map +0 -1
  1199. package/dist/rsc/types.js +0 -8
  1200. package/dist/rsc/types.js.map +0 -1
  1201. package/dist/search-params.d.ts +0 -103
  1202. package/dist/search-params.d.ts.map +0 -1
  1203. package/dist/search-params.js +0 -74
  1204. package/dist/search-params.js.map +0 -1
  1205. package/dist/segment-system.d.ts +0 -75
  1206. package/dist/segment-system.d.ts.map +0 -1
  1207. package/dist/segment-system.js +0 -336
  1208. package/dist/segment-system.js.map +0 -1
  1209. package/dist/server/context.d.ts +0 -245
  1210. package/dist/server/context.d.ts.map +0 -1
  1211. package/dist/server/context.js +0 -197
  1212. package/dist/server/context.js.map +0 -1
  1213. package/dist/server/fetchable-loader-store.d.ts +0 -18
  1214. package/dist/server/fetchable-loader-store.d.ts.map +0 -1
  1215. package/dist/server/fetchable-loader-store.js +0 -18
  1216. package/dist/server/fetchable-loader-store.js.map +0 -1
  1217. package/dist/server/handle-store.d.ts +0 -85
  1218. package/dist/server/handle-store.d.ts.map +0 -1
  1219. package/dist/server/handle-store.js +0 -142
  1220. package/dist/server/handle-store.js.map +0 -1
  1221. package/dist/server/loader-registry.d.ts +0 -55
  1222. package/dist/server/loader-registry.d.ts.map +0 -1
  1223. package/dist/server/loader-registry.js +0 -132
  1224. package/dist/server/loader-registry.js.map +0 -1
  1225. package/dist/server/request-context.d.ts +0 -226
  1226. package/dist/server/request-context.d.ts.map +0 -1
  1227. package/dist/server/request-context.js +0 -290
  1228. package/dist/server/request-context.js.map +0 -1
  1229. package/dist/server/root-layout.d.ts +0 -4
  1230. package/dist/server/root-layout.d.ts.map +0 -1
  1231. package/dist/server/root-layout.js +0 -5
  1232. package/dist/server/root-layout.js.map +0 -1
  1233. package/dist/server.d.ts +0 -15
  1234. package/dist/server.d.ts.map +0 -1
  1235. package/dist/server.js +0 -20
  1236. package/dist/server.js.map +0 -1
  1237. package/dist/ssr/__tests__/ssr-handler.test.d.ts +0 -2
  1238. package/dist/ssr/__tests__/ssr-handler.test.d.ts.map +0 -1
  1239. package/dist/ssr/__tests__/ssr-handler.test.js +0 -132
  1240. package/dist/ssr/__tests__/ssr-handler.test.js.map +0 -1
  1241. package/dist/ssr/index.d.ts +0 -98
  1242. package/dist/ssr/index.d.ts.map +0 -1
  1243. package/dist/ssr/index.js +0 -158
  1244. package/dist/ssr/index.js.map +0 -1
  1245. package/dist/static-handler.d.ts +0 -50
  1246. package/dist/static-handler.d.ts.map +0 -1
  1247. package/dist/static-handler.gen.d.ts +0 -5
  1248. package/dist/static-handler.gen.d.ts.map +0 -1
  1249. package/dist/static-handler.gen.js +0 -5
  1250. package/dist/static-handler.gen.js.map +0 -1
  1251. package/dist/static-handler.js +0 -29
  1252. package/dist/static-handler.js.map +0 -1
  1253. package/dist/theme/ThemeProvider.d.ts +0 -20
  1254. package/dist/theme/ThemeProvider.d.ts.map +0 -1
  1255. package/dist/theme/ThemeProvider.js +0 -240
  1256. package/dist/theme/ThemeProvider.js.map +0 -1
  1257. package/dist/theme/ThemeScript.d.ts +0 -48
  1258. package/dist/theme/ThemeScript.d.ts.map +0 -1
  1259. package/dist/theme/ThemeScript.js +0 -13
  1260. package/dist/theme/ThemeScript.js.map +0 -1
  1261. package/dist/theme/__tests__/theme.test.d.ts +0 -2
  1262. package/dist/theme/__tests__/theme.test.d.ts.map +0 -1
  1263. package/dist/theme/__tests__/theme.test.js +0 -103
  1264. package/dist/theme/__tests__/theme.test.js.map +0 -1
  1265. package/dist/theme/constants.d.ts +0 -29
  1266. package/dist/theme/constants.d.ts.map +0 -1
  1267. package/dist/theme/constants.js +0 -48
  1268. package/dist/theme/constants.js.map +0 -1
  1269. package/dist/theme/index.d.ts +0 -31
  1270. package/dist/theme/index.d.ts.map +0 -1
  1271. package/dist/theme/index.js +0 -36
  1272. package/dist/theme/index.js.map +0 -1
  1273. package/dist/theme/theme-context.d.ts +0 -40
  1274. package/dist/theme/theme-context.d.ts.map +0 -1
  1275. package/dist/theme/theme-context.js +0 -60
  1276. package/dist/theme/theme-context.js.map +0 -1
  1277. package/dist/theme/theme-script.d.ts +0 -27
  1278. package/dist/theme/theme-script.d.ts.map +0 -1
  1279. package/dist/theme/theme-script.js +0 -147
  1280. package/dist/theme/theme-script.js.map +0 -1
  1281. package/dist/theme/types.d.ts +0 -163
  1282. package/dist/theme/types.d.ts.map +0 -1
  1283. package/dist/theme/types.js +0 -11
  1284. package/dist/theme/types.js.map +0 -1
  1285. package/dist/theme/use-theme.d.ts +0 -12
  1286. package/dist/theme/use-theme.d.ts.map +0 -1
  1287. package/dist/theme/use-theme.js +0 -40
  1288. package/dist/theme/use-theme.js.map +0 -1
  1289. package/dist/types.d.ts +0 -1479
  1290. package/dist/types.d.ts.map +0 -1
  1291. package/dist/types.js +0 -10
  1292. package/dist/types.js.map +0 -1
  1293. package/dist/urls.d.ts +0 -441
  1294. package/dist/urls.d.ts.map +0 -1
  1295. package/dist/urls.gen.d.ts +0 -8
  1296. package/dist/urls.gen.d.ts.map +0 -1
  1297. package/dist/urls.gen.js +0 -8
  1298. package/dist/urls.gen.js.map +0 -1
  1299. package/dist/urls.js +0 -443
  1300. package/dist/urls.js.map +0 -1
  1301. package/dist/use-loader.d.ts +0 -127
  1302. package/dist/use-loader.d.ts.map +0 -1
  1303. package/dist/use-loader.js +0 -237
  1304. package/dist/use-loader.js.map +0 -1
  1305. package/dist/vite/__tests__/ast-handler-extract.test.d.ts +0 -2
  1306. package/dist/vite/__tests__/ast-handler-extract.test.d.ts.map +0 -1
  1307. package/dist/vite/__tests__/ast-handler-extract.test.js +0 -294
  1308. package/dist/vite/__tests__/ast-handler-extract.test.js.map +0 -1
  1309. package/dist/vite/__tests__/expose-id-utils.test.d.ts +0 -2
  1310. package/dist/vite/__tests__/expose-id-utils.test.d.ts.map +0 -1
  1311. package/dist/vite/__tests__/expose-id-utils.test.js +0 -224
  1312. package/dist/vite/__tests__/expose-id-utils.test.js.map +0 -1
  1313. package/dist/vite/__tests__/expose-internal-ids.test.d.ts +0 -2
  1314. package/dist/vite/__tests__/expose-internal-ids.test.d.ts.map +0 -1
  1315. package/dist/vite/__tests__/expose-internal-ids.test.js +0 -647
  1316. package/dist/vite/__tests__/expose-internal-ids.test.js.map +0 -1
  1317. package/dist/vite/__tests__/expose-router-id.test.d.ts +0 -2
  1318. package/dist/vite/__tests__/expose-router-id.test.d.ts.map +0 -1
  1319. package/dist/vite/__tests__/expose-router-id.test.js +0 -39
  1320. package/dist/vite/__tests__/expose-router-id.test.js.map +0 -1
  1321. package/dist/vite/ast-handler-extract.d.ts +0 -49
  1322. package/dist/vite/ast-handler-extract.d.ts.map +0 -1
  1323. package/dist/vite/ast-handler-extract.js +0 -249
  1324. package/dist/vite/ast-handler-extract.js.map +0 -1
  1325. package/dist/vite/expose-action-id.d.ts +0 -19
  1326. package/dist/vite/expose-action-id.d.ts.map +0 -1
  1327. package/dist/vite/expose-action-id.js +0 -250
  1328. package/dist/vite/expose-action-id.js.map +0 -1
  1329. package/dist/vite/expose-id-utils.d.ts +0 -69
  1330. package/dist/vite/expose-id-utils.d.ts.map +0 -1
  1331. package/dist/vite/expose-id-utils.js +0 -289
  1332. package/dist/vite/expose-id-utils.js.map +0 -1
  1333. package/dist/vite/expose-internal-ids.d.ts +0 -22
  1334. package/dist/vite/expose-internal-ids.d.ts.map +0 -1
  1335. package/dist/vite/expose-internal-ids.js +0 -886
  1336. package/dist/vite/expose-internal-ids.js.map +0 -1
  1337. package/dist/vite/index.d.ts +0 -149
  1338. package/dist/vite/index.d.ts.map +0 -1
  1339. package/dist/vite/index.js.bak +0 -5448
  1340. package/dist/vite/index.js.map +0 -1
  1341. package/dist/vite/index.named-routes.gen.ts +0 -103
  1342. package/dist/vite/package-resolution.d.ts +0 -43
  1343. package/dist/vite/package-resolution.d.ts.map +0 -1
  1344. package/dist/vite/package-resolution.js +0 -112
  1345. package/dist/vite/package-resolution.js.map +0 -1
  1346. package/dist/vite/virtual-entries.d.ts +0 -25
  1347. package/dist/vite/virtual-entries.d.ts.map +0 -1
  1348. package/dist/vite/virtual-entries.js +0 -110
  1349. package/dist/vite/virtual-entries.js.map +0 -1
  1350. package/skills/migrate-react-router/cloudflare-workers.md +0 -129
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Response Route Handler
3
+ *
4
+ * Handles response routes (JSON, text, HTML, XML, markdown, image, stream)
5
+ * that bypass the RSC rendering pipeline entirely. Includes content-type
6
+ * dispatch, route middleware execution, and response caching with SWR.
7
+ */
8
+ import type { MiddlewareFn } from "../router/middleware.js";
9
+ import type { EntryData } from "../server/context.js";
10
+ import type { HandlerContext } from "./handler-context.js";
11
+ export interface ResponseRouteMatch {
12
+ responseType: string;
13
+ handler: Function;
14
+ params?: Record<string, string>;
15
+ negotiated?: boolean;
16
+ manifestEntry?: EntryData;
17
+ routeMiddleware?: Array<{
18
+ handler: MiddlewareFn;
19
+ params: Record<string, string>;
20
+ }>;
21
+ }
22
+ /**
23
+ * Handle a response route (non-RSC). Dispatches by content type, wraps
24
+ * with route middleware and response caching when configured.
25
+ *
26
+ * For partial (client-side navigation) requests, returns X-RSC-Reload
27
+ * so the browser triggers a hard navigation to the response route URL.
28
+ */
29
+ export declare function handleResponseRoute<TEnv>(handlerCtx: HandlerContext<TEnv>, preview: ResponseRouteMatch, request: Request, env: TEnv, url: URL, variables: Record<string, any>): Promise<Response>;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * RSC Rendering Handler (Navigation)
3
+ *
4
+ * Handles RSC rendering for both partial (client-side navigation) and full
5
+ * (initial page load) requests. Includes prerender collection for build-time
6
+ * static generation.
7
+ */
8
+ import { getRequestContext } from "../server/request-context.js";
9
+ import type { HandlerContext } from "./handler-context.js";
10
+ export declare function handleRscRendering<TEnv>(ctx: HandlerContext<TEnv>, request: Request, env: TEnv, url: URL, isPartial: boolean, handleStore: ReturnType<typeof getRequestContext>["_handleStore"], nonce: string | undefined): Promise<Response>;
11
+ /**
12
+ * Neutralize the shell-HIT degradation redirect target. The inline
13
+ * `location.replace` in a committed 200 body bypasses the 3xx chokepoint
14
+ * (guardOutgoingRedirect only sees 3xx + Location), so this reuses the same
15
+ * same-origin resolver directly: unsafe targets neutralize to the
16
+ * redirect-guard.ts landing instead of navigating the user off-host.
17
+ */
18
+ export declare function resolveShellHitRedirectTarget(rawTarget: string, requestOrigin: string, basename: string | undefined): string;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Runtime guardrail warnings (dev-only).
3
+ *
4
+ * W3: PE action redirect / Response handling.
5
+ */
6
+ /**
7
+ * Extract a redirect Response from a thrown or returned value.
8
+ * Returns a redirect Response to send to the client, or null if the value
9
+ * is not a redirect Response.
10
+ */
11
+ export declare function extractRedirectResponse(value: unknown): Response | null;
12
+ /**
13
+ * Warn when a non-redirect Response is returned from an action during PE.
14
+ */
15
+ export declare function warnNonRedirectPeResponse(): void;
16
+ /**
17
+ * Warn when a non-redirect Response is returned (not thrown) from an action
18
+ * on the JS (fetch) path. A raw Response cannot be serialized into Flight, so
19
+ * it is discarded — mirroring the PE path. Use `throw redirect('/path')` for
20
+ * redirects.
21
+ */
22
+ export declare function warnNonRedirectActionResponse(actionId: string): void;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Server Action Handler
3
+ *
4
+ * Handles server action execution and post-action revalidation as two
5
+ * separate phases:
6
+ *
7
+ * 1. executeServerAction — decodes args, runs the action, handles redirects
8
+ * and error boundaries. Returns either a final Response (redirect/error)
9
+ * or an ActionContinuation for the revalidation phase.
10
+ *
11
+ * 2. revalidateAfterAction — takes the continuation, matches affected
12
+ * segments, builds the RSC payload, and returns the Flight response.
13
+ *
14
+ * The handler (handler.ts) runs the action BEFORE route middleware, then
15
+ * wraps revalidation inside route middleware — identical to a normal render.
16
+ */
17
+ import { getRequestContext } from "../server/request-context.js";
18
+ import type { HandlerContext } from "./handler-context.js";
19
+ import type { MatchResult } from "../types.js";
20
+ /**
21
+ * Data flowing from action execution to the revalidation phase.
22
+ * When the action completes without redirect, the handler passes this to route
23
+ * middleware → revalidateAfterAction.
24
+ *
25
+ * `errorBoundary` carries the matched error-boundary result when the action
26
+ * threw and a boundary matched. The error-boundary render is then performed in
27
+ * the revalidation phase so it runs INSIDE the same route-middleware wrapper as
28
+ * a successful revalidation — route middleware (context vars, headers, cookies)
29
+ * must apply to the error render too, matching the module doc's "identical to a
30
+ * normal render". When `errorBoundary` is set, `actionContext` is unused (the
31
+ * boundary is already matched; no matchPartial is run).
32
+ */
33
+ export interface ActionContinuation {
34
+ returnValue: {
35
+ ok: boolean;
36
+ data: unknown;
37
+ };
38
+ actionStatus: number;
39
+ temporaryReferences: ReturnType<HandlerContext["createTemporaryReferenceSet"]>;
40
+ actionContext: {
41
+ actionId: string;
42
+ actionUrl: URL;
43
+ actionResult: unknown;
44
+ formData?: FormData;
45
+ };
46
+ errorBoundary?: MatchResult;
47
+ }
48
+ /**
49
+ * Phase 1: Execute the server action.
50
+ *
51
+ * Decodes arguments, runs the action, handles redirects and error
52
+ * boundaries. Returns a final Response (redirect, error boundary render)
53
+ * or an ActionContinuation for the revalidation phase.
54
+ */
55
+ export declare function executeServerAction<TEnv>(ctx: HandlerContext<TEnv>, request: Request, env: TEnv, url: URL, actionId: string, handleStore: ReturnType<typeof getRequestContext>["_handleStore"]): Promise<Response | ActionContinuation>;
56
+ /**
57
+ * Phase 2: Revalidate after action.
58
+ *
59
+ * Matches affected segments, builds the RSC payload, and returns the
60
+ * Flight response. Called inside route middleware (same as a normal render).
61
+ *
62
+ * Invariant: the response payload MUST have isPartial: true. The client
63
+ * (server-action-bridge) rejects non-partial payloads because partial
64
+ * reconciliation requires matched/diff semantics that full renders don't
65
+ * provide. Redirects are the only non-partial outcome and are handled via
66
+ * X-RSC-Redirect headers before Flight deserialization.
67
+ */
68
+ export declare function revalidateAfterAction<TEnv>(ctx: HandlerContext<TEnv>, request: Request, env: TEnv, url: URL, handleStore: ReturnType<typeof getRequestContext>["_handleStore"], continuation: ActionContinuation): Promise<Response>;
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Build-time shell entry read-through (producer B, issue #699).
3
+ *
4
+ * The build stages one ShellCacheEntry per Prerender+ppr URL as a lazy
5
+ * manifest module injected into the RSC bundle
6
+ * (`globalThis.__loadShellManifestModule`, mirroring the prerender payload
7
+ * manifest — the worker handles every request; nothing is served from
8
+ * assets). The serve path consults this on a runtime shell-store MISS, so the
9
+ * FIRST request after a deploy is already a shell HIT with zero runtime
10
+ * capture. The worker cannot tell where an entry came from: a build hit is
11
+ * served through the same serveShellHit as a captured one.
12
+ *
13
+ * Lifecycle:
14
+ * - No expiry until the next deploy — the buildVersion gate retires entries
15
+ * the moment a new build ships (a new manifest replaces them anyway).
16
+ * - `ppr.ttl` drives STALENESS ONLY: past createdAt + ttl the entry still
17
+ * serves, but a runtime recapture is scheduled — SWR is the UPGRADE path
18
+ * from build entry to fresher runtime entry, not the bootstrap path. The
19
+ * runtime store is consulted first, so a captured entry supersedes the
20
+ * build entry as soon as it lands.
21
+ * - `updateTag()` evicts build entries like runtime ones: the read-through
22
+ * validates the entry's baked tag union against the store's tag
23
+ * invalidation markers (isTagsInvalidatedSince) with the entry's createdAt
24
+ * as the reference instant. No tombstones — the manifest is immutable; the
25
+ * markers say whether it is still current.
26
+ */
27
+ import type { SegmentCacheStore, ShellCacheEntry } from "../cache/types.js";
28
+ /** One baked manifest record (the __ps asset module's default export). */
29
+ export interface BuildShellEntry {
30
+ entry: ShellCacheEntry;
31
+ /** Resolved ppr ttl (seconds) — drives staleness/recapture, never expiry. */
32
+ ttl: number;
33
+ swr?: number;
34
+ /** The putShell-barrier tag union baked at build (static + recorded). */
35
+ tags?: string[];
36
+ routeName: string;
37
+ }
38
+ interface ShellManifestModule {
39
+ /** Manifest key (pathname — see shell-manifest-key.ts) -> asset specifier. */
40
+ default: Record<string, string>;
41
+ loadShellAsset: (spec: string) => Promise<{
42
+ default: BuildShellEntry;
43
+ }>;
44
+ }
45
+ declare global {
46
+ var __loadShellManifestModule: (() => Promise<ShellManifestModule>) | undefined;
47
+ }
48
+ /** Reset the memoized manifest (unit tests swap the global loader). */
49
+ export declare function resetBuildShellManifestForTests(): void;
50
+ export interface BuildShellHit {
51
+ entry: ShellCacheEntry;
52
+ /** Past createdAt + ttl: serve, but schedule the runtime recapture. */
53
+ stale: boolean;
54
+ }
55
+ /**
56
+ * Dev-mode lookup context: there is no build manifest in dev, so producer B
57
+ * runs ON DEMAND through the Vite dev server's /__rsc_shell endpoint
58
+ * (memoized per router HMR generation), mirroring the dev prerender store's
59
+ * /__rsc_prerender flow. Only armed for PRERENDERED routes (matched.pr) —
60
+ * exactly production's candidate set; everything else keeps runtime capture.
61
+ */
62
+ export interface DevShellLookup {
63
+ /** True when the classified route is trie-flagged pr (Prerender-backed). */
64
+ isPrerenderRoute: boolean;
65
+ /** Canonical route key of the classified route (endpoint verification). */
66
+ routeName: string | undefined;
67
+ /** Resolved ppr policy from the serve gate (the endpoint is policy-free). */
68
+ ttl: number;
69
+ swr?: number;
70
+ tags?: string[];
71
+ maxSnapshotBytes?: number;
72
+ /** Resolved `ppr.captureTimeout` (ms) — the endpoint's capture honors it. */
73
+ captureTimeout?: number;
74
+ }
75
+ /**
76
+ * Look up the baked shell entry for a request, applying every serve gate:
77
+ * search-less requests only (the build captured the bare pathname; a
78
+ * search-bearing URL has its own shell identity owned by runtime capture),
79
+ * version validity, payload integrity, and tag-invalidation markers. Returns
80
+ * null on any gate failure — the caller degrades to the ordinary MISS path
81
+ * (axis 1 + runtime capture), never a broken serve.
82
+ */
83
+ export declare function lookupBuildShell(url: URL, buildVersion: string, store: SegmentCacheStore, dev?: DevShellLookup): Promise<BuildShellHit | null>;
84
+ export {};
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Default upper bound on the capture prerender wait before forcing the abort
3
+ * that freezes the shell — the ONLY wall-clock on the capture path, and a
4
+ * pathological guard: it should never fire once the caller's `quiesce` is a
5
+ * task-quantized, frozen-byte signal (the capture gate in shell-capture.ts).
6
+ *
7
+ * Leaf module on purpose (imports nothing): shell-capture.ts re-exports it
8
+ * (single import site for the rsc graph — shell-build-manifest.ts sizes the
9
+ * dev fetch envelope from that re-export) and ssr/index.tsx uses it as
10
+ * captureShellHTML's own fallback; the ssr graph must not pull the capture
11
+ * orchestration module for one number.
12
+ *
13
+ * 15s, raised from 5s: captures are background work (waitUntil), so the budget
14
+ * costs latency-to-HIT only — never a served response — and 5s spuriously
15
+ * refused legitimately-slow deferred shell material (a real storefront's meta
16
+ * chains settle at ~7s). Ceiling math: workerd's waitUntil lifetime is ~30s
17
+ * past response completion, and a guaranteed two-attempt envelope needs
18
+ * 2x budget + the in-place retry delay + store I/O, i.e. budget <= ~14s. The
19
+ * 15s default deliberately sits just past that: attempt 1 always gets its
20
+ * full 15s, but when it consumed the whole budget the in-place RETRY may be
21
+ * truncated by the platform kill on workerd — degrading to the existing
22
+ * best-effort contract (the key stays MISS; a later request re-captures).
23
+ * Node/dev and build-time captures have no waitUntil ceiling. The per-route
24
+ * `ppr.captureTimeout` knob remains for tightening below the default. See
25
+ * docs/design/ppr-shell-resume.md (Cost model).
26
+ */
27
+ export declare const SHELL_CAPTURE_MAX_WAIT_MS = 15000;
@@ -0,0 +1,370 @@
1
+ /**
2
+ * PPR shell capture orchestration (Axis 2, see docs/design/ppr-shell-resume.md).
3
+ *
4
+ * Capture does NOT flow through the HTTP middleware pipeline. The integrated PPR
5
+ * serve path (rsc-rendering.ts + shell-serve.ts) builds a ShellCaptureDescriptor
6
+ * from the route's `ppr` path option after the served response is built and calls
7
+ * scheduleShellCapture. The capture then runs as a background task that re-derives
8
+ * the page via `ctx.router.match()` under its OWN derived request context — fresh
9
+ * handle store, `_shellCaptureRun: true` so loaders mask (loader-mask.ts) and every
10
+ * loading() subtree postpones. The render is MIXED-CHAIN: cache()'d segments replay
11
+ * from ring 3, uncached segments execute their handlers fresh. It drives the static
12
+ * prerender to a quiescent shell, aborts to freeze the prelude + postponed state,
13
+ * and stores the pair via putShell. Because it uses match() rather than the HTTP
14
+ * pipeline, the middleware chain (auth, logging) never re-runs — it already ran for
15
+ * the triggering request, and the derived context inherits its post-middleware
16
+ * state (variables, cache store). Guarding is serve-time.
17
+ */
18
+ import { SHELL_CAPTURE_MAX_WAIT_MS } from "./shell-capture-constants.js";
19
+ import { type RequestContext } from "../server/request-context.js";
20
+ import { type HandleStore } from "../server/handle-store.js";
21
+ import type { SegmentCacheStore } from "../cache/types.js";
22
+ import type { HandlerContext } from "./handler-context.js";
23
+ import type { SSRModule } from "./types.js";
24
+ /**
25
+ * Default capture budget. Canonical value, raise rationale, and ceiling math
26
+ * live on the leaf module (shell-capture-constants.ts, importable from the ssr
27
+ * graph too). Re-exported here so shell-build-manifest.ts's envelope math
28
+ * keeps its existing import site and cannot drift from the capture.
29
+ */
30
+ export { SHELL_CAPTURE_MAX_WAIT_MS };
31
+ /**
32
+ * Delay before the in-place retry of a capture that produced no usable shell.
33
+ *
34
+ * The dominant reason a first capture comes back with a trivial prelude is a
35
+ * COLD render: in dev the module transform graph (route modules, the SSR/Flight
36
+ * transforms) is being built lazily and outlasts the task-quantized quiesce, so
37
+ * the shell has not finished rendering when we freeze it; on a cold worker the
38
+ * first invocation pays the same one-time cost. The first attempt WARMS that
39
+ * graph, so a second attempt a short beat later usually completes the shell in
40
+ * the SAME background task — no extra HTTP request needed. Short enough to feel
41
+ * instant, long enough for the module graph to settle. See
42
+ * docs/design/ppr-shell-resume.md ("Capture retry-in-place").
43
+ */
44
+ declare const SHELL_CAPTURE_RETRY_DELAY_MS = 400;
45
+ /** Sleep `ms`, unref'd so a Node dev process is never kept alive by the timer. */
46
+ declare function delay(ms: number): Promise<void>;
47
+ /**
48
+ * Refused-capture backoff bounds. The window is EXPONENTIAL in the consecutive
49
+ * failure count: `min(BASE * 2^(failures-1), ceiling)` — 1s, 2s, 4s, … up to the
50
+ * mode's ceiling (60s in production, {@link REFUSED_CAPTURE_DEV_MAX_MS} in dev).
51
+ *
52
+ * Why exponential and not a flat 60s: a flat long window conflates two very
53
+ * different failures. A STRUCTURALLY ineligible route (no loading(), a cookie
54
+ * reader) fails forever and wants the long 60s cap. But a cold-but-ELIGIBLE route
55
+ * can also fail the in-place retry under a truly cold graph (dev module transform,
56
+ * or a cold worker under parallel load) — and it must recover FAST, on the next
57
+ * request or two, not be frozen for 60s (that would re-break the very cold-start DX
58
+ * the retry fixes; it bit the cloudflare dev e2e). Escalating from 1s means the
59
+ * eligible route re-probes almost immediately (warm now → HIT and clear), while the
60
+ * doomed route ramps to the ceiling within a handful of failures. Either way an
61
+ * app-wide mount never re-renders a doomed route on EVERY request.
62
+ */
63
+ declare const REFUSED_CAPTURE_BASE_MS = 1000;
64
+ declare const REFUSED_CAPTURE_MAX_MS = 60000;
65
+ /**
66
+ * DEV-only backoff ceiling. In dev the 60s production cap is pure harm: the
67
+ * dominant no-shell cause is a COLD module graph (route modules, SSR/Flight
68
+ * transforms built lazily), and the very attempt that failed WARMS that graph, so
69
+ * the next attempt a beat later usually completes the shell. Capping the dev window
70
+ * low keeps a cold-but-eligible route re-probing every ~2s instead of freezing for
71
+ * up to 60s once the exponential climbs (1s→2s→4s→…→60s). A 60s freeze outlasts the
72
+ * e2e warm windows on cold CI runners: the capture races an unfinished shell,
73
+ * escalates the backoff past the poll window, and every subsequent request inside
74
+ * that window is skipped as backed-off — an eternal MISS for the test even though
75
+ * the modules are warm by then. Production keeps the full 60s cap: there the
76
+ * no-shell cause is far more likely to be a genuinely ineligible route (no
77
+ * loading()), which SHOULD be re-probed rarely. See #652 (item 3) and
78
+ * docs/design/ppr-shell-resume.md ("Refused-capture backoff").
79
+ */
80
+ declare const REFUSED_CAPTURE_DEV_MAX_MS = 2000;
81
+ /** True iff `key` is still inside its (exponential) backoff window. */
82
+ declare function isCaptureBackedOff(key: string): boolean;
83
+ /**
84
+ * Record a refused/failed capture, escalating the backoff window exponentially up
85
+ * to the current mode's ceiling. The failure count keeps climbing across attempts
86
+ * (so a genuinely doomed route still ramps toward its cap), but the WINDOW is
87
+ * clamped: 60s in production, {@link REFUSED_CAPTURE_DEV_MAX_MS} in dev so a
88
+ * cold-but-eligible route re-probes fast instead of freezing out the e2e warm
89
+ * window on a cold CI runner (#652 item 3).
90
+ */
91
+ declare function markCaptureBackoff(key: string): void;
92
+ /** Clear any backoff for a key that just captured successfully. */
93
+ declare function clearCaptureBackoff(key: string): void;
94
+ /**
95
+ * Default cap (serialized UTF-8 bytes) on the capture data snapshot riding
96
+ * inside a shell entry, when the route's `ppr` option does not set
97
+ * `maxSnapshotBytes`. 8 MiB: the snapshot shares the stored envelope with the
98
+ * base64 prelude and the postponed blob, and the tightest store value limit is
99
+ * Cloudflare KV's 25 MiB — 8 MiB of snapshot leaves the envelope well under it
100
+ * while still fitting any sane pinned-ring payload. Applied ONLY in
101
+ * captureAndStoreShell (the single defaulting site — resolvePprConfig passes
102
+ * the option through undefaulted), so every producer and direct caller gets
103
+ * the same policy. Over the cap the snapshot is skipped (shell still stored;
104
+ * pinned reads drift — see PartialPrerenderProps.maxSnapshotBytes).
105
+ */
106
+ export declare const DEFAULT_PPR_MAX_SNAPSHOT_BYTES: number;
107
+ /**
108
+ * One structured event from the background capture pipeline, mirroring the
109
+ * CFCacheReadDebugEvent pattern (cache/cf/cf-cache-types.ts): typed fields an
110
+ * operator can assert against, emitted per attempt and per skip, so the
111
+ * stored / no-shell / refused / backed-off lifecycle is observable outside
112
+ * dev console warnings. Configured via `createRouter({ debugShellCapture })`.
113
+ */
114
+ export interface ShellCaptureDebugEvent {
115
+ /** Shell cache key the event is about. */
116
+ key: string;
117
+ /**
118
+ * What happened:
119
+ * - stored / redirect / no-shell / refused: one capture ATTEMPT's outcome
120
+ * (see CaptureAttemptOutcome for the semantics of each)
121
+ * - error: the capture task failed with a genuine error (also routed through
122
+ * reportCacheError; the key is backed off)
123
+ * - skip-in-flight: scheduleShellCapture found a capture already running for
124
+ * the key (stampede guard) and scheduled nothing
125
+ * - skip-backoff: the key is inside its refused-capture backoff window and
126
+ * the capture was not attempted
127
+ * - backoff: the key entered (or escalated) backoff after a terminal
128
+ * no-shell — carries the new backoff state
129
+ */
130
+ outcome: "stored" | "redirect" | "no-shell" | "refused" | "error" | "skip-in-flight" | "skip-backoff" | "backoff";
131
+ /** Attempt number (1 = first, 2 = in-place retry). Absent on skips. */
132
+ attempt?: number;
133
+ /** Wall-clock ms of the whole attempt (barrier + render + drain + put). */
134
+ attemptMs?: number;
135
+ /**
136
+ * Wall-clock ms the pre-render WRITE BARRIER waited on the foreground
137
+ * request's deferred cache writes (bounded by SHELL_CAPTURE_WRITE_BARRIER_MS).
138
+ */
139
+ barrierWaitMs?: number;
140
+ /**
141
+ * Wall-clock ms spent awaiting the capture's own deferred cache writes
142
+ * before the snapshot drain (bounded by SHELL_SNAPSHOT_WRITE_SETTLE_MS).
143
+ */
144
+ writeSettleMs?: number;
145
+ /** Stored prelude size in bytes (pre-base64). */
146
+ preludeBytes?: number;
147
+ /** Serialized snapshot size in UTF-8 bytes. Absent when nothing was recorded. */
148
+ snapshotBytes?: number;
149
+ /** True when the snapshot exceeded maxSnapshotBytes and was dropped. */
150
+ snapshotSkipped?: boolean;
151
+ /** Outcome reported by a store that supports shell-write acknowledgements. */
152
+ storeWrite?: "stored" | "invalidated";
153
+ /** Consecutive failure count in the key's backoff entry, when one exists. */
154
+ backoffFailures?: number;
155
+ /** Ms remaining in the key's backoff window, when one exists. */
156
+ backoffRemainingMs?: number;
157
+ }
158
+ /**
159
+ * Debug sink for the capture pipeline, mirroring {@link CFCacheDebug}: `true`
160
+ * logs each event to console (visible via `wrangler tail`), a function
161
+ * receives the events for programmatic capture. Off by default.
162
+ */
163
+ export type ShellCaptureDebug = boolean | ((event: ShellCaptureDebugEvent) => void);
164
+ /**
165
+ * Compact single-line form of an event's fields, shared by the console sink
166
+ * and the dev Server-Timing mirror's `desc` (rsc-rendering). Plain
167
+ * alphanumerics/`=`/`-`/`()` only, so it needs no quoted-string escaping.
168
+ */
169
+ export declare function describeShellCaptureEvent(event: ShellCaptureDebugEvent): string;
170
+ /**
171
+ * Resolve the `debugShellCapture` router option to a callable sink, or
172
+ * undefined when off. The INTERNAL_RANGO_DEBUG env-flag fallback lives HERE
173
+ * (not at a call site) so every producer that resolves a sink inherits it;
174
+ * an explicit `false` wins over the env flag.
175
+ */
176
+ export declare function resolveShellCaptureDebugSink(option: ShellCaptureDebug | undefined): ((event: ShellCaptureDebugEvent) => void) | undefined;
177
+ /**
178
+ * Consume (read-and-clear) the buffered terminal capture event for `key`, so
179
+ * one capture reports into exactly one later response's Server-Timing.
180
+ */
181
+ export declare function takeCaptureDebugEventForTiming(key: string): ShellCaptureDebugEvent | undefined;
182
+ export interface FlightCaptureGate {
183
+ /** Identity passthrough of the source stream; feed this to captureShellHTML. */
184
+ stream: ReadableStream<Uint8Array>;
185
+ /**
186
+ * Resolves once the source has been byte-quiet for FLIGHT_QUIET_HOPS macrotask
187
+ * hops (or has closed — the DATA variant). At that instant the gate FREEZES:
188
+ * no further source byte reaches the fizz side, and the readable is left open
189
+ * (never closed / errored) so fizz postpones the still-pending references
190
+ * instead of seeing "Connection closed".
191
+ */
192
+ quiesce: Promise<void>;
193
+ /**
194
+ * Stop the internal macrotask-hop loop. captureShellHTML's maxWaitMs bounds the
195
+ * overall wait; dispose() is the clean shutdown for the pathological case where
196
+ * the source never goes byte-quiet (quiesce never fires), so the hop loop would
197
+ * otherwise keep rescheduling after captureShellHTML has already aborted and
198
+ * returned.
199
+ */
200
+ dispose(): void;
201
+ }
202
+ /**
203
+ * Wrap the capture Flight stream so the fizz shell prerender reads a stream that
204
+ * (a) forwards the shell rows unchanged, (b) resolves `quiesce` after the rows go
205
+ * byte-silent for FLIGHT_QUIET_HOPS macrotask hops, and (c) FREEZES at that
206
+ * instant — dropping any later byte without closing or erroring the readable, so
207
+ * the pending masked-loader references stay pending and fizz postpones them (the
208
+ * "unclosing stream" property, here for free because the masked rows never emit).
209
+ * Freezing also guarantees no post-quiesce byte — including an error row from any
210
+ * later abort/cancel of the underlying render — can corrupt the frozen prelude.
211
+ *
212
+ * Quiet is measured in TASKS, not wall-clock: after the first byte a macrotask
213
+ * hop loop compares a byte counter each turn and fires after K quiet turns. The
214
+ * hop timers are unref'd so they never keep a Node process alive, and the source
215
+ * closing (no holes) fires quiesce immediately for the DATA variant — the
216
+ * TransformStream then closes the readable, so fizz completes with postponed null.
217
+ *
218
+ * `holdUntil` keeps the gate from FREEZING before shell material with real latency
219
+ * has emitted. The hole doctrine bakes TOP-LEVEL pushed handle promises into the
220
+ * shell (resolvedHandleStream awaits them before the handles row emits), but a
221
+ * pushed promise that takes longer than the quiet window would otherwise be frozen
222
+ * out — the handles row would never reach fizz and the prelude would come back
223
+ * trivial. While `holdUntil` is pending, byte-quiet detection keeps running but the
224
+ * gate neither fires nor freezes; once it resolves, the quiet counter restarts so a
225
+ * burst of rows unblocked by it (the resolved handles row) is still captured. It
226
+ * never delays a HOLE from postponing: holes are pending promises that emit no
227
+ * bytes, so holding the gate open longer only ever admits shell rows. Bounded by
228
+ * captureShellHTML's maxWaitMs like every other quiesce input.
229
+ */
230
+ export declare function gateFlightForCapture(source: ReadableStream<Uint8Array>, quietHops?: number, holdUntil?: Promise<unknown>): FlightCaptureGate;
231
+ /**
232
+ * The background shell-capture descriptor: everything the capture task needs to
233
+ * store the shell. Built by the integrated PPR serve path (rsc-rendering.ts) from
234
+ * the route's `ppr` path option (`PartialPrerenderProps`) and the app-level cache
235
+ * store, and passed to scheduleShellCapture directly — it is NOT threaded through
236
+ * the request context. `tags` carries the route's OPERATIONAL `ppr.tags`; the
237
+ * capture UNIONS them with the shell's own auto-collected (non-loader) request
238
+ * tags from its derived render (the collected set stays authoritative). That
239
+ * union happens at the putShell WRITE BARRIER in captureAndStoreShell — after the
240
+ * capture quiesces — not at stream construction, so a tag recorded after an await
241
+ * in async shell content is still collected (issue #676). `store` is the same
242
+ * store the serve path resolved for its getShell read (requestCtx._cacheStore),
243
+ * so the capture writes where the serve reads.
244
+ */
245
+ export interface ShellCaptureDescriptor {
246
+ key: string;
247
+ /**
248
+ * The RSC handler's build version (HandlerContext.version), stamped into the
249
+ * stored entry as ShellCacheEntry.buildVersion — the serve-side
250
+ * isValidShellHit gate compares it against the running build so a persistent
251
+ * store can never resume a stale build's postponed blob.
252
+ */
253
+ buildVersion: string;
254
+ ttl?: number;
255
+ swr?: number;
256
+ tags?: string[];
257
+ /**
258
+ * Per-route capture settle budget in ms (`ppr.captureTimeout`, resolved by
259
+ * resolvePprConfig). Feeds captureShellHTML's maxWaitMs — the ONE deadline
260
+ * bounding the whole capture, so it covers BOTH the fizz prerender AND the
261
+ * deferred-material settle window (the handlesBaked/loader-container
262
+ * holdUntil that keeps the gate from freezing while top-level pushes are
263
+ * pending). Undefined = SHELL_CAPTURE_MAX_WAIT_MS (15_000).
264
+ */
265
+ captureTimeout?: number;
266
+ store?: SegmentCacheStore<any>;
267
+ /** Gates the concise per-attempt capture breadcrumbs (INTERNAL_RANGO_DEBUG). */
268
+ debug?: boolean;
269
+ /**
270
+ * Cap (serialized UTF-8 bytes) on the entry's capture data snapshot; over it
271
+ * the snapshot is skipped and the shell stored without it (reported once per
272
+ * key). Absent = DEFAULT_PPR_MAX_SNAPSHOT_BYTES, applied in
273
+ * captureAndStoreShell — the single defaulting site.
274
+ */
275
+ maxSnapshotBytes?: number;
276
+ /**
277
+ * Structured capture-pipeline debug sink, resolved from
278
+ * `createRouter({ debugShellCapture })` (or INTERNAL_RANGO_DEBUG) via
279
+ * {@link resolveShellCaptureDebugSink}. Receives one
280
+ * {@link ShellCaptureDebugEvent} per attempt/skip.
281
+ */
282
+ debugSink?: (event: ShellCaptureDebugEvent) => void;
283
+ }
284
+ /**
285
+ * Schedule the background shell capture for a served document. Stampede-guarded:
286
+ * one capture per key per isolate. Runs via runBackground (waitUntil on workerd,
287
+ * fire-and-forget in Node dev), so the served response is never blocked on it. Any
288
+ * error is routed through reportCacheError — capture is best-effort; a failure just
289
+ * means the next request recaptures.
290
+ *
291
+ * Eligibility (nonce/allReady/partial/status/strategy) is decided by the caller
292
+ * (rsc-rendering.ts maybeScheduleShellCapture); this function only owns the
293
+ * stampede guard and the background dispatch.
294
+ */
295
+ export declare function scheduleShellCapture(ctx: HandlerContext<any>, request: Request, env: any, url: URL, reqCtx: RequestContext<any>, ssrModule: SSRModule, descriptor: ShellCaptureDescriptor): void;
296
+ /**
297
+ * The outcome of one capture attempt.
298
+ * - `stored`: a usable shell was captured (and a putShell was attempted; a store
299
+ * I/O failure is reported separately and does NOT make the attempt retryable —
300
+ * the capture itself worked).
301
+ * - `redirect`: the matched route redirects, so there is no shell to capture.
302
+ * - `no-shell`: the prelude came back trivial (no <body>) OR captureShellHTML
303
+ * rejected with our own abort. This is the only RETRYABLE outcome.
304
+ */
305
+ type CaptureAttemptOutcome = "stored" | "redirect" | "no-shell" | "refused";
306
+ /**
307
+ * Per-attempt observability fields, filled along the capture path (barrier in
308
+ * attemptCapture, the rest in captureAndStoreShell) and folded into the
309
+ * attempt's {@link ShellCaptureDebugEvent} by runShellCapture. A plain mutable
310
+ * bag, not a return value: captureAndStoreShell's outcome type stays a string
311
+ * union its existing callers (producer B, tests) consume unchanged.
312
+ */
313
+ type CaptureAttemptStats = Pick<ShellCaptureDebugEvent, "barrierWaitMs" | "writeSettleMs" | "preludeBytes" | "snapshotBytes" | "snapshotSkipped" | "storeWrite">;
314
+ /**
315
+ * Run the shell capture with a single in-place retry, then store the result.
316
+ *
317
+ * Each attempt re-derives EVERYTHING (fresh context, fresh router.match, fresh
318
+ * Flight render) via {@link attemptCapture} — a capture consumes its handle store,
319
+ * its request-tag set, and its one-shot Flight stream, so none of them are
320
+ * reusable across attempts. A first attempt that comes back `no-shell` is almost
321
+ * always a cold render (dev module transform / cold worker) that had not finished
322
+ * when we froze the shell; the attempt itself warmed the module graph, so a second
323
+ * attempt a short beat later usually completes the shell in the SAME background
324
+ * task. That kills the old multi-request warmup where the caller had to re-issue
325
+ * several HTTP requests before a capture stuck. We retry ONLY on `no-shell` (and a
326
+ * defensively-caught abort); a genuine render error is NOT retried — it propagates
327
+ * to scheduleShellCapture's reportCacheError. See docs/design/ppr-shell-resume.md.
328
+ *
329
+ * `retryDelayMs` is a parameter (defaulting to the module const) so unit tests can
330
+ * drive the retry without a real 400ms wall-clock wait.
331
+ */
332
+ declare function runShellCapture(ctx: HandlerContext<any>, request: Request, env: any, url: URL, reqCtx: RequestContext<any>, ssrModule: SSRModule, descriptor: ShellCaptureDescriptor, retryDelayMs?: number): Promise<CaptureAttemptOutcome>;
333
+ /**
334
+ * The derived capture context and its fresh (mask-funneled) handle store,
335
+ * shared by BOTH shell producers: the runtime background capture
336
+ * (attemptCapture, producer A) and the build-time prerender shell capture
337
+ * (prerender/build-shell-capture.ts, producer B — issue #699). One
338
+ * implementation so the capture semantics — the nested-thenable mask funnel,
339
+ * handler-liveness bookkeeping, snapshot recording, the implicit doc-cache
340
+ * scope — cannot drift between producers.
341
+ */
342
+ export interface CaptureContextDerivation {
343
+ derivedCtx: RequestContext;
344
+ freshHandleStore: HandleStore;
345
+ }
346
+ /**
347
+ * Derive the capture request context from a base context. Producer A passes
348
+ * the foreground request's post-middleware context (the derived context
349
+ * inherits its variables/env/cookie machinery through the prototype);
350
+ * producer B passes a synthetic build-request context created by
351
+ * createRequestContext over the build env, with a fresh MemorySegmentCacheStore
352
+ * as `_cacheStore` so the recording/snapshot machinery arms identically.
353
+ */
354
+ export declare function deriveShellCaptureContext(reqCtx: RequestContext<any>, descriptor: Pick<ShellCaptureDescriptor, "ttl" | "swr">): CaptureContextDerivation;
355
+ /**
356
+ * Seal handles, derive the quiesce signal, prerender + abort via the SSR module's
357
+ * captureShellHTML, and store the result. Returns the attempt outcome (the caller
358
+ * owns retry/warn decisions — this function no longer warns). Never throws out of
359
+ * the store write: a failed putShell is routed through reportCacheError so the
360
+ * background task stays best-effort, and the attempt still counts as `stored` (the
361
+ * capture worked; only the store I/O failed). `ssrModule.captureShellHTML` MUST be
362
+ * present (eligibility is checked before scheduling).
363
+ *
364
+ * A `no-shell` result (trivial prelude, or a defensively-caught abort) is the only
365
+ * retryable outcome; a genuine (non-abort) captureShellHTML error propagates so it
366
+ * reaches reportCacheError and is NOT retried.
367
+ */
368
+ declare function captureAndStoreShell(ssrModule: SSRModule, rscStream: ReadableStream<Uint8Array>, handleStore: HandleStore, reqCtx: RequestContext<any>, capture: ShellCaptureDescriptor, stats?: CaptureAttemptStats, captureStartedAt?: number): Promise<Exclude<CaptureAttemptOutcome, "redirect">>;
369
+ export { runShellCapture, captureAndStoreShell, delay, SHELL_CAPTURE_RETRY_DELAY_MS, };
370
+ export { isCaptureBackedOff, markCaptureBackoff, clearCaptureBackoff, REFUSED_CAPTURE_BASE_MS, REFUSED_CAPTURE_MAX_MS, REFUSED_CAPTURE_DEV_MAX_MS, };