devflare 1.0.0-next.5 → 1.0.0-next.50

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 (594) hide show
  1. package/LICENSE +21 -0
  2. package/LLM.md +17312 -2139
  3. package/README.md +394 -605
  4. package/bin/devflare.js +30 -14
  5. package/dist/_chunks/account-BI3WZMDy.js +462 -0
  6. package/dist/_chunks/account-resources-CsmVowJp.js +159 -0
  7. package/dist/_chunks/ai-CBEuLdoP.js +322 -0
  8. package/dist/_chunks/api-TzdliH-6.js +568 -0
  9. package/dist/_chunks/build-artifacts-DU5V0J0Z.js +483 -0
  10. package/dist/_chunks/build-e0KR38-4.js +24 -0
  11. package/dist/_chunks/cli-DuUz10Mn.js +1163 -0
  12. package/dist/_chunks/cloudflare-BaloqI3H.js +157 -0
  13. package/dist/_chunks/colors-DiK6wPJ5.js +13 -0
  14. package/dist/_chunks/command-utils-DA0Qx9_K.js +45 -0
  15. package/dist/_chunks/compiler-Zw16C9Pi.js +489 -0
  16. package/dist/_chunks/config-Brju62xy.js +78 -0
  17. package/dist/_chunks/config-path-DaL1ylZ_.js +42 -0
  18. package/dist/_chunks/context-CX50Y2Kb.js +2250 -0
  19. package/dist/_chunks/decorators-QmV57ixr.js +19 -0
  20. package/dist/_chunks/dependencies-C2oxFjU_.js +57 -0
  21. package/dist/_chunks/deploy-B-Kku1Vk.js +1032 -0
  22. package/dist/_chunks/dev-D4e_RRZn.js +3471 -0
  23. package/dist/_chunks/doctor-jm_K4dxL.js +219 -0
  24. package/dist/_chunks/durable-object-DMtH0XYX.js +234 -0
  25. package/dist/_chunks/env-S0_nMVz1.js +125 -0
  26. package/dist/_chunks/family-_9-mGSfO.js +143 -0
  27. package/dist/_chunks/generated-artifacts-dMJY4KAt.js +32 -0
  28. package/dist/_chunks/glob-CmQOvunB.js +56 -0
  29. package/dist/_chunks/init-DnkJOmpW.js +165 -0
  30. package/dist/_chunks/loader-Cr0_OWPy.js +1288 -0
  31. package/dist/_chunks/local-dev-vars-CTSa-wvF.js +81 -0
  32. package/dist/_chunks/local-hyperdrive-CJ90j46O.js +119 -0
  33. package/dist/_chunks/local-media-bindings-DsAW4AMF.js +335 -0
  34. package/dist/_chunks/local-secrets-DMPkmOn3.js +123 -0
  35. package/dist/_chunks/local-workflow-entrypoints-Cq_WJajd.js +90 -0
  36. package/dist/_chunks/login-FjTAAQbi.js +51 -0
  37. package/dist/_chunks/package-metadata-DjHBLB-z.js +39 -0
  38. package/dist/_chunks/preferences-BKp_7XJx.js +241 -0
  39. package/dist/_chunks/preview-C3Cdr8an.js +462 -0
  40. package/dist/_chunks/preview-registry-ClAbLTHH.js +1186 -0
  41. package/dist/_chunks/preview-resources-CGMBjsYB.js +359 -0
  42. package/dist/_chunks/previews-C7hs9-BT.js +1134 -0
  43. package/dist/_chunks/productions-T9Als4fE.js +411 -0
  44. package/dist/_chunks/ref-CYJNAAe_.js +178 -0
  45. package/dist/_chunks/remote-CZnP-HLJ.js +79 -0
  46. package/dist/_chunks/remote-config-D39BY9ji.js +132 -0
  47. package/dist/_chunks/resolve-package-qizBfCIm.js +152 -0
  48. package/dist/_chunks/rolldown-runtime-CvQ6eiug.js +14 -0
  49. package/dist/_chunks/routes-BFYCqHb-.js +833 -0
  50. package/dist/_chunks/runtime-DL-Nz3k8.js +550 -0
  51. package/dist/_chunks/schema-normalization-BCwTLTGp.js +660 -0
  52. package/dist/_chunks/secrets-DIpJGe6C.js +95 -0
  53. package/dist/_chunks/tail-IY-ijYmv.js +239 -0
  54. package/dist/_chunks/token-Dmi0KXyX.js +333 -0
  55. package/dist/_chunks/tokens-iVcgNXi-.js +221 -0
  56. package/dist/_chunks/types-DoKsMYfm.js +484 -0
  57. package/dist/_chunks/ui-BUoZApvE.js +103 -0
  58. package/dist/_chunks/usage-BBTGzjon.js +272 -0
  59. package/dist/_chunks/vite-CGtVNf5E.js +1267 -0
  60. package/dist/_chunks/vite-utils-OVLMV605.js +183 -0
  61. package/dist/_chunks/worker-BEZI4od1.js +410 -0
  62. package/dist/_chunks/worker-bundler-dTTnYU3n.js +458 -0
  63. package/dist/_chunks/worker-entrypoint-CQW77lG8.js +247 -0
  64. package/dist/_chunks/workerName-CFJsLZA-.js +23 -0
  65. package/dist/bridge/client.d.ts +49 -7
  66. package/dist/bridge/client.d.ts.map +1 -1
  67. package/dist/bridge/gateway-runtime.d.ts +8 -0
  68. package/dist/bridge/gateway-runtime.d.ts.map +1 -0
  69. package/dist/bridge/index.d.ts +6 -6
  70. package/dist/bridge/index.d.ts.map +1 -1
  71. package/dist/bridge/log.d.ts +5 -0
  72. package/dist/bridge/log.d.ts.map +1 -0
  73. package/dist/bridge/miniflare.d.ts +82 -2
  74. package/dist/bridge/miniflare.d.ts.map +1 -1
  75. package/dist/bridge/proxy.d.ts +12 -11
  76. package/dist/bridge/proxy.d.ts.map +1 -1
  77. package/dist/bridge/server.d.ts +2 -1
  78. package/dist/bridge/server.d.ts.map +1 -1
  79. package/dist/bridge/v2/body-streams.d.ts +53 -0
  80. package/dist/bridge/v2/body-streams.d.ts.map +1 -0
  81. package/dist/bridge/v2/codec.d.ts +106 -0
  82. package/dist/bridge/v2/codec.d.ts.map +1 -0
  83. package/dist/bridge/v2/control-messages.d.ts +46 -0
  84. package/dist/bridge/v2/control-messages.d.ts.map +1 -0
  85. package/dist/bridge/v2/frames.d.ts +109 -0
  86. package/dist/bridge/v2/frames.d.ts.map +1 -0
  87. package/dist/bridge/v2/index.d.ts +11 -0
  88. package/dist/bridge/v2/index.d.ts.map +1 -0
  89. package/dist/bridge/v2/serialization.d.ts +48 -0
  90. package/dist/bridge/v2/serialization.d.ts.map +1 -0
  91. package/dist/bridge/v2/transport.d.ts +31 -0
  92. package/dist/bridge/v2/transport.d.ts.map +1 -0
  93. package/dist/bridge/v2/value-codec.d.ts +61 -0
  94. package/dist/bridge/v2/value-codec.d.ts.map +1 -0
  95. package/dist/bridge/{serialization.d.ts → v2/value-serialization.d.ts} +40 -18
  96. package/dist/bridge/v2/value-serialization.d.ts.map +1 -0
  97. package/dist/bridge/{protocol.d.ts → v2/wire.d.ts} +32 -8
  98. package/dist/bridge/v2/wire.d.ts.map +1 -0
  99. package/dist/bridge/v2/ws-relay.d.ts +53 -0
  100. package/dist/bridge/v2/ws-relay.d.ts.map +1 -0
  101. package/dist/browser-shim/handler.d.ts +2 -2
  102. package/dist/browser-shim/handler.d.ts.map +1 -1
  103. package/dist/browser-shim/index.d.ts +2 -2
  104. package/dist/browser-shim/server.d.ts +63 -0
  105. package/dist/browser-shim/server.d.ts.map +1 -1
  106. package/dist/browser.d.ts +5411 -0
  107. package/dist/browser.d.ts.map +1 -0
  108. package/dist/browser.js +80 -0
  109. package/dist/bundler/defaults.d.ts +23 -0
  110. package/dist/bundler/defaults.d.ts.map +1 -0
  111. package/dist/bundler/do-bundler.d.ts +7 -0
  112. package/dist/bundler/do-bundler.d.ts.map +1 -1
  113. package/dist/bundler/index.d.ts +3 -1
  114. package/dist/bundler/index.d.ts.map +1 -1
  115. package/dist/bundler/rolldown-shared.d.ts +53 -0
  116. package/dist/bundler/rolldown-shared.d.ts.map +1 -0
  117. package/dist/bundler/worker-bundler.d.ts +13 -0
  118. package/dist/bundler/worker-bundler.d.ts.map +1 -0
  119. package/dist/bundler/worker-compat.d.ts +4 -0
  120. package/dist/bundler/worker-compat.d.ts.map +1 -0
  121. package/dist/cli/build-manifest.d.ts +66 -0
  122. package/dist/cli/build-manifest.d.ts.map +1 -0
  123. package/dist/cli/command-utils.d.ts +18 -0
  124. package/dist/cli/command-utils.d.ts.map +1 -0
  125. package/dist/cli/commands/account.d.ts +2 -2
  126. package/dist/cli/commands/account.d.ts.map +1 -1
  127. package/dist/cli/commands/ai.d.ts +1 -1
  128. package/dist/cli/commands/ai.d.ts.map +1 -1
  129. package/dist/cli/commands/build-artifacts.d.ts +40 -0
  130. package/dist/cli/commands/build-artifacts.d.ts.map +1 -0
  131. package/dist/cli/commands/build.d.ts +2 -2
  132. package/dist/cli/commands/build.d.ts.map +1 -1
  133. package/dist/cli/commands/config.d.ts +4 -0
  134. package/dist/cli/commands/config.d.ts.map +1 -0
  135. package/dist/cli/commands/deploy/metadata.d.ts +18 -0
  136. package/dist/cli/commands/deploy/metadata.d.ts.map +1 -0
  137. package/dist/cli/commands/deploy/prepare.d.ts +23 -0
  138. package/dist/cli/commands/deploy/prepare.d.ts.map +1 -0
  139. package/dist/cli/commands/deploy/runtime.d.ts +4 -0
  140. package/dist/cli/commands/deploy/runtime.d.ts.map +1 -0
  141. package/dist/cli/commands/deploy/verification.d.ts +36 -0
  142. package/dist/cli/commands/deploy/verification.d.ts.map +1 -0
  143. package/dist/cli/commands/deploy.d.ts +2 -2
  144. package/dist/cli/commands/deploy.d.ts.map +1 -1
  145. package/dist/cli/commands/dev.d.ts +9 -1
  146. package/dist/cli/commands/dev.d.ts.map +1 -1
  147. package/dist/cli/commands/doctor.d.ts +2 -2
  148. package/dist/cli/commands/doctor.d.ts.map +1 -1
  149. package/dist/cli/commands/init.d.ts +2 -2
  150. package/dist/cli/commands/init.d.ts.map +1 -1
  151. package/dist/cli/commands/login.d.ts +4 -0
  152. package/dist/cli/commands/login.d.ts.map +1 -0
  153. package/dist/cli/commands/previews-support/cleanup.d.ts +9 -0
  154. package/dist/cli/commands/previews-support/cleanup.d.ts.map +1 -0
  155. package/dist/cli/commands/previews-support/family.d.ts +10 -0
  156. package/dist/cli/commands/previews-support/family.d.ts.map +1 -0
  157. package/dist/cli/commands/previews-support/render.d.ts +8 -0
  158. package/dist/cli/commands/previews-support/render.d.ts.map +1 -0
  159. package/dist/cli/commands/previews-support/theme.d.ts +10 -0
  160. package/dist/cli/commands/previews-support/theme.d.ts.map +1 -0
  161. package/dist/cli/commands/previews-support/types.d.ts +70 -0
  162. package/dist/cli/commands/previews-support/types.d.ts.map +1 -0
  163. package/dist/cli/commands/previews.d.ts +4 -0
  164. package/dist/cli/commands/previews.d.ts.map +1 -0
  165. package/dist/cli/commands/productions.d.ts +4 -0
  166. package/dist/cli/commands/productions.d.ts.map +1 -0
  167. package/dist/cli/commands/remote.d.ts +1 -1
  168. package/dist/cli/commands/remote.d.ts.map +1 -1
  169. package/dist/cli/commands/secrets.d.ts +4 -0
  170. package/dist/cli/commands/secrets.d.ts.map +1 -0
  171. package/dist/cli/commands/tail.d.ts +44 -0
  172. package/dist/cli/commands/tail.d.ts.map +1 -0
  173. package/dist/cli/commands/token.d.ts +4 -0
  174. package/dist/cli/commands/token.d.ts.map +1 -0
  175. package/dist/cli/commands/type-generation/discovery.d.ts +7 -0
  176. package/dist/cli/commands/type-generation/discovery.d.ts.map +1 -0
  177. package/dist/cli/commands/type-generation/generator.d.ts +121 -0
  178. package/dist/cli/commands/type-generation/generator.d.ts.map +1 -0
  179. package/dist/cli/commands/type-generation/models.d.ts +27 -0
  180. package/dist/cli/commands/type-generation/models.d.ts.map +1 -0
  181. package/dist/cli/commands/types.d.ts +2 -2
  182. package/dist/cli/commands/types.d.ts.map +1 -1
  183. package/dist/cli/commands/worker.d.ts +4 -0
  184. package/dist/cli/commands/worker.d.ts.map +1 -0
  185. package/dist/cli/config-path.d.ts +6 -0
  186. package/dist/cli/config-path.d.ts.map +1 -0
  187. package/dist/cli/dependencies.d.ts +2 -1
  188. package/dist/cli/dependencies.d.ts.map +1 -1
  189. package/dist/cli/deploy-strategy.d.ts +17 -0
  190. package/dist/cli/deploy-strategy.d.ts.map +1 -0
  191. package/dist/cli/deploy-target.d.ts +17 -0
  192. package/dist/cli/deploy-target.d.ts.map +1 -0
  193. package/dist/cli/generated-artifacts.d.ts +12 -0
  194. package/dist/cli/generated-artifacts.d.ts.map +1 -0
  195. package/dist/cli/gradual-deploy.d.ts +49 -0
  196. package/dist/cli/gradual-deploy.d.ts.map +1 -0
  197. package/dist/cli/help-pages/pages/account.d.ts +3 -0
  198. package/dist/cli/help-pages/pages/account.d.ts.map +1 -0
  199. package/dist/cli/help-pages/pages/core.d.ts +4 -0
  200. package/dist/cli/help-pages/pages/core.d.ts.map +1 -0
  201. package/dist/cli/help-pages/pages/index.d.ts +3 -0
  202. package/dist/cli/help-pages/pages/index.d.ts.map +1 -0
  203. package/dist/cli/help-pages/pages/misc.d.ts +3 -0
  204. package/dist/cli/help-pages/pages/misc.d.ts.map +1 -0
  205. package/dist/cli/help-pages/pages/previews.d.ts +3 -0
  206. package/dist/cli/help-pages/pages/previews.d.ts.map +1 -0
  207. package/dist/cli/help-pages/pages/productions.d.ts +3 -0
  208. package/dist/cli/help-pages/pages/productions.d.ts.map +1 -0
  209. package/dist/cli/help-pages/render.d.ts +12 -0
  210. package/dist/cli/help-pages/render.d.ts.map +1 -0
  211. package/dist/cli/help-pages/shared.d.ts +15 -0
  212. package/dist/cli/help-pages/shared.d.ts.map +1 -0
  213. package/dist/cli/help-pages/types.d.ts +23 -0
  214. package/dist/cli/help-pages/types.d.ts.map +1 -0
  215. package/dist/cli/help.d.ts +6 -0
  216. package/dist/cli/help.d.ts.map +1 -0
  217. package/dist/cli/index.d.ts +1 -0
  218. package/dist/cli/index.d.ts.map +1 -1
  219. package/dist/cli/index.js +2 -0
  220. package/dist/cli/package-metadata.d.ts +16 -0
  221. package/dist/cli/package-metadata.d.ts.map +1 -0
  222. package/dist/cli/preview-bindings.d.ts +49 -0
  223. package/dist/cli/preview-bindings.d.ts.map +1 -0
  224. package/dist/cli/preview.d.ts +10 -0
  225. package/dist/cli/preview.d.ts.map +1 -0
  226. package/dist/cli/ui.d.ts +37 -0
  227. package/dist/cli/ui.d.ts.map +1 -0
  228. package/dist/cli/workspace-build-guard.d.ts +14 -0
  229. package/dist/cli/workspace-build-guard.d.ts.map +1 -0
  230. package/dist/cli/wrangler-auth.d.ts +1 -1
  231. package/dist/cloudflare/account-core.d.ts +6 -0
  232. package/dist/cloudflare/account-core.d.ts.map +1 -0
  233. package/dist/cloudflare/account-resources.d.ts +40 -0
  234. package/dist/cloudflare/account-resources.d.ts.map +1 -0
  235. package/dist/cloudflare/account-status.d.ts +11 -0
  236. package/dist/cloudflare/account-status.d.ts.map +1 -0
  237. package/dist/cloudflare/account-workers.d.ts +14 -0
  238. package/dist/cloudflare/account-workers.d.ts.map +1 -0
  239. package/dist/cloudflare/account.d.ts +7 -64
  240. package/dist/cloudflare/account.d.ts.map +1 -1
  241. package/dist/cloudflare/api.d.ts +71 -3
  242. package/dist/cloudflare/api.d.ts.map +1 -1
  243. package/dist/cloudflare/auth.d.ts +1 -1
  244. package/dist/cloudflare/auth.d.ts.map +1 -1
  245. package/dist/cloudflare/index.d.ts +61 -6
  246. package/dist/cloudflare/index.d.ts.map +1 -1
  247. package/dist/cloudflare/index.js +4 -13
  248. package/dist/cloudflare/known-permission-group-ids.generated.d.ts +10 -0
  249. package/dist/cloudflare/known-permission-group-ids.generated.d.ts.map +1 -0
  250. package/dist/cloudflare/kv-namespace.d.ts +4 -0
  251. package/dist/cloudflare/kv-namespace.d.ts.map +1 -0
  252. package/dist/cloudflare/preferences.d.ts +7 -0
  253. package/dist/cloudflare/preferences.d.ts.map +1 -1
  254. package/dist/cloudflare/preview-registry-cache.d.ts +6 -0
  255. package/dist/cloudflare/preview-registry-cache.d.ts.map +1 -0
  256. package/dist/cloudflare/preview-registry-inference.d.ts +14 -0
  257. package/dist/cloudflare/preview-registry-inference.d.ts.map +1 -0
  258. package/dist/cloudflare/preview-registry-records.d.ts +4 -0
  259. package/dist/cloudflare/preview-registry-records.d.ts.map +1 -0
  260. package/dist/cloudflare/preview-registry-shape.d.ts +47 -0
  261. package/dist/cloudflare/preview-registry-shape.d.ts.map +1 -0
  262. package/dist/cloudflare/preview-registry-store.d.ts +14 -0
  263. package/dist/cloudflare/preview-registry-store.d.ts.map +1 -0
  264. package/dist/cloudflare/preview-registry-transport.d.ts +4 -0
  265. package/dist/cloudflare/preview-registry-transport.d.ts.map +1 -0
  266. package/dist/cloudflare/preview-registry-types.d.ts +103 -0
  267. package/dist/cloudflare/preview-registry-types.d.ts.map +1 -0
  268. package/dist/cloudflare/preview-registry.d.ts +42 -0
  269. package/dist/cloudflare/preview-registry.d.ts.map +1 -0
  270. package/dist/cloudflare/preview-urls.d.ts +3 -0
  271. package/dist/cloudflare/preview-urls.d.ts.map +1 -0
  272. package/dist/cloudflare/registry-schema.d.ts +253 -0
  273. package/dist/cloudflare/registry-schema.d.ts.map +1 -0
  274. package/dist/cloudflare/remote-config.d.ts.map +1 -1
  275. package/dist/cloudflare/tokens.d.ts +44 -0
  276. package/dist/cloudflare/tokens.d.ts.map +1 -0
  277. package/dist/cloudflare/types.d.ts +124 -7
  278. package/dist/cloudflare/types.d.ts.map +1 -1
  279. package/dist/cloudflare/usage.d.ts +31 -3
  280. package/dist/cloudflare/usage.d.ts.map +1 -1
  281. package/dist/config/binding-resolution-helpers.d.ts +41 -0
  282. package/dist/config/binding-resolution-helpers.d.ts.map +1 -0
  283. package/dist/config/compatibility.d.ts +3 -0
  284. package/dist/config/compatibility.d.ts.map +1 -0
  285. package/dist/config/compiler/bindings.d.ts +14 -0
  286. package/dist/config/compiler/bindings.d.ts.map +1 -0
  287. package/dist/config/compiler/core-helpers.d.ts +6 -0
  288. package/dist/config/compiler/core-helpers.d.ts.map +1 -0
  289. package/dist/config/compiler/do-workers.d.ts +34 -0
  290. package/dist/config/compiler/do-workers.d.ts.map +1 -0
  291. package/dist/config/compiler/paths.d.ts +18 -0
  292. package/dist/config/compiler/paths.d.ts.map +1 -0
  293. package/dist/config/compiler/types.d.ts +298 -0
  294. package/dist/config/compiler/types.d.ts.map +1 -0
  295. package/dist/config/compiler.d.ts +22 -134
  296. package/dist/config/compiler.d.ts.map +1 -1
  297. package/dist/config/cron.d.ts +19 -0
  298. package/dist/config/cron.d.ts.map +1 -0
  299. package/dist/config/define.d.ts +8 -5
  300. package/dist/config/define.d.ts.map +1 -1
  301. package/dist/config/deploy-resources.d.ts +58 -0
  302. package/dist/config/deploy-resources.d.ts.map +1 -0
  303. package/dist/config/env-vars.d.ts +309 -0
  304. package/dist/config/env-vars.d.ts.map +1 -0
  305. package/dist/config/framework-providers.d.ts +9 -0
  306. package/dist/config/framework-providers.d.ts.map +1 -0
  307. package/dist/config/index.d.ts +12 -5
  308. package/dist/config/index.d.ts.map +1 -1
  309. package/dist/config/loader.d.ts +2 -1
  310. package/dist/config/loader.d.ts.map +1 -1
  311. package/dist/config/local-dev-vars.d.ts +15 -0
  312. package/dist/config/local-dev-vars.d.ts.map +1 -0
  313. package/dist/config/preview-resources.d.ts +83 -0
  314. package/dist/config/preview-resources.d.ts.map +1 -0
  315. package/dist/config/preview.d.ts +29 -0
  316. package/dist/config/preview.d.ts.map +1 -0
  317. package/dist/config/ref.d.ts +16 -25
  318. package/dist/config/ref.d.ts.map +1 -1
  319. package/dist/config/resolve-phased.d.ts +72 -0
  320. package/dist/config/resolve-phased.d.ts.map +1 -0
  321. package/dist/config/resolve.d.ts +11 -0
  322. package/dist/config/resolve.d.ts.map +1 -0
  323. package/dist/config/resource-resolution.d.ts +80 -0
  324. package/dist/config/resource-resolution.d.ts.map +1 -0
  325. package/dist/config/schema-bindings.d.ts +2025 -0
  326. package/dist/config/schema-bindings.d.ts.map +1 -0
  327. package/dist/config/schema-build.d.ts +67 -0
  328. package/dist/config/schema-build.d.ts.map +1 -0
  329. package/dist/config/schema-env.d.ts +3579 -0
  330. package/dist/config/schema-env.d.ts.map +1 -0
  331. package/dist/config/schema-normalization.d.ts +265 -0
  332. package/dist/config/schema-normalization.d.ts.map +1 -0
  333. package/dist/config/schema-runtime.d.ts +508 -0
  334. package/dist/config/schema-runtime.d.ts.map +1 -0
  335. package/dist/config/schema-types-bindings-platform.d.ts +508 -0
  336. package/dist/config/schema-types-bindings-platform.d.ts.map +1 -0
  337. package/dist/config/schema-types-bindings-resources.d.ts +767 -0
  338. package/dist/config/schema-types-bindings-resources.d.ts.map +1 -0
  339. package/dist/config/schema-types-bindings.d.ts +293 -0
  340. package/dist/config/schema-types-bindings.d.ts.map +1 -0
  341. package/dist/config/schema-types-build.d.ts +86 -0
  342. package/dist/config/schema-types-build.d.ts.map +1 -0
  343. package/dist/config/schema-types-runtime.d.ts +917 -0
  344. package/dist/config/schema-types-runtime.d.ts.map +1 -0
  345. package/dist/config/schema-types.d.ts +424 -0
  346. package/dist/config/schema-types.d.ts.map +1 -0
  347. package/dist/config/schema.d.ts +5324 -2011
  348. package/dist/config/schema.d.ts.map +1 -1
  349. package/dist/config/service-bindings-validation.d.ts +36 -0
  350. package/dist/config/service-bindings-validation.d.ts.map +1 -0
  351. package/dist/config-entry.d.ts +7 -0
  352. package/dist/config-entry.d.ts.map +1 -0
  353. package/dist/config-entry.js +3 -0
  354. package/dist/decorators/durable-object.d.ts.map +1 -1
  355. package/dist/decorators/index.d.ts +2 -2
  356. package/dist/decorators/index.js +2 -9
  357. package/dist/dev-server/d1-migrations.d.ts +36 -0
  358. package/dist/dev-server/d1-migrations.d.ts.map +1 -0
  359. package/dist/dev-server/dev-server-state.d.ts +59 -0
  360. package/dist/dev-server/dev-server-state.d.ts.map +1 -0
  361. package/dist/dev-server/gateway-script.d.ts +21 -0
  362. package/dist/dev-server/gateway-script.d.ts.map +1 -0
  363. package/dist/dev-server/index.d.ts +1 -1
  364. package/dist/dev-server/miniflare-bindings.d.ts +81 -0
  365. package/dist/dev-server/miniflare-bindings.d.ts.map +1 -0
  366. package/dist/dev-server/miniflare-dev-config.d.ts +36 -0
  367. package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -0
  368. package/dist/dev-server/miniflare-log.d.ts +20 -0
  369. package/dist/dev-server/miniflare-log.d.ts.map +1 -0
  370. package/dist/dev-server/miniflare-worker-config.d.ts +82 -0
  371. package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -0
  372. package/dist/dev-server/reload-queue.d.ts +13 -0
  373. package/dist/dev-server/reload-queue.d.ts.map +1 -0
  374. package/dist/dev-server/runtime-stdio.d.ts +8 -0
  375. package/dist/dev-server/runtime-stdio.d.ts.map +1 -0
  376. package/dist/dev-server/server-startup-helpers.d.ts +84 -0
  377. package/dist/dev-server/server-startup-helpers.d.ts.map +1 -0
  378. package/dist/dev-server/server.d.ts +2 -0
  379. package/dist/dev-server/server.d.ts.map +1 -1
  380. package/dist/dev-server/vite-process.d.ts +15 -0
  381. package/dist/dev-server/vite-process.d.ts.map +1 -0
  382. package/dist/dev-server/vite-utils.d.ts +19 -1
  383. package/dist/dev-server/vite-utils.d.ts.map +1 -1
  384. package/dist/dev-server/worker-source-watcher.d.ts +17 -0
  385. package/dist/dev-server/worker-source-watcher.d.ts.map +1 -0
  386. package/dist/dev-server/worker-surface-paths.d.ts +6 -0
  387. package/dist/dev-server/worker-surface-paths.d.ts.map +1 -0
  388. package/dist/env.d.ts +10 -0
  389. package/dist/env.d.ts.map +1 -1
  390. package/dist/index.d.ts +8 -12
  391. package/dist/index.d.ts.map +1 -1
  392. package/dist/index.js +9 -298
  393. package/dist/runtime/context-events.d.ts +13 -0
  394. package/dist/runtime/context-events.d.ts.map +1 -0
  395. package/dist/runtime/context-types.d.ts +82 -0
  396. package/dist/runtime/context-types.d.ts.map +1 -0
  397. package/dist/runtime/context.d.ts +20 -44
  398. package/dist/runtime/context.d.ts.map +1 -1
  399. package/dist/runtime/exports.d.ts +70 -55
  400. package/dist/runtime/exports.d.ts.map +1 -1
  401. package/dist/runtime/index.d.ts +10 -3
  402. package/dist/runtime/index.d.ts.map +1 -1
  403. package/dist/runtime/index.js +5 -111
  404. package/dist/runtime/middleware.d.ts +119 -67
  405. package/dist/runtime/middleware.d.ts.map +1 -1
  406. package/dist/runtime/router/index.d.ts +7 -0
  407. package/dist/runtime/router/index.d.ts.map +1 -0
  408. package/dist/runtime/router/types.d.ts +24 -0
  409. package/dist/runtime/router/types.d.ts.map +1 -0
  410. package/dist/runtime/validation.d.ts +18 -4
  411. package/dist/runtime/validation.d.ts.map +1 -1
  412. package/dist/secrets/local-secrets.d.ts +46 -0
  413. package/dist/secrets/local-secrets.d.ts.map +1 -0
  414. package/dist/shims/local-hyperdrive.d.ts +12 -0
  415. package/dist/shims/local-hyperdrive.d.ts.map +1 -0
  416. package/dist/shims/local-media-bindings.d.ts +19 -0
  417. package/dist/shims/local-media-bindings.d.ts.map +1 -0
  418. package/dist/shims/local-worker-loader.d.ts +3 -0
  419. package/dist/shims/local-worker-loader.d.ts.map +1 -0
  420. package/dist/sveltekit/index.d.ts +1 -1
  421. package/dist/sveltekit/index.d.ts.map +1 -1
  422. package/dist/sveltekit/index.js +313 -167
  423. package/dist/sveltekit/local-bindings.d.ts +4 -0
  424. package/dist/sveltekit/local-bindings.d.ts.map +1 -0
  425. package/dist/sveltekit/platform.d.ts +20 -2
  426. package/dist/sveltekit/platform.d.ts.map +1 -1
  427. package/dist/test/ai-search.d.ts +39 -0
  428. package/dist/test/ai-search.d.ts.map +1 -0
  429. package/dist/test/alarm.d.ts +55 -0
  430. package/dist/test/alarm.d.ts.map +1 -0
  431. package/dist/test/binding-hints.d.ts +10 -0
  432. package/dist/test/binding-hints.d.ts.map +1 -0
  433. package/dist/test/cf.d.ts +71 -35
  434. package/dist/test/cf.d.ts.map +1 -1
  435. package/dist/test/containers.d.ts +87 -0
  436. package/dist/test/containers.d.ts.map +1 -0
  437. package/dist/test/email.d.ts +16 -7
  438. package/dist/test/email.d.ts.map +1 -1
  439. package/dist/test/index.d.ts +20 -21
  440. package/dist/test/index.d.ts.map +1 -1
  441. package/dist/test/index.js +4971 -70
  442. package/dist/test/offline-bindings.d.ts +115 -0
  443. package/dist/test/offline-bindings.d.ts.map +1 -0
  444. package/dist/test/queue.d.ts.map +1 -1
  445. package/dist/test/remote-ai.d.ts.map +1 -1
  446. package/dist/test/remote-cloudflare.d.ts +13 -0
  447. package/dist/test/remote-cloudflare.d.ts.map +1 -0
  448. package/dist/test/remote-vectorize.d.ts.map +1 -1
  449. package/dist/test/resolve-service-bindings.d.ts +64 -4
  450. package/dist/test/resolve-service-bindings.d.ts.map +1 -1
  451. package/dist/test/scheduled.d.ts.map +1 -1
  452. package/dist/test/should-skip.d.ts +14 -18
  453. package/dist/test/should-skip.d.ts.map +1 -1
  454. package/dist/test/simple-context-bindings.d.ts +13 -0
  455. package/dist/test/simple-context-bindings.d.ts.map +1 -0
  456. package/dist/test/simple-context-durable-objects.d.ts +6 -0
  457. package/dist/test/simple-context-durable-objects.d.ts.map +1 -0
  458. package/dist/test/simple-context-env.d.ts +35 -0
  459. package/dist/test/simple-context-env.d.ts.map +1 -0
  460. package/dist/test/simple-context-gateway-script.d.ts +2 -0
  461. package/dist/test/simple-context-gateway-script.d.ts.map +1 -0
  462. package/dist/test/simple-context-handlers.d.ts +12 -0
  463. package/dist/test/simple-context-handlers.d.ts.map +1 -0
  464. package/dist/test/simple-context-lifecycle.d.ts +32 -0
  465. package/dist/test/simple-context-lifecycle.d.ts.map +1 -0
  466. package/dist/test/simple-context-mfconfig.d.ts +10 -0
  467. package/dist/test/simple-context-mfconfig.d.ts.map +1 -0
  468. package/dist/test/simple-context-multi-worker.d.ts +16 -0
  469. package/dist/test/simple-context-multi-worker.d.ts.map +1 -0
  470. package/dist/test/simple-context-paths.d.ts +40 -0
  471. package/dist/test/simple-context-paths.d.ts.map +1 -0
  472. package/dist/test/simple-context-runtime.d.ts +19 -0
  473. package/dist/test/simple-context-runtime.d.ts.map +1 -0
  474. package/dist/test/simple-context-startup.d.ts +11 -0
  475. package/dist/test/simple-context-startup.d.ts.map +1 -0
  476. package/dist/test/simple-context-transport.d.ts +14 -0
  477. package/dist/test/simple-context-transport.d.ts.map +1 -0
  478. package/dist/test/simple-context.d.ts +8 -27
  479. package/dist/test/simple-context.d.ts.map +1 -1
  480. package/dist/test/tail.d.ts +3 -2
  481. package/dist/test/tail.d.ts.map +1 -1
  482. package/dist/test/utilities/analytics-engine.d.ts +22 -0
  483. package/dist/test/utilities/analytics-engine.d.ts.map +1 -0
  484. package/dist/test/utilities/artifacts.d.ts +11 -0
  485. package/dist/test/utilities/artifacts.d.ts.map +1 -0
  486. package/dist/test/utilities/context.d.ts +39 -0
  487. package/dist/test/utilities/context.d.ts.map +1 -0
  488. package/dist/test/utilities/d1.d.ts +21 -0
  489. package/dist/test/utilities/d1.d.ts.map +1 -0
  490. package/dist/test/utilities/env.d.ts +43 -0
  491. package/dist/test/utilities/env.d.ts.map +1 -0
  492. package/dist/test/utilities/kv.d.ts +11 -0
  493. package/dist/test/utilities/kv.d.ts.map +1 -0
  494. package/dist/test/utilities/media.d.ts +16 -0
  495. package/dist/test/utilities/media.d.ts.map +1 -0
  496. package/dist/test/utilities/platform.d.ts +41 -0
  497. package/dist/test/utilities/platform.d.ts.map +1 -0
  498. package/dist/test/utilities/queue.d.ts +5 -0
  499. package/dist/test/utilities/queue.d.ts.map +1 -0
  500. package/dist/test/utilities/r2.d.ts +2 -0
  501. package/dist/test/utilities/r2.d.ts.map +1 -0
  502. package/dist/test/utilities/stream-flagship.d.ts +27 -0
  503. package/dist/test/utilities/stream-flagship.d.ts.map +1 -0
  504. package/dist/test/utilities/vectorize.d.ts +38 -0
  505. package/dist/test/utilities/vectorize.d.ts.map +1 -0
  506. package/dist/test/utilities/workflows.d.ts +26 -0
  507. package/dist/test/utilities/workflows.d.ts.map +1 -0
  508. package/dist/test/utilities.d.ts +13 -98
  509. package/dist/test/utilities.d.ts.map +1 -1
  510. package/dist/test/worker.d.ts +6 -0
  511. package/dist/test/worker.d.ts.map +1 -1
  512. package/dist/transform/durable-object.d.ts.map +1 -1
  513. package/dist/transform/index.d.ts +2 -2
  514. package/dist/transform/worker-entrypoint.d.ts +5 -0
  515. package/dist/transform/worker-entrypoint.d.ts.map +1 -1
  516. package/dist/utils/entrypoint-discovery.d.ts +6 -3
  517. package/dist/utils/entrypoint-discovery.d.ts.map +1 -1
  518. package/dist/utils/glob.d.ts.map +1 -1
  519. package/dist/utils/resolve-package.d.ts.map +1 -1
  520. package/dist/utils/send-email.d.ts +15 -0
  521. package/dist/utils/send-email.d.ts.map +1 -0
  522. package/dist/utils/send-email.js +163 -0
  523. package/dist/vite/config-file.d.ts +25 -0
  524. package/dist/vite/config-file.d.ts.map +1 -0
  525. package/dist/vite/index.d.ts +3 -2
  526. package/dist/vite/index.d.ts.map +1 -1
  527. package/dist/vite/index.js +2 -339
  528. package/dist/vite/plugin-config-hook.d.ts +28 -0
  529. package/dist/vite/plugin-config-hook.d.ts.map +1 -0
  530. package/dist/vite/plugin-context.d.ts +27 -0
  531. package/dist/vite/plugin-context.d.ts.map +1 -0
  532. package/dist/vite/plugin-durable-objects.d.ts +18 -0
  533. package/dist/vite/plugin-durable-objects.d.ts.map +1 -0
  534. package/dist/vite/plugin-programmatic.d.ts +44 -0
  535. package/dist/vite/plugin-programmatic.d.ts.map +1 -0
  536. package/dist/vite/plugin-service-bindings.d.ts +13 -0
  537. package/dist/vite/plugin-service-bindings.d.ts.map +1 -0
  538. package/dist/vite/plugin-transform.d.ts +41 -0
  539. package/dist/vite/plugin-transform.d.ts.map +1 -0
  540. package/dist/vite/plugin.d.ts +10 -41
  541. package/dist/vite/plugin.d.ts.map +1 -1
  542. package/dist/worker-entry/composed-worker.d.ts +7 -0
  543. package/dist/worker-entry/composed-worker.d.ts.map +1 -0
  544. package/dist/worker-entry/durable-object-discovery.d.ts +20 -0
  545. package/dist/worker-entry/durable-object-discovery.d.ts.map +1 -0
  546. package/dist/worker-entry/extensions.d.ts +5 -0
  547. package/dist/worker-entry/extensions.d.ts.map +1 -0
  548. package/dist/worker-entry/routes.d.ts +22 -0
  549. package/dist/worker-entry/routes.d.ts.map +1 -0
  550. package/dist/worker-entry/surface-paths.d.ts +26 -0
  551. package/dist/worker-entry/surface-paths.d.ts.map +1 -0
  552. package/dist/worker-entry/validate-fetch-style.d.ts +12 -0
  553. package/dist/worker-entry/validate-fetch-style.d.ts.map +1 -0
  554. package/dist/workflows/local-workflow-entrypoints.d.ts +7 -0
  555. package/dist/workflows/local-workflow-entrypoints.d.ts.map +1 -0
  556. package/package.json +159 -116
  557. package/R2.md +0 -170
  558. package/dist/account-rvrj687w.js +0 -397
  559. package/dist/ai-dx4fr9jh.js +0 -107
  560. package/dist/bridge/protocol.d.ts.map +0 -1
  561. package/dist/bridge/serialization.d.ts.map +0 -1
  562. package/dist/browser-shim/worker.d.ts +0 -14
  563. package/dist/browser-shim/worker.d.ts.map +0 -1
  564. package/dist/build-mnf6v8gd.js +0 -53
  565. package/dist/deploy-nhceck39.js +0 -70
  566. package/dist/dev-b9dmrj7b.js +0 -2417
  567. package/dist/doctor-fmgb3d28.js +0 -190
  568. package/dist/durable-object-t4kbb0yt.js +0 -13
  569. package/dist/index-07q6yxyc.js +0 -168
  570. package/dist/index-18hvb6gb.js +0 -194
  571. package/dist/index-1xpj0m4r.js +0 -57
  572. package/dist/index-37x76zdn.js +0 -4
  573. package/dist/index-3t6rypgc.js +0 -13
  574. package/dist/index-67qcae0f.js +0 -183
  575. package/dist/index-a855bdsx.js +0 -18
  576. package/dist/index-d8bdkx2h.js +0 -109
  577. package/dist/index-ep3445yc.js +0 -2225
  578. package/dist/index-gz1gndna.js +0 -307
  579. package/dist/index-hcex3rgh.js +0 -266
  580. package/dist/index-m2q41jwa.js +0 -462
  581. package/dist/index-n7rs26ft.js +0 -77
  582. package/dist/index-pf5s73n9.js +0 -1413
  583. package/dist/index-rbht7m9r.js +0 -36
  584. package/dist/index-tfyxa77h.js +0 -850
  585. package/dist/index-tk6ej9dj.js +0 -94
  586. package/dist/index-z14anrqp.js +0 -226
  587. package/dist/init-f9mgmew3.js +0 -186
  588. package/dist/remote-q59qk463.js +0 -97
  589. package/dist/test/bridge-context.d.ts +0 -76
  590. package/dist/test/bridge-context.d.ts.map +0 -1
  591. package/dist/test/multi-worker-context.d.ts +0 -114
  592. package/dist/test/multi-worker-context.d.ts.map +0 -1
  593. package/dist/types-5nyrz1sz.js +0 -454
  594. package/dist/worker-entrypoint-m9th0rg0.js +0 -13
@@ -0,0 +1,660 @@
1
+ import { z } from "zod";
2
+ //#region src/config/schema-bindings.ts
3
+ /**
4
+ * Durable Object binding schema.
5
+ * Validates DO binding configuration in either string or object form.
6
+ */
7
+ const durableObjectBindingSchema = z.custom((val) => {
8
+ if (typeof val === "string") return true;
9
+ if (val && typeof val === "object" && "className" in val) return typeof val.className === "string";
10
+ return false;
11
+ }, { message: "Expected string or { className: string, scriptName?: string }" });
12
+ /**
13
+ * Queue consumer configuration.
14
+ * Defines how messages are consumed from a Cloudflare Queue.
15
+ */
16
+ const queueConsumerSchema = z.object({
17
+ queue: z.string(),
18
+ maxBatchSize: z.number().optional(),
19
+ maxBatchTimeout: z.number().optional(),
20
+ maxRetries: z.number().optional(),
21
+ deadLetterQueue: z.string().optional(),
22
+ maxConcurrency: z.number().optional(),
23
+ retryDelay: z.number().optional()
24
+ });
25
+ /**
26
+ * Queue producer binding schema.
27
+ * Accepts the queue-name string shorthand or an object form exposing `remote`.
28
+ */
29
+ const queueProducerSchema = z.union([z.string(), z.object({
30
+ queue: z.string().min(1),
31
+ remote: z.boolean().optional()
32
+ }).strict()]);
33
+ /**
34
+ * Queues configuration for producers and consumers.
35
+ */
36
+ const queuesConfigSchema = z.object({
37
+ producers: z.record(z.string(), queueProducerSchema).optional(),
38
+ consumers: z.array(queueConsumerSchema).optional()
39
+ });
40
+ /**
41
+ * Rate Limiting binding configuration.
42
+ * Devflare uses camelCase authoring and compiles to Wrangler's `ratelimits`
43
+ * array (`namespace_id`, `simple.limit`, `simple.period`).
44
+ */
45
+ const rateLimitBindingSchema = z.object({
46
+ namespaceId: z.string().regex(/^[1-9]\d*$/, "namespaceId must be a positive integer string"),
47
+ simple: z.object({
48
+ limit: z.number().int().positive(),
49
+ period: z.union([z.literal(10), z.literal(60)])
50
+ }).strict()
51
+ }).strict();
52
+ /**
53
+ * Version Metadata binding configuration.
54
+ */
55
+ const versionMetadataBindingSchema = z.object({ binding: z.string().min(1) }).strict();
56
+ /**
57
+ * Worker Loader binding configuration for Dynamic Workers.
58
+ */
59
+ const workerLoaderBindingSchema = z.object({}).strict();
60
+ /**
61
+ * Secrets Store binding configuration.
62
+ * Devflare accepts object form for explicit per-binding store IDs and string
63
+ * shorthand when the worker sets a top-level `secretsStoreId`.
64
+ */
65
+ const secretsStoreBindingSchema = z.union([z.string().min(1), z.object({
66
+ storeId: z.string().min(1),
67
+ secretName: z.string().min(1)
68
+ }).strict()]);
69
+ /**
70
+ * Service binding schema.
71
+ * Binds to another Worker for RPC-style communication.
72
+ * Accepts plain objects or WorkerBinding from ref().worker.
73
+ */
74
+ const serviceBindingKeys = new Set([
75
+ "service",
76
+ "environment",
77
+ "entrypoint",
78
+ "remote",
79
+ "__ref"
80
+ ]);
81
+ function isServiceBindingValue(val) {
82
+ if (typeof val !== "object" && typeof val !== "function" || val === null) return false;
83
+ const obj = val;
84
+ if (typeof obj.service !== "string" || obj.service.trim().length === 0) return false;
85
+ if (obj.environment !== void 0 && (typeof obj.environment !== "string" || obj.environment.trim().length === 0)) return false;
86
+ if (obj.entrypoint !== void 0 && (typeof obj.entrypoint !== "string" || obj.entrypoint.trim().length === 0)) return false;
87
+ if (obj.remote !== void 0 && typeof obj.remote !== "boolean") return false;
88
+ if (typeof val === "object") {
89
+ for (const key of Object.keys(obj)) if (!serviceBindingKeys.has(key)) return false;
90
+ }
91
+ return true;
92
+ }
93
+ const serviceBindingSchema = z.custom(isServiceBindingValue, { message: "Expected service binding object with { service: string, environment?: string, entrypoint?: string, remote?: boolean } or ref().worker" });
94
+ /**
95
+ * AI binding configuration.
96
+ * Provides access to Cloudflare Workers AI for inference.
97
+ */
98
+ const aiBindingSchema = z.object({
99
+ binding: z.string(),
100
+ remote: z.boolean().optional(),
101
+ staging: z.boolean().optional()
102
+ }).strict();
103
+ /**
104
+ * AI Search namespace binding configuration.
105
+ * Provides access to all AI Search instances in a namespace.
106
+ */
107
+ const aiSearchNamespaceBindingSchema = z.object({
108
+ namespace: z.string().min(1),
109
+ remote: z.boolean().optional()
110
+ }).strict();
111
+ /**
112
+ * AI Search instance binding configuration.
113
+ * Provides direct access to one AI Search instance in the default namespace.
114
+ */
115
+ const aiSearchInstanceBindingSchema = z.object({
116
+ instanceName: z.string().min(1),
117
+ remote: z.boolean().optional()
118
+ }).strict();
119
+ /**
120
+ * Vectorize index binding configuration.
121
+ * Provides access to a Cloudflare Vectorize index for similarity search.
122
+ */
123
+ const vectorizeBindingSchema = z.object({
124
+ indexName: z.string(),
125
+ remote: z.boolean().optional()
126
+ });
127
+ /**
128
+ * Hyperdrive binding configuration.
129
+ * Provides accelerated PostgreSQL connections via connection pooling.
130
+ */
131
+ const hyperdriveBindingByIdSchema = z.object({
132
+ id: z.string(),
133
+ localConnectionString: z.string().optional()
134
+ }).strict();
135
+ const hyperdriveBindingByNameSchema = z.object({
136
+ name: z.string(),
137
+ localConnectionString: z.string().optional(),
138
+ previewFallback: z.literal("base").optional(),
139
+ previewId: z.string().optional(),
140
+ previewLocalConnectionString: z.string().optional()
141
+ }).strict();
142
+ const hyperdriveBindingSchema = z.union([
143
+ z.string(),
144
+ hyperdriveBindingByIdSchema,
145
+ hyperdriveBindingByNameSchema
146
+ ]);
147
+ const SINGLE_BROWSER_BINDING_ERROR_MESSAGE = "Devflare currently supports exactly one browser binding because Wrangler only supports a single browser binding.";
148
+ function formatBrowserBindingLimitMessage(bindingNames) {
149
+ if (bindingNames.length <= 1) return SINGLE_BROWSER_BINDING_ERROR_MESSAGE;
150
+ return `${SINGLE_BROWSER_BINDING_ERROR_MESSAGE} Configured bindings: ${bindingNames.join(", ")}`;
151
+ }
152
+ function getBrowserBindingNames(bindings) {
153
+ return bindings ? Object.keys(bindings) : [];
154
+ }
155
+ /**
156
+ * Browser Rendering binding configuration.
157
+ * Provides headless browser access for rendering/screenshots.
158
+ */
159
+ const browserBindingValueSchema = z.union([z.string(), z.object({ remote: z.boolean().optional() }).strict()]);
160
+ const browserBindingSchema = z.record(z.string(), browserBindingValueSchema).superRefine((bindings, ctx) => {
161
+ const bindingNames = getBrowserBindingNames(bindings);
162
+ if (bindingNames.length > 1) ctx.addIssue({
163
+ code: z.ZodIssueCode.custom,
164
+ message: formatBrowserBindingLimitMessage(bindingNames)
165
+ });
166
+ });
167
+ /**
168
+ * Analytics Engine binding configuration.
169
+ * Provides access to Cloudflare Analytics Engine for event logging.
170
+ */
171
+ const analyticsBindingSchema = z.object({ dataset: z.string() });
172
+ /**
173
+ * Email sending binding configuration.
174
+ * Enables sending emails via Cloudflare Email Routing.
175
+ */
176
+ const sendEmailBindingSchema = z.object({
177
+ destinationAddress: z.string().optional(),
178
+ allowedDestinationAddresses: z.array(z.string()).optional(),
179
+ allowedSenderAddresses: z.array(z.string()).optional()
180
+ }).refine((binding) => {
181
+ return !(binding.destinationAddress && binding.allowedDestinationAddresses);
182
+ }, {
183
+ message: "sendEmail bindings must use either destinationAddress or allowedDestinationAddresses, not both",
184
+ path: ["allowedDestinationAddresses"]
185
+ });
186
+ /** Preview, migration, and remote-development fields shared by D1 binding forms. */
187
+ const d1BindingExtraShape = {
188
+ previewDatabaseId: z.string().optional(),
189
+ migrationsTable: z.string().optional(),
190
+ migrationsDir: z.string().optional(),
191
+ remote: z.boolean().optional()
192
+ };
193
+ const d1BindingByIdSchema = z.object({
194
+ id: z.string(),
195
+ ...d1BindingExtraShape
196
+ }).strict();
197
+ const d1BindingByNameSchema = z.object({
198
+ name: z.string(),
199
+ ...d1BindingExtraShape
200
+ }).strict();
201
+ const d1BindingSchema = z.union([
202
+ z.string(),
203
+ d1BindingByIdSchema,
204
+ d1BindingByNameSchema
205
+ ]);
206
+ /** Preview and remote-development fields shared by KV binding forms. */
207
+ const kvBindingExtraShape = {
208
+ previewId: z.string().optional(),
209
+ remote: z.boolean().optional()
210
+ };
211
+ const kvBindingByIdSchema = z.object({
212
+ id: z.string(),
213
+ ...kvBindingExtraShape
214
+ }).strict();
215
+ const kvBindingByNameSchema = z.object({
216
+ name: z.string(),
217
+ ...kvBindingExtraShape
218
+ }).strict();
219
+ const kvBindingSchema = z.union([
220
+ z.string(),
221
+ kvBindingByIdSchema,
222
+ kvBindingByNameSchema
223
+ ]);
224
+ /**
225
+ * R2 bucket binding schema.
226
+ * Accepts the bucket-name string shorthand or an object form exposing
227
+ * `remote`, `previewBucketName`, and `jurisdiction`.
228
+ */
229
+ const r2BindingObjectSchema = z.object({
230
+ bucketName: z.string().min(1),
231
+ previewBucketName: z.string().optional(),
232
+ jurisdiction: z.string().optional(),
233
+ remote: z.boolean().optional()
234
+ }).strict();
235
+ const r2BindingSchema = z.union([z.string(), r2BindingObjectSchema]);
236
+ const mtlsCertificateBindingByIdSchema = z.object({
237
+ certificateId: z.string().min(1),
238
+ remote: z.boolean().optional()
239
+ }).strict();
240
+ const mtlsCertificateBindingByWranglerIdSchema = z.object({
241
+ certificate_id: z.string().min(1),
242
+ remote: z.boolean().optional()
243
+ }).strict();
244
+ /**
245
+ * C17 — mTLS Certificate binding.
246
+ * The id is the UUID returned by `wrangler mtls-certificate upload`.
247
+ */
248
+ const mtlsCertificateBindingSchema = z.union([
249
+ z.string().min(1),
250
+ mtlsCertificateBindingByIdSchema,
251
+ mtlsCertificateBindingByWranglerIdSchema
252
+ ]);
253
+ /**
254
+ * C17 — Workers for Platforms (Dispatch Namespace) binding.
255
+ */
256
+ const dispatchNamespaceBindingSchema = z.union([z.string().min(1), z.object({
257
+ namespace: z.string().min(1),
258
+ outbound: z.object({
259
+ service: z.string().min(1),
260
+ environment: z.string().optional(),
261
+ parameters: z.array(z.string()).optional()
262
+ }).strict().optional(),
263
+ remote: z.boolean().optional()
264
+ }).strict()]);
265
+ /**
266
+ * C17 — Workflows-as-binding (a workflow class exposed for another worker
267
+ * to invoke). Distinct from a worker declaring its own workflows.
268
+ */
269
+ const workflowBindingSchema = z.object({
270
+ name: z.string().min(1),
271
+ className: z.string().min(1),
272
+ scriptName: z.string().min(1).optional(),
273
+ remote: z.boolean().optional(),
274
+ limits: z.object({ steps: z.number().int().positive() }).strict().optional()
275
+ }).strict();
276
+ /**
277
+ * C17 — Cloudflare Pipelines binding.
278
+ */
279
+ const pipelineBindingSchema = z.union([z.string().min(1), z.object({
280
+ pipeline: z.string().min(1),
281
+ remote: z.boolean().optional()
282
+ }).strict()]);
283
+ /**
284
+ * C17 — Cloudflare Images binding (transformation/upload service).
285
+ */
286
+ const imagesBindingSchema = z.object({ remote: z.boolean().optional() }).strict().or(z.literal(true));
287
+ /**
288
+ * C17 — Cloudflare Media Transformations binding.
289
+ */
290
+ const mediaBindingSchema = z.object({ remote: z.boolean().optional() }).strict().or(z.literal(true));
291
+ /**
292
+ * C17 — Cloudflare Artifacts binding.
293
+ */
294
+ const artifactsBindingSchema = z.union([z.string().min(1), z.object({
295
+ namespace: z.string().min(1),
296
+ remote: z.boolean().optional()
297
+ }).strict()]);
298
+ /**
299
+ * CF-2 — Cloudflare Stream binding (video upload/playback service).
300
+ * Mirrors the Images/Media singleton shape: `true` shorthand or `{ remote? }`.
301
+ */
302
+ const streamBindingSchema = z.object({ remote: z.boolean().optional() }).strict().or(z.literal(true));
303
+ /**
304
+ * CF-2 — VPC service binding. Connects the Worker to a private service through
305
+ * a Cloudflare VPC connectivity service. Compiles to wrangler's `vpc_services`.
306
+ */
307
+ const vpcServiceBindingSchema = z.object({
308
+ serviceId: z.string().min(1),
309
+ remote: z.boolean().optional()
310
+ }).strict();
311
+ /**
312
+ * CF-2 — VPC network binding routed through a Cloudflare Tunnel (`tunnelId`).
313
+ */
314
+ const vpcNetworkByTunnelSchema = z.object({
315
+ tunnelId: z.string().min(1),
316
+ remote: z.boolean().optional()
317
+ }).strict();
318
+ /**
319
+ * CF-2 — VPC network binding routed through a network ID (`networkId`).
320
+ */
321
+ const vpcNetworkByNetworkSchema = z.object({
322
+ networkId: z.string().min(1),
323
+ remote: z.boolean().optional()
324
+ }).strict();
325
+ /**
326
+ * CF-2 — VPC network binding. Use exactly one of `tunnelId` or `networkId`.
327
+ */
328
+ const vpcNetworkBindingSchema = z.union([vpcNetworkByTunnelSchema, vpcNetworkByNetworkSchema]);
329
+ /**
330
+ * CF-2 — Flagship feature-flag binding. Compiles to wrangler's `flagship`
331
+ * array (`app_id`).
332
+ */
333
+ const flagshipBindingSchema = z.object({
334
+ appId: z.string().min(1),
335
+ remote: z.boolean().optional()
336
+ }).strict();
337
+ /**
338
+ * All worker bindings configuration.
339
+ * Defines connections to Cloudflare services and resources.
340
+ */
341
+ const bindingsSchema = z.object({
342
+ kv: z.record(z.string(), kvBindingSchema).optional(),
343
+ d1: z.record(z.string(), d1BindingSchema).optional(),
344
+ r2: z.record(z.string(), r2BindingSchema).optional(),
345
+ durableObjects: z.record(z.string(), durableObjectBindingSchema).optional(),
346
+ queues: queuesConfigSchema.optional(),
347
+ rateLimits: z.record(z.string(), rateLimitBindingSchema).optional(),
348
+ versionMetadata: versionMetadataBindingSchema.optional(),
349
+ workerLoaders: z.record(z.string(), workerLoaderBindingSchema).optional(),
350
+ secretsStore: z.record(z.string(), secretsStoreBindingSchema).optional(),
351
+ services: z.record(z.string(), serviceBindingSchema).optional(),
352
+ ai: aiBindingSchema.optional(),
353
+ aiSearchNamespaces: z.record(z.string(), aiSearchNamespaceBindingSchema).optional(),
354
+ aiSearch: z.record(z.string(), aiSearchInstanceBindingSchema).optional(),
355
+ vectorize: z.record(z.string(), vectorizeBindingSchema).optional(),
356
+ hyperdrive: z.record(z.string(), hyperdriveBindingSchema).optional(),
357
+ browser: browserBindingSchema.optional(),
358
+ analyticsEngine: z.record(z.string(), analyticsBindingSchema).optional(),
359
+ sendEmail: z.record(z.string(), sendEmailBindingSchema).optional(),
360
+ mtlsCertificates: z.record(z.string(), mtlsCertificateBindingSchema).optional(),
361
+ dispatchNamespaces: z.record(z.string(), dispatchNamespaceBindingSchema).optional(),
362
+ workflows: z.record(z.string(), workflowBindingSchema).optional(),
363
+ pipelines: z.record(z.string(), pipelineBindingSchema).optional(),
364
+ images: z.record(z.string(), imagesBindingSchema).optional().superRefine((bindings, ctx) => {
365
+ if (!bindings || Object.keys(bindings).length <= 1) return;
366
+ ctx.addIssue({
367
+ code: z.ZodIssueCode.custom,
368
+ message: "Wrangler currently supports one Images binding per Worker"
369
+ });
370
+ }),
371
+ media: z.record(z.string(), mediaBindingSchema).optional().superRefine((bindings, ctx) => {
372
+ if (!bindings || Object.keys(bindings).length <= 1) return;
373
+ ctx.addIssue({
374
+ code: z.ZodIssueCode.custom,
375
+ message: "Wrangler currently supports one Media Transformations binding per Worker"
376
+ });
377
+ }),
378
+ artifacts: z.record(z.string(), artifactsBindingSchema).optional(),
379
+ stream: z.record(z.string(), streamBindingSchema).optional().superRefine((bindings, ctx) => {
380
+ if (!bindings || Object.keys(bindings).length <= 1) return;
381
+ ctx.addIssue({
382
+ code: z.ZodIssueCode.custom,
383
+ message: "Wrangler currently supports one Stream binding per Worker"
384
+ });
385
+ }),
386
+ vpcServices: z.record(z.string(), vpcServiceBindingSchema).optional(),
387
+ vpcNetworks: z.record(z.string(), vpcNetworkBindingSchema).optional(),
388
+ flagship: z.record(z.string(), flagshipBindingSchema).optional()
389
+ }).optional();
390
+ //#endregion
391
+ //#region src/config/schema-normalization.ts
392
+ /**
393
+ * Return the single browser binding name, or `undefined` when no browser
394
+ * binding is configured.
395
+ *
396
+ * invariant: `bindings` is expected to have been validated by
397
+ * `browserBindingSchema` (see `schema-bindings.ts`), which rejects
398
+ * configurations with more than one browser binding via
399
+ * `superRefine` + `formatBrowserBindingLimitMessage`. Callers that bypass
400
+ * Zod (e.g. by casting raw input as `DevflareConfig`) should re-validate
401
+ * via `browserBindingSchema.parse()` before relying on this selector.
402
+ */
403
+ function getSingleBrowserBindingName(bindings) {
404
+ const bindingNames = getBrowserBindingNames(bindings);
405
+ if (bindingNames.length === 0) return;
406
+ return bindingNames[0];
407
+ }
408
+ /**
409
+ * Normalize a DO binding to its object form.
410
+ */
411
+ function normalizeDOBinding(config) {
412
+ if (typeof config === "string") return {
413
+ className: config,
414
+ kind: "local"
415
+ };
416
+ const scriptName = config.scriptName;
417
+ const __ref = config.__ref;
418
+ const kind = scriptName || __ref ? "cross-worker" : "local";
419
+ return {
420
+ className: config.className,
421
+ scriptName,
422
+ __ref,
423
+ kind
424
+ };
425
+ }
426
+ /**
427
+ * Normalize a D1 binding to a consistent object form.
428
+ * String bindings are treated as stable database names.
429
+ */
430
+ function normalizeD1Binding(config) {
431
+ if (typeof config === "string") return { name: config };
432
+ const extras = {
433
+ ...config.previewDatabaseId !== void 0 && { previewDatabaseId: config.previewDatabaseId },
434
+ ...config.migrationsTable !== void 0 && { migrationsTable: config.migrationsTable },
435
+ ...config.migrationsDir !== void 0 && { migrationsDir: config.migrationsDir },
436
+ ...config.remote !== void 0 && { remote: config.remote }
437
+ };
438
+ if ("id" in config) return {
439
+ databaseId: config.id,
440
+ ...extras
441
+ };
442
+ return {
443
+ name: config.name,
444
+ ...extras
445
+ };
446
+ }
447
+ /**
448
+ * Normalize a KV binding to a consistent object form.
449
+ * String bindings are treated as stable namespace names.
450
+ */
451
+ function normalizeKVBinding(config) {
452
+ if (typeof config === "string") return { name: config };
453
+ const extras = {
454
+ ...config.previewId !== void 0 && { previewId: config.previewId },
455
+ ...config.remote !== void 0 && { remote: config.remote }
456
+ };
457
+ if ("id" in config) return {
458
+ namespaceId: config.id,
459
+ ...extras
460
+ };
461
+ return {
462
+ name: config.name,
463
+ ...extras
464
+ };
465
+ }
466
+ /**
467
+ * Normalize an R2 binding to a consistent object form.
468
+ * String bindings are treated as bucket names.
469
+ */
470
+ function normalizeR2Binding(config) {
471
+ if (typeof config === "string") return { bucketName: config };
472
+ return {
473
+ bucketName: config.bucketName,
474
+ ...config.previewBucketName !== void 0 && { previewBucketName: config.previewBucketName },
475
+ ...config.jurisdiction !== void 0 && { jurisdiction: config.jurisdiction },
476
+ ...config.remote !== void 0 && { remote: config.remote }
477
+ };
478
+ }
479
+ /**
480
+ * Normalize a queue producer binding to a consistent object form.
481
+ * String bindings are treated as queue names.
482
+ */
483
+ function normalizeQueueProducer(config) {
484
+ if (typeof config === "string") return { queue: config };
485
+ return {
486
+ queue: config.queue,
487
+ ...config.remote !== void 0 && { remote: config.remote }
488
+ };
489
+ }
490
+ /**
491
+ * Normalize a Hyperdrive binding to a consistent object form.
492
+ * String bindings are treated as stable Hyperdrive configuration names.
493
+ */
494
+ function normalizeHyperdriveBinding(config) {
495
+ if (typeof config === "string") return { name: config };
496
+ const localConnectionString = "localConnectionString" in config ? config.localConnectionString : "previewLocalConnectionString" in config ? config.previewLocalConnectionString : void 0;
497
+ if ("id" in config) return {
498
+ configurationId: config.id,
499
+ ...localConnectionString && { localConnectionString }
500
+ };
501
+ return {
502
+ name: config.name,
503
+ ...localConnectionString && { localConnectionString }
504
+ };
505
+ }
506
+ /**
507
+ * Normalize an mTLS certificate binding to Devflare's camelCase shape.
508
+ */
509
+ function normalizeMtlsCertificateBinding(config) {
510
+ if (typeof config === "string") return { certificateId: config };
511
+ if ("certificateId" in config) return {
512
+ certificateId: config.certificateId,
513
+ ...config.remote !== void 0 && { remote: config.remote }
514
+ };
515
+ return {
516
+ certificateId: config.certificate_id,
517
+ ...config.remote !== void 0 && { remote: config.remote }
518
+ };
519
+ }
520
+ /**
521
+ * Normalize a Dispatch Namespace binding to its object form.
522
+ */
523
+ function normalizeDispatchNamespaceBinding(config) {
524
+ if (typeof config === "string") return { namespace: config };
525
+ return {
526
+ namespace: config.namespace,
527
+ ...config.outbound && { outbound: {
528
+ service: config.outbound.service,
529
+ ...config.outbound.environment && { environment: config.outbound.environment },
530
+ ...config.outbound.parameters && { parameters: config.outbound.parameters }
531
+ } },
532
+ ...config.remote !== void 0 && { remote: config.remote }
533
+ };
534
+ }
535
+ /**
536
+ * Normalize a Workflow binding to its object form.
537
+ */
538
+ function normalizeWorkflowBinding(config) {
539
+ return {
540
+ name: config.name,
541
+ className: config.className,
542
+ ...config.scriptName && { scriptName: config.scriptName },
543
+ ...config.remote !== void 0 && { remote: config.remote },
544
+ ...config.limits && { limits: { steps: config.limits.steps } }
545
+ };
546
+ }
547
+ /**
548
+ * Normalize a Pipeline binding to its object form.
549
+ */
550
+ function normalizePipelineBinding(config) {
551
+ if (typeof config === "string") return { pipeline: config };
552
+ return {
553
+ pipeline: config.pipeline,
554
+ ...config.remote !== void 0 && { remote: config.remote }
555
+ };
556
+ }
557
+ /**
558
+ * Normalize an Images binding to Wrangler's singleton binding object.
559
+ */
560
+ function normalizeImagesBinding(binding, config) {
561
+ if (config === true) return { binding };
562
+ return {
563
+ binding,
564
+ ...config.remote !== void 0 && { remote: config.remote }
565
+ };
566
+ }
567
+ /**
568
+ * Normalize a Media Transformations binding to Wrangler's singleton binding object.
569
+ */
570
+ function normalizeMediaBinding(binding, config) {
571
+ if (config === true) return { binding };
572
+ return {
573
+ binding,
574
+ ...config.remote !== void 0 && { remote: config.remote }
575
+ };
576
+ }
577
+ /**
578
+ * Normalize an Artifacts binding to its object form.
579
+ */
580
+ function normalizeArtifactsBinding(config) {
581
+ if (typeof config === "string") return { namespace: config };
582
+ return {
583
+ namespace: config.namespace,
584
+ ...config.remote !== void 0 && { remote: config.remote }
585
+ };
586
+ }
587
+ /**
588
+ * Normalize a Stream binding to Wrangler's singleton binding object.
589
+ */
590
+ function normalizeStreamBinding(binding, config) {
591
+ if (config === true) return { binding };
592
+ return {
593
+ binding,
594
+ ...config.remote !== void 0 && { remote: config.remote }
595
+ };
596
+ }
597
+ /**
598
+ * Normalize a VPC service binding to its object form.
599
+ */
600
+ function normalizeVpcServiceBinding(config) {
601
+ return {
602
+ serviceId: config.serviceId,
603
+ ...config.remote !== void 0 && { remote: config.remote }
604
+ };
605
+ }
606
+ /**
607
+ * Normalize a VPC network binding to its object form. Exactly one of
608
+ * `tunnelId`/`networkId` is set, mirroring the wrangler `anyOf` schema.
609
+ */
610
+ function normalizeVpcNetworkBinding(config) {
611
+ if ("tunnelId" in config) return {
612
+ tunnelId: config.tunnelId,
613
+ ...config.remote !== void 0 && { remote: config.remote }
614
+ };
615
+ return {
616
+ networkId: config.networkId,
617
+ ...config.remote !== void 0 && { remote: config.remote }
618
+ };
619
+ }
620
+ /**
621
+ * Normalize a Flagship binding to its object form.
622
+ */
623
+ function normalizeFlagshipBinding(config) {
624
+ return {
625
+ appId: config.appId,
626
+ ...config.remote !== void 0 && { remote: config.remote }
627
+ };
628
+ }
629
+ /**
630
+ * Normalize a Secrets Store binding to its explicit store/name form.
631
+ */
632
+ function normalizeSecretsStoreBinding(config, defaultStoreId, bindingName = "unknown") {
633
+ if (typeof config === "string") {
634
+ if (!defaultStoreId) throw new Error(`Secrets Store binding "${bindingName}" uses shorthand and requires top-level secretsStoreId.`);
635
+ return {
636
+ storeId: defaultStoreId,
637
+ secretName: config
638
+ };
639
+ }
640
+ return {
641
+ storeId: config.storeId,
642
+ secretName: config.secretName
643
+ };
644
+ }
645
+ /**
646
+ * Get the identifier Devflare should use for local/runtime KV wiring.
647
+ */
648
+ function getLocalKVNamespaceIdentifier(config) {
649
+ const normalized = normalizeKVBinding(config);
650
+ return normalized.namespaceId ?? normalized.name ?? "";
651
+ }
652
+ /**
653
+ * Get the identifier Devflare should use for local/runtime D1 wiring.
654
+ */
655
+ function getLocalD1DatabaseIdentifier(config) {
656
+ const normalized = normalizeD1Binding(config);
657
+ return normalized.databaseId ?? normalized.name ?? "";
658
+ }
659
+ //#endregion
660
+ export { browserBindingSchema as C, bindingsSchema as S, normalizeSecretsStoreBinding as _, normalizeD1Binding as a, normalizeVpcServiceBinding as b, normalizeFlagshipBinding as c, normalizeKVBinding as d, normalizeMediaBinding as f, normalizeR2Binding as g, normalizeQueueProducer as h, normalizeArtifactsBinding as i, normalizeHyperdriveBinding as l, normalizePipelineBinding as m, getLocalKVNamespaceIdentifier as n, normalizeDOBinding as o, normalizeMtlsCertificateBinding as p, getSingleBrowserBindingName as r, normalizeDispatchNamespaceBinding as s, getLocalD1DatabaseIdentifier as t, normalizeImagesBinding as u, normalizeStreamBinding as v, normalizeWorkflowBinding as x, normalizeVpcNetworkBinding as y };