qarpeo 0.0.0-alpha.10

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 (599) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +102 -0
  3. package/dist/chunks/auth-schema.mjs +219 -0
  4. package/dist/chunks/wrangler.mjs +783 -0
  5. package/dist/cli/index.mjs +1085 -0
  6. package/dist/dev/env.d.ts +12 -0
  7. package/dist/dev/wrangler.d.ts +18 -0
  8. package/dist/module.d.ts +16 -0
  9. package/dist/module.mjs +4436 -0
  10. package/dist/runtime/ai.d.ts +25 -0
  11. package/dist/runtime/ai.mjs +106 -0
  12. package/dist/runtime/analytics.d.ts +24 -0
  13. package/dist/runtime/analytics.mjs +38 -0
  14. package/dist/runtime/app/components/BlobImage.vue +100 -0
  15. package/dist/runtime/app/components/CMSBlocks.vue +93 -0
  16. package/dist/runtime/app/components/CMSContent.vue +23 -0
  17. package/dist/runtime/app/components/CMSImage.vue +49 -0
  18. package/dist/runtime/app/components/CMSLocaleSwitcher.vue +110 -0
  19. package/dist/runtime/app/components/CMSPreviewBanner.vue +79 -0
  20. package/dist/runtime/app/components/CMSVersionBanner.vue +49 -0
  21. package/dist/runtime/app/components/CMSVersionSwitcher.vue +126 -0
  22. package/dist/runtime/app/components/ContentRenderer.vue +80 -0
  23. package/dist/runtime/app/components/FileUpload.vue +196 -0
  24. package/dist/runtime/app/components/ImpersonationBanner.vue +57 -0
  25. package/dist/runtime/app/components/SignedIn.vue +13 -0
  26. package/dist/runtime/app/components/SignedOut.vue +13 -0
  27. package/dist/runtime/app/components/shiki.css +34 -0
  28. package/dist/runtime/app/composables/analytics.d.ts +125 -0
  29. package/dist/runtime/app/composables/analytics.mjs +81 -0
  30. package/dist/runtime/app/composables/api-tokens.d.ts +49 -0
  31. package/dist/runtime/app/composables/api-tokens.mjs +61 -0
  32. package/dist/runtime/app/composables/auth.d.ts +50 -0
  33. package/dist/runtime/app/composables/auth.mjs +101 -0
  34. package/dist/runtime/app/composables/chat.d.ts +69 -0
  35. package/dist/runtime/app/composables/chat.mjs +159 -0
  36. package/dist/runtime/app/composables/cms-preview.d.ts +33 -0
  37. package/dist/runtime/app/composables/cms-preview.mjs +83 -0
  38. package/dist/runtime/app/composables/cms.d.ts +307 -0
  39. package/dist/runtime/app/composables/cms.mjs +355 -0
  40. package/dist/runtime/app/composables/docs-version.d.ts +35 -0
  41. package/dist/runtime/app/composables/docs-version.mjs +70 -0
  42. package/dist/runtime/app/composables/impersonation.d.ts +14 -0
  43. package/dist/runtime/app/composables/impersonation.mjs +44 -0
  44. package/dist/runtime/app/composables/notifications.d.ts +35 -0
  45. package/dist/runtime/app/composables/notifications.mjs +139 -0
  46. package/dist/runtime/app/composables/organization.d.ts +127 -0
  47. package/dist/runtime/app/composables/organization.mjs +138 -0
  48. package/dist/runtime/app/composables/passkey.d.ts +6 -0
  49. package/dist/runtime/app/composables/passkey.mjs +105 -0
  50. package/dist/runtime/app/composables/passwordless.d.ts +7 -0
  51. package/dist/runtime/app/composables/passwordless.mjs +67 -0
  52. package/dist/runtime/app/composables/payments.d.ts +43 -0
  53. package/dist/runtime/app/composables/payments.mjs +74 -0
  54. package/dist/runtime/app/composables/realtime.d.ts +96 -0
  55. package/dist/runtime/app/composables/realtime.mjs +432 -0
  56. package/dist/runtime/app/composables/site.d.ts +35 -0
  57. package/dist/runtime/app/composables/site.mjs +36 -0
  58. package/dist/runtime/app/composables/storage.d.ts +60 -0
  59. package/dist/runtime/app/composables/storage.mjs +294 -0
  60. package/dist/runtime/app/composables/tenant.d.ts +82 -0
  61. package/dist/runtime/app/composables/tenant.mjs +120 -0
  62. package/dist/runtime/app/composables/turnstile.d.ts +3 -0
  63. package/dist/runtime/app/composables/turnstile.mjs +10 -0
  64. package/dist/runtime/app/composables/two-factor.d.ts +12 -0
  65. package/dist/runtime/app/composables/two-factor.mjs +65 -0
  66. package/dist/runtime/app/middleware/auth.global.d.ts +2 -0
  67. package/dist/runtime/app/middleware/auth.global.mjs +44 -0
  68. package/dist/runtime/app/pages/cms.vue +2249 -0
  69. package/dist/runtime/app/pages/devtools/agents.vue +717 -0
  70. package/dist/runtime/app/pages/devtools/analytics.vue +618 -0
  71. package/dist/runtime/app/pages/devtools/auth.vue +351 -0
  72. package/dist/runtime/app/pages/devtools/blob.vue +745 -0
  73. package/dist/runtime/app/pages/devtools/db.vue +546 -0
  74. package/dist/runtime/app/pages/devtools/domains.vue +772 -0
  75. package/dist/runtime/app/pages/devtools/kv.vue +829 -0
  76. package/dist/runtime/app/pages/devtools/logs.vue +655 -0
  77. package/dist/runtime/app/pages/devtools/mail.vue +389 -0
  78. package/dist/runtime/app/pages/devtools/overview.vue +390 -0
  79. package/dist/runtime/app/pages/devtools/settings.vue +560 -0
  80. package/dist/runtime/app/pages/devtools.vue +165 -0
  81. package/dist/runtime/app/plugins/seo.d.ts +2 -0
  82. package/dist/runtime/app/plugins/seo.mjs +105 -0
  83. package/dist/runtime/app/plugins/shortcuts.client.d.ts +6 -0
  84. package/dist/runtime/app/plugins/shortcuts.client.mjs +19 -0
  85. package/dist/runtime/app/public/sw-notifications.mjs +52 -0
  86. package/dist/runtime/auth.d.ts +25 -0
  87. package/dist/runtime/auth.mjs +11 -0
  88. package/dist/runtime/bindings.d.ts +27 -0
  89. package/dist/runtime/bindings.mjs +38 -0
  90. package/dist/runtime/blob.d.ts +26 -0
  91. package/dist/runtime/blob.mjs +334 -0
  92. package/dist/runtime/bots.d.ts +1 -0
  93. package/dist/runtime/bots.mjs +1 -0
  94. package/dist/runtime/browser.d.ts +21 -0
  95. package/dist/runtime/browser.mjs +64 -0
  96. package/dist/runtime/cache.d.ts +19 -0
  97. package/dist/runtime/cache.mjs +12 -0
  98. package/dist/runtime/cms.d.ts +2 -0
  99. package/dist/runtime/cms.mjs +0 -0
  100. package/dist/runtime/db.d.ts +21 -0
  101. package/dist/runtime/db.mjs +36 -0
  102. package/dist/runtime/drizzle.d.ts +11 -0
  103. package/dist/runtime/drizzle.mjs +18 -0
  104. package/dist/runtime/email.d.ts +51 -0
  105. package/dist/runtime/email.mjs +245 -0
  106. package/dist/runtime/hyperdrive.d.ts +21 -0
  107. package/dist/runtime/hyperdrive.mjs +49 -0
  108. package/dist/runtime/index.d.ts +23 -0
  109. package/dist/runtime/index.mjs +23 -0
  110. package/dist/runtime/kv.d.ts +16 -0
  111. package/dist/runtime/kv.mjs +126 -0
  112. package/dist/runtime/payments.d.ts +2 -0
  113. package/dist/runtime/payments.mjs +0 -0
  114. package/dist/runtime/queue.d.ts +21 -0
  115. package/dist/runtime/queue.mjs +41 -0
  116. package/dist/runtime/rag.d.ts +1 -0
  117. package/dist/runtime/rag.mjs +1 -0
  118. package/dist/runtime/ratelimit.d.ts +21 -0
  119. package/dist/runtime/ratelimit.mjs +38 -0
  120. package/dist/runtime/realtime.d.ts +6 -0
  121. package/dist/runtime/realtime.mjs +13 -0
  122. package/dist/runtime/server/db/cms-schema.d.ts +651 -0
  123. package/dist/runtime/server/db/cms-schema.mjs +74 -0
  124. package/dist/runtime/server/durable-objects/agent.d.ts +14 -0
  125. package/dist/runtime/server/durable-objects/agent.mjs +571 -0
  126. package/dist/runtime/server/durable-objects/room.d.ts +34 -0
  127. package/dist/runtime/server/durable-objects/room.mjs +514 -0
  128. package/dist/runtime/server/middleware/auth.d.ts +2 -0
  129. package/dist/runtime/server/middleware/auth.mjs +108 -0
  130. package/dist/runtime/server/middleware/devtools.d.ts +2 -0
  131. package/dist/runtime/server/middleware/devtools.mjs +61 -0
  132. package/dist/runtime/server/middleware/ratelimit.d.ts +2 -0
  133. package/dist/runtime/server/middleware/ratelimit.mjs +49 -0
  134. package/dist/runtime/server/middleware/tenancy.d.ts +6 -0
  135. package/dist/runtime/server/middleware/tenancy.mjs +15 -0
  136. package/dist/runtime/server/middleware/tracker.d.ts +7 -0
  137. package/dist/runtime/server/middleware/tracker.mjs +9 -0
  138. package/dist/runtime/server/plugins/agents.d.ts +7 -0
  139. package/dist/runtime/server/plugins/agents.mjs +3 -0
  140. package/dist/runtime/server/plugins/cms.d.ts +7 -0
  141. package/dist/runtime/server/plugins/cms.mjs +16 -0
  142. package/dist/runtime/server/plugins/dev-logs.d.ts +1 -0
  143. package/dist/runtime/server/plugins/dev-logs.mjs +58 -0
  144. package/dist/runtime/server/plugins/dev-proxy.d.ts +3 -0
  145. package/dist/runtime/server/plugins/dev-proxy.mjs +21 -0
  146. package/dist/runtime/server/plugins/env.d.ts +6 -0
  147. package/dist/runtime/server/plugins/env.mjs +17 -0
  148. package/dist/runtime/server/plugins/queue.d.ts +6 -0
  149. package/dist/runtime/server/plugins/queue.mjs +8 -0
  150. package/dist/runtime/server/routes/__qarpeo/agents/chat.post.d.ts +20 -0
  151. package/dist/runtime/server/routes/__qarpeo/agents/chat.post.mjs +110 -0
  152. package/dist/runtime/server/routes/__qarpeo/agents/clear.post.d.ts +7 -0
  153. package/dist/runtime/server/routes/__qarpeo/agents/clear.post.mjs +15 -0
  154. package/dist/runtime/server/routes/__qarpeo/agents/create.post.d.ts +17 -0
  155. package/dist/runtime/server/routes/__qarpeo/agents/create.post.mjs +47 -0
  156. package/dist/runtime/server/routes/__qarpeo/agents/history.get.d.ts +15 -0
  157. package/dist/runtime/server/routes/__qarpeo/agents/history.get.mjs +24 -0
  158. package/dist/runtime/server/routes/__qarpeo/agents/list.get.d.ts +5 -0
  159. package/dist/runtime/server/routes/__qarpeo/agents/list.get.mjs +63 -0
  160. package/dist/runtime/server/routes/__qarpeo/analytics/events.get.d.ts +64 -0
  161. package/dist/runtime/server/routes/__qarpeo/analytics/events.get.mjs +55 -0
  162. package/dist/runtime/server/routes/__qarpeo/analytics/summary.get.d.ts +30 -0
  163. package/dist/runtime/server/routes/__qarpeo/analytics/summary.get.mjs +73 -0
  164. package/dist/runtime/server/routes/__qarpeo/auth/revoke-session.post.d.ts +6 -0
  165. package/dist/runtime/server/routes/__qarpeo/auth/revoke-session.post.mjs +26 -0
  166. package/dist/runtime/server/routes/__qarpeo/auth/sessions.get.d.ts +6 -0
  167. package/dist/runtime/server/routes/__qarpeo/auth/sessions.get.mjs +46 -0
  168. package/dist/runtime/server/routes/__qarpeo/auth/users.get.d.ts +7 -0
  169. package/dist/runtime/server/routes/__qarpeo/auth/users.get.mjs +65 -0
  170. package/dist/runtime/server/routes/__qarpeo/blob/files.get.d.ts +22 -0
  171. package/dist/runtime/server/routes/__qarpeo/blob/files.get.mjs +36 -0
  172. package/dist/runtime/server/routes/__qarpeo/db/query.post.d.ts +23 -0
  173. package/dist/runtime/server/routes/__qarpeo/db/query.post.mjs +34 -0
  174. package/dist/runtime/server/routes/__qarpeo/db/tables.get.d.ts +31 -0
  175. package/dist/runtime/server/routes/__qarpeo/db/tables.get.mjs +81 -0
  176. package/dist/runtime/server/routes/__qarpeo/kv/delete.post.d.ts +11 -0
  177. package/dist/runtime/server/routes/__qarpeo/kv/delete.post.mjs +18 -0
  178. package/dist/runtime/server/routes/__qarpeo/kv/get.get.d.ts +11 -0
  179. package/dist/runtime/server/routes/__qarpeo/kv/get.get.mjs +20 -0
  180. package/dist/runtime/server/routes/__qarpeo/kv/keys.get.d.ts +8 -0
  181. package/dist/runtime/server/routes/__qarpeo/kv/keys.get.mjs +27 -0
  182. package/dist/runtime/server/routes/__qarpeo/kv/set.post.d.ts +14 -0
  183. package/dist/runtime/server/routes/__qarpeo/kv/set.post.mjs +24 -0
  184. package/dist/runtime/server/routes/__qarpeo/logs.delete.d.ts +5 -0
  185. package/dist/runtime/server/routes/__qarpeo/logs.delete.mjs +6 -0
  186. package/dist/runtime/server/routes/__qarpeo/logs.get.d.ts +5 -0
  187. package/dist/runtime/server/routes/__qarpeo/logs.get.mjs +26 -0
  188. package/dist/runtime/server/routes/__qarpeo/logs.post.d.ts +6 -0
  189. package/dist/runtime/server/routes/__qarpeo/logs.post.mjs +17 -0
  190. package/dist/runtime/server/routes/__qarpeo/mail/bounce.post.d.ts +5 -0
  191. package/dist/runtime/server/routes/__qarpeo/mail/bounce.post.mjs +37 -0
  192. package/dist/runtime/server/routes/__qarpeo/mail/clear.post.d.ts +4 -0
  193. package/dist/runtime/server/routes/__qarpeo/mail/clear.post.mjs +6 -0
  194. package/dist/runtime/server/routes/__qarpeo/mail/inbox.get.d.ts +5 -0
  195. package/dist/runtime/server/routes/__qarpeo/mail/inbox.get.mjs +7 -0
  196. package/dist/runtime/server/routes/__qarpeo/mail/send-test.post.d.ts +4 -0
  197. package/dist/runtime/server/routes/__qarpeo/mail/send-test.post.mjs +29 -0
  198. package/dist/runtime/server/routes/__qarpeo/mail/track/click/[id].get.d.ts +2 -0
  199. package/dist/runtime/server/routes/__qarpeo/mail/track/click/[id].get.mjs +23 -0
  200. package/dist/runtime/server/routes/__qarpeo/mail/track/open/[id].get.d.ts +2 -0
  201. package/dist/runtime/server/routes/__qarpeo/mail/track/open/[id].get.mjs +31 -0
  202. package/dist/runtime/server/routes/__qarpeo/overview/health.get.d.ts +8 -0
  203. package/dist/runtime/server/routes/__qarpeo/overview/health.get.mjs +46 -0
  204. package/dist/runtime/server/routes/__qarpeo/overview.get.d.ts +32 -0
  205. package/dist/runtime/server/routes/__qarpeo/overview.get.mjs +38 -0
  206. package/dist/runtime/server/routes/__qarpeo/settings/reset-dev-data.post.d.ts +11 -0
  207. package/dist/runtime/server/routes/__qarpeo/settings/reset-dev-data.post.mjs +84 -0
  208. package/dist/runtime/server/routes/__qarpeo/settings.get.d.ts +124 -0
  209. package/dist/runtime/server/routes/__qarpeo/settings.get.mjs +145 -0
  210. package/dist/runtime/server/routes/__qarpeo/tenants/create.post.d.ts +7 -0
  211. package/dist/runtime/server/routes/__qarpeo/tenants/create.post.mjs +26 -0
  212. package/dist/runtime/server/routes/__qarpeo/tenants/domain-add.post.d.ts +6 -0
  213. package/dist/runtime/server/routes/__qarpeo/tenants/domain-add.post.mjs +29 -0
  214. package/dist/runtime/server/routes/__qarpeo/tenants/domain-delete.post.d.ts +7 -0
  215. package/dist/runtime/server/routes/__qarpeo/tenants/domain-delete.post.mjs +21 -0
  216. package/dist/runtime/server/routes/__qarpeo/tenants/domain-verify.post.d.ts +9 -0
  217. package/dist/runtime/server/routes/__qarpeo/tenants/domain-verify.post.mjs +21 -0
  218. package/dist/runtime/server/routes/__qarpeo/tenants/list.get.d.ts +15 -0
  219. package/dist/runtime/server/routes/__qarpeo/tenants/list.get.mjs +22 -0
  220. package/dist/runtime/server/routes/agents/[agent]/chat.post.d.ts +2 -0
  221. package/dist/runtime/server/routes/agents/[agent]/chat.post.mjs +35 -0
  222. package/dist/runtime/server/routes/agents/[agent]/clear.post.d.ts +4 -0
  223. package/dist/runtime/server/routes/agents/[agent]/clear.post.mjs +27 -0
  224. package/dist/runtime/server/routes/agents/[agent]/history.get.d.ts +4 -0
  225. package/dist/runtime/server/routes/agents/[agent]/history.get.mjs +27 -0
  226. package/dist/runtime/server/routes/analytics/events.get.d.ts +3 -0
  227. package/dist/runtime/server/routes/analytics/events.get.mjs +17 -0
  228. package/dist/runtime/server/routes/analytics/pageviews.get.d.ts +3 -0
  229. package/dist/runtime/server/routes/analytics/pageviews.get.mjs +15 -0
  230. package/dist/runtime/server/routes/analytics/summary.get.d.ts +6 -0
  231. package/dist/runtime/server/routes/analytics/summary.get.mjs +15 -0
  232. package/dist/runtime/server/routes/atom.xml.get.d.ts +2 -0
  233. package/dist/runtime/server/routes/atom.xml.get.mjs +76 -0
  234. package/dist/runtime/server/routes/auth/2fa/disable.post.d.ts +4 -0
  235. package/dist/runtime/server/routes/auth/2fa/disable.post.mjs +44 -0
  236. package/dist/runtime/server/routes/auth/2fa/setup.post.d.ts +6 -0
  237. package/dist/runtime/server/routes/auth/2fa/setup.post.mjs +32 -0
  238. package/dist/runtime/server/routes/auth/2fa/verify.post.d.ts +6 -0
  239. package/dist/runtime/server/routes/auth/2fa/verify.post.mjs +92 -0
  240. package/dist/runtime/server/routes/auth/[provider]/callback.d.ts +1 -0
  241. package/dist/runtime/server/routes/auth/[provider]/callback.mjs +1 -0
  242. package/dist/runtime/server/routes/auth/[provider].d.ts +3 -0
  243. package/dist/runtime/server/routes/auth/[provider].mjs +95 -0
  244. package/dist/runtime/server/routes/auth/account.delete.d.ts +5 -0
  245. package/dist/runtime/server/routes/auth/account.delete.mjs +52 -0
  246. package/dist/runtime/server/routes/auth/impersonate/start.post.d.ts +5 -0
  247. package/dist/runtime/server/routes/auth/impersonate/start.post.mjs +14 -0
  248. package/dist/runtime/server/routes/auth/impersonate/stop.post.d.ts +5 -0
  249. package/dist/runtime/server/routes/auth/impersonate/stop.post.mjs +5 -0
  250. package/dist/runtime/server/routes/auth/logout-all.post.d.ts +4 -0
  251. package/dist/runtime/server/routes/auth/logout-all.post.mjs +16 -0
  252. package/dist/runtime/server/routes/auth/logout-others.post.d.ts +4 -0
  253. package/dist/runtime/server/routes/auth/logout-others.post.mjs +11 -0
  254. package/dist/runtime/server/routes/auth/logout.post.d.ts +4 -0
  255. package/dist/runtime/server/routes/auth/logout.post.mjs +17 -0
  256. package/dist/runtime/server/routes/auth/magic-link/send.post.d.ts +10 -0
  257. package/dist/runtime/server/routes/auth/magic-link/send.post.mjs +29 -0
  258. package/dist/runtime/server/routes/auth/magic-link/verify.get.d.ts +2 -0
  259. package/dist/runtime/server/routes/auth/magic-link/verify.get.mjs +81 -0
  260. package/dist/runtime/server/routes/auth/organization/create.post.d.ts +5 -0
  261. package/dist/runtime/server/routes/auth/organization/create.post.mjs +10 -0
  262. package/dist/runtime/server/routes/auth/organization/invite.post.d.ts +9 -0
  263. package/dist/runtime/server/routes/auth/organization/invite.post.mjs +27 -0
  264. package/dist/runtime/server/routes/auth/organization/join.post.d.ts +6 -0
  265. package/dist/runtime/server/routes/auth/organization/join.post.mjs +15 -0
  266. package/dist/runtime/server/routes/auth/organization/list.get.d.ts +5 -0
  267. package/dist/runtime/server/routes/auth/organization/list.get.mjs +7 -0
  268. package/dist/runtime/server/routes/auth/organization/members/[id].delete.d.ts +4 -0
  269. package/dist/runtime/server/routes/auth/organization/members/[id].delete.mjs +33 -0
  270. package/dist/runtime/server/routes/auth/organization/members/index.get.d.ts +6 -0
  271. package/dist/runtime/server/routes/auth/organization/members/index.get.mjs +18 -0
  272. package/dist/runtime/server/routes/auth/organization/mfa.post.d.ts +6 -0
  273. package/dist/runtime/server/routes/auth/organization/mfa.post.mjs +33 -0
  274. package/dist/runtime/server/routes/auth/organization/sso/[id].delete.d.ts +4 -0
  275. package/dist/runtime/server/routes/auth/organization/sso/[id].delete.mjs +28 -0
  276. package/dist/runtime/server/routes/auth/organization/sso/index.get.d.ts +2 -0
  277. package/dist/runtime/server/routes/auth/organization/sso/index.get.mjs +23 -0
  278. package/dist/runtime/server/routes/auth/organization/sso/index.post.d.ts +5 -0
  279. package/dist/runtime/server/routes/auth/organization/sso/index.post.mjs +84 -0
  280. package/dist/runtime/server/routes/auth/organization/switch.post.d.ts +6 -0
  281. package/dist/runtime/server/routes/auth/organization/switch.post.mjs +14 -0
  282. package/dist/runtime/server/routes/auth/otp/send.post.d.ts +10 -0
  283. package/dist/runtime/server/routes/auth/otp/send.post.mjs +29 -0
  284. package/dist/runtime/server/routes/auth/otp/verify.post.d.ts +6 -0
  285. package/dist/runtime/server/routes/auth/otp/verify.post.mjs +95 -0
  286. package/dist/runtime/server/routes/auth/sessions/[id].delete.d.ts +5 -0
  287. package/dist/runtime/server/routes/auth/sessions/[id].delete.mjs +24 -0
  288. package/dist/runtime/server/routes/auth/sessions.get.d.ts +2 -0
  289. package/dist/runtime/server/routes/auth/sessions.get.mjs +11 -0
  290. package/dist/runtime/server/routes/auth/sso/login.get.d.ts +2 -0
  291. package/dist/runtime/server/routes/auth/sso/login.get.mjs +94 -0
  292. package/dist/runtime/server/routes/auth/sso/oidc/callback.get.d.ts +2 -0
  293. package/dist/runtime/server/routes/auth/sso/oidc/callback.get.mjs +113 -0
  294. package/dist/runtime/server/routes/auth/sso/saml/acs.post.d.ts +2 -0
  295. package/dist/runtime/server/routes/auth/sso/saml/acs.post.mjs +95 -0
  296. package/dist/runtime/server/routes/auth/tokens/[id].delete.d.ts +4 -0
  297. package/dist/runtime/server/routes/auth/tokens/[id].delete.mjs +13 -0
  298. package/dist/runtime/server/routes/auth/tokens/create.post.d.ts +9 -0
  299. package/dist/runtime/server/routes/auth/tokens/create.post.mjs +17 -0
  300. package/dist/runtime/server/routes/auth/tokens/index.get.d.ts +9 -0
  301. package/dist/runtime/server/routes/auth/tokens/index.get.mjs +5 -0
  302. package/dist/runtime/server/routes/auth/turnstile/verify.post.d.ts +2 -0
  303. package/dist/runtime/server/routes/auth/turnstile/verify.post.mjs +15 -0
  304. package/dist/runtime/server/routes/auth/user.get.d.ts +2 -0
  305. package/dist/runtime/server/routes/auth/user.get.mjs +6 -0
  306. package/dist/runtime/server/routes/auth/webauthn/login/options.post.d.ts +2 -0
  307. package/dist/runtime/server/routes/auth/webauthn/login/options.post.mjs +17 -0
  308. package/dist/runtime/server/routes/auth/webauthn/login/verify.post.d.ts +6 -0
  309. package/dist/runtime/server/routes/auth/webauthn/login/verify.post.mjs +127 -0
  310. package/dist/runtime/server/routes/auth/webauthn/register/options.post.d.ts +2 -0
  311. package/dist/runtime/server/routes/auth/webauthn/register/options.post.mjs +47 -0
  312. package/dist/runtime/server/routes/auth/webauthn/register/verify.post.d.ts +5 -0
  313. package/dist/runtime/server/routes/auth/webauthn/register/verify.post.mjs +88 -0
  314. package/dist/runtime/server/routes/cms/[collection]/[id]/preview-token.post.d.ts +8 -0
  315. package/dist/runtime/server/routes/cms/[collection]/[id]/preview-token.post.mjs +27 -0
  316. package/dist/runtime/server/routes/cms/[collection]/[id]/publish.post.d.ts +6 -0
  317. package/dist/runtime/server/routes/cms/[collection]/[id]/publish.post.mjs +19 -0
  318. package/dist/runtime/server/routes/cms/[collection]/[id]/review.post.d.ts +6 -0
  319. package/dist/runtime/server/routes/cms/[collection]/[id]/review.post.mjs +33 -0
  320. package/dist/runtime/server/routes/cms/[collection]/[id].delete.d.ts +4 -0
  321. package/dist/runtime/server/routes/cms/[collection]/[id].delete.mjs +17 -0
  322. package/dist/runtime/server/routes/cms/[collection]/[id].put.d.ts +4 -0
  323. package/dist/runtime/server/routes/cms/[collection]/[id].put.mjs +18 -0
  324. package/dist/runtime/server/routes/cms/[collection]/[slug].get.d.ts +4 -0
  325. package/dist/runtime/server/routes/cms/[collection]/[slug].get.mjs +19 -0
  326. package/dist/runtime/server/routes/cms/[collection]/atom.xml.get.d.ts +2 -0
  327. package/dist/runtime/server/routes/cms/[collection]/atom.xml.get.mjs +69 -0
  328. package/dist/runtime/server/routes/cms/[collection]/by-path.get.d.ts +8 -0
  329. package/dist/runtime/server/routes/cms/[collection]/by-path.get.mjs +23 -0
  330. package/dist/runtime/server/routes/cms/[collection]/feed.xml.get.d.ts +2 -0
  331. package/dist/runtime/server/routes/cms/[collection]/feed.xml.get.mjs +65 -0
  332. package/dist/runtime/server/routes/cms/[collection]/index.get.d.ts +7 -0
  333. package/dist/runtime/server/routes/cms/[collection]/index.get.mjs +15 -0
  334. package/dist/runtime/server/routes/cms/[collection]/index.post.d.ts +4 -0
  335. package/dist/runtime/server/routes/cms/[collection]/index.post.mjs +23 -0
  336. package/dist/runtime/server/routes/cms/[collection]/references.get.d.ts +19 -0
  337. package/dist/runtime/server/routes/cms/[collection]/references.get.mjs +47 -0
  338. package/dist/runtime/server/routes/cms/[collection]/surroundings.get.d.ts +10 -0
  339. package/dist/runtime/server/routes/cms/[collection]/surroundings.get.mjs +12 -0
  340. package/dist/runtime/server/routes/cms/collections/[id].delete.d.ts +4 -0
  341. package/dist/runtime/server/routes/cms/collections/[id].delete.mjs +10 -0
  342. package/dist/runtime/server/routes/cms/collections/[id].put.d.ts +4 -0
  343. package/dist/runtime/server/routes/cms/collections/[id].put.mjs +11 -0
  344. package/dist/runtime/server/routes/cms/collections/index.get.d.ts +4 -0
  345. package/dist/runtime/server/routes/cms/collections/index.get.mjs +6 -0
  346. package/dist/runtime/server/routes/cms/collections/index.post.d.ts +4 -0
  347. package/dist/runtime/server/routes/cms/collections/index.post.mjs +19 -0
  348. package/dist/runtime/server/routes/cms/components/index.get.d.ts +17 -0
  349. package/dist/runtime/server/routes/cms/components/index.get.mjs +16 -0
  350. package/dist/runtime/server/routes/cms/deploy.post.d.ts +4 -0
  351. package/dist/runtime/server/routes/cms/deploy.post.mjs +46 -0
  352. package/dist/runtime/server/routes/cms/export.post.d.ts +10 -0
  353. package/dist/runtime/server/routes/cms/export.post.mjs +55 -0
  354. package/dist/runtime/server/routes/cms/navigation.get.d.ts +8 -0
  355. package/dist/runtime/server/routes/cms/navigation.get.mjs +36 -0
  356. package/dist/runtime/server/routes/cms/preview/disable.get.d.ts +9 -0
  357. package/dist/runtime/server/routes/cms/preview/disable.get.mjs +9 -0
  358. package/dist/runtime/server/routes/cms/preview/enable.get.d.ts +14 -0
  359. package/dist/runtime/server/routes/cms/preview/enable.get.mjs +42 -0
  360. package/dist/runtime/server/routes/cms/publish-scheduled.post.d.ts +11 -0
  361. package/dist/runtime/server/routes/cms/publish-scheduled.post.mjs +35 -0
  362. package/dist/runtime/server/routes/cms/search.get.d.ts +13 -0
  363. package/dist/runtime/server/routes/cms/search.get.mjs +137 -0
  364. package/dist/runtime/server/routes/cms/sync.post.d.ts +7 -0
  365. package/dist/runtime/server/routes/cms/sync.post.mjs +18 -0
  366. package/dist/runtime/server/routes/cms/webhooks/[provider].post.d.ts +150 -0
  367. package/dist/runtime/server/routes/cms/webhooks/[provider].post.mjs +213 -0
  368. package/dist/runtime/server/routes/docs/search.get.d.ts +15 -0
  369. package/dist/runtime/server/routes/docs/search.get.mjs +20 -0
  370. package/dist/runtime/server/routes/feed.xml.get.d.ts +2 -0
  371. package/dist/runtime/server/routes/feed.xml.get.mjs +73 -0
  372. package/dist/runtime/server/routes/mail/bounce.post.d.ts +14 -0
  373. package/dist/runtime/server/routes/mail/bounce.post.mjs +56 -0
  374. package/dist/runtime/server/routes/mail/inbox/[id].get.d.ts +2 -0
  375. package/dist/runtime/server/routes/mail/inbox/[id].get.mjs +9 -0
  376. package/dist/runtime/server/routes/mail/inbox.get.d.ts +4 -0
  377. package/dist/runtime/server/routes/mail/inbox.get.mjs +7 -0
  378. package/dist/runtime/server/routes/mail/suppressions/[email].delete.d.ts +11 -0
  379. package/dist/runtime/server/routes/mail/suppressions/[email].delete.mjs +18 -0
  380. package/dist/runtime/server/routes/mail/suppressions/index.get.d.ts +12 -0
  381. package/dist/runtime/server/routes/mail/suppressions/index.get.mjs +23 -0
  382. package/dist/runtime/server/routes/mail/suppressions/index.post.d.ts +10 -0
  383. package/dist/runtime/server/routes/mail/suppressions/index.post.mjs +23 -0
  384. package/dist/runtime/server/routes/mail/unsubscribe.d.ts +13 -0
  385. package/dist/runtime/server/routes/mail/unsubscribe.mjs +91 -0
  386. package/dist/runtime/server/routes/mail/webhooks.post.d.ts +12 -0
  387. package/dist/runtime/server/routes/mail/webhooks.post.mjs +71 -0
  388. package/dist/runtime/server/routes/notifications/[id]/read.post.d.ts +4 -0
  389. package/dist/runtime/server/routes/notifications/[id]/read.post.mjs +13 -0
  390. package/dist/runtime/server/routes/notifications/[id].delete.d.ts +4 -0
  391. package/dist/runtime/server/routes/notifications/[id].delete.mjs +13 -0
  392. package/dist/runtime/server/routes/notifications/[id].get.d.ts +2 -0
  393. package/dist/runtime/server/routes/notifications/[id].get.mjs +15 -0
  394. package/dist/runtime/server/routes/notifications/index.get.d.ts +6 -0
  395. package/dist/runtime/server/routes/notifications/index.get.mjs +18 -0
  396. package/dist/runtime/server/routes/notifications/push/subscribe.post.d.ts +4 -0
  397. package/dist/runtime/server/routes/notifications/push/subscribe.post.mjs +20 -0
  398. package/dist/runtime/server/routes/notifications/push/unsubscribe.post.d.ts +4 -0
  399. package/dist/runtime/server/routes/notifications/push/unsubscribe.post.mjs +15 -0
  400. package/dist/runtime/server/routes/notifications/read-all.post.d.ts +4 -0
  401. package/dist/runtime/server/routes/notifications/read-all.post.mjs +11 -0
  402. package/dist/runtime/server/routes/payments/cancel.post.d.ts +7 -0
  403. package/dist/runtime/server/routes/payments/cancel.post.mjs +9 -0
  404. package/dist/runtime/server/routes/payments/change-plan.post.d.ts +7 -0
  405. package/dist/runtime/server/routes/payments/change-plan.post.mjs +12 -0
  406. package/dist/runtime/server/routes/payments/checkout.post.d.ts +9 -0
  407. package/dist/runtime/server/routes/payments/checkout.post.mjs +16 -0
  408. package/dist/runtime/server/routes/payments/pause.post.d.ts +7 -0
  409. package/dist/runtime/server/routes/payments/pause.post.mjs +9 -0
  410. package/dist/runtime/server/routes/payments/portal.post.d.ts +5 -0
  411. package/dist/runtime/server/routes/payments/portal.post.mjs +9 -0
  412. package/dist/runtime/server/routes/payments/subscription.get.d.ts +6 -0
  413. package/dist/runtime/server/routes/payments/subscription.get.mjs +9 -0
  414. package/dist/runtime/server/routes/payments/usage.get.d.ts +12 -0
  415. package/dist/runtime/server/routes/payments/usage.get.mjs +18 -0
  416. package/dist/runtime/server/routes/payments/usage.post.d.ts +6 -0
  417. package/dist/runtime/server/routes/payments/usage.post.mjs +24 -0
  418. package/dist/runtime/server/routes/payments/webhook.post.d.ts +14 -0
  419. package/dist/runtime/server/routes/payments/webhook.post.mjs +21 -0
  420. package/dist/runtime/server/routes/realtime/broadcast.post.d.ts +4 -0
  421. package/dist/runtime/server/routes/realtime/broadcast.post.mjs +26 -0
  422. package/dist/runtime/server/routes/realtime/history.delete.d.ts +13 -0
  423. package/dist/runtime/server/routes/realtime/history.delete.mjs +12 -0
  424. package/dist/runtime/server/routes/realtime/history.get.d.ts +16 -0
  425. package/dist/runtime/server/routes/realtime/history.get.mjs +15 -0
  426. package/dist/runtime/server/routes/realtime/presence.get.d.ts +6 -0
  427. package/dist/runtime/server/routes/realtime/presence.get.mjs +27 -0
  428. package/dist/runtime/server/routes/realtime/state.get.d.ts +5 -0
  429. package/dist/runtime/server/routes/realtime/state.get.mjs +26 -0
  430. package/dist/runtime/server/routes/realtime/state.post.d.ts +6 -0
  431. package/dist/runtime/server/routes/realtime/state.post.mjs +37 -0
  432. package/dist/runtime/server/routes/realtime/ws.get.d.ts +2 -0
  433. package/dist/runtime/server/routes/realtime/ws.get.mjs +73 -0
  434. package/dist/runtime/server/routes/robots.txt.get.d.ts +2 -0
  435. package/dist/runtime/server/routes/robots.txt.get.mjs +41 -0
  436. package/dist/runtime/server/routes/rss.xml.get.d.ts +2 -0
  437. package/dist/runtime/server/routes/rss.xml.get.mjs +2 -0
  438. package/dist/runtime/server/routes/sitemap.xml.get.d.ts +2 -0
  439. package/dist/runtime/server/routes/sitemap.xml.get.mjs +84 -0
  440. package/dist/runtime/server/routes/storage/file/[...key].delete.d.ts +4 -0
  441. package/dist/runtime/server/routes/storage/file/[...key].delete.mjs +23 -0
  442. package/dist/runtime/server/routes/storage/file/[...key].get.d.ts +2 -0
  443. package/dist/runtime/server/routes/storage/file/[...key].get.mjs +23 -0
  444. package/dist/runtime/server/routes/storage/files.get.d.ts +14 -0
  445. package/dist/runtime/server/routes/storage/files.get.mjs +11 -0
  446. package/dist/runtime/server/routes/storage/presigned.post.d.ts +8 -0
  447. package/dist/runtime/server/routes/storage/presigned.post.mjs +39 -0
  448. package/dist/runtime/server/routes/storage/sign.post.d.ts +6 -0
  449. package/dist/runtime/server/routes/storage/sign.post.mjs +24 -0
  450. package/dist/runtime/server/routes/storage/upload.post.d.ts +22 -0
  451. package/dist/runtime/server/routes/storage/upload.post.mjs +96 -0
  452. package/dist/runtime/server/routes/tenants/[tenant]/domains/[domain]/index.delete.d.ts +8 -0
  453. package/dist/runtime/server/routes/tenants/[tenant]/domains/[domain]/index.delete.mjs +39 -0
  454. package/dist/runtime/server/routes/tenants/[tenant]/domains/[domain]/verify.post.d.ts +8 -0
  455. package/dist/runtime/server/routes/tenants/[tenant]/domains/[domain]/verify.post.mjs +39 -0
  456. package/dist/runtime/server/routes/tenants/[tenant]/domains/index.get.d.ts +8 -0
  457. package/dist/runtime/server/routes/tenants/[tenant]/domains/index.get.mjs +20 -0
  458. package/dist/runtime/server/routes/tenants/[tenant]/domains/index.post.d.ts +8 -0
  459. package/dist/runtime/server/routes/tenants/[tenant]/domains/index.post.mjs +44 -0
  460. package/dist/runtime/server/routes/tenants/current.get.d.ts +8 -0
  461. package/dist/runtime/server/routes/tenants/current.get.mjs +6 -0
  462. package/dist/runtime/server/tasks/cms/publish.d.ts +4 -0
  463. package/dist/runtime/server/tasks/cms/publish.mjs +18 -0
  464. package/dist/runtime/server/utils/agent-store.d.ts +24 -0
  465. package/dist/runtime/server/utils/agent-store.mjs +53 -0
  466. package/dist/runtime/server/utils/agents-registry-fallback.d.ts +1 -0
  467. package/dist/runtime/server/utils/agents-registry-fallback.mjs +1 -0
  468. package/dist/runtime/server/utils/ai.d.ts +119 -0
  469. package/dist/runtime/server/utils/ai.mjs +607 -0
  470. package/dist/runtime/server/utils/analytics-query.d.ts +109 -0
  471. package/dist/runtime/server/utils/analytics-query.mjs +234 -0
  472. package/dist/runtime/server/utils/auth.d.ts +60 -0
  473. package/dist/runtime/server/utils/auth.mjs +361 -0
  474. package/dist/runtime/server/utils/blob-store.d.ts +13 -0
  475. package/dist/runtime/server/utils/blob-store.mjs +60 -0
  476. package/dist/runtime/server/utils/bots.d.ts +21 -0
  477. package/dist/runtime/server/utils/bots.mjs +491 -0
  478. package/dist/runtime/server/utils/cache.d.ts +33 -0
  479. package/dist/runtime/server/utils/cache.mjs +128 -0
  480. package/dist/runtime/server/utils/cms-events.d.ts +17 -0
  481. package/dist/runtime/server/utils/cms-events.mjs +80 -0
  482. package/dist/runtime/server/utils/cms-filter.d.ts +3 -0
  483. package/dist/runtime/server/utils/cms-filter.mjs +34 -0
  484. package/dist/runtime/server/utils/cms.d.ts +278 -0
  485. package/dist/runtime/server/utils/cms.mjs +3268 -0
  486. package/dist/runtime/server/utils/config.d.ts +27 -0
  487. package/dist/runtime/server/utils/config.mjs +38 -0
  488. package/dist/runtime/server/utils/context.d.ts +13 -0
  489. package/dist/runtime/server/utils/context.mjs +98 -0
  490. package/dist/runtime/server/utils/crypto.d.ts +16 -0
  491. package/dist/runtime/server/utils/crypto.mjs +56 -0
  492. package/dist/runtime/server/utils/dev-logs.d.ts +21 -0
  493. package/dist/runtime/server/utils/dev-logs.mjs +41 -0
  494. package/dist/runtime/server/utils/dev-proxy.d.ts +1 -0
  495. package/dist/runtime/server/utils/dev-proxy.mjs +69 -0
  496. package/dist/runtime/server/utils/domains.d.ts +46 -0
  497. package/dist/runtime/server/utils/domains.mjs +318 -0
  498. package/dist/runtime/server/utils/drizzle.d.ts +10 -0
  499. package/dist/runtime/server/utils/drizzle.mjs +36 -0
  500. package/dist/runtime/server/utils/email-templates.d.ts +44 -0
  501. package/dist/runtime/server/utils/email-templates.mjs +373 -0
  502. package/dist/runtime/server/utils/feed.d.ts +42 -0
  503. package/dist/runtime/server/utils/feed.mjs +161 -0
  504. package/dist/runtime/server/utils/impersonation.d.ts +67 -0
  505. package/dist/runtime/server/utils/impersonation.mjs +298 -0
  506. package/dist/runtime/server/utils/jobs.d.ts +70 -0
  507. package/dist/runtime/server/utils/jobs.mjs +125 -0
  508. package/dist/runtime/server/utils/kv-store.d.ts +9 -0
  509. package/dist/runtime/server/utils/kv-store.mjs +32 -0
  510. package/dist/runtime/server/utils/mail-suppression.d.ts +62 -0
  511. package/dist/runtime/server/utils/mail-suppression.mjs +328 -0
  512. package/dist/runtime/server/utils/mail.d.ts +90 -0
  513. package/dist/runtime/server/utils/mail.mjs +366 -0
  514. package/dist/runtime/server/utils/notifications.d.ts +51 -0
  515. package/dist/runtime/server/utils/notifications.mjs +215 -0
  516. package/dist/runtime/server/utils/organization.d.ts +54 -0
  517. package/dist/runtime/server/utils/organization.mjs +354 -0
  518. package/dist/runtime/server/utils/passwordless.d.ts +48 -0
  519. package/dist/runtime/server/utils/passwordless.mjs +179 -0
  520. package/dist/runtime/server/utils/payments.d.ts +121 -0
  521. package/dist/runtime/server/utils/payments.mjs +1067 -0
  522. package/dist/runtime/server/utils/queue-fallback.d.ts +2 -0
  523. package/dist/runtime/server/utils/queue-fallback.mjs +2 -0
  524. package/dist/runtime/server/utils/queue.d.ts +4 -0
  525. package/dist/runtime/server/utils/queue.mjs +3 -0
  526. package/dist/runtime/server/utils/rag.d.ts +25 -0
  527. package/dist/runtime/server/utils/rag.mjs +333 -0
  528. package/dist/runtime/server/utils/ratelimit.d.ts +45 -0
  529. package/dist/runtime/server/utils/ratelimit.mjs +182 -0
  530. package/dist/runtime/server/utils/realtime.d.ts +110 -0
  531. package/dist/runtime/server/utils/realtime.mjs +197 -0
  532. package/dist/runtime/server/utils/schema-fallback.d.ts +3 -0
  533. package/dist/runtime/server/utils/schema-fallback.mjs +2 -0
  534. package/dist/runtime/server/utils/session.d.ts +72 -0
  535. package/dist/runtime/server/utils/session.mjs +287 -0
  536. package/dist/runtime/server/utils/sso.d.ts +49 -0
  537. package/dist/runtime/server/utils/sso.mjs +131 -0
  538. package/dist/runtime/server/utils/storage.d.ts +111 -0
  539. package/dist/runtime/server/utils/storage.mjs +654 -0
  540. package/dist/runtime/server/utils/tenant.d.ts +44 -0
  541. package/dist/runtime/server/utils/tenant.mjs +285 -0
  542. package/dist/runtime/server/utils/totp.d.ts +33 -0
  543. package/dist/runtime/server/utils/totp.mjs +112 -0
  544. package/dist/runtime/server/utils/tracker.d.ts +72 -0
  545. package/dist/runtime/server/utils/tracker.mjs +139 -0
  546. package/dist/runtime/server/utils/turnstile.d.ts +17 -0
  547. package/dist/runtime/server/utils/turnstile.mjs +68 -0
  548. package/dist/runtime/server/utils/vapid.d.ts +35 -0
  549. package/dist/runtime/server/utils/vapid.mjs +211 -0
  550. package/dist/runtime/storage.d.ts +1 -0
  551. package/dist/runtime/storage.mjs +0 -0
  552. package/dist/runtime/types/ai.d.ts +68 -0
  553. package/dist/runtime/types/ai.mjs +0 -0
  554. package/dist/runtime/types/analytics.d.ts +30 -0
  555. package/dist/runtime/types/analytics.mjs +0 -0
  556. package/dist/runtime/types/auth-globals.d.ts +14 -0
  557. package/dist/runtime/types/auth.d.ts +153 -0
  558. package/dist/runtime/types/auth.mjs +0 -0
  559. package/dist/runtime/types/browser.d.ts +29 -0
  560. package/dist/runtime/types/browser.mjs +0 -0
  561. package/dist/runtime/types/d1.d.ts +44 -0
  562. package/dist/runtime/types/d1.mjs +0 -0
  563. package/dist/runtime/types/drizzle.d.ts +13 -0
  564. package/dist/runtime/types/drizzle.mjs +0 -0
  565. package/dist/runtime/types/durable-object.d.ts +51 -0
  566. package/dist/runtime/types/durable-object.mjs +0 -0
  567. package/dist/runtime/types/email.d.ts +66 -0
  568. package/dist/runtime/types/email.mjs +0 -0
  569. package/dist/runtime/types/hyperdrive.d.ts +18 -0
  570. package/dist/runtime/types/hyperdrive.mjs +0 -0
  571. package/dist/runtime/types/imports.d.ts +58 -0
  572. package/dist/runtime/types/index.d.ts +156 -0
  573. package/dist/runtime/types/index.mjs +13 -0
  574. package/dist/runtime/types/queue.d.ts +67 -0
  575. package/dist/runtime/types/queue.mjs +0 -0
  576. package/dist/runtime/types/r2.d.ts +108 -0
  577. package/dist/runtime/types/r2.mjs +0 -0
  578. package/dist/runtime/types/ratelimit.d.ts +21 -0
  579. package/dist/runtime/types/ratelimit.mjs +0 -0
  580. package/dist/runtime/types/vectorize.d.ts +74 -0
  581. package/dist/runtime/types/vectorize.mjs +0 -0
  582. package/dist/runtime/vectorize.d.ts +21 -0
  583. package/dist/runtime/vectorize.mjs +53 -0
  584. package/dist/types.d.ts +2750 -0
  585. package/dist/types.mjs +1 -0
  586. package/dist/utils/agents.d.ts +8 -0
  587. package/dist/utils/auth-schema.d.ts +11 -0
  588. package/dist/utils/bindings.d.ts +16 -0
  589. package/dist/utils/cms-schema.d.ts +1 -0
  590. package/dist/utils/cms-sources.d.ts +62 -0
  591. package/dist/utils/drizzle.d.ts +42 -0
  592. package/dist/utils/jobs.d.ts +8 -0
  593. package/dist/utils/local-db.d.ts +28 -0
  594. package/dist/utils/notifications-schema.d.ts +15 -0
  595. package/dist/utils/payments-schema.d.ts +11 -0
  596. package/dist/utils/pkg.d.ts +15 -0
  597. package/dist/utils/queue.d.ts +8 -0
  598. package/dist/utils/tenants-schema.d.ts +11 -0
  599. package/package.json +104 -0
@@ -0,0 +1,60 @@
1
+ const GLOBAL_BLOB_KEY = "__qarpeo_dev_mock_blob__";
2
+ export function getDevMockBlobStore() {
3
+ const g = globalThis;
4
+ if (!g[GLOBAL_BLOB_KEY]) {
5
+ g[GLOBAL_BLOB_KEY] = /* @__PURE__ */ new Map([
6
+ [
7
+ "uploads/avatar-usr_1.png",
8
+ {
9
+ key: "uploads/avatar-usr_1.png",
10
+ size: 48320,
11
+ contentType: "image/png",
12
+ uploaded: new Date(Date.now() - 864e5 * 2).toISOString(),
13
+ access: "public"
14
+ }
15
+ ],
16
+ [
17
+ "uploads/hero-image.webp",
18
+ {
19
+ key: "uploads/hero-image.webp",
20
+ size: 129840,
21
+ contentType: "image/webp",
22
+ uploaded: new Date(Date.now() - 864e5 * 5).toISOString(),
23
+ access: "public"
24
+ }
25
+ ],
26
+ [
27
+ "documents/report-q3.pdf",
28
+ {
29
+ key: "documents/report-q3.pdf",
30
+ size: 512e3,
31
+ contentType: "application/pdf",
32
+ uploaded: new Date(Date.now() - 864e5 * 10).toISOString(),
33
+ access: "public"
34
+ }
35
+ ],
36
+ [
37
+ "exports/cms-backup-2026.json",
38
+ {
39
+ key: "exports/cms-backup-2026.json",
40
+ size: 24576,
41
+ contentType: "application/json",
42
+ uploaded: new Date(Date.now() - 36e5).toISOString(),
43
+ data: new TextEncoder().encode(
44
+ JSON.stringify(
45
+ {
46
+ collections: ["posts", "authors"],
47
+ exportedAt: (/* @__PURE__ */ new Date()).toISOString(),
48
+ stats: { totalArticles: 42, published: 38 }
49
+ },
50
+ null,
51
+ 2
52
+ )
53
+ ),
54
+ access: "public"
55
+ }
56
+ ]
57
+ ]);
58
+ }
59
+ return g[GLOBAL_BLOB_KEY];
60
+ }
@@ -0,0 +1,21 @@
1
+ import type { BotProvider, BotHandlerConfig, BotReplyOptions } from "../../../types";
2
+ /** Verifies a Slack signature (v0=...) against the signing secret with timestamp replay protection. */
3
+ export declare function verifySlackSignature(signingSecret: string, timestamp: string | number, body: string, signature: string): Promise<boolean>;
4
+ /** Verifies a GitHub webhook signature (sha256=...). */
5
+ export declare function verifyGitHubSignature(secret: string, body: string, signatureHeader: string): Promise<boolean>;
6
+ /** Verifies a Discord Ed25519 signature using native Web Crypto. */
7
+ export declare function verifyDiscordSignature(publicKeyHex: string, timestamp: string, body: string, signatureHex: string): Promise<boolean>;
8
+ /** Verifies a Telegram secret token against the x-telegram-bot-api-secret-token header. */
9
+ export declare function verifyTelegramSecret(secretToken: string, headerToken: string): boolean;
10
+ /** Verifies a WhatsApp Cloud API webhook signature (sha256=...). */
11
+ export declare function verifyWhatsAppSignature(appSecret: string, body: string, signatureHeader: string): Promise<boolean>;
12
+ /** Verifies incoming webhook signature according to provider rules. */
13
+ export declare function verifyWebhookSignature(provider: BotProvider, event: any, rawBody: string, secret?: string): Promise<boolean>;
14
+ /** Dispatches a message to Telegram using Bot API */
15
+ export declare function sendTelegramMessage(botToken: string, chatId: string | number, text: string, options?: BotReplyOptions): Promise<any>;
16
+ /** Dispatches a message to Slack via chat.postMessage or response_url */
17
+ export declare function sendSlackMessage(target: string, // botToken or response_url
18
+ channelOrPayload: string | Record<string, any>, text?: string, options?: BotReplyOptions): Promise<any>;
19
+ /** Dispatches a message to WhatsApp via Cloud API */
20
+ export declare function sendWhatsAppMessage(accessToken: string, phoneNumberId: string, to: string, text: string): Promise<any>;
21
+ export declare function defineBotHandler<TPayload = any>(config: BotHandlerConfig<TPayload>): import("nuxt/server").EventHandler<Promise<any>>;
@@ -0,0 +1,491 @@
1
+ import {
2
+ defineEventHandler,
3
+ getRequestHeader,
4
+ getQuery,
5
+ createError
6
+ } from "nuxt/server";
7
+ import { getCloudflareEnv } from "../../bindings.mjs";
8
+ import { timingSafeEqualString } from "./crypto.mjs";
9
+ import { useAgent } from "./ai.mjs";
10
+ async function computeHmacSha256Hex(secret, data) {
11
+ const encoder = new TextEncoder();
12
+ const key = await crypto.subtle.importKey(
13
+ "raw",
14
+ encoder.encode(secret),
15
+ { name: "HMAC", hash: "SHA-256" },
16
+ false,
17
+ ["sign"]
18
+ );
19
+ const signature = await crypto.subtle.sign("HMAC", key, encoder.encode(data));
20
+ return Array.from(new Uint8Array(signature)).map((b) => b.toString(16).padStart(2, "0")).join("");
21
+ }
22
+ function hexToBytes(hex) {
23
+ const cleanHex = hex.startsWith("0x") ? hex.slice(2) : hex;
24
+ const bytes = new Uint8Array(Math.floor(cleanHex.length / 2));
25
+ for (let i = 0; i < bytes.length; i++) {
26
+ bytes[i] = parseInt(cleanHex.substring(i * 2, i * 2 + 2), 16);
27
+ }
28
+ return bytes;
29
+ }
30
+ export async function verifySlackSignature(signingSecret, timestamp, body, signature) {
31
+ if (!signingSecret || !timestamp || !signature) return false;
32
+ const now = Math.floor(Date.now() / 1e3);
33
+ const ts = typeof timestamp === "number" ? timestamp : parseInt(timestamp, 10);
34
+ if (isNaN(ts) || Math.abs(now - ts) > 300) return false;
35
+ const baseString = `v0:${ts}:${body}`;
36
+ const hash = await computeHmacSha256Hex(signingSecret, baseString);
37
+ const expected = `v0=${hash}`;
38
+ return timingSafeEqualString(signature, expected);
39
+ }
40
+ export async function verifyGitHubSignature(secret, body, signatureHeader) {
41
+ if (!secret || !signatureHeader) return false;
42
+ const hash = await computeHmacSha256Hex(secret, body);
43
+ const expected = `sha256=${hash}`;
44
+ return timingSafeEqualString(signatureHeader, expected);
45
+ }
46
+ export async function verifyDiscordSignature(publicKeyHex, timestamp, body, signatureHex) {
47
+ if (!publicKeyHex || !timestamp || !signatureHex) return false;
48
+ try {
49
+ const keyBytes = hexToBytes(publicKeyHex);
50
+ const sigBytes = hexToBytes(signatureHex);
51
+ const dataBytes = new TextEncoder().encode(timestamp + body);
52
+ let key;
53
+ try {
54
+ key = await crypto.subtle.importKey("raw", keyBytes, { name: "Ed25519" }, false, ["verify"]);
55
+ } catch {
56
+ key = await crypto.subtle.importKey(
57
+ "raw",
58
+ keyBytes,
59
+ { name: "NODE-ED25519" },
60
+ false,
61
+ ["verify"]
62
+ );
63
+ }
64
+ return await crypto.subtle.verify({ name: key.algorithm.name }, key, sigBytes, dataBytes);
65
+ } catch {
66
+ return false;
67
+ }
68
+ }
69
+ export function verifyTelegramSecret(secretToken, headerToken) {
70
+ if (!secretToken || !headerToken) return false;
71
+ return timingSafeEqualString(secretToken, headerToken);
72
+ }
73
+ export async function verifyWhatsAppSignature(appSecret, body, signatureHeader) {
74
+ if (!appSecret || !signatureHeader) return false;
75
+ const hash = await computeHmacSha256Hex(appSecret, body);
76
+ const expected = `sha256=${hash}`;
77
+ return timingSafeEqualString(signatureHeader, expected);
78
+ }
79
+ export async function verifyWebhookSignature(provider, event, rawBody, secret) {
80
+ const env = getCloudflareEnv(event);
81
+ switch (provider) {
82
+ case "telegram": {
83
+ const sec = secret || env.TELEGRAM_SECRET_TOKEN || globalThis.process?.env?.TELEGRAM_SECRET_TOKEN;
84
+ if (!sec) return true;
85
+ const header = getRequestHeader(event, "x-telegram-bot-api-secret-token") || "";
86
+ return verifyTelegramSecret(sec, header);
87
+ }
88
+ case "slack": {
89
+ const sec = secret || env.SLACK_SIGNING_SECRET || globalThis.process?.env?.SLACK_SIGNING_SECRET;
90
+ if (!sec) return true;
91
+ const sig = getRequestHeader(event, "x-slack-signature") || "";
92
+ const ts = getRequestHeader(event, "x-slack-request-timestamp") || "";
93
+ return await verifySlackSignature(sec, ts, rawBody, sig);
94
+ }
95
+ case "discord": {
96
+ const pk = secret || env.DISCORD_PUBLIC_KEY || globalThis.process?.env?.DISCORD_PUBLIC_KEY;
97
+ if (!pk) return true;
98
+ const sig = getRequestHeader(event, "x-signature-ed25519") || "";
99
+ const ts = getRequestHeader(event, "x-signature-timestamp") || "";
100
+ return await verifyDiscordSignature(pk, ts, rawBody, sig);
101
+ }
102
+ case "github": {
103
+ const sec = secret || env.GITHUB_WEBHOOK_SECRET || globalThis.process?.env?.GITHUB_WEBHOOK_SECRET;
104
+ if (!sec) return true;
105
+ const sig = getRequestHeader(event, "x-hub-signature-256") || "";
106
+ return await verifyGitHubSignature(sec, rawBody, sig);
107
+ }
108
+ case "whatsapp": {
109
+ const sec = secret || env.WHATSAPP_APP_SECRET || globalThis.process?.env?.WHATSAPP_APP_SECRET;
110
+ if (!sec) return true;
111
+ const sig = getRequestHeader(event, "x-hub-signature-256") || "";
112
+ return await verifyWhatsAppSignature(sec, rawBody, sig);
113
+ }
114
+ case "generic":
115
+ default: {
116
+ const sec = secret || env.WEBHOOK_SECRET || globalThis.process?.env?.WEBHOOK_SECRET;
117
+ if (!sec) return true;
118
+ const sig = getRequestHeader(event, "x-webhook-signature") || getRequestHeader(event, "x-hub-signature-256") || getRequestHeader(event, "authorization")?.replace(/^Bearer\s+/i, "") || "";
119
+ if (sig.startsWith("sha256=")) {
120
+ return await verifyGitHubSignature(sec, rawBody, sig);
121
+ }
122
+ return timingSafeEqualString(sec, sig);
123
+ }
124
+ }
125
+ }
126
+ export async function sendTelegramMessage(botToken, chatId, text, options) {
127
+ const url = `https://api.telegram.org/bot${botToken}/sendMessage`;
128
+ const body = {
129
+ chat_id: chatId,
130
+ text,
131
+ parse_mode: options?.parseMode || "HTML"
132
+ };
133
+ if (options?.replyToMessageId) {
134
+ body.reply_to_message_id = options.replyToMessageId;
135
+ }
136
+ const res = await fetch(url, {
137
+ method: "POST",
138
+ headers: { "Content-Type": "application/json" },
139
+ body: JSON.stringify(body)
140
+ });
141
+ return await res.json();
142
+ }
143
+ export async function sendSlackMessage(target, channelOrPayload, text, options) {
144
+ if (target.startsWith("https://hooks.slack.com/") || target.startsWith("https://")) {
145
+ const res2 = await fetch(target, {
146
+ method: "POST",
147
+ headers: { "Content-Type": "application/json" },
148
+ body: JSON.stringify({
149
+ text: typeof channelOrPayload === "string" ? channelOrPayload : text,
150
+ response_type: options?.ephemeral ? "ephemeral" : "in_channel"
151
+ })
152
+ });
153
+ return await res2.text();
154
+ }
155
+ const res = await fetch("https://slack.com/api/chat.postMessage", {
156
+ method: "POST",
157
+ headers: {
158
+ "Content-Type": "application/json",
159
+ Authorization: `Bearer ${target}`
160
+ },
161
+ body: JSON.stringify({
162
+ channel: typeof channelOrPayload === "string" ? channelOrPayload : channelOrPayload.channel,
163
+ text: text || ""
164
+ })
165
+ });
166
+ return await res.json();
167
+ }
168
+ export async function sendWhatsAppMessage(accessToken, phoneNumberId, to, text) {
169
+ const url = `https://graph.facebook.com/v21.0/${phoneNumberId}/messages`;
170
+ const res = await fetch(url, {
171
+ method: "POST",
172
+ headers: {
173
+ "Content-Type": "application/json",
174
+ Authorization: `Bearer ${accessToken}`
175
+ },
176
+ body: JSON.stringify({
177
+ messaging_product: "whatsapp",
178
+ recipient_type: "individual",
179
+ to,
180
+ type: "text",
181
+ text: { preview_url: false, body: text }
182
+ })
183
+ });
184
+ return await res.json();
185
+ }
186
+ function normalizeMessage(provider, payload) {
187
+ if (!payload || typeof payload !== "object") return void 0;
188
+ switch (provider) {
189
+ case "telegram": {
190
+ const msg = payload.message || payload.edited_message || payload.channel_post;
191
+ if (!msg) return void 0;
192
+ const text = msg.text || msg.caption || "";
193
+ const isCmd = text.startsWith("/");
194
+ const parts = text.trim().split(/\s+/);
195
+ const command = isCmd ? parts[0] : void 0;
196
+ const args = isCmd ? parts.slice(1) : void 0;
197
+ return {
198
+ id: String(msg.message_id),
199
+ text,
200
+ chatId: String(msg.chat?.id || ""),
201
+ channelId: String(msg.chat?.id || ""),
202
+ sender: msg.from ? {
203
+ id: String(msg.from.id),
204
+ name: [msg.from.first_name, msg.from.last_name].filter(Boolean).join(" "),
205
+ username: msg.from.username
206
+ } : void 0,
207
+ isCommand: isCmd,
208
+ command,
209
+ args,
210
+ raw: msg
211
+ };
212
+ }
213
+ case "slack": {
214
+ if (payload.event && payload.event.type === "message" && !payload.event.bot_id) {
215
+ const ev = payload.event;
216
+ return {
217
+ id: String(ev.ts || ""),
218
+ text: ev.text || "",
219
+ chatId: String(ev.channel || ""),
220
+ channelId: String(ev.channel || ""),
221
+ sender: ev.user ? { id: String(ev.user) } : void 0,
222
+ raw: ev
223
+ };
224
+ }
225
+ if (payload.command) {
226
+ return {
227
+ id: String(payload.trigger_id || Date.now()),
228
+ text: payload.text || "",
229
+ chatId: String(payload.channel_id || ""),
230
+ channelId: String(payload.channel_id || ""),
231
+ sender: { id: String(payload.user_id || ""), username: payload.user_name },
232
+ isCommand: true,
233
+ command: payload.command,
234
+ args: payload.text ? payload.text.trim().split(/\s+/) : [],
235
+ raw: payload
236
+ };
237
+ }
238
+ return void 0;
239
+ }
240
+ case "discord": {
241
+ if (payload.type === 2) {
242
+ const data = payload.data || {};
243
+ return {
244
+ id: String(payload.id || ""),
245
+ text: data.name || "",
246
+ chatId: String(payload.channel_id || ""),
247
+ channelId: String(payload.channel_id || ""),
248
+ sender: payload.member?.user ? {
249
+ id: String(payload.member.user.id),
250
+ username: payload.member.user.username
251
+ } : void 0,
252
+ isCommand: true,
253
+ command: `/${data.name}`,
254
+ raw: payload
255
+ };
256
+ }
257
+ return void 0;
258
+ }
259
+ case "whatsapp": {
260
+ const entry = payload.entry?.[0];
261
+ const change = entry?.changes?.[0];
262
+ const message = change?.value?.messages?.[0];
263
+ if (!message) return void 0;
264
+ const contact = change?.value?.contacts?.[0];
265
+ return {
266
+ id: String(message.id || ""),
267
+ text: message.text?.body || "",
268
+ chatId: String(message.from || ""),
269
+ channelId: String(change?.value?.metadata?.phone_number_id || ""),
270
+ sender: {
271
+ id: String(message.from || ""),
272
+ name: contact?.profile?.name
273
+ },
274
+ raw: message
275
+ };
276
+ }
277
+ case "github": {
278
+ const comment = payload.comment;
279
+ const issue = payload.issue;
280
+ if (comment && comment.body) {
281
+ return {
282
+ id: String(comment.id),
283
+ text: comment.body,
284
+ chatId: String(issue?.number || payload.repository?.full_name || ""),
285
+ sender: comment.user ? {
286
+ id: String(comment.user.id),
287
+ username: comment.user.login,
288
+ avatarUrl: comment.user.avatar_url
289
+ } : void 0,
290
+ raw: comment
291
+ };
292
+ }
293
+ return void 0;
294
+ }
295
+ case "generic":
296
+ default: {
297
+ if (payload.text || payload.message) {
298
+ return {
299
+ id: String(payload.id || Date.now()),
300
+ text: typeof payload.text === "string" ? payload.text : String(payload.message || ""),
301
+ chatId: String(payload.chatId || payload.chat_id || payload.channelId || "default"),
302
+ sender: payload.sender,
303
+ raw: payload
304
+ };
305
+ }
306
+ return void 0;
307
+ }
308
+ }
309
+ }
310
+ async function readEventRawBody(event) {
311
+ if (event.request?.text) {
312
+ try {
313
+ return await event.request.clone().text();
314
+ } catch {
315
+ try {
316
+ return await event.request.text();
317
+ } catch {
318
+ }
319
+ }
320
+ }
321
+ if (typeof event.node?.req?.text === "function") {
322
+ return await event.node.req.text();
323
+ }
324
+ if (event.node?.req) {
325
+ return new Promise((resolve) => {
326
+ let data = "";
327
+ event.node.req.on("data", (chunk) => {
328
+ data += chunk;
329
+ });
330
+ event.node.req.on("end", () => resolve(data));
331
+ event.node.req.on("error", () => resolve(""));
332
+ });
333
+ }
334
+ return "";
335
+ }
336
+ export function defineBotHandler(config) {
337
+ return defineEventHandler(async (event) => {
338
+ const ev = event;
339
+ const method = (ev.method || ev.node?.req?.method || "GET").toUpperCase();
340
+ const env = getCloudflareEnv(event);
341
+ if (config.provider === "whatsapp" && method === "GET") {
342
+ const query2 = getQuery(event);
343
+ const mode = query2["hub.mode"];
344
+ const token = query2["hub.verify_token"];
345
+ const challenge = query2["hub.challenge"];
346
+ const expectedToken = config.verifyToken || env.WHATSAPP_VERIFY_TOKEN || globalThis.process?.env?.WHATSAPP_VERIFY_TOKEN;
347
+ if (mode === "subscribe" && token && expectedToken && timingSafeEqualString(String(token), expectedToken)) {
348
+ return String(challenge || "");
349
+ }
350
+ throw createError({ statusCode: 403, statusMessage: "Verification token mismatch" });
351
+ }
352
+ const rawBody = await readEventRawBody(event) || "";
353
+ if (config.verifySignature) {
354
+ const isValid = await config.verifySignature(event, rawBody);
355
+ if (!isValid) {
356
+ throw createError({ statusCode: 401, statusMessage: "Invalid webhook signature" });
357
+ }
358
+ } else {
359
+ const isValid = await verifyWebhookSignature(config.provider, event, rawBody, config.secret);
360
+ if (!isValid) {
361
+ throw createError({ statusCode: 401, statusMessage: "Invalid webhook signature" });
362
+ }
363
+ }
364
+ let payload = {};
365
+ if (rawBody) {
366
+ const contentType = getRequestHeader(event, "content-type") || "";
367
+ if (contentType.includes("application/x-www-form-urlencoded")) {
368
+ const params = new URLSearchParams(rawBody);
369
+ const parsed = {};
370
+ for (const [k, v] of params.entries()) {
371
+ parsed[k] = v;
372
+ }
373
+ payload = parsed;
374
+ } else {
375
+ try {
376
+ payload = JSON.parse(rawBody);
377
+ } catch {
378
+ payload = { raw: rawBody };
379
+ }
380
+ }
381
+ }
382
+ if (config.provider === "slack" && payload?.type === "url_verification") {
383
+ return { challenge: payload.challenge };
384
+ }
385
+ if (config.provider === "discord" && payload?.type === 1) {
386
+ return { type: 1 };
387
+ }
388
+ const message = normalizeMessage(config.provider, payload);
389
+ const query = getQuery(event);
390
+ const headers = {};
391
+ if (ev.node?.req?.headers) {
392
+ for (const [k, v] of Object.entries(ev.node.req.headers)) {
393
+ headers[k.toLowerCase()] = Array.isArray(v) ? v[0] : v;
394
+ }
395
+ }
396
+ const reply = async (textOrOptions) => {
397
+ const opts = typeof textOrOptions === "string" ? { text: textOrOptions } : textOrOptions;
398
+ const text = opts.text;
399
+ switch (config.provider) {
400
+ case "telegram": {
401
+ const token = config.botToken || env.TELEGRAM_BOT_TOKEN || globalThis.process?.env?.TELEGRAM_BOT_TOKEN;
402
+ if (!token) throw new Error("[defineBotHandler] TELEGRAM_BOT_TOKEN is required to send replies");
403
+ const targetChatId = message?.chatId || payload.chat_id || payload.chat?.id;
404
+ if (!targetChatId) throw new Error("[defineBotHandler] Chat ID not found for Telegram reply");
405
+ return await sendTelegramMessage(token, targetChatId, text, opts);
406
+ }
407
+ case "slack": {
408
+ const token = config.botToken || env.SLACK_BOT_TOKEN || globalThis.process?.env?.SLACK_BOT_TOKEN;
409
+ const responseUrl = payload.response_url;
410
+ if (responseUrl) {
411
+ return await sendSlackMessage(responseUrl, text, void 0, opts);
412
+ }
413
+ if (token && message?.chatId) {
414
+ return await sendSlackMessage(token, message.chatId, text, opts);
415
+ }
416
+ return { text };
417
+ }
418
+ case "whatsapp": {
419
+ const token = config.botToken || env.WHATSAPP_ACCESS_TOKEN || globalThis.process?.env?.WHATSAPP_ACCESS_TOKEN;
420
+ const phoneId = config.phoneNumberId || env.WHATSAPP_PHONE_NUMBER_ID || globalThis.process?.env?.WHATSAPP_PHONE_NUMBER_ID;
421
+ if (!token || !phoneId) {
422
+ throw new Error("[defineBotHandler] WHATSAPP_ACCESS_TOKEN and WHATSAPP_PHONE_NUMBER_ID are required to send replies");
423
+ }
424
+ const to = message?.chatId;
425
+ if (!to) throw new Error("[defineBotHandler] Recipient phone number not found for WhatsApp reply");
426
+ return await sendWhatsAppMessage(token, phoneId, to, text);
427
+ }
428
+ case "discord": {
429
+ return {
430
+ type: 4,
431
+ // CHANNEL_MESSAGE_WITH_SOURCE
432
+ data: {
433
+ content: text,
434
+ flags: opts.ephemeral ? 64 : void 0
435
+ }
436
+ };
437
+ }
438
+ case "generic":
439
+ case "github":
440
+ default: {
441
+ return { reply: text };
442
+ }
443
+ }
444
+ };
445
+ const ctx = {
446
+ provider: config.provider,
447
+ event,
448
+ rawBody,
449
+ payload,
450
+ message,
451
+ query,
452
+ headers,
453
+ reply,
454
+ agent: (agentName, id) => {
455
+ const sessionId = id || message?.chatId || "default";
456
+ return useAgent(agentName, sessionId, event);
457
+ }
458
+ };
459
+ if (config.agent && message?.text) {
460
+ try {
461
+ const sessionId = config.agentSessionId ? config.agentSessionId(message, event) : message.chatId || "default";
462
+ const agentClient = useAgent(config.agent, sessionId, event);
463
+ const agentRes = await agentClient.chat(message.text);
464
+ const agentData = await agentRes.json();
465
+ const replyText = agentData.reply || agentData.response || "";
466
+ if (replyText) {
467
+ const replyResult = await reply(replyText);
468
+ if (config.provider === "discord") {
469
+ return replyResult;
470
+ }
471
+ }
472
+ } catch (agentErr) {
473
+ console.error(`[defineBotHandler] Agent execution failed:`, agentErr);
474
+ }
475
+ }
476
+ if (message && config.onMessage) {
477
+ const hookResult = await config.onMessage(ctx);
478
+ if (hookResult !== void 0) {
479
+ return hookResult;
480
+ }
481
+ }
482
+ if (config.onEvent) {
483
+ const eventName = getRequestHeader(event, "x-github-event") || payload.event?.type || payload.type || "message";
484
+ const eventResult = await config.onEvent(eventName, ctx);
485
+ if (eventResult !== void 0) {
486
+ return eventResult;
487
+ }
488
+ }
489
+ return { ok: true };
490
+ });
491
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Access Nitro's persistent Edge Cache storage. Connected to Cloudflare KV in production and local
3
+ * filesystem (.data/cache) in dev.
4
+ */
5
+ export declare function useCacheStorage(): any;
6
+ /** Parses duration strings like '15m', '1h', '7d' or raw seconds into integer seconds. */
7
+ export declare function parseDurationSeconds(duration: string | number): number;
8
+ /**
9
+ * Invalidate or purge a specific key, prefix, wildcard pattern, or all entries from the edge cache.
10
+ *
11
+ * @param pattern Optional cache key, route path, or wildcard (e.g. '/api/products/**',
12
+ * 'dashboard:*'). If omitted, clears the entire edge cache.
13
+ * @returns Array of keys that were purged from storage.
14
+ */
15
+ export declare function purgeCache(pattern?: string): Promise<string[]>;
16
+ /**
17
+ * Remember and cache the result of an async computation or database query. If cached and not
18
+ * expired, returns the cached value. Otherwise, executes the fetcher, saves to edge cache with TTL,
19
+ * and returns the result.
20
+ *
21
+ * @param key Unique cache key (e.g. 'dashboard:stats')
22
+ * @param ttl Time-to-live (e.g. '5m', '1h', or seconds)
23
+ * @param fetcher Async function producing the data
24
+ */
25
+ export declare function rememberCache<T>(key: string, ttl: number | string, fetcher: () => Promise<T>): Promise<T>;
26
+ /** Retrieves a typed value from the edge cache if not expired. */
27
+ export declare function getCacheItem<T = unknown>(key: string): Promise<T | null>;
28
+ /** Stores a typed value in the edge cache with an expiration TTL. */
29
+ export declare function setCacheItem<T = unknown>(key: string, value: T, ttl?: number | string): Promise<void>;
30
+ /** Removes an item from the edge cache by key. */
31
+ export declare function removeCacheItem(key: string): Promise<void>;
32
+ /** Checks whether an unexpired key exists in the edge cache. */
33
+ export declare function hasCacheItem(key: string): Promise<boolean>;