void 0.10.13 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/AGENTS_TEMPLATE.md +6 -0
  2. package/{skills/void/docs/node_modules/void/node_modules/pglite-server/LICENSE.md → LICENSE} +1 -1
  3. package/README.md +34 -8
  4. package/dist/{auth-qgMlYp7Z.d.mts → auth-DkcFflXV.d.mts} +10 -11
  5. package/dist/auth-W9WII-mN.mjs +630 -0
  6. package/dist/{auth-cmd-BqsdZJp5.mjs → auth-cmd-CYVhSNFy.mjs} +4 -3
  7. package/dist/{auth-migrations-BTZ-ATvQ.mjs → auth-migrations-9vif1uj8.mjs} +53 -12
  8. package/dist/{better-auth-shared-BQooDxbw.mjs → better-auth-shared-CYw1T3k4.mjs} +7 -10
  9. package/dist/{better-auth-shared-DealXecJ.d.mts → better-auth-shared-DSCeohOK.d.mts} +10 -5
  10. package/dist/{build-cmd-Bujrv5q-.mjs → build-cmd-CkVD1uOh.mjs} +6 -4
  11. package/dist/{cache-C11V8Fxq.mjs → cache-QcUfR-ff.mjs} +9 -5
  12. package/dist/{cancel-deploy-fwFYF04b.mjs → cancel-deploy-DsvWKFTe.mjs} +3 -2
  13. package/dist/cf-access-AJ1ehiFR.mjs +42 -0
  14. package/dist/cf-access-DsSsZUPr.mjs +67 -0
  15. package/dist/cli/cli.d.mts +1 -1
  16. package/dist/cli/cli.mjs +1592 -153
  17. package/dist/cli/env-schema-probe.d.mts +48 -61
  18. package/dist/cli/env-schema-probe.mjs +10 -58
  19. package/dist/{client-Gb71-XkG.mjs → client-CyCHWSO_.mjs} +61 -463
  20. package/dist/cloudflare-auth-DRkGe7-s.mjs +170 -0
  21. package/dist/cloudflare-cmd-D3ME2GAe.mjs +62 -0
  22. package/dist/cloudflare-connect-BivMefMA.mjs +56 -0
  23. package/dist/cloudflare-operations-CPTpRW6d.mjs +566 -0
  24. package/dist/{config-qHGgPuWT.mjs → config-BQFq7QvD.mjs} +75 -41
  25. package/dist/{config-CutEMNGJ.mjs → config-NOG_U1aK.mjs} +10 -15
  26. package/dist/connect-D9Yr-T5f.mjs +79 -0
  27. package/dist/{create-project-DsYvl3TB.mjs → create-project-DMV-csEm.mjs} +26 -16
  28. package/dist/database-provider.d.mts +21 -0
  29. package/dist/database-provider.mjs +6 -0
  30. package/dist/{db-C0i0sYMS.mjs → db-BxoUWL0F.mjs} +600 -115
  31. package/dist/{delete-mh6p-zkQ.mjs → delete-iJOqxBz1.mjs} +9 -6
  32. package/dist/{deploy-jBJT1fUT.mjs → deploy-CcDoeBIf.mjs} +3249 -1990
  33. package/dist/dev-inbox-DkgRWLkW.mjs +307 -0
  34. package/dist/{discover-CJHyvYfR.mjs → discover-xvfrgJeo.mjs} +3 -3
  35. package/dist/{magic-string.es-ZQjdJFFn.mjs → dist-BR1quN_w.mjs} +570 -216
  36. package/dist/{dist-DaKKDf8D.mjs → dist-BrsS7cai.mjs} +17 -2
  37. package/dist/{dist-BuiRJkTd.mjs → dist-m40_XgNh.mjs} +48 -33
  38. package/dist/{domain-DiaNQbrl.mjs → domain-gu_iaHmn.mjs} +41 -4
  39. package/dist/dotenv-VQxupEUv.mjs +181 -0
  40. package/dist/edge.d.mts +2 -0
  41. package/dist/edge.mjs +2 -0
  42. package/dist/email-Ce6SQq-i.mjs +182 -0
  43. package/dist/email-r6DHJyAB.mjs +262 -0
  44. package/dist/{entry-D7yy4xVH.mjs → entry-DU3oDoQ3.mjs} +2 -2
  45. package/dist/env-D4Emu-M_.mjs +95 -0
  46. package/dist/env-DmU2To0C.mjs +73 -0
  47. package/dist/env-helpers-CyKtOBpj.d.mts +22 -0
  48. package/dist/env-public-D_6u46fX.d.mts +135 -0
  49. package/dist/{env-types-QBj-ndax.mjs → env-types-BNPhro-M.mjs} +2 -2
  50. package/dist/{env-validation-Dea3v3ej.mjs → env-validation-ENpMy6Ez.mjs} +68 -122
  51. package/dist/{gen-BzXf3Jh2.mjs → gen-BKw6qHIg.mjs} +70 -15
  52. package/dist/{github-cmd-DKcGUNsj.mjs → github-cmd-DJS5Ab-H.mjs} +39 -31
  53. package/dist/{handler-Cjh8uM3Y.d.mts → handler-D1hLsObx.d.mts} +124 -122
  54. package/dist/{head-nmvOgFjd.d.mts → head-Do8P4puT.d.mts} +9 -8
  55. package/dist/{headers-ChAADPQu.mjs → headers-D8QfRX9Y.mjs} +12 -10
  56. package/dist/inbound-BJ70in1n.d.mts +354 -0
  57. package/dist/inbound-CNKxb3FY.mjs +694 -0
  58. package/dist/index.d.mts +61 -34
  59. package/dist/index.mjs +1010 -293
  60. package/dist/{init-7JCAcKNQ.mjs → init-Dx5cgKqK.mjs} +329 -271
  61. package/dist/link-D_rm5sRH.mjs +52 -0
  62. package/dist/{list-CPwFDZ_c.mjs → list-M8XShti7.mjs} +37 -5
  63. package/dist/{runner-kapo9aPs.mjs → local-d1-BE8KBbMy.mjs} +116 -6
  64. package/dist/{login-BT3H8PN3.mjs → login-C8-UuLnp.mjs} +17 -15
  65. package/dist/{logs-Bt313ax7.mjs → logs-DwFU7dMW.mjs} +16 -2
  66. package/dist/mime-BJD7d_qL.mjs +1216 -0
  67. package/dist/neon-DHwd2zvC.mjs +54 -0
  68. package/dist/{node-pRg81HqV.mjs → node-BkaXcpAc.mjs} +29 -8
  69. package/dist/operator-cmd-DYWRbWUA.mjs +348 -0
  70. package/dist/{agents-CtgBYqld.mjs → output-tFQLLj26.mjs} +676 -211
  71. package/dist/{package-json-Cx1osYo6.mjs → package-json-CPoWX79C.mjs} +1 -1
  72. package/dist/pages/client.d.mts +43 -41
  73. package/dist/pages/client.mjs +40 -33
  74. package/dist/pages/head-client.d.mts +10 -12
  75. package/dist/pages/head.d.mts +1 -1
  76. package/dist/pages/index.d.mts +37 -14
  77. package/dist/pages/index.mjs +5 -5
  78. package/dist/pages/islands-plugin.d.mts +25 -27
  79. package/dist/pages/islands-plugin.mjs +6 -4
  80. package/dist/pages/prefetch.d.mts +6 -7
  81. package/dist/pages/protocol.d.mts +2 -2
  82. package/dist/pages/protocol.mjs +2 -1
  83. package/dist/pages/serialize.d.mts +7 -8
  84. package/dist/platform-cmd-BEOVv1PN.mjs +123 -0
  85. package/dist/platform-domain-BszUfiS8.mjs +228 -0
  86. package/dist/platform-lifecycle-CjSr6xf0.mjs +4450 -0
  87. package/dist/platform-management-W30iCaTL.mjs +698 -0
  88. package/dist/platform-recovery-pHHv4ZSg.mjs +99 -0
  89. package/dist/{plugin-inference-DMeavIJ6.mjs → plugin-inference-BDRfZngg.mjs} +35 -19
  90. package/dist/prepare-BfJvFUtJ.mjs +14 -0
  91. package/dist/{prepare-BvvgAz-3.mjs → prepare-CBetXvsN.mjs} +15 -24
  92. package/dist/{preset-BjyR3lzz.mjs → preset-lAy0B0BQ.mjs} +25 -212
  93. package/dist/{project-cmd-D_w-4w5B.mjs → project-cmd-DCpk1cDt.mjs} +25 -12
  94. package/dist/{project-paths-BQd7OmIo.mjs → project-paths-SK8nMHPp.mjs} +3 -1
  95. package/dist/{project-tsconfig-B-QtXjLQ.mjs → project-tsconfig-Ql2XsSQp.mjs} +2 -2
  96. package/dist/{protocol-Bnb0LFp3.d.mts → protocol-C-pqYJjE.d.mts} +3 -4
  97. package/dist/{provision-CPx2ZxsH.mjs → provision-Blnstcm2.mjs} +78 -45
  98. package/dist/r2-conditions-D1Wk8i7b.mjs +30 -0
  99. package/dist/{requests-B8sZxaFM.mjs → requests-Dn8Vheh1.mjs} +5 -3
  100. package/dist/{resolve-project-BBMtLLV9.mjs → resolve-project--Vxawf7z.mjs} +2 -2
  101. package/dist/rollback-CtlPXEBi.mjs +166 -0
  102. package/dist/{rolldown-runtime-DJK8HYOj.mjs → rolldown-runtime-rQ84J-ij.mjs} +1 -1
  103. package/dist/{route-types-z1jtHEi_.mjs → route-types-Da-DpyUp.mjs} +77 -25
  104. package/dist/routes-stub.d.mts +22 -23
  105. package/dist/runner-mysql-CgRFl3s6.mjs +61 -0
  106. package/dist/{runner-pg-CHM76xuC.mjs → runner-pg-DCkWPsWS.mjs} +18 -6
  107. package/dist/runtime/ai.d.mts +21 -14
  108. package/dist/runtime/ai.mjs +5 -4
  109. package/dist/runtime/auth-client-react.d.mts +3 -5
  110. package/dist/runtime/auth-client-solid.d.mts +3 -5
  111. package/dist/runtime/auth-client-svelte.d.mts +3 -5
  112. package/dist/runtime/auth-client-vue.d.mts +3 -5
  113. package/dist/runtime/auth-client.d.mts +3 -5
  114. package/dist/runtime/auth.d.mts +1 -1
  115. package/dist/runtime/better-auth-mysql.d.mts +10 -0
  116. package/dist/runtime/better-auth-mysql.mjs +49 -0
  117. package/dist/runtime/better-auth-pg.d.mts +8 -9
  118. package/dist/runtime/better-auth-pg.mjs +2 -2
  119. package/dist/runtime/better-auth.d.mts +8 -9
  120. package/dist/runtime/better-auth.mjs +2 -2
  121. package/dist/runtime/client-react.d.mts +1 -1
  122. package/dist/runtime/client-solid.d.mts +1 -1
  123. package/dist/runtime/client-svelte.d.mts +1 -1
  124. package/dist/runtime/client-vue.d.mts +1 -1
  125. package/dist/runtime/client.d.mts +1 -1
  126. package/dist/runtime/db-mysql.d.mts +2 -0
  127. package/dist/runtime/db-mysql.mjs +1 -0
  128. package/dist/runtime/db.d.mts +10 -11
  129. package/dist/runtime/durable.d.mts +47 -0
  130. package/dist/runtime/durable.mjs +146 -0
  131. package/dist/runtime/email/testing.d.mts +112 -0
  132. package/dist/runtime/email/testing.mjs +283 -0
  133. package/dist/runtime/email.d.mts +30 -0
  134. package/dist/runtime/email.mjs +573 -0
  135. package/dist/runtime/env-helpers.d.mts +2 -2
  136. package/dist/runtime/env-helpers.mjs +5 -42
  137. package/dist/runtime/env-public-client.d.mts +10 -11
  138. package/dist/runtime/env-public-client.mjs +1 -1
  139. package/dist/runtime/env-public.d.mts +2 -2
  140. package/dist/runtime/env-public.mjs +104 -49
  141. package/dist/runtime/env.d.mts +19 -18
  142. package/dist/runtime/env.mjs +15 -2
  143. package/dist/runtime/fetch-stream.d.mts +20 -21
  144. package/dist/runtime/fetch.d.mts +15 -16
  145. package/dist/runtime/handler.d.mts +1 -1
  146. package/dist/runtime/isr.d.mts +21 -22
  147. package/dist/runtime/isr.mjs +26 -8
  148. package/dist/runtime/kv.d.mts +9 -10
  149. package/dist/runtime/live-client.d.mts +5 -7
  150. package/dist/runtime/live-client.mjs +9 -7
  151. package/dist/runtime/live-server.d.mts +4 -5
  152. package/dist/runtime/live.d.mts +22 -24
  153. package/dist/runtime/live.mjs +1 -1
  154. package/dist/runtime/log.d.mts +16 -17
  155. package/dist/runtime/migration-handler-mysql.d.mts +4 -0
  156. package/dist/runtime/migration-handler-mysql.mjs +81 -0
  157. package/dist/runtime/migration-handler-pg.d.mts +2 -4
  158. package/dist/runtime/migration-handler.d.mts +5 -6
  159. package/dist/runtime/migration-handler.mjs +4 -3
  160. package/dist/runtime/queues.d.mts +3 -4
  161. package/dist/runtime/queues.mjs +2 -1
  162. package/dist/runtime/remote/binding-handler.d.mts +10 -12
  163. package/dist/runtime/remote/binding-handler.mjs +24 -3
  164. package/dist/runtime/remote/index.d.mts +5 -6
  165. package/dist/runtime/remote/index.mjs +21 -18
  166. package/dist/runtime/response.d.mts +10 -11
  167. package/dist/runtime/sandbox.d.mts +56 -55
  168. package/dist/runtime/sandbox.mjs +57 -49
  169. package/dist/runtime/schema-mysql.d.mts +1 -0
  170. package/dist/runtime/schema-mysql.mjs +2 -0
  171. package/dist/runtime/seed.d.mts +14 -9
  172. package/dist/runtime/sse-client.d.mts +6 -7
  173. package/dist/runtime/sse.d.mts +11 -12
  174. package/dist/runtime/storage.d.mts +3 -4
  175. package/dist/runtime/validator.d.mts +1 -1
  176. package/dist/runtime/ws-server.d.mts +12 -12
  177. package/dist/runtime/ws-server.mjs +32 -4
  178. package/dist/runtime/ws.d.mts +19 -21
  179. package/dist/{scan-ChWt4pX1.mjs → scan-BMH4rzlv.mjs} +42 -19
  180. package/dist/{scan-NU4xKGci.mjs → scan-CpK-57ug.mjs} +5 -4
  181. package/dist/{secret-Dt32J6RI.mjs → secret-BqTxGqki.mjs} +62 -5
  182. package/dist/{skills-CLjN0uUO.mjs → skills-Q46GZMO-.mjs} +6 -4
  183. package/dist/{standard-schema-DJ0HW7QP.d.mts → standard-schema-Fo_vCAZh.d.mts} +6 -6
  184. package/dist/{subcommand-prompt-BzV8iQZo.mjs → subcommand-prompt-WfySCQ7S.mjs} +67 -48
  185. package/dist/sveltekit.d.mts +12 -11
  186. package/dist/sveltekit.mjs +1 -1
  187. package/dist/types-BAp5AEBU.d.mts +79 -0
  188. package/dist/types-CKWnYgfy.d.mts +1 -0
  189. package/dist/{validate-Cw_RLeTj.mjs → validate-Bihr8WBi.mjs} +3 -3
  190. package/dist/wrangler--imS8n0d.mjs +1796 -0
  191. package/dist/{yarn-pnp-DJn3SAHF.mjs → yarn-pnp-DxSInkzL.mjs} +1 -1
  192. package/package.json +79 -65
  193. package/schema.json +22 -3
  194. package/skills/void/SKILL.md +59 -2
  195. package/skills/void/docs/guide/ai.md +32 -14
  196. package/skills/void/docs/guide/app-types.md +6 -6
  197. package/skills/void/docs/guide/auth.md +14 -16
  198. package/skills/void/docs/guide/database/d1.md +6 -0
  199. package/skills/void/docs/guide/database/mysql.md +60 -0
  200. package/skills/void/docs/guide/database/postgresql.md +14 -9
  201. package/skills/void/docs/guide/database.md +39 -26
  202. package/skills/void/docs/guide/deployment.md +99 -25
  203. package/skills/void/docs/guide/durable-state.md +140 -0
  204. package/skills/void/docs/guide/edge/headers.md +5 -5
  205. package/skills/void/docs/guide/edge/prerendering.md +2 -0
  206. package/skills/void/docs/guide/edge/revalidation.md +21 -6
  207. package/skills/void/docs/guide/edge/rewrites.md +18 -14
  208. package/skills/void/docs/guide/edge/static-assets.md +12 -10
  209. package/skills/void/docs/guide/email.md +609 -0
  210. package/skills/void/docs/guide/env-migration.md +109 -0
  211. package/skills/void/docs/guide/env-vars.md +70 -248
  212. package/skills/void/docs/guide/index.md +15 -17
  213. package/skills/void/docs/guide/jobs.md +8 -5
  214. package/skills/void/docs/guide/live.md +7 -15
  215. package/skills/void/docs/guide/pages-routing/actions-and-forms.md +8 -4
  216. package/skills/void/docs/guide/pages-routing/islands.md +3 -3
  217. package/skills/void/docs/guide/pages-routing/loaders.md +6 -4
  218. package/skills/void/docs/guide/pages-routing/overview.md +7 -7
  219. package/skills/void/docs/guide/platform-administration.md +212 -0
  220. package/skills/void/docs/guide/platform-development.md +235 -0
  221. package/skills/void/docs/guide/queues.md +10 -10
  222. package/skills/void/docs/guide/quickstart.md +46 -67
  223. package/skills/void/docs/guide/remote-dev.md +8 -6
  224. package/skills/void/docs/guide/sandboxes.md +33 -16
  225. package/skills/void/docs/guide/self-hosted-platform.md +553 -0
  226. package/skills/void/docs/guide/server-routing.md +5 -5
  227. package/skills/void/docs/guide/sse.md +4 -4
  228. package/skills/void/docs/guide/ssg.md +5 -3
  229. package/skills/void/docs/guide/storage.md +2 -2
  230. package/skills/void/docs/guide/websockets.md +15 -7
  231. package/skills/void/docs/index.md +3 -3
  232. package/skills/void/docs/integrations/agents.md +6 -64
  233. package/skills/void/docs/integrations/cloudflare.md +165 -146
  234. package/skills/void/docs/integrations/frameworks/analog.md +4 -4
  235. package/skills/void/docs/integrations/frameworks/astro.md +5 -5
  236. package/skills/void/docs/integrations/frameworks/nuxt.md +5 -5
  237. package/skills/void/docs/integrations/frameworks/overview.md +3 -3
  238. package/skills/void/docs/integrations/frameworks/react-router.md +3 -3
  239. package/skills/void/docs/integrations/frameworks/sveltekit.md +3 -3
  240. package/skills/void/docs/integrations/frameworks/tanstack-start.md +2 -2
  241. package/skills/void/docs/integrations/nodejs-bun-deno.md +11 -4
  242. package/skills/void/docs/reference/api.md +42 -6
  243. package/skills/void/docs/reference/cli.md +614 -160
  244. package/skills/void/docs/reference/config.md +67 -27
  245. package/skills/void/docs/reference/resource-inference.md +13 -9
  246. package/skills/void/docs/reference/structure.md +9 -11
  247. package/AGENT_PROMPT.md +0 -19
  248. package/dist/cf-access-Bqw81xAf.mjs +0 -22
  249. package/dist/env-CZy5MorI.mjs +0 -299
  250. package/dist/env-helpers-z4stu8uc.d.mts +0 -52
  251. package/dist/env-mask-Dd47NbR6.mjs +0 -90
  252. package/dist/env-public-BfiLcMBk.d.mts +0 -140
  253. package/dist/link-CdGHSIy-.mjs +0 -45
  254. package/dist/mcp-DoM3_nhd.mjs +0 -377
  255. package/dist/project-paths-GpziKeQQ.d.mts +0 -25
  256. package/dist/providers-BNKRacMr.d.mts +0 -7
  257. package/dist/proxy-D-3_D-Gl.mjs +0 -5
  258. package/dist/rollback-CkvTFXx5.mjs +0 -90
  259. package/dist/runtime/isr-cache.d.mts +0 -207
  260. package/dist/runtime/isr-cache.mjs +0 -523
  261. package/dist/types-lLjNE9Qp.d.mts +0 -51
  262. package/getting-started-prompt.txt +0 -28
  263. package/skills/void/command/void.md +0 -7
  264. package/skills/void/docs/integrations/auth-providers.md +0 -0
  265. package/skills/void/docs/integrations/payment-processors.md +0 -0
  266. package/skills/void/docs/node_modules/@iconify/vue/README.md +0 -408
  267. package/skills/void/docs/node_modules/@iconify/vue/offline/readme.md +0 -5
  268. package/skills/void/docs/node_modules/@voidzero-dev/vitepress-theme/README.md +0 -103
  269. package/skills/void/docs/node_modules/oxc-minify/README.md +0 -78
  270. package/skills/void/docs/node_modules/reka-ui/README.md +0 -80
  271. package/skills/void/docs/node_modules/vitepress/README.md +0 -28
  272. package/skills/void/docs/node_modules/vitepress/template/api-examples.md +0 -49
  273. package/skills/void/docs/node_modules/vitepress/template/index.md +0 -28
  274. package/skills/void/docs/node_modules/vitepress/template/markdown-examples.md +0 -85
  275. package/skills/void/docs/node_modules/vitepress-plugin-group-icons/README.md +0 -101
  276. package/skills/void/docs/node_modules/void/AGENT_PROMPT.md +0 -19
  277. package/skills/void/docs/node_modules/void/CLAUDE.md +0 -221
  278. package/skills/void/docs/node_modules/void/README.md +0 -90
  279. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/CHANGELOG.md +0 -685
  280. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/README.md +0 -396
  281. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/sandbox/README.md +0 -219
  282. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/vite-plugin/README.md +0 -37
  283. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/workers-types/README.md +0 -135
  284. package/skills/void/docs/node_modules/void/node_modules/@electric-sql/pglite/README.md +0 -189
  285. package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/CHANGELOG.md +0 -143
  286. package/skills/void/docs/node_modules/void/node_modules/@hono/oauth-providers/README.md +0 -1272
  287. package/skills/void/docs/node_modules/void/node_modules/@napi-rs/keyring/README.md +0 -19
  288. package/skills/void/docs/node_modules/void/node_modules/@types/better-sqlite3/README.md +0 -15
  289. package/skills/void/docs/node_modules/void/node_modules/@types/node/README.md +0 -15
  290. package/skills/void/docs/node_modules/void/node_modules/@types/pg/README.md +0 -15
  291. package/skills/void/docs/node_modules/void/node_modules/@types/proper-lockfile/README.md +0 -51
  292. package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/README.md +0 -22
  293. package/skills/void/docs/node_modules/void/node_modules/@typescript/native-preview/vendor/vscode-jsonrpc/README.md +0 -69
  294. package/skills/void/docs/node_modules/void/node_modules/@void/md/README.md +0 -153
  295. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/engine-javascript/README.md +0 -9
  296. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@shikijs/transformers/README.md +0 -9
  297. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@types/node/README.md +0 -15
  298. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/CHANGELOG.md +0 -24
  299. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/gray-matter/README.md +0 -565
  300. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-exit/README.md +0 -127
  301. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-anchor/README.md +0 -600
  302. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-attrs/README.md +0 -386
  303. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-container/README.md +0 -95
  304. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-emoji/README.md +0 -101
  305. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-footnote/README.md +0 -135
  306. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/pathslash/README.md +0 -64
  307. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/shiki/README.md +0 -15
  308. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/tinyglobby/README.md +0 -25
  309. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/AGENTS.md +0 -16
  310. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/README.md +0 -220
  311. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/build.md +0 -21
  312. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/check.md +0 -35
  313. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/create.md +0 -70
  314. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/fmt.md +0 -20
  315. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/index.md +0 -35
  316. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/lint.md +0 -26
  317. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/pack.md +0 -17
  318. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/run.md +0 -364
  319. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/staged.md +0 -15
  320. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/test.md +0 -18
  321. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
  322. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/build.md +0 -40
  323. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/cache.md +0 -107
  324. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/check.md +0 -60
  325. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ci.md +0 -62
  326. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
  327. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/create.md +0 -341
  328. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/dev.md +0 -24
  329. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/docker.md +0 -175
  330. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/env.md +0 -167
  331. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/fmt.md +0 -41
  332. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
  333. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
  334. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/implode.md +0 -23
  335. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/index.md +0 -134
  336. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/install.md +0 -199
  337. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/lint.md +0 -50
  338. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
  339. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate.md +0 -197
  340. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
  341. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/pack.md +0 -69
  342. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/run.md +0 -356
  343. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/test.md +0 -35
  344. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
  345. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
  346. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/vpx.md +0 -66
  347. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/why.md +0 -39
  348. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/index.md +0 -12
  349. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/team.md +0 -35
  350. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/generator/README.md +0 -35
  351. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/templates/monorepo/README.md +0 -29
  352. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vue/README.md +0 -58
  353. package/skills/void/docs/node_modules/void/node_modules/arktype/README.md +0 -165
  354. package/skills/void/docs/node_modules/void/node_modules/better-auth/LICENSE.md +0 -20
  355. package/skills/void/docs/node_modules/void/node_modules/better-auth/README.md +0 -32
  356. package/skills/void/docs/node_modules/void/node_modules/better-sqlite3/README.md +0 -99
  357. package/skills/void/docs/node_modules/void/node_modules/blake3-jit/README.md +0 -108
  358. package/skills/void/docs/node_modules/void/node_modules/drizzle-arktype/README.md +0 -51
  359. package/skills/void/docs/node_modules/void/node_modules/drizzle-kit/README.md +0 -79
  360. package/skills/void/docs/node_modules/void/node_modules/drizzle-orm/README.md +0 -44
  361. package/skills/void/docs/node_modules/void/node_modules/drizzle-valibot/README.md +0 -51
  362. package/skills/void/docs/node_modules/void/node_modules/drizzle-zod/README.md +0 -65
  363. package/skills/void/docs/node_modules/void/node_modules/es-module-lexer/README.md +0 -403
  364. package/skills/void/docs/node_modules/void/node_modules/estree-walker/README.md +0 -48
  365. package/skills/void/docs/node_modules/void/node_modules/hono/README.md +0 -85
  366. package/skills/void/docs/node_modules/void/node_modules/ignore/README.md +0 -452
  367. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/CHANGELOG.md +0 -76
  368. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/LICENSE.md +0 -21
  369. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/README.md +0 -364
  370. package/skills/void/docs/node_modules/void/node_modules/jsonc-parser/SECURITY.md +0 -41
  371. package/skills/void/docs/node_modules/void/node_modules/magic-string/README.md +0 -325
  372. package/skills/void/docs/node_modules/void/node_modules/ofetch/README.md +0 -398
  373. package/skills/void/docs/node_modules/void/node_modules/pathslash/README.md +0 -64
  374. package/skills/void/docs/node_modules/void/node_modules/pg/README.md +0 -96
  375. package/skills/void/docs/node_modules/void/node_modules/pglite-server/README.md +0 -135
  376. package/skills/void/docs/node_modules/void/node_modules/picocolors/README.md +0 -21
  377. package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/CHANGELOG.md +0 -108
  378. package/skills/void/docs/node_modules/void/node_modules/proper-lockfile/README.md +0 -183
  379. package/skills/void/docs/node_modules/void/node_modules/tinyglobby/README.md +0 -25
  380. package/skills/void/docs/node_modules/void/node_modules/valibot/LICENSE.md +0 -9
  381. package/skills/void/docs/node_modules/void/node_modules/valibot/README.md +0 -94
  382. package/skills/void/docs/node_modules/void/node_modules/vite-plus/AGENTS.md +0 -16
  383. package/skills/void/docs/node_modules/void/node_modules/vite-plus/README.md +0 -220
  384. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/build.md +0 -21
  385. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/check.md +0 -35
  386. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/create.md +0 -70
  387. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/fmt.md +0 -20
  388. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/index.md +0 -35
  389. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/lint.md +0 -26
  390. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/pack.md +0 -17
  391. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/run.md +0 -364
  392. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/staged.md +0 -15
  393. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/test.md +0 -18
  394. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +0 -145
  395. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/build.md +0 -40
  396. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/cache.md +0 -107
  397. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/check.md +0 -60
  398. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ci.md +0 -62
  399. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/commit-hooks.md +0 -60
  400. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/create.md +0 -341
  401. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/dev.md +0 -24
  402. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/docker.md +0 -175
  403. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/env.md +0 -167
  404. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/fmt.md +0 -41
  405. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/github-actions-cache.md +0 -165
  406. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ide-integration.md +0 -101
  407. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/implode.md +0 -23
  408. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/index.md +0 -134
  409. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/install.md +0 -199
  410. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/lint.md +0 -50
  411. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate-rules.md +0 -347
  412. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate.md +0 -197
  413. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/monorepo.md +0 -176
  414. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/pack.md +0 -69
  415. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/run.md +0 -356
  416. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/test.md +0 -35
  417. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/troubleshooting.md +0 -108
  418. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/upgrade.md +0 -101
  419. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/vpx.md +0 -66
  420. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/why.md +0 -39
  421. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/index.md +0 -12
  422. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/team.md +0 -35
  423. package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/generator/README.md +0 -35
  424. package/skills/void/docs/node_modules/void/node_modules/vite-plus/templates/monorepo/README.md +0 -29
  425. package/skills/void/docs/node_modules/void/node_modules/wrangler/README.md +0 -63
  426. package/skills/void/docs/node_modules/void/node_modules/zod/README.md +0 -191
  427. package/skills/void/docs/node_modules/void/skills/migrate-vite-cloudflare-to-void/SKILL.md +0 -175
  428. package/skills/void/docs/node_modules/void/skills/void/SKILL.md +0 -76
  429. package/skills/void/docs/node_modules/void/skills/void/command/void.md +0 -7
  430. package/skills/void/docs/node_modules/void/test/e2e/README.md +0 -85
@@ -1,4 +1,4 @@
1
- import { t as cfAccessHeaders } from "../cf-access-Bqw81xAf.mjs";
1
+ import { t as cfAccessHeaders } from "../cf-access-AJ1ehiFR.mjs";
2
2
  import { a as getRawRuntimeEnv } from "../env-raw-Cx8ElDdj.mjs";
3
3
  //#region src/runtime/ai-types.ts
4
4
  /** Maps provider prefix to expected env var name for the API key */
@@ -283,9 +283,10 @@ function resolveBackend() {
283
283
  const token = runtimeEnv.__VOID_TOKEN;
284
284
  const projectId = runtimeEnv.__VOID_PROJECT_ID;
285
285
  if (typeof token === "string" && typeof projectId === "string") return makeHttpBackend(token, projectId, runtimeEnv);
286
- const directAi = runtimeEnv.AI;
286
+ const aiBindingName = typeof runtimeEnv.__VOID_AI_BINDING === "string" ? runtimeEnv.__VOID_AI_BINDING : "AI";
287
+ const directAi = runtimeEnv[aiBindingName];
287
288
  if (directAi) return makeDirectBackend(directAi, runtimeEnv, runtimeEnv.__VOID_AI_GATEWAY);
288
- throw new Error("ai: Not available. Run `void auth login` and `void project link` first, or bind Workers AI (env.AI) for self-hosted deploys.");
289
+ throw new Error(`ai: Not available. Run \`void auth login\` and \`void project link\` first, or bind Workers AI (env.${aiBindingName}) for self-hosted deploys.`);
289
290
  }
290
291
  function unsupported(method) {
291
292
  return () => {
@@ -381,7 +382,7 @@ function makeHttpBackend(token, projectId, runtimeEnv) {
381
382
  const headers = {
382
383
  "content-type": "application/json",
383
384
  authorization: `Bearer ${token}`,
384
- ...cfAccessHeaders(runtimeEnv)
385
+ ...cfAccessHeaders(runtimeEnv, base)
385
386
  };
386
387
  async function proxyFetch(action, body, options = {}) {
387
388
  const res = await fetch(`${base}/${action}`, {
@@ -1,8 +1,6 @@
1
1
  import { createAuthClient as createAuthClient$1 } from "better-auth/react";
2
-
3
2
  //#region src/runtime/auth-client-react.d.ts
4
- declare const createAuthClient: typeof createAuthClient$1;
3
+ export declare const createAuthClient: typeof createAuthClient$1;
5
4
  type BetterAuthClientInstance = ReturnType<typeof createAuthClient>;
6
- declare const auth: BetterAuthClientInstance;
7
- //#endregion
8
- export { auth, createAuthClient };
5
+ export declare const auth: BetterAuthClientInstance;
6
+ //#endregion
@@ -1,8 +1,6 @@
1
1
  import { createAuthClient as createAuthClient$1 } from "better-auth/solid";
2
-
3
2
  //#region src/runtime/auth-client-solid.d.ts
4
- declare const createAuthClient: typeof createAuthClient$1;
3
+ export declare const createAuthClient: typeof createAuthClient$1;
5
4
  type BetterAuthClientInstance = ReturnType<typeof createAuthClient>;
6
- declare const auth: BetterAuthClientInstance;
7
- //#endregion
8
- export { auth, createAuthClient };
5
+ export declare const auth: BetterAuthClientInstance;
6
+ //#endregion
@@ -1,8 +1,6 @@
1
1
  import { createAuthClient as createAuthClient$1 } from "better-auth/svelte";
2
-
3
2
  //#region src/runtime/auth-client-svelte.d.ts
4
- declare const createAuthClient: typeof createAuthClient$1;
3
+ export declare const createAuthClient: typeof createAuthClient$1;
5
4
  type BetterAuthClientInstance = ReturnType<typeof createAuthClient>;
6
- declare const auth: BetterAuthClientInstance;
7
- //#endregion
8
- export { auth, createAuthClient };
5
+ export declare const auth: BetterAuthClientInstance;
6
+ //#endregion
@@ -1,8 +1,6 @@
1
1
  import { createAuthClient as createAuthClient$1 } from "better-auth/vue";
2
-
3
2
  //#region src/runtime/auth-client-vue.d.ts
4
- declare const createAuthClient: typeof createAuthClient$1;
3
+ export declare const createAuthClient: typeof createAuthClient$1;
5
4
  type BetterAuthClientInstance = ReturnType<typeof createAuthClient>;
6
- declare const auth: BetterAuthClientInstance;
7
- //#endregion
8
- export { auth, createAuthClient };
5
+ export declare const auth: BetterAuthClientInstance;
6
+ //#endregion
@@ -1,8 +1,6 @@
1
1
  import { createAuthClient as createAuthClient$1 } from "better-auth/client";
2
-
3
2
  //#region src/runtime/auth-client.d.ts
4
- declare const createAuthClient: typeof createAuthClient$1;
3
+ export declare const createAuthClient: typeof createAuthClient$1;
5
4
  type BetterAuthClientInstance = ReturnType<typeof createAuthClient>;
6
- declare const auth: BetterAuthClientInstance;
7
- //#endregion
8
- export { auth, createAuthClient };
5
+ export declare const auth: BetterAuthClientInstance;
6
+ //#endregion
@@ -1,2 +1,2 @@
1
- import { a as VoidAuthConfigContext, c as getSession, i as VoidAuthConfig, l as getUser, n as AuthState, o as authContext, r as AuthUser, s as defineAuth, t as AuthSession, u as requireAuth } from "../auth-qgMlYp7Z.mjs";
1
+ import { a as VoidAuthConfigContext, c as getSession, i as VoidAuthConfig, l as getUser, n as AuthState, o as authContext, r as AuthUser, s as defineAuth, t as AuthSession, u as requireAuth } from "../auth-DkcFflXV.mjs";
2
2
  export { AuthSession, AuthState, AuthUser, VoidAuthConfig, VoidAuthConfigContext, authContext, defineAuth, getSession, getUser, requireAuth };
@@ -0,0 +1,10 @@
1
+ import { i as VoidAuthRuntimeOptions, n as VoidAuthEnv, r as VoidAuthRuntimeApi, t as VoidAuthDialect } from "../better-auth-shared-DSCeohOK.mjs";
2
+ //#region src/runtime/better-auth-mysql.d.ts
3
+ export declare const resolveVoidAuthOptions: VoidAuthRuntimeApi["resolveVoidAuthOptions"];
4
+ export declare const createVoidAuth: VoidAuthRuntimeApi["createVoidAuth"];
5
+ export declare const resolveVoidAuthState: VoidAuthRuntimeApi["resolveVoidAuthState"];
6
+ export declare const runVoidAuthMiddleware: VoidAuthRuntimeApi["runVoidAuthMiddleware"];
7
+ export declare const handleVoidAuthRequest: VoidAuthRuntimeApi["handleVoidAuthRequest"];
8
+ export declare const runVoidAuthMigrations: VoidAuthRuntimeApi["runVoidAuthMigrations"];
9
+ //#endregion
10
+ export type { VoidAuthDialect, VoidAuthEnv, VoidAuthRuntimeOptions };
@@ -0,0 +1,49 @@
1
+ import { t as applyMySqlAuthMigrations } from "../auth-migrations-9vif1uj8.mjs";
2
+ import { t as createVoidAuthRuntime } from "../better-auth-shared-CYw1T3k4.mjs";
3
+ //#region src/runtime/better-auth-mysql.ts
4
+ function resolveConnectionString(env) {
5
+ const connectionString = typeof env.DATABASE_URL === "string" && env.DATABASE_URL.length > 0 ? env.DATABASE_URL : typeof env.HYPERDRIVE?.connectionString === "string" && env.HYPERDRIVE.connectionString.length > 0 ? env.HYPERDRIVE.connectionString : void 0;
6
+ if (!connectionString) throw new Error("auth: Better Auth requires DATABASE_URL for local MySQL dev or HYPERDRIVE in production.");
7
+ return connectionString;
8
+ }
9
+ async function resolveDatabase(env) {
10
+ const { createPool } = await import("mysql2/promise");
11
+ const pool = createPool({
12
+ uri: resolveConnectionString(env),
13
+ connectionLimit: 1
14
+ });
15
+ return {
16
+ database: pool,
17
+ async dispose() {
18
+ await pool.end();
19
+ }
20
+ };
21
+ }
22
+ async function runMySqlAuthMigrations(_request, env, runtime, migrationSchema) {
23
+ if (!migrationSchema) throw new Error("auth: Migration schema is unavailable.");
24
+ if (runtime.dialect !== "mysql" || migrationSchema.dialect !== "mysql") throw new Error("auth: Runtime mismatch. Expected mysql.");
25
+ const { createConnection } = await import("mysql2/promise");
26
+ const connection = await createConnection(resolveConnectionString(env));
27
+ try {
28
+ await applyMySqlAuthMigrations({
29
+ async all(sql, params) {
30
+ const [rows] = await connection.query(sql, params);
31
+ return rows;
32
+ },
33
+ async run(sql, params) {
34
+ await connection.query(sql, params);
35
+ }
36
+ }, migrationSchema);
37
+ } finally {
38
+ await connection.end();
39
+ }
40
+ }
41
+ const runtime = createVoidAuthRuntime("mysql", resolveDatabase, runMySqlAuthMigrations);
42
+ const resolveVoidAuthOptions = runtime.resolveVoidAuthOptions;
43
+ const createVoidAuth = runtime.createVoidAuth;
44
+ const resolveVoidAuthState = runtime.resolveVoidAuthState;
45
+ const runVoidAuthMiddleware = runtime.runVoidAuthMiddleware;
46
+ const handleVoidAuthRequest = runtime.handleVoidAuthRequest;
47
+ const runVoidAuthMigrations = runtime.runVoidAuthMigrations;
48
+ //#endregion
49
+ export { createVoidAuth, handleVoidAuthRequest, resolveVoidAuthOptions, resolveVoidAuthState, runVoidAuthMiddleware, runVoidAuthMigrations };
@@ -1,11 +1,10 @@
1
- import { i as VoidAuthRuntimeOptions, n as VoidAuthEnv, r as VoidAuthRuntimeApi, t as VoidAuthDialect } from "../better-auth-shared-DealXecJ.mjs";
2
-
1
+ import { i as VoidAuthRuntimeOptions, n as VoidAuthEnv, r as VoidAuthRuntimeApi, t as VoidAuthDialect } from "../better-auth-shared-DSCeohOK.mjs";
3
2
  //#region src/runtime/better-auth-pg.d.ts
4
- declare const resolveVoidAuthOptions: VoidAuthRuntimeApi["resolveVoidAuthOptions"];
5
- declare const createVoidAuth: VoidAuthRuntimeApi["createVoidAuth"];
6
- declare const resolveVoidAuthState: VoidAuthRuntimeApi["resolveVoidAuthState"];
7
- declare const runVoidAuthMiddleware: VoidAuthRuntimeApi["runVoidAuthMiddleware"];
8
- declare const handleVoidAuthRequest: VoidAuthRuntimeApi["handleVoidAuthRequest"];
9
- declare const runVoidAuthMigrations: VoidAuthRuntimeApi["runVoidAuthMigrations"];
3
+ export declare const resolveVoidAuthOptions: VoidAuthRuntimeApi["resolveVoidAuthOptions"];
4
+ export declare const createVoidAuth: VoidAuthRuntimeApi["createVoidAuth"];
5
+ export declare const resolveVoidAuthState: VoidAuthRuntimeApi["resolveVoidAuthState"];
6
+ export declare const runVoidAuthMiddleware: VoidAuthRuntimeApi["runVoidAuthMiddleware"];
7
+ export declare const handleVoidAuthRequest: VoidAuthRuntimeApi["handleVoidAuthRequest"];
8
+ export declare const runVoidAuthMigrations: VoidAuthRuntimeApi["runVoidAuthMigrations"];
10
9
  //#endregion
11
- export { type VoidAuthDialect, type VoidAuthEnv, type VoidAuthRuntimeOptions, createVoidAuth, handleVoidAuthRequest, resolveVoidAuthOptions, resolveVoidAuthState, runVoidAuthMiddleware, runVoidAuthMigrations };
10
+ export type { VoidAuthDialect, VoidAuthEnv, VoidAuthRuntimeOptions };
@@ -1,5 +1,5 @@
1
- import { t as applyPgAuthMigrations } from "../auth-migrations-BTZ-ATvQ.mjs";
2
- import { t as createVoidAuthRuntime } from "../better-auth-shared-BQooDxbw.mjs";
1
+ import { n as applyPgAuthMigrations } from "../auth-migrations-9vif1uj8.mjs";
2
+ import { t as createVoidAuthRuntime } from "../better-auth-shared-CYw1T3k4.mjs";
3
3
  import { t as disablePgPassFallback } from "../pg-J2HbZIkX.mjs";
4
4
  //#region src/runtime/better-auth-pg.ts
5
5
  function resolveConnectionString(env) {
@@ -1,11 +1,10 @@
1
- import { i as VoidAuthRuntimeOptions, n as VoidAuthEnv, r as VoidAuthRuntimeApi, t as VoidAuthDialect } from "../better-auth-shared-DealXecJ.mjs";
2
-
1
+ import { i as VoidAuthRuntimeOptions, n as VoidAuthEnv, r as VoidAuthRuntimeApi, t as VoidAuthDialect } from "../better-auth-shared-DSCeohOK.mjs";
3
2
  //#region src/runtime/better-auth.d.ts
4
- declare const resolveVoidAuthOptions: VoidAuthRuntimeApi["resolveVoidAuthOptions"];
5
- declare const createVoidAuth: VoidAuthRuntimeApi["createVoidAuth"];
6
- declare const resolveVoidAuthState: VoidAuthRuntimeApi["resolveVoidAuthState"];
7
- declare const runVoidAuthMiddleware: VoidAuthRuntimeApi["runVoidAuthMiddleware"];
8
- declare const handleVoidAuthRequest: VoidAuthRuntimeApi["handleVoidAuthRequest"];
9
- declare const runVoidAuthMigrations: VoidAuthRuntimeApi["runVoidAuthMigrations"];
3
+ export declare const resolveVoidAuthOptions: VoidAuthRuntimeApi["resolveVoidAuthOptions"];
4
+ export declare const createVoidAuth: VoidAuthRuntimeApi["createVoidAuth"];
5
+ export declare const resolveVoidAuthState: VoidAuthRuntimeApi["resolveVoidAuthState"];
6
+ export declare const runVoidAuthMiddleware: VoidAuthRuntimeApi["runVoidAuthMiddleware"];
7
+ export declare const handleVoidAuthRequest: VoidAuthRuntimeApi["handleVoidAuthRequest"];
8
+ export declare const runVoidAuthMigrations: VoidAuthRuntimeApi["runVoidAuthMigrations"];
10
9
  //#endregion
11
- export { type VoidAuthDialect, type VoidAuthEnv, type VoidAuthRuntimeOptions, createVoidAuth, handleVoidAuthRequest, resolveVoidAuthOptions, resolveVoidAuthState, runVoidAuthMiddleware, runVoidAuthMigrations };
10
+ export type { VoidAuthDialect, VoidAuthEnv, VoidAuthRuntimeOptions };
@@ -1,5 +1,5 @@
1
- import { n as applySqliteAuthMigrations } from "../auth-migrations-BTZ-ATvQ.mjs";
2
- import { t as createVoidAuthRuntime } from "../better-auth-shared-BQooDxbw.mjs";
1
+ import { r as applySqliteAuthMigrations } from "../auth-migrations-9vif1uj8.mjs";
2
+ import { t as createVoidAuthRuntime } from "../better-auth-shared-CYw1T3k4.mjs";
3
3
  //#region src/runtime/better-auth.ts
4
4
  async function resolveDatabase(env) {
5
5
  if (!env.DB) throw new Error("auth: Better Auth requires the \"DB\" D1 binding for sqlite apps.");
@@ -1,4 +1,4 @@
1
- import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-qgMlYp7Z.mjs";
1
+ import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-DkcFflXV.mjs";
2
2
  import { auth, createAuthClient } from "./auth-client-react.mjs";
3
3
  import { t as FetchError } from "../fetch-error-Sp1R4mZv.mjs";
4
4
  import { fetch } from "./fetch.mjs";
@@ -1,4 +1,4 @@
1
- import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-qgMlYp7Z.mjs";
1
+ import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-DkcFflXV.mjs";
2
2
  import { auth, createAuthClient } from "./auth-client-solid.mjs";
3
3
  import { t as FetchError } from "../fetch-error-Sp1R4mZv.mjs";
4
4
  import { fetch } from "./fetch.mjs";
@@ -1,4 +1,4 @@
1
- import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-qgMlYp7Z.mjs";
1
+ import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-DkcFflXV.mjs";
2
2
  import { auth, createAuthClient } from "./auth-client-svelte.mjs";
3
3
  import { t as FetchError } from "../fetch-error-Sp1R4mZv.mjs";
4
4
  import { fetch } from "./fetch.mjs";
@@ -1,4 +1,4 @@
1
- import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-qgMlYp7Z.mjs";
1
+ import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-DkcFflXV.mjs";
2
2
  import { auth, createAuthClient } from "./auth-client-vue.mjs";
3
3
  import { t as FetchError } from "../fetch-error-Sp1R4mZv.mjs";
4
4
  import { fetch } from "./fetch.mjs";
@@ -1,4 +1,4 @@
1
- import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-qgMlYp7Z.mjs";
1
+ import { n as AuthState, r as AuthUser, t as AuthSession } from "../auth-DkcFflXV.mjs";
2
2
  import { auth, createAuthClient } from "./auth-client.mjs";
3
3
  import { t as FetchError } from "../fetch-error-Sp1R4mZv.mjs";
4
4
  import { fetch } from "./fetch.mjs";
@@ -0,0 +1,2 @@
1
+ import { MySql2Database } from "drizzle-orm/mysql2";
2
+ export type { MySql2Database };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,17 +1,16 @@
1
1
  import { DrizzleD1Database, DrizzleD1Database as DrizzleD1Database$1 } from "drizzle-orm/d1";
2
2
  import { and, asc, avg, between, count, desc, eq, exists, gt, gte, ilike, inArray, isNotNull, isNull, like, lt, lte, max, min, ne, not, notBetween, notExists, notInArray, notLike, or, sql, sum } from "drizzle-orm";
3
-
4
3
  //#region src/runtime/db.d.ts
5
4
  /**
6
- * Create a Drizzle D1 instance from a custom D1 binding.
7
- * Use this when you have multiple D1 databases or need a non-default binding.
8
- */
9
- declare function createDb(d1: D1Database): DrizzleD1Database$1;
5
+ * Create a Drizzle D1 instance from a custom D1 binding.
6
+ * Use this when you have multiple D1 databases or need a non-default binding.
7
+ */
8
+ export declare function createDb(d1: D1Database): DrizzleD1Database$1;
10
9
  /**
11
- * Default Drizzle D1 instance — resolves the `DB` binding from the runtime
12
- * environment. When the Void plugin is active, this is replaced with a
13
- * schema-aware instance via virtual module.
14
- */
15
- declare const db: DrizzleD1Database$1;
10
+ * Default Drizzle D1 instance — resolves the `DB` binding from the runtime
11
+ * environment. When the Void plugin is active, this is replaced with a
12
+ * schema-aware instance via virtual module.
13
+ */
14
+ export declare const db: DrizzleD1Database$1;
16
15
  //#endregion
17
- export { type DrizzleD1Database, and, asc, avg, between, count, createDb, db, desc, eq, exists, gt, gte, ilike, inArray, isNotNull, isNull, like, lt, lte, max, min, ne, not, notBetween, notExists, notInArray, notLike, or, sql, sum };
16
+ export { type DrizzleD1Database, and, asc, avg, between, count, desc, eq, exists, gt, gte, ilike, inArray, isNotNull, isNull, like, lt, lte, max, min, ne, not, notBetween, notExists, notInArray, notLike, or, sql, sum };
@@ -0,0 +1,47 @@
1
+ //#region src/runtime/durable.d.ts
2
+ export type DurableStateContext<TState, TEnv extends Record<string, unknown>> = {
3
+ state: TState;
4
+ readonly env: TEnv;
5
+ readonly id: DurableObjectId;
6
+ readonly storage: DurableObjectStorage;
7
+ setAlarm(scheduledTime: number | Date): Promise<void>;
8
+ deleteAlarm(): Promise<void>;
9
+ };
10
+ export type DurableStateMethod<TState, TEnv extends Record<string, unknown>, TArgs extends Array<unknown> = Array<unknown>, TResult = unknown> = (context: DurableStateContext<TState, TEnv>, ...args: TArgs) => TResult | Promise<TResult>;
11
+ export type DurableStateMethods<TState, TEnv extends Record<string, unknown>> = Record<string, DurableStateMethod<TState, TEnv, Array<never>, unknown>>;
12
+ export type DurableStateMigration<TState> = {
13
+ /** State version produced by this migration. Versions must be contiguous and start at 1. */
14
+ version: number;
15
+ migrate(state: unknown): TState | Promise<TState>;
16
+ };
17
+ type MethodArguments<TMethod> = TMethod extends ((context: infer _TContext, ...args: infer TArgs) => infer _TResult) ? TArgs : never;
18
+ type MethodResult<TMethod> = TMethod extends ((...args: infer _TArgs) => infer TResult) ? Awaited<TResult> : never;
19
+ export type DurableStateRpc<TMethods> = { [TName in keyof TMethods]: (...args: MethodArguments<TMethods[TName]>) => Promise<MethodResult<TMethods[TName]>>; };
20
+ export type TypedDurableObjectStub<TMethods> = DurableObjectStub & DurableStateRpc<TMethods>;
21
+ export type DurableStateClass<TMethods> = {
22
+ new (state: DurableObjectState, env: Record<string, unknown>): DurableObject & DurableStateRpc<TMethods> & {
23
+ fetch(request: Request): Promise<Response>;
24
+ alarm(): Promise<void>;
25
+ };
26
+ };
27
+ export type DurableStateDefinition<TState, TEnv extends Record<string, unknown>, TMethods extends DurableStateMethods<TState, TEnv>> = {
28
+ initialState: TState | ((env: TEnv) => TState | Promise<TState>);
29
+ /** Current persisted state version. Defaults to 0. */
30
+ version?: number;
31
+ migrations?: ReadonlyArray<DurableStateMigration<TState>>;
32
+ methods: TMethods;
33
+ fetch?: DurableStateMethod<TState, TEnv, [request: Request], Response>;
34
+ alarm?: DurableStateMethod<TState, TEnv, [], void>;
35
+ storageKey?: string;
36
+ };
37
+ export type DurableStateApi<TMethods> = {
38
+ class: DurableStateClass<TMethods>;
39
+ /** @internal Called by Void's generated worker entry. */
40
+ __bind(bindingName: string): void;
41
+ get(name: string): TypedDurableObjectStub<TMethods>;
42
+ get(namespace: DurableObjectNamespace, name: string): TypedDurableObjectStub<TMethods>;
43
+ getById(id: DurableObjectId): TypedDurableObjectStub<TMethods>;
44
+ getById(namespace: DurableObjectNamespace, id: DurableObjectId): TypedDurableObjectStub<TMethods>;
45
+ };
46
+ export declare function defineDurableState<TState, TEnv extends Record<string, unknown> = Record<string, unknown>, const TMethods extends DurableStateMethods<TState, TEnv> = DurableStateMethods<TState, TEnv>>(definition: DurableStateDefinition<TState, TEnv, TMethods>): DurableStateApi<TMethods>;
47
+ //#endregion
@@ -0,0 +1,146 @@
1
+ import { requireRuntimeBinding, withRuntimeEnv } from "./env.mjs";
2
+ import { DurableObject } from "cloudflare:workers";
3
+ //#region src/runtime/durable.ts
4
+ const DEFAULT_STORAGE_KEY = "__void_durable_state";
5
+ function cloneInitialState(state) {
6
+ return structuredClone(state);
7
+ }
8
+ function assertMigrations(version, migrations) {
9
+ const byVersion = /* @__PURE__ */ new Map();
10
+ for (const migration of migrations) {
11
+ if (!Number.isInteger(migration.version) || migration.version < 1) throw new Error("durable: migration versions must be positive integers.");
12
+ if (migration.version > version) throw new Error(`durable: migration version ${migration.version} exceeds the current state version ${version}.`);
13
+ if (byVersion.has(migration.version)) throw new Error(`durable: duplicate migration version ${migration.version}.`);
14
+ byVersion.set(migration.version, migration);
15
+ }
16
+ for (let expected = 1; expected <= version; expected++) if (!byVersion.has(expected)) throw new Error(`durable: missing state migration for version ${expected}.`);
17
+ return byVersion;
18
+ }
19
+ function defineDurableState(definition) {
20
+ const version = definition.version ?? 0;
21
+ if (!Number.isInteger(version) || version < 0) throw new Error("durable: version must be a non-negative integer.");
22
+ const migrations = assertMigrations(version, definition.migrations ?? []);
23
+ const storageKey = definition.storageKey ?? DEFAULT_STORAGE_KEY;
24
+ let bindingName;
25
+ function boundNamespace() {
26
+ if (!bindingName) throw new Error("durable: this state definition is not bound. Default-export it from a file in durable-objects/.");
27
+ return requireRuntimeBinding(bindingName);
28
+ }
29
+ class VoidDurableState extends DurableObject {
30
+ #value;
31
+ #ready;
32
+ #queue = Promise.resolve();
33
+ #objectState;
34
+ #runtimeEnv;
35
+ constructor(objectState, env) {
36
+ super(objectState, env);
37
+ this.#objectState = objectState;
38
+ this.#runtimeEnv = env;
39
+ this.#ready = objectState.blockConcurrencyWhile(() => withRuntimeEnv(this.#runtimeEnv, () => this.#load()));
40
+ }
41
+ async #load() {
42
+ const stored = await this.#objectState.storage.get(storageKey);
43
+ if (!stored) {
44
+ const initial = typeof definition.initialState === "function" ? await definition.initialState(this.#runtimeEnv) : cloneInitialState(definition.initialState);
45
+ this.#value = initial;
46
+ await this.#persist();
47
+ return;
48
+ }
49
+ if (stored.__voidDurableState !== true || !Number.isInteger(stored.version)) throw new Error(`durable: invalid state record at storage key '${storageKey}'.`);
50
+ if (stored.version > version) throw new Error(`durable: stored state version ${stored.version} is newer than supported version ${version}.`);
51
+ let value = stored.value;
52
+ for (let nextVersion = stored.version + 1; nextVersion <= version; nextVersion++) {
53
+ const migration = migrations.get(nextVersion);
54
+ if (!migration) throw new Error(`durable: missing state migration for version ${nextVersion}.`);
55
+ value = await migration.migrate(value);
56
+ }
57
+ this.#value = value;
58
+ if (stored.version !== version) await this.#persist();
59
+ }
60
+ #persist() {
61
+ return this.#objectState.storage.put(storageKey, {
62
+ __voidDurableState: true,
63
+ version,
64
+ value: this.#value
65
+ });
66
+ }
67
+ #context() {
68
+ const instance = this;
69
+ return {
70
+ get state() {
71
+ return instance.#value;
72
+ },
73
+ set state(value) {
74
+ instance.#value = value;
75
+ },
76
+ env: this.#runtimeEnv,
77
+ id: this.#objectState.id,
78
+ storage: this.#objectState.storage,
79
+ setAlarm: (scheduledTime) => this.#objectState.storage.setAlarm(scheduledTime),
80
+ deleteAlarm: () => this.#objectState.storage.deleteAlarm()
81
+ };
82
+ }
83
+ #run(operation) {
84
+ return withRuntimeEnv(this.#runtimeEnv, () => {
85
+ const result = this.#queue.then(async () => {
86
+ await this.#ready;
87
+ const previousValue = structuredClone(this.#value);
88
+ try {
89
+ const operationResult = await operation();
90
+ await this.#persist();
91
+ return operationResult;
92
+ } catch (error) {
93
+ this.#value = previousValue;
94
+ throw error;
95
+ }
96
+ });
97
+ this.#queue = result.then(() => void 0, () => void 0);
98
+ return result;
99
+ });
100
+ }
101
+ fetch(request) {
102
+ if (!definition.fetch) return Promise.resolve(new Response("Not Found", { status: 404 }));
103
+ return this.#run(async () => {
104
+ return definition.fetch(this.#context(), request);
105
+ });
106
+ }
107
+ alarm() {
108
+ if (!definition.alarm) return Promise.resolve();
109
+ return this.#run(async () => {
110
+ await definition.alarm(this.#context());
111
+ });
112
+ }
113
+ static {
114
+ for (const [name, method] of Object.entries(definition.methods)) {
115
+ if (name === "fetch" || name === "alarm" || name === "constructor") throw new Error(`durable: method name '${name}' is reserved.`);
116
+ Object.defineProperty(this.prototype, name, {
117
+ enumerable: false,
118
+ value(...args) {
119
+ return this.#run(async () => {
120
+ return method(this.#context(), ...args);
121
+ });
122
+ }
123
+ });
124
+ }
125
+ }
126
+ }
127
+ return {
128
+ class: VoidDurableState,
129
+ __bind(name) {
130
+ if (bindingName && bindingName !== name) throw new Error(`durable: state definition is already bound to '${bindingName}' and cannot also bind to '${name}'.`);
131
+ bindingName = name;
132
+ },
133
+ get(namespaceOrName, maybeName) {
134
+ const namespace = typeof namespaceOrName === "string" ? boundNamespace() : namespaceOrName;
135
+ const name = typeof namespaceOrName === "string" ? namespaceOrName : maybeName;
136
+ return namespace.get(namespace.idFromName(name));
137
+ },
138
+ getById(namespaceOrId, maybeId) {
139
+ const namespace = maybeId ? namespaceOrId : boundNamespace();
140
+ const id = maybeId ?? namespaceOrId;
141
+ return namespace.get(id);
142
+ }
143
+ };
144
+ }
145
+ //#endregion
146
+ export { defineDurableState };
@@ -0,0 +1,112 @@
1
+ /// <reference types="@cloudflare/workers-types" />
2
+ import { r as EmailHandler } from "../../inbound-BJ70in1n.mjs";
3
+ //#region src/runtime/email/dev-inbox.d.ts
4
+ interface CapturedMessage {
5
+ id: string;
6
+ capturedAt: number;
7
+ raw: Uint8Array;
8
+ messageId: string;
9
+ from: {
10
+ email: string;
11
+ name?: string;
12
+ };
13
+ to: Array<{
14
+ email: string;
15
+ name?: string;
16
+ }>;
17
+ cc: Array<{
18
+ email: string;
19
+ name?: string;
20
+ }>;
21
+ bcc: Array<{
22
+ email: string;
23
+ name?: string;
24
+ }>;
25
+ replyTo?: {
26
+ email: string;
27
+ name?: string;
28
+ };
29
+ subject: string;
30
+ text?: string;
31
+ html?: string;
32
+ headers: Record<string, string>;
33
+ attachments: Array<{
34
+ filename: string;
35
+ contentType: string;
36
+ size: number;
37
+ contentId?: string;
38
+ disposition: "attachment" | "inline";
39
+ }>;
40
+ }
41
+ //#endregion
42
+ //#region src/runtime/email/testing.d.ts
43
+ export interface EmailTestHarness {
44
+ /** Messages captured since the harness was created (or since the last clear). */
45
+ readonly messages: ReadonlyArray<CapturedMessage>;
46
+ /** Discard captured messages. */
47
+ clear(): void;
48
+ /** Stop intercepting sends. After dispose, real binding sends resume. */
49
+ dispose(): void;
50
+ }
51
+ export declare function createEmailTestHarness(): EmailTestHarness;
52
+ export interface InboundDeliverOptions {
53
+ from: string;
54
+ to: string;
55
+ subject?: string;
56
+ text?: string;
57
+ html?: string;
58
+ headers?: Record<string, string>;
59
+ /** Override the constructed MIME body. Bytes preferred; strings encoded as UTF-8. */
60
+ raw?: string | Uint8Array;
61
+ }
62
+ export interface InboundReplyCapture {
63
+ from: string;
64
+ to: string;
65
+ raw: Uint8Array;
66
+ }
67
+ export interface InboundForwardCapture {
68
+ to: string;
69
+ headers?: Headers;
70
+ }
71
+ export interface InboundDeliveryResult {
72
+ /** Which handler key matched. `undefined` if the message was not handled. */
73
+ handler?: string;
74
+ params: Record<string, string>;
75
+ }
76
+ export interface InboundTestHarness {
77
+ readonly replies: ReadonlyArray<InboundReplyCapture>;
78
+ readonly forwards: ReadonlyArray<InboundForwardCapture>;
79
+ readonly rejects: ReadonlyArray<string>;
80
+ readonly deliveries: ReadonlyArray<InboundDeliveryResult>;
81
+ deliver(opts: InboundDeliverOptions): Promise<InboundDeliveryResult>;
82
+ clear(): void;
83
+ }
84
+ export interface InboundTestHarnessOptions {
85
+ /**
86
+ * Address pattern → handler. Pattern syntax matches the file-based
87
+ * convention: `support`, `support+[ticket]`, `[user]`, `[user]+[tag]`.
88
+ * Reserved key: `_default` (fallback handler, mirrors email/_default.ts).
89
+ */
90
+ routes: Record<string, EmailHandler>;
91
+ /** Forwarded as the second arg to handlers. Defaults to `{}`. */
92
+ env?: unknown;
93
+ /**
94
+ * Project slug used to strip the platform-injected `<slug>+` prefix from
95
+ * `message.to` before handlers see it (mirrors production: the dispatched
96
+ * `message.to` is `<tag>@<domain>`, never `<slug>+<tag>@<domain>`). When
97
+ * omitted, the harness infers the slug from each delivery's recipient
98
+ * (everything before the first `+` in the local-part) so existing tests
99
+ * with synthetic `slug+tag@domain` recipients keep working without
100
+ * configuration.
101
+ *
102
+ * `null` means NO platform prefix at all — a worker deployed on your own
103
+ * Cloudflare account (`void deploy --platform cloudflare`) receives the
104
+ * address the handler author wrote, and the dispatcher matches the full
105
+ * local part: `support@mail.acme.com` reaches `support`, and
106
+ * `support+T-42@mail.acme.com` reaches `support+[ticket]` with `T-42`.
107
+ */
108
+ slug?: string | null;
109
+ }
110
+ export declare function createInboundTestHarness(opts: InboundTestHarnessOptions): InboundTestHarness;
111
+ //#endregion
112
+ export type { CapturedMessage };