better-supabase 0.5.0 → 0.6.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 (536) hide show
  1. package/README.md +299 -41
  2. package/dist/access-sql-B0dF-SoF.js +181 -0
  3. package/dist/actor-CQTlc1Hh.d.ts +43 -0
  4. package/dist/adapter-Bc1o3zyy.js +1106 -0
  5. package/dist/agents-CVHGd7It.d.ts +94 -0
  6. package/dist/ai-cache-CBWs1W0k.js +80 -0
  7. package/dist/ai-cache-DaDu_G5L.d.ts +64 -0
  8. package/dist/ai-chat-7amvXjmQ.d.ts +590 -0
  9. package/dist/ai-chat-B24UI962.js +743 -0
  10. package/dist/ai-files-CSPNswUY.js +319 -0
  11. package/dist/ai-sdk/agents/index.d.ts +74 -0
  12. package/dist/ai-sdk/agents/index.js +159 -0
  13. package/dist/ai-sdk/batches/index.d.ts +74 -0
  14. package/dist/ai-sdk/batches/index.js +180 -0
  15. package/dist/ai-sdk/cache/index.d.ts +38 -0
  16. package/dist/ai-sdk/cache/index.js +127 -0
  17. package/dist/ai-sdk/chat/index.d.ts +2 -0
  18. package/dist/ai-sdk/chat/index.js +246 -0
  19. package/dist/ai-sdk/embeddings/index.d.ts +3 -0
  20. package/dist/ai-sdk/embeddings/index.js +2 -0
  21. package/dist/ai-sdk/files/index.d.ts +61 -0
  22. package/dist/ai-sdk/files/index.js +111 -0
  23. package/dist/ai-sdk/index.d.ts +145 -0
  24. package/dist/ai-sdk/index.js +174 -0
  25. package/dist/ai-sdk/mcp/index.d.ts +102 -0
  26. package/dist/ai-sdk/mcp/index.js +362 -0
  27. package/dist/ai-sdk/memory/index.d.ts +67 -0
  28. package/dist/ai-sdk/memory/index.js +175 -0
  29. package/dist/ai-sdk/react/index.d.ts +2 -0
  30. package/dist/ai-sdk/react/index.js +3 -0
  31. package/dist/ai-sdk/react/server.d.ts +6 -0
  32. package/dist/ai-sdk/react/server.js +7 -0
  33. package/dist/ai-sdk/workflow/index.d.ts +249 -0
  34. package/dist/ai-sdk/workflow/index.js +575 -0
  35. package/dist/ai-sdk/workflow/react/index.d.ts +20 -0
  36. package/dist/ai-sdk/workflow/react/index.js +66 -0
  37. package/dist/ai-sdk/workflow/react/server.d.ts +10 -0
  38. package/dist/ai-sdk/workflow/react/server.js +12 -0
  39. package/dist/ai-tasks-Cd1HMFvB.d.ts +131 -0
  40. package/dist/announcements-CiyOs-xP.js +107 -0
  41. package/dist/announcements-ZRGnScWI.d.ts +72 -0
  42. package/dist/api-keys-rCGtKaZA.d.ts +156 -0
  43. package/dist/assistant-DwdpDH1q.d.ts +147 -0
  44. package/dist/astro/index.d.ts +86 -0
  45. package/dist/astro/index.js +93 -0
  46. package/dist/attributes-5dYul0u0.js +13 -0
  47. package/dist/auth-link-BjFPqwLz.d.ts +97 -0
  48. package/dist/auth-link-DrDX9KOT.js +114 -0
  49. package/dist/authorization-BFCqamMs.d.ts +172 -0
  50. package/dist/before-route-CnR0C0Jr.js +30 -0
  51. package/dist/bind-Bu_ZNa3W.d.ts +62 -0
  52. package/dist/bind-l4kAvYSv.js +97 -0
  53. package/dist/block-events-CrT8r7Fe.js +76 -0
  54. package/dist/block-fields-GFkxl4dP.js +49 -0
  55. package/dist/block-fields-SJ6fEf3o.d.ts +31 -0
  56. package/dist/block-helpers-CKtbFcRv.d.ts +37 -0
  57. package/dist/block-helpers-DWHxHsEQ.js +190 -0
  58. package/dist/block-hooks-BmjMyXTa.js +114 -0
  59. package/dist/block-hooks-plbZ0AbJ.d.ts +107 -0
  60. package/dist/{kit-transport-DJlHQUBU.js → block-transport-BLr-ZgLc.js} +11 -7
  61. package/dist/block-transport-DvaoPuZ9.d.ts +48 -0
  62. package/dist/blocks/agents/index.d.ts +3 -0
  63. package/dist/blocks/agents/index.js +123 -0
  64. package/dist/blocks/ai-cache/index.d.ts +3 -0
  65. package/dist/blocks/ai-cache/index.js +3 -0
  66. package/dist/blocks/ai-chat/index.d.ts +31 -0
  67. package/dist/blocks/ai-chat/index.js +5 -0
  68. package/dist/blocks/ai-chat/react/index.d.ts +77 -0
  69. package/dist/blocks/ai-chat/react/index.js +387 -0
  70. package/dist/blocks/ai-chat/react/server.d.ts +16 -0
  71. package/dist/blocks/ai-chat/react/server.js +14 -0
  72. package/dist/blocks/ai-files/index.d.ts +14 -0
  73. package/dist/blocks/ai-files/index.js +3 -0
  74. package/dist/blocks/ai-providers/index.d.ts +7 -0
  75. package/dist/blocks/ai-providers/index.js +211 -0
  76. package/dist/blocks/ai-tasks/index.d.ts +3 -0
  77. package/dist/blocks/ai-tasks/index.js +203 -0
  78. package/dist/blocks/announcements/index.d.ts +3 -0
  79. package/dist/blocks/announcements/index.js +3 -0
  80. package/dist/blocks/announcements/react/index.d.ts +31 -0
  81. package/dist/blocks/announcements/react/index.js +86 -0
  82. package/dist/blocks/announcements/react/server.d.ts +6 -0
  83. package/dist/blocks/announcements/react/server.js +7 -0
  84. package/dist/blocks/api-keys/index.d.ts +35 -0
  85. package/dist/blocks/api-keys/index.js +334 -0
  86. package/dist/blocks/attachments/index.d.ts +210 -0
  87. package/dist/blocks/attachments/index.js +222 -0
  88. package/dist/blocks/audit/index.d.ts +366 -0
  89. package/dist/blocks/audit/index.js +714 -0
  90. package/dist/blocks/billing/index.d.ts +265 -0
  91. package/dist/blocks/billing/index.js +400 -0
  92. package/dist/blocks/comments/index.d.ts +200 -0
  93. package/dist/blocks/comments/index.js +207 -0
  94. package/dist/blocks/connectors/index.d.ts +3 -0
  95. package/dist/blocks/connectors/index.js +164 -0
  96. package/dist/blocks/data-lifecycle/index.d.ts +251 -0
  97. package/dist/blocks/data-lifecycle/index.js +353 -0
  98. package/dist/blocks/entitlements/index.d.ts +14 -0
  99. package/dist/blocks/entitlements/index.js +25 -0
  100. package/dist/blocks/flags/index.d.ts +226 -0
  101. package/dist/blocks/flags/index.js +282 -0
  102. package/dist/blocks/inbox/index.d.ts +6 -0
  103. package/dist/blocks/inbox/index.js +499 -0
  104. package/dist/blocks/inbox/react/index.d.ts +2 -0
  105. package/dist/blocks/inbox/react/index.js +225 -0
  106. package/dist/blocks/inbox/react/server.d.ts +10 -0
  107. package/dist/blocks/inbox/react/server.js +12 -0
  108. package/dist/blocks/index.d.ts +65 -0
  109. package/dist/blocks/index.js +77 -0
  110. package/dist/blocks/jobs/index.d.ts +297 -0
  111. package/dist/blocks/jobs/index.js +1051 -0
  112. package/dist/blocks/knowledge/index.d.ts +3 -0
  113. package/dist/blocks/knowledge/index.js +3 -0
  114. package/dist/blocks/memory/index.d.ts +8 -0
  115. package/dist/blocks/memory/index.js +289 -0
  116. package/dist/blocks/notifications/index.d.ts +297 -0
  117. package/dist/blocks/notifications/index.js +425 -0
  118. package/dist/blocks/notifications/react/index.d.ts +44 -0
  119. package/dist/blocks/notifications/react/index.js +67 -0
  120. package/dist/blocks/notifications/react/server.d.ts +6 -0
  121. package/dist/blocks/notifications/react/server.js +7 -0
  122. package/dist/blocks/onboarding/index.d.ts +3 -0
  123. package/dist/blocks/onboarding/index.js +64 -0
  124. package/dist/blocks/onboarding/react/index.d.ts +28 -0
  125. package/dist/blocks/onboarding/react/index.js +78 -0
  126. package/dist/blocks/onboarding/react/server.d.ts +7 -0
  127. package/dist/blocks/onboarding/react/server.js +7 -0
  128. package/dist/blocks/organizations/index.d.ts +241 -0
  129. package/dist/blocks/organizations/index.js +400 -0
  130. package/dist/blocks/outbox/index.d.ts +3 -0
  131. package/dist/blocks/outbox/index.js +266 -0
  132. package/dist/blocks/profiles/index.d.ts +40 -0
  133. package/dist/blocks/profiles/index.js +28 -0
  134. package/dist/blocks/push/index.d.ts +185 -0
  135. package/dist/blocks/push/index.js +258 -0
  136. package/dist/blocks/settings/index.d.ts +89 -0
  137. package/dist/blocks/settings/index.js +104 -0
  138. package/dist/blocks/sso/index.d.ts +198 -0
  139. package/dist/blocks/sso/index.js +1297 -0
  140. package/dist/blocks/usage/index.d.ts +4 -0
  141. package/dist/blocks/usage/index.js +233 -0
  142. package/dist/blocks/waitlist/index.d.ts +117 -0
  143. package/dist/blocks/waitlist/index.js +132 -0
  144. package/dist/blocks/webhooks/index.d.ts +304 -0
  145. package/dist/{webhooks → blocks/webhooks}/index.js +468 -148
  146. package/dist/blocks/workflow-builder/index.d.ts +21 -0
  147. package/dist/blocks/workflow-builder/index.js +5 -0
  148. package/dist/blocks/workflow-builder/react/index.d.ts +47 -0
  149. package/dist/blocks/workflow-builder/react/index.js +119 -0
  150. package/dist/blocks/workflow-builder/react/server.d.ts +8 -0
  151. package/dist/blocks/workflow-builder/react/server.js +11 -0
  152. package/dist/blocks/workflows/index.d.ts +3 -0
  153. package/dist/blocks/workflows/index.js +3 -0
  154. package/dist/blocks/workflows/react/index.d.ts +47 -0
  155. package/dist/blocks/workflows/react/index.js +137 -0
  156. package/dist/blocks/workflows/react/server.d.ts +8 -0
  157. package/dist/blocks/workflows/react/server.js +11 -0
  158. package/dist/{index-SaTsEfGP.d.ts → bucket-Cl46E3jS.d.ts} +134 -91
  159. package/dist/{simplify-_0oUKqCd.js → build-BXIzE6Xv.js} +222 -124
  160. package/dist/{channel-FQW-CnGR.d.ts → channel-_2Mx1Oyu.d.ts} +2 -2
  161. package/dist/channels-CkgQ_X60.js +114 -0
  162. package/dist/chat-sdk/index.d.ts +303 -0
  163. package/dist/chat-sdk/index.js +733 -0
  164. package/dist/chat-sdk/react/index.d.ts +2 -0
  165. package/dist/chat-sdk/react/index.js +3 -0
  166. package/dist/chat-sdk/react/server.d.ts +3 -0
  167. package/dist/chat-sdk/react/server.js +2 -0
  168. package/dist/claims-DDBQT6BK.js +61 -0
  169. package/dist/{claims-BAf6c7is.js → claims-PqzCxaTD.js} +39 -2
  170. package/dist/cli/bin.js +1 -1
  171. package/dist/cli/{codemod-DqV7612m.js → codemod-Bl_tQpHn.js} +105 -2
  172. package/dist/cli/config-B9HkL8nF.js +2 -0
  173. package/dist/cli/config-DU7EJImt.js +49 -0
  174. package/dist/cli/config-NiPxAmUF.js +1077 -0
  175. package/dist/cli/{dist-xn4wlboc.js → dist-DRAVaE6w.js} +111 -1
  176. package/dist/cli/{doctor-L7Z8mYTx.js → doctor-B4JOm_ox.js} +992 -316
  177. package/dist/cli/{env-DmKv_G4A.js → env-CJLbUVPB.js} +1 -1
  178. package/dist/cli/{env-jIFUADLY.js → env-qXgyMV6r.js} +2 -2
  179. package/dist/cli/fresh-import-BeYf9I3x.js +40 -0
  180. package/dist/cli/gen-BGLb_zou.js +3100 -0
  181. package/dist/cli/gen-DAH8FM2W.js +2 -0
  182. package/dist/cli/index.d.ts +44 -5
  183. package/dist/cli/index.js +7 -7
  184. package/dist/cli/{init-Saf5-R9T.js → init-BIIwclPg.js} +242 -27
  185. package/dist/cli/{introspect--H7oGmcd.js → introspect-DNUTuNvb.js} +5 -5
  186. package/dist/cli/{io-k41_z-jT.js → io-DI1mTdSA.js} +12 -3
  187. package/dist/cli/{keys-ByKHnvP9.js → keys-BGCnnb-s.js} +8 -6
  188. package/dist/cli/{ohash-D7bG_EOb.js → ohash-BjQY1cBb.js} +1 -1
  189. package/dist/cli/{openapi-Cp5Fyta-.js → openapi-BlRJ18s3.js} +2 -2
  190. package/dist/cli/{project-B_GeXyHh.js → project-DZRaBaY7.js} +11 -6
  191. package/dist/cli/read-sets-CETOSFx4.js +223 -0
  192. package/dist/cli/{run-BKR2W_79.js → run-DNWxHynX.js} +33 -23
  193. package/dist/cli/{seed-CUlqWh-8.js → seed-DQzqT7LP.js} +8 -6
  194. package/dist/cli/{skills-LJJIhLFR.js → skills-QQs4q68J.js} +3 -2
  195. package/dist/cli/sql-D0GUtUPp.js +536 -0
  196. package/dist/cli/{config-CPVpXP5I.js → supabase-toml-B-bIukQF.js} +72 -942
  197. package/dist/cli/typegen-version-DeFbtzYI.js +8 -0
  198. package/dist/cli/{version-BDJuO0UR.js → version-hr88OZG0.js} +1 -1
  199. package/dist/client/index.d.ts +3 -2
  200. package/dist/client/index.js +11 -71
  201. package/dist/client/native/index.d.ts +228 -0
  202. package/dist/client/native/index.js +361 -0
  203. package/dist/client-CI0Z2zWX.js +277 -0
  204. package/dist/cloud-event-BnmD5fb9.js +46 -0
  205. package/dist/cloud-event-C1JCc1bH.d.ts +50 -0
  206. package/dist/{compiler-BXH_aZ7N.d.ts → compiler-DY_wkj4R.d.ts} +2 -2
  207. package/dist/compose-BIBNgAnq.js +53 -0
  208. package/dist/composite-Bt1YK3Ke.d.ts +146 -0
  209. package/dist/composite-DhE66P5u.js +130 -0
  210. package/dist/config/index.d.ts +6 -4
  211. package/dist/config/index.js +5 -5
  212. package/dist/{config-T_ejwyd3.d.ts → config-D44Y7PAv.d.ts} +406 -205
  213. package/dist/{config-DreERlKo.js → config-Dn7F5k9A.js} +62 -14
  214. package/dist/connector-Dv8kK0MO.d.ts +107 -0
  215. package/dist/connectors-hkLCwyEz.d.ts +120 -0
  216. package/dist/context-BCrWe7ow.d.ts +237 -0
  217. package/dist/credentials/index.d.ts +31 -0
  218. package/dist/credentials/index.js +168 -0
  219. package/dist/cron-DVPUg5k3.js +145 -0
  220. package/dist/csv-CPAzEmB6.js +25 -0
  221. package/dist/db-exception-CnWcYPxL.js +15 -0
  222. package/dist/{define-cNKzqwL_.js → define-B-TVjC25.js} +784 -227
  223. package/dist/{define-Bp_BZa5h.d.ts → define-CJJkkr1-.d.ts} +353 -61
  224. package/dist/edge/index.d.ts +69 -11
  225. package/dist/edge/index.js +191 -75
  226. package/dist/elysia/index.d.ts +59 -0
  227. package/dist/elysia/index.js +62 -0
  228. package/dist/embeddings-4ZvFzjsU.js +127 -0
  229. package/dist/embeddings-C9KGQnXt.d.ts +68 -0
  230. package/dist/{refresh-BTrQ_ZTp.d.ts → ended-jLfvw8h-.d.ts} +20 -2
  231. package/dist/{entitlements-DUxU4oHe.d.ts → entitlements-DHrY2UDZ.d.ts} +16 -7
  232. package/dist/entitlements-DRl6ZJUm.js +24 -0
  233. package/dist/envelope-DqnYGRw7.js +47 -0
  234. package/dist/{errors-DtwXa6b8.js → errors-B11Duf73.js} +82 -13
  235. package/dist/errors-DLjJHPLK.js +44 -0
  236. package/dist/escape-like-DHfx6jRr.js +7 -0
  237. package/dist/escape-like-ImTK0ps_.d.ts +15 -0
  238. package/dist/eve/index.d.ts +220 -0
  239. package/dist/eve/index.js +504 -0
  240. package/dist/eve-gT2Fpjut.d.ts +151 -0
  241. package/dist/events/index.d.ts +4 -3
  242. package/dist/events/index.js +9 -50
  243. package/dist/events-DWDhx77e.d.ts +549 -0
  244. package/dist/executor-Bq28caBo.js +718 -0
  245. package/dist/executor-C-R4pucm.js +83 -0
  246. package/dist/executor-CaWigTyR.d.ts +148 -0
  247. package/dist/executor-D14tGopJ.d.ts +36 -0
  248. package/dist/{executor-Cghdstwu.d.ts → executor-DbvExCFC.d.ts} +7 -1
  249. package/dist/{sql-Coh6n4cC.js → executor-De1Of3m3.js} +210 -11
  250. package/dist/executor-DvsBbNBS.d.ts +261 -0
  251. package/dist/expo/index.d.ts +79 -0
  252. package/dist/expo/index.js +129 -0
  253. package/dist/expo-sqlite/index.d.ts +58 -0
  254. package/dist/expo-sqlite/index.js +104 -0
  255. package/dist/field-errors-BFOa7WhB.d.ts +99 -0
  256. package/dist/field-errors-VF1yb8yI.js +13 -0
  257. package/dist/framework-CONDyPYx.js +51 -0
  258. package/dist/framework-DuVb4Xa8.d.ts +25 -0
  259. package/dist/gateway-C1ssRHnf.d.ts +130 -0
  260. package/dist/graph-BGyLLFLX.js +265 -0
  261. package/dist/h3/index.d.ts +59 -0
  262. package/dist/h3/index.js +55 -0
  263. package/dist/h3/v1/index.d.ts +63 -0
  264. package/dist/h3/v1/index.js +49 -0
  265. package/dist/history-BZih6SFP.js +64 -0
  266. package/dist/hono/index.d.ts +56 -7
  267. package/dist/hono/index.js +97 -45
  268. package/dist/{react-C_s7kiNz.js → hooks-1BTCJsiw.js} +104 -133
  269. package/dist/http-Cv4T29xh.js +40 -0
  270. package/dist/http-DdYadv-o.js +126 -0
  271. package/dist/image-url-pIVlO6R1.js +41 -0
  272. package/dist/impersonation-DcqaTBHx.js +148 -0
  273. package/dist/inbox-i7E1ppo6.d.ts +384 -0
  274. package/dist/index-ACiNPN4Z.d.ts +74 -0
  275. package/dist/{index-DgILJRXj.d.ts → index-Bepi-Hgg.d.ts} +91 -28
  276. package/dist/index-BkWT_uBO.d.ts +51 -0
  277. package/dist/index-BpFYMsi0.d.ts +53 -0
  278. package/dist/{index-C7f8cOBM.d.ts → index-Bxih3l0u.d.ts} +2 -2
  279. package/dist/index-CaxrMD1A.d.ts +1 -0
  280. package/dist/index-ClmjK_o-.d.ts +55 -0
  281. package/dist/index-CtuakVRc.d.ts +267 -0
  282. package/dist/index-D48jVS-N.d.ts +246 -0
  283. package/dist/index-DDrYaUcq.d.ts +138 -0
  284. package/dist/index-DQh4VCc9.d.ts +98 -0
  285. package/dist/{live-D9W2M5aO.d.ts → index-DunNRdnT.d.ts} +136 -38
  286. package/dist/index.d.ts +65 -18
  287. package/dist/index.js +42 -14
  288. package/dist/invalidate-BBqhpxyB.d.ts +19 -0
  289. package/dist/json-CEnpTHlZ.js +16 -0
  290. package/dist/json-schema-CvER4kgT.js +502 -0
  291. package/dist/keys-4MnkWTTh.js +35 -0
  292. package/dist/kit-B5tid-q5.d.ts +60 -0
  293. package/dist/kit-Fm-Fv7q5.js +78 -0
  294. package/dist/knowledge-BXBbT0Tr.d.ts +176 -0
  295. package/dist/knowledge-CDmiMLew.js +255 -0
  296. package/dist/lint/index.d.ts +1 -1
  297. package/dist/lint/index.js +37 -0
  298. package/dist/list/index.d.ts +3 -2
  299. package/dist/list/index.js +1 -444
  300. package/dist/{index-fag8VJZ2.d.ts → list-query-BRt-zDF7.d.ts} +20 -12
  301. package/dist/list-query-gl808ac1.js +459 -0
  302. package/dist/{live-CdJBOc4f.js → live-CTAZQkwl.js} +99 -14
  303. package/dist/logger-DWVYUmwi.d.ts +18 -0
  304. package/dist/mcp/index.d.ts +38 -11
  305. package/dist/mcp/index.js +82 -46
  306. package/dist/mcp/sdk/index.d.ts +105 -0
  307. package/dist/mcp/sdk/index.js +126 -0
  308. package/dist/message-CaKlqdsX.js +219 -0
  309. package/dist/message-CfDoR0Y6.d.ts +94 -0
  310. package/dist/messages-B9-5887d.js +715 -0
  311. package/dist/messages-DYP0sUTe.d.ts +59 -0
  312. package/dist/{mfa-CusDgPaD.d.ts → mfa-Daak8ukG.d.ts} +8 -2
  313. package/dist/modules-DpPwzC7E.d.ts +192 -0
  314. package/dist/modules-dxrVK3ID.js +228 -0
  315. package/dist/nestjs/index.d.ts +68 -0
  316. package/dist/nestjs/index.js +164 -0
  317. package/dist/next/client/index.d.ts +35 -0
  318. package/dist/next/client/index.js +36 -0
  319. package/dist/next/image/index.js +3 -24
  320. package/dist/next/index.d.ts +150 -51
  321. package/dist/next/index.js +261 -107
  322. package/dist/node/index.d.ts +4 -0
  323. package/dist/node/index.js +210 -0
  324. package/dist/node-headers-AO06VhqH.d.ts +24 -0
  325. package/dist/node-headers-C71zNQHe.js +55 -0
  326. package/dist/nuxt/index.d.ts +60 -0
  327. package/dist/nuxt/index.js +64 -0
  328. package/dist/onboarding-BZGHYJks.d.ts +62 -0
  329. package/dist/openapi/index.d.ts +1 -1
  330. package/dist/openapi/index.js +3 -3
  331. package/dist/orpc/index.d.ts +70 -11
  332. package/dist/orpc/index.js +73 -24
  333. package/dist/otel/index.d.ts +7 -7
  334. package/dist/otel/index.js +87 -57
  335. package/dist/outbox-Cq7pPYvl.d.ts +161 -0
  336. package/dist/{plugin-o144f322.d.ts → plugin-FGY8UhYm.d.ts} +30 -10
  337. package/dist/plugin-tfXW1-qO.js +45 -0
  338. package/dist/plugins/actor/index.d.ts +2 -2
  339. package/dist/plugins/actor/index.js +3 -3
  340. package/dist/plugins/rules/index.d.ts +11 -4
  341. package/dist/plugins/rules/index.js +40 -13
  342. package/dist/plugins/soft-delete/index.d.ts +5 -4
  343. package/dist/plugins/soft-delete/index.js +10 -5
  344. package/dist/plugins/tenant/index.d.ts +2 -2
  345. package/dist/plugins/tenant/index.js +18 -11
  346. package/dist/plugins/timestamps/index.d.ts +5 -3
  347. package/dist/plugins/timestamps/index.js +6 -4
  348. package/dist/plugins/validation/index.d.ts +2 -2
  349. package/dist/plugins/validation/index.js +10 -6
  350. package/dist/{pool-C9voM4Kw.d.ts → pool-CAu2nLrL.d.ts} +2 -2
  351. package/dist/postgres/index.d.ts +4 -4
  352. package/dist/postgres/index.js +1 -2
  353. package/dist/{postgrest-CruYKAvV.d.ts → postgrest-BLVdEnfe.d.ts} +13 -3
  354. package/dist/powersync/index.d.ts +43 -0
  355. package/dist/powersync/index.js +199 -0
  356. package/dist/powersync/react/index.d.ts +87 -0
  357. package/dist/powersync/react/index.js +108 -0
  358. package/dist/{problem-BW1KhzSG.js → problem-BreOl8b8.js} +14 -3
  359. package/dist/{problem-Blxe8S31.d.ts → problem-DD8LZFjc.d.ts} +21 -3
  360. package/dist/provider-BH5UWZJ6.d.ts +113 -0
  361. package/dist/provider-Di3sRutW.js +57 -0
  362. package/dist/query/index.d.ts +4 -2
  363. package/dist/query/index.js +4 -3
  364. package/dist/{query-CCbo44lG.js → query-BQ-NaZon.js} +141 -24
  365. package/dist/{queue-BYUCjr59.d.ts → queue-CLJurhdy.d.ts} +258 -83
  366. package/dist/react/index.d.ts +11 -7
  367. package/dist/react/index.js +7 -3
  368. package/dist/react/native/index.d.ts +116 -0
  369. package/dist/react/native/index.js +130 -0
  370. package/dist/react/server.d.ts +28 -10
  371. package/dist/react/server.js +22 -5
  372. package/dist/react/session.d.ts +2 -2
  373. package/dist/react-4ZqkP8da.js +79 -0
  374. package/dist/react-F80mF4-t.js +409 -0
  375. package/dist/react-router/index.d.ts +83 -0
  376. package/dist/react-router/index.js +89 -0
  377. package/dist/react-topic-seAWjL3_.js +38 -0
  378. package/dist/{read-set-DQFt1N_Y.js → read-set-DuKWC9Mj.js} +67 -25
  379. package/dist/realtime/index.d.ts +4 -5
  380. package/dist/realtime/index.js +144 -82
  381. package/dist/refusal-CeJWxmkH.js +61 -0
  382. package/dist/refusal-D1rgbzNq.d.ts +15 -0
  383. package/dist/replicas-CwrYp5Zj.js +94 -0
  384. package/dist/{view-Bq64ki8-.js → resolve-D_IcnvFd.js} +239 -289
  385. package/dist/{resolve-C15TJq77.d.ts → resolve-KW8nCeL6.d.ts} +29 -45
  386. package/dist/{resource-CRxxwkQq.js → resource-BsvzCMlX.js} +4 -4
  387. package/dist/{resource-D8iqWMr-.d.ts → resource-D6Uc7Sk7.d.ts} +5 -5
  388. package/dist/respond-BUgsXNgk.js +91 -0
  389. package/dist/respond-DoBijysA.d.ts +93 -0
  390. package/dist/result-D7y2fT87.d.ts +282 -0
  391. package/dist/{result-BKiliPY7.js → result-DzUbqgdW.js} +27 -2
  392. package/dist/run-state-CPo-1X2B.d.ts +12 -0
  393. package/dist/run-state-CgBKzYMW.js +13 -0
  394. package/dist/search-CUWCRYKL.js +9 -0
  395. package/dist/server/index.d.ts +143 -21
  396. package/dist/server/index.js +46 -14
  397. package/dist/{respond-D2OQl62-.d.ts → server-CeVeeXwz.d.ts} +225 -80
  398. package/dist/session-ChiXDZdZ.d.ts +72 -0
  399. package/dist/shared-CBxosKK3.js +75 -0
  400. package/dist/{shared-D1dRUrAg.js → shared-CxWmcyqB.js} +2 -1
  401. package/dist/shared-DDSjEGDR.d.ts +11 -0
  402. package/dist/sign-in-BCV5S2WZ.d.ts +49 -0
  403. package/dist/sign-in-Cb1mwv6X.js +86 -0
  404. package/dist/{signers-Cc6r98SW.d.ts → signers-4y62_VIi.d.ts} +13 -9
  405. package/dist/simplify-DDO0j0LI.js +83 -0
  406. package/dist/solid/index.d.ts +131 -0
  407. package/dist/solid/index.js +344 -0
  408. package/dist/solid-start/index.d.ts +75 -0
  409. package/dist/solid-start/index.js +58 -0
  410. package/dist/{spec-pins-C3oc-Tdp.js → spec-pins--j6mTok4.js} +8 -1
  411. package/dist/{spec-pins-CqorWDnO.d.ts → spec-pins-C89s6DyW.d.ts} +7 -0
  412. package/dist/sql/index.d.ts +330 -194
  413. package/dist/sql/index.js +34901 -6489
  414. package/dist/ssr/index.d.ts +6 -5
  415. package/dist/ssr/index.js +3 -3
  416. package/dist/{standard-D7r6dMUu.js → standard-BK0cqJ7y.js} +4 -3
  417. package/dist/{standard-J4YgMOLm.d.ts → standard-CYsm7xpT.d.ts} +1 -1
  418. package/dist/stats-D_AD9GGu.js +1123 -0
  419. package/dist/storage/index.d.ts +5 -5
  420. package/dist/storage/index.js +1027 -368
  421. package/dist/store-BdH5ruDx.js +66 -0
  422. package/dist/store-CGjgWu5n.d.ts +68 -0
  423. package/dist/streams/index.d.ts +76 -0
  424. package/dist/streams/index.js +77 -0
  425. package/dist/streams/redis/index.d.ts +52 -0
  426. package/dist/streams/redis/index.js +185 -0
  427. package/dist/stripe-BMj5LtsT.js +38 -0
  428. package/dist/stripe-D04h-QBT.d.ts +136 -0
  429. package/dist/{support-Dk6vdmEw.js → support-BivNqSpK.js} +35 -12
  430. package/dist/{support-view-Da5peKFg.d.ts → support-view-33Oi07TT.d.ts} +1 -1
  431. package/dist/svelte/index.d.ts +114 -0
  432. package/dist/svelte/index.js +344 -0
  433. package/dist/sveltekit/index.d.ts +116 -0
  434. package/dist/sveltekit/index.js +106 -0
  435. package/dist/tags-B99_U9Pp.js +39 -0
  436. package/dist/tags-Cx-LnIQP.d.ts +30 -0
  437. package/dist/tanstack-db/index.d.ts +71 -0
  438. package/dist/tanstack-db/index.js +72 -0
  439. package/dist/tanstack-start/index.d.ts +75 -0
  440. package/dist/tanstack-start/index.js +95 -0
  441. package/dist/tee-CoEppCER.js +101 -0
  442. package/dist/{template-TxrGI5jR.js → template--jDkl3UP.js} +34 -13
  443. package/dist/template-CwO38Do8.d.ts +6 -0
  444. package/dist/temporal-BJGitm-h.js +79 -0
  445. package/dist/{temporal-required-CAt4Dc9Z.js → temporal-required-BVvW7SYJ.js} +3 -2
  446. package/dist/tenant-I1TEZ_BX.js +27 -0
  447. package/dist/tenant-icPeuUBN.d.ts +17 -0
  448. package/dist/testing/index.d.ts +343 -37
  449. package/dist/testing/index.js +1186 -79
  450. package/dist/timing-CyTQPubY.js +92 -0
  451. package/dist/ttl-Hr34gRu8.js +12 -0
  452. package/dist/{types-Dnf_wRDz.d.ts → types-6BdhkmZe.d.ts} +111 -45
  453. package/dist/types-BI-0Sl2v.d.ts +359 -0
  454. package/dist/types-C05bxW-W.d.ts +220 -0
  455. package/dist/types-DGs5L0VN.d.ts +192 -0
  456. package/dist/types-TaiEeBGA.d.ts +156 -0
  457. package/dist/usage-CrvrL2vw.d.ts +177 -0
  458. package/dist/user-change-XzvgafU4.js +130 -0
  459. package/dist/vault-CSO7ss5C.d.ts +50 -0
  460. package/dist/vercel-connect/index.d.ts +47 -0
  461. package/dist/vercel-connect/index.js +119 -0
  462. package/dist/{verify-Ce49ETPz.js → verify-DL41hbvY.js} +85 -13
  463. package/dist/verify-DPuWngD4.d.ts +172 -0
  464. package/dist/{version-DM_Roffb.js → version-Bvv6aLjZ.js} +1 -1
  465. package/dist/view-BeFcRV6G.js +99 -0
  466. package/dist/{view-BEf0diC5.d.ts → view-DbxLNu8L.d.ts} +35 -32
  467. package/dist/vue/index.d.ts +141 -0
  468. package/dist/vue/index.js +362 -0
  469. package/dist/watch-DI34G86j.d.ts +60 -0
  470. package/dist/watch-Xuxrvxq-.js +122 -0
  471. package/dist/{wire-D2dT86vi.js → wire-DtZQ4sdE.js} +15 -5
  472. package/dist/workflow-builder-DJ1oHn8g.js +398 -0
  473. package/dist/workflow-sdk/builder/index.d.ts +85 -0
  474. package/dist/workflow-sdk/builder/index.js +250 -0
  475. package/dist/workflow-sdk/index.d.ts +14 -0
  476. package/dist/workflow-sdk/index.js +3 -0
  477. package/dist/workflow-sdk/world/index.d.ts +107 -0
  478. package/dist/workflow-sdk/world/index.js +702 -0
  479. package/dist/workflow-sdk-B3yLD6Br.d.ts +98 -0
  480. package/dist/workflow-sdk-C2WJ_G2O.js +173 -0
  481. package/dist/workflow-sdk-world-D-prir6O.js +1397 -0
  482. package/dist/workflows-B0j9WKPu.d.ts +185 -0
  483. package/dist/workflows-wu1WWBn7.js +216 -0
  484. package/package.json +470 -29
  485. package/schemas/ai-message-v1.json +258 -0
  486. package/schemas/config-v1.json +1074 -140
  487. package/schemas/doctor-report-v1.json +21 -1
  488. package/schemas/snapshot-v2.json +8 -0
  489. package/skills/better-supabase/SKILL.md +41 -12
  490. package/skills/better-supabase/references/frontend.md +96 -0
  491. package/skills/better-supabase/references/plugins.md +10 -6
  492. package/skills/better-supabase/references/troubleshooting.md +2 -1
  493. package/skills/better-supabase-api/SKILL.md +76 -22
  494. package/skills/better-supabase-api/references/adapters.md +207 -0
  495. package/skills/better-supabase-api/references/ai.md +125 -0
  496. package/skills/better-supabase-api/references/expo.md +65 -0
  497. package/skills/better-supabase-api/references/powersync.md +35 -0
  498. package/skills/better-supabase-api/references/streams-credentials.md +105 -0
  499. package/skills/better-supabase-auth/SKILL.md +62 -18
  500. package/skills/better-supabase-auth/references/authorization-providers.md +51 -0
  501. package/skills/better-supabase-testing/SKILL.md +3 -1
  502. package/dist/cli/config-dtoekM0v.js +0 -2
  503. package/dist/cli/gen-BJc9vdyu.js +0 -2
  504. package/dist/cli/gen-C2osRcr5.js +0 -2204
  505. package/dist/cli/read-sets-BfMQcKy8.js +0 -289
  506. package/dist/cli/sql-DzPbfngx.js +0 -348
  507. package/dist/entitlements-CTEBm7IB.js +0 -20
  508. package/dist/events-aIO7vsIk.d.ts +0 -230
  509. package/dist/executor-BunPOO-k.d.ts +0 -402
  510. package/dist/executor-XycESQPH.js +0 -94
  511. package/dist/impersonation-VfaGc4Q_.js +0 -41
  512. package/dist/index-BGdgBPdf.d.ts +0 -161
  513. package/dist/index-DOESKG27.d.ts +0 -100
  514. package/dist/index-DmXSxbLi.d.ts +0 -62
  515. package/dist/index-Dxn2a5cw.d.ts +0 -50
  516. package/dist/jobs/index.d.ts +0 -226
  517. package/dist/jobs/index.js +0 -1007
  518. package/dist/json-schema-m1fiwKgN.js +0 -208
  519. package/dist/kit-events-CTFDfSwb.js +0 -60
  520. package/dist/kit-transport-B82k1djG.d.ts +0 -33
  521. package/dist/kits-CGLLrNPd.js +0 -157
  522. package/dist/notifications/index.d.ts +0 -162
  523. package/dist/notifications/index.js +0 -264
  524. package/dist/orgs/index.d.ts +0 -132
  525. package/dist/orgs/index.js +0 -245
  526. package/dist/permdock-sql-C2Inc6Xc.d.ts +0 -29
  527. package/dist/permdock-sql-DgOfeixi.js +0 -51
  528. package/dist/plugin-DwARMuQp.js +0 -59
  529. package/dist/server-Csx2sRjg.js +0 -655
  530. package/dist/stats-Bqob3WqT.js +0 -592
  531. package/dist/support-DT-OhSxD.d.ts +0 -88
  532. package/dist/template-mbvlysOo.d.ts +0 -6
  533. package/dist/temporal-CVlIV2DZ.js +0 -40
  534. package/dist/user-change-CHFEUro1.js +0 -49
  535. package/dist/webhooks/index.d.ts +0 -285
  536. package/skills/better-supabase-auth/references/permdock.md +0 -100
@@ -0,0 +1,246 @@
1
+ import { b as DbError, f as Result, t as AsyncResult } from "./result-D7y2fT87.js";
2
+ import { n as StoragePath } from "./path-Cv__-OTj.js";
3
+ import { a as BucketConnectOptions, h as StorageClient, i as BucketConfig, n as Bucket, r as BucketClient, s as BucketPolicy } from "./bucket-Cl46E3jS.js";
4
+ import { SupabaseClient } from "@supabase/supabase-js";
5
+ //#region src/storage/errors.d.ts
6
+ /** Maps a Storage error (`StorageApiError`, fetch failures) to a `DbError`. */
7
+ declare function fromStorageError(raw: unknown, table?: string): DbError;
8
+ //#endregion
9
+ //#region src/storage/image-url.d.ts
10
+ interface StorageImageOptions {
11
+ /** Project URL, e.g. `import.meta.env.PUBLIC_SUPABASE_URL`. */
12
+ readonly url: string;
13
+ /** Resize mode for the transform. Defaults to Storage's own (`cover`). */
14
+ readonly resize?: "cover" | "contain" | "fill";
15
+ }
16
+ /** The size and quality to render an image at. */
17
+ interface StorageImageSize {
18
+ readonly width: number;
19
+ readonly height?: number | undefined;
20
+ readonly quality?: number | undefined;
21
+ }
22
+ /**
23
+ * Turns public Storage object URLs into Supabase image transformation URLs
24
+ * (`/render/image/public`) at a given size. Any other URL (local files,
25
+ * other hosts, signed URLs) comes back as `undefined`: a signed URL's token
26
+ * covers the transform it was signed with, so sign it with `renderUrl()`.
27
+ *
28
+ * ```ts
29
+ * const imageUrl = storageImageUrl({ url: SUPABASE_URL })
30
+ * imageUrl(avatar, { width: 96 }) ?? avatar
31
+ * ```
32
+ */
33
+ declare function storageImageUrl(options: StorageImageOptions): (src: string, size: StorageImageSize) => string | undefined;
34
+ //#endregion
35
+ //#region src/storage/registry.d.ts
36
+ /** Any bucket definition from `defineBucket` or a preset. */
37
+ type AnyBucket = Bucket<string>;
38
+ type BucketMap = Readonly<Record<string, AnyBucket>>;
39
+ /** The bucket ids of a registry's buckets. */
40
+ type BucketIdOf<B extends BucketMap> = B[keyof B]["id"];
41
+ /** The bucket of a registry whose id is `I`. */
42
+ type BucketWithId<B extends BucketMap, I extends string> = Extract<B[keyof B], {
43
+ readonly id: I;
44
+ }>;
45
+ /** A stored object as rows keep it: the bucket id and the object path. */
46
+ interface StoredRef {
47
+ /** The bucket id, e.g. a `bucket_id` column. */
48
+ readonly bucket: string;
49
+ readonly path: string;
50
+ }
51
+ /** A stored reference whose bucket is registered and whose path matches one of its templates. */
52
+ interface ResolvedRef<B extends BucketMap> {
53
+ readonly bucket: B[keyof B];
54
+ readonly path: StoragePath<BucketIdOf<B>>;
55
+ }
56
+ /** A resolved reference with a client of its bucket. */
57
+ interface ConnectedRef<B extends BucketMap> extends ResolvedRef<B> {
58
+ readonly storage: BucketClient<string, BucketIdOf<B>>;
59
+ }
60
+ interface Buckets<B extends BucketMap> {
61
+ /** The bucket definitions, by the names given. */
62
+ readonly buckets: B;
63
+ /** Every registered bucket id, in the order given. */
64
+ readonly ids: readonly BucketIdOf<B>[];
65
+ /** Whether `id` names a registered bucket. */
66
+ has(id: string): id is BucketIdOf<B>;
67
+ /** The bucket with this id, or `invalid_input` for an id no bucket has. */
68
+ byId<I extends BucketIdOf<B>>(id: I): Result<BucketWithId<B, I>>;
69
+ byId(id: string): Result<B[keyof B]>;
70
+ /**
71
+ * Checks a stored `{ bucket, path }`: the bucket must be registered and the
72
+ * path must match one of its templates. Either failure is `invalid_input`.
73
+ */
74
+ resolve(ref: StoredRef): Result<ResolvedRef<B>>;
75
+ /**
76
+ * `resolve`, then `connect` the bucket and check the path with the
77
+ * connected client, so a bucket with `tenant` also refuses another
78
+ * tenant's path (`forbidden`). No request is made.
79
+ */
80
+ connectStored(client: StorageClient, ref: StoredRef, options?: BucketConnectOptions): Result<ConnectedRef<B>>;
81
+ }
82
+ /**
83
+ * A registry of bucket definitions by id, for rows that store a bucket id
84
+ * next to an object path (files, attachments, sources). An id no bucket
85
+ * has, and a path outside the bucket's templates, are errors, never a
86
+ * fallback bucket.
87
+ *
88
+ * ```ts
89
+ * export const buckets = defineBuckets({ files, attachments, logos });
90
+ *
91
+ * const ref = buckets.connectStored(supabase, {
92
+ * bucket: row.bucketId,
93
+ * path: row.path,
94
+ * }, { context: db.$context });
95
+ * if (ref.ok) await ref.data.storage.signedUrl(ref.data.path);
96
+ * ```
97
+ */
98
+ declare function defineBuckets<const B extends BucketMap>(buckets: B): Buckets<B>;
99
+ //#endregion
100
+ //#region src/storage/presets.d.ts
101
+ /** The image types browsers display everywhere. */
102
+ declare const IMAGE_TYPES: readonly string[];
103
+ interface ImageBucketOptions<P extends string, Id extends string> {
104
+ readonly id?: Id;
105
+ /** The path template; keep the preset's placeholders the policy relies on. */
106
+ readonly path?: P | readonly [P, ...P[]];
107
+ /** Defaults to `true`: images load from their public URL without signing. */
108
+ readonly public?: boolean;
109
+ readonly fileSizeLimit?: string | number;
110
+ readonly allowedMimeTypes?: readonly string[];
111
+ /** Replaces the preset's policy. */
112
+ readonly policy?: BucketPolicy;
113
+ }
114
+ type AvatarBucketOptions<P extends string, Id extends string> = ImageBucketOptions<P, Id>;
115
+ interface OrganizationLogoBucketOptions<P extends string, Id extends string> extends ImageBucketOptions<P, Id> {
116
+ /**
117
+ * The permission that may upload, replace and delete a logo, checked
118
+ * through the access contract. Defaults to `organization.update`, the
119
+ * `organizations` module's update permission.
120
+ */
121
+ readonly permission?: string;
122
+ /**
123
+ * The tenant segment connected clients are held to. `false` lets one
124
+ * client upload for any organization the policy allows. Defaults to
125
+ * `{ param: 'organizationId' }`.
126
+ */
127
+ readonly tenant?: BucketConfig["tenant"] | false;
128
+ }
129
+ declare const AVATAR_PATH = "{userId}/avatar-{version}.{ext}";
130
+ declare const LOGO_PATH = "{organizationId}/logo-{version}.{ext}";
131
+ /**
132
+ * A bucket for profile pictures: `{userId}/avatar-{version}.{ext}`, public,
133
+ * 2 MiB of images, written only by their owner (the `owner` policy).
134
+ */
135
+ declare function avatarBucket<const P extends string = typeof AVATAR_PATH, const Id extends string = "avatars">(options?: AvatarBucketOptions<P, Id>): Bucket<P, Id>;
136
+ /**
137
+ * A bucket for organization logos: `{organizationId}/logo-{version}.{ext}`, public,
138
+ * 2 MiB of images, written by members with the update permission through
139
+ * the access contract (`tenant_ids_with`), so it follows the app's roles.
140
+ */
141
+ declare function organizationLogoBucket<const P extends string = typeof LOGO_PATH, const Id extends string = "organization-logos">(options?: OrganizationLogoBucketOptions<P, Id>): Bucket<P, Id>;
142
+ //#endregion
143
+ //#region src/storage/analytics-bucket.d.ts
144
+ /** The Iceberg REST catalog of an analytics bucket, from `storage.analytics.from(id)`. */
145
+ type AnalyticsCatalog = ReturnType<SupabaseClient["storage"]["analytics"]["from"]>;
146
+ interface AnalyticsBucketClient {
147
+ /** Creates the bucket when it is missing. Needs the secret key. */
148
+ apply(): AsyncResult<{
149
+ readonly created: boolean;
150
+ }>;
151
+ /** The bucket's Iceberg catalog: namespaces and tables, each call returning `{ data, error }`. */
152
+ catalog(): AnalyticsCatalog;
153
+ }
154
+ interface AnalyticsBucket<Id extends string> {
155
+ readonly id: Id;
156
+ connect(client: StorageClient): AnalyticsBucketClient;
157
+ }
158
+ /**
159
+ * A Storage analytics bucket: Apache Iceberg tables that query engines read
160
+ * through the Iceberg REST catalog.
161
+ *
162
+ * ```ts
163
+ * export const events = defineAnalyticsBucket({ id: "events" });
164
+ * await events.connect(admin).apply().orThrow();
165
+ * ```
166
+ */
167
+ declare function defineAnalyticsBucket<const Id extends string>(config: {
168
+ readonly id: Id;
169
+ }): AnalyticsBucket<Id>;
170
+ //#endregion
171
+ //#region src/storage/vector-bucket.d.ts
172
+ type VectorDistance = "cosine" | "euclidean" | "dotproduct";
173
+ interface VectorIndexConfig {
174
+ /** Number of values in every vector, e.g. 1536 for `text-embedding-3-small`. */
175
+ readonly dimension: number;
176
+ /** Defaults to `cosine`. */
177
+ readonly distanceMetric?: VectorDistance;
178
+ /** Metadata keys stored with each vector but not usable in `filter`. */
179
+ readonly nonFilterableMetadataKeys?: readonly string[];
180
+ }
181
+ interface VectorBucketConfig<Id extends string, I extends Readonly<Record<string, VectorIndexConfig>>> {
182
+ readonly id: Id;
183
+ readonly indexes: I;
184
+ }
185
+ type VectorMetadata = Readonly<Record<string, unknown>>;
186
+ interface VectorRecord<M extends VectorMetadata = VectorMetadata> {
187
+ readonly key: string;
188
+ readonly vector: readonly number[];
189
+ readonly metadata?: M;
190
+ }
191
+ interface VectorHit<M extends VectorMetadata = VectorMetadata> {
192
+ readonly key: string;
193
+ /** Set by `query()`: smaller is closer for every metric. */
194
+ readonly distance?: number;
195
+ readonly metadata?: M;
196
+ readonly vector?: readonly number[];
197
+ }
198
+ interface VectorQueryOptions {
199
+ /** Number of matches, defaults to 10. */
200
+ readonly topK?: number;
201
+ /** A metadata filter, e.g. `{ organizationId: "o1" }` or `{ year: { $gte: 2024 } }`. */
202
+ readonly filter?: VectorMetadata;
203
+ /** Return each match's metadata. Defaults to `true`. */
204
+ readonly metadata?: boolean;
205
+ }
206
+ interface VectorIndexClient<M extends VectorMetadata = VectorMetadata> {
207
+ readonly name: string;
208
+ readonly dimension: number;
209
+ /** Inserts or replaces vectors by key, in batches of 500. */
210
+ put(records: readonly VectorRecord<M>[]): AsyncResult<number>;
211
+ /** The nearest vectors, closest first. */
212
+ query(vector: readonly number[], options?: VectorQueryOptions): AsyncResult<readonly VectorHit<M>[]>;
213
+ /** Vectors by key; missing keys are left out. */
214
+ get(keys: readonly string[], options?: {
215
+ readonly vector?: boolean;
216
+ }): AsyncResult<readonly VectorHit<M>[]>;
217
+ remove(keys: readonly string[]): AsyncResult<readonly string[]>;
218
+ }
219
+ interface VectorBucketClient<I extends string> {
220
+ /** Creates the bucket and any missing index. An index with another dimension or metric is a `conflict`. */
221
+ apply(): AsyncResult<{
222
+ readonly created: readonly string[];
223
+ }>;
224
+ index<M extends VectorMetadata = VectorMetadata>(name: I): VectorIndexClient<M>;
225
+ }
226
+ interface VectorBucket<Id extends string, I extends Readonly<Record<string, VectorIndexConfig>>> {
227
+ readonly id: Id;
228
+ readonly indexes: I;
229
+ connect(client: StorageClient): VectorBucketClient<keyof I & string>;
230
+ }
231
+ /**
232
+ * A Storage vector bucket with typed indexes. Storage keeps the vectors
233
+ * outside Postgres; use the `vector-search` module for pgvector in a table.
234
+ *
235
+ * ```ts
236
+ * export const embeddings = defineVectorBucket({
237
+ * id: "embeddings",
238
+ * indexes: { documents: { dimension: 1536 } },
239
+ * });
240
+ * const docs = embeddings.connect(admin).index("documents");
241
+ * await docs.put([{ key: doc.id, vector, metadata: { organizationId } }]);
242
+ * ```
243
+ */
244
+ declare function defineVectorBucket<const Id extends string, const I extends Readonly<Record<string, VectorIndexConfig>>>(config: VectorBucketConfig<Id, I>): VectorBucket<Id, I>;
245
+ //#endregion
246
+ export { defineBuckets as A, BucketIdOf as C, ConnectedRef as D, Buckets as E, StorageImageSize as M, storageImageUrl as N, ResolvedRef as O, fromStorageError as P, AnyBucket as S, BucketWithId as T, IMAGE_TYPES as _, VectorHit as a, avatarBucket as b, VectorMetadata as c, defineVectorBucket as d, AnalyticsBucket as f, AvatarBucketOptions as g, defineAnalyticsBucket as h, VectorDistance as i, StorageImageOptions as j, StoredRef as k, VectorQueryOptions as l, AnalyticsCatalog as m, VectorBucketClient as n, VectorIndexClient as o, AnalyticsBucketClient as p, VectorBucketConfig as r, VectorIndexConfig as s, VectorBucket as t, VectorRecord as u, ImageBucketOptions as v, BucketMap as w, organizationLogoBucket as x, OrganizationLogoBucketOptions as y };
@@ -0,0 +1,138 @@
1
+ import { n as RouteGuardOptions } from "./refusal-D1rgbzNq.js";
2
+ import { t as Validated } from "./shared-DDSjEGDR.js";
3
+ import { AnyEntry, Contributions } from "@supabase/middleware";
4
+ import { IncomingMessage, ServerResponse } from "node:http";
5
+ //#region src/node/http.d.ts
6
+ interface WebRequestOptions {
7
+ /**
8
+ * Read the protocol and host from `x-forwarded-proto` and
9
+ * `x-forwarded-host`. Turn it on behind a proxy you control. Defaults to false.
10
+ */
11
+ readonly trustProxy?: boolean;
12
+ /** Stream the request body into the `Request`. Defaults to true. */
13
+ readonly body?: boolean;
14
+ }
15
+ /**
16
+ * A Node `IncomingMessage` as a Web `Request`. Express, Fastify and Koa
17
+ * pass theirs (`req`, `request.raw`, `ctx.req`). With `body: false` the
18
+ * stream stays unread, for middleware that runs before a body parser.
19
+ */
20
+ declare function toWebRequest(req: IncomingMessage, options?: WebRequestOptions): Request;
21
+ /** Writes a Web `Response` to a Node `ServerResponse`, streaming the body. */
22
+ declare function sendWebResponse(res: ServerResponse, response: Response): Promise<void>;
23
+ //#endregion
24
+ //#region src/node/index.d.ts
25
+ interface ToNodeOptions<Req = IncomingMessage> extends Omit<WebRequestOptions, "body"> {
26
+ /** The host's env object for `getEnv`; defaults to `process.env` through `getEnv`. */
27
+ readonly env?: (req: Req) => unknown;
28
+ }
29
+ /**
30
+ * A `node:http` request listener running the entries around `handler`.
31
+ * Response-phase entries see the handler's response, so refreshed cookies
32
+ * and `withDbStats` totals reach the client.
33
+ *
34
+ * ```ts
35
+ * createServer(toNodeHandler([withBetterSupabase(server)], (request, { db }) => db.notes.findMany()))
36
+ * ```
37
+ */
38
+ declare function toNodeHandler<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, handler: (request: Request, contributions: Contributions<Entries>) => unknown, options?: ToNodeOptions): (req: IncomingMessage, res: ServerResponse) => Promise<void>;
39
+ /** The part of an Express response the middleware writes. */
40
+ interface ExpressResponse extends ServerResponse {
41
+ /** Express's per-request locals; the contributions land here. */
42
+ locals: Record<string, unknown>;
43
+ }
44
+ /** Express (or Connect) middleware, typed structurally. */
45
+ type ExpressMiddleware = (req: IncomingMessage, res: ExpressResponse, next: (error?: unknown) => void) => void;
46
+ /** An Express error handler, typed structurally. */
47
+ type ExpressErrorHandler = (error: unknown, req: IncomingMessage, res: ExpressResponse, next: (error?: unknown) => void) => void;
48
+ /**
49
+ * Express middleware that puts every contribution on `res.locals`
50
+ * (`res.locals.db`, `res.locals.bs`). Mount it before the routes.
51
+ *
52
+ * ```ts
53
+ * app.use(toExpress([withBetterSupabase(server)]))
54
+ * app.get('/notes', async (req, res) => res.json(await res.locals.db.notes.findMany().orThrow()))
55
+ * ```
56
+ */
57
+ declare function toExpress<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions): ExpressMiddleware;
58
+ /**
59
+ * Express route middleware that refuses callers outside `options`:
60
+ * Problem Details, or a redirect to `signIn` or `mfa`. Runs after `toExpress`.
61
+ *
62
+ * ```ts
63
+ * app.get('/admin', guard({ roles: ['admin'] }), handler)
64
+ * ```
65
+ */
66
+ declare function guard(options?: RouteGuardOptions): ExpressMiddleware;
67
+ /**
68
+ * An Express error handler that answers thrown `DbException`s (from
69
+ * `.orThrow()`) with Problem Details and passes every other error on.
70
+ * Register it after the routes.
71
+ */
72
+ declare function problemErrorHandler(options?: {
73
+ readonly expose?: boolean;
74
+ }): ExpressErrorHandler;
75
+ /** The part of a Fastify request the hook reads and writes. */
76
+ interface FastifyRequestLike {
77
+ readonly raw: IncomingMessage;
78
+ /** The contributions land here: `request.locals.db`. */
79
+ locals?: Record<string, unknown>;
80
+ }
81
+ /** The part of a Fastify reply the hook writes. */
82
+ interface FastifyReplyLike {
83
+ readonly raw: ServerResponse;
84
+ readonly sent: boolean;
85
+ code(status: number): FastifyReplyLike;
86
+ header(name: string, value: string | readonly string[]): FastifyReplyLike;
87
+ getHeader(name: string): number | string | string[] | undefined;
88
+ send(payload?: unknown): FastifyReplyLike;
89
+ }
90
+ /** A Fastify `onRequest` or `preHandler` hook, typed structurally. */
91
+ type FastifyHook = (request: FastifyRequestLike, reply: FastifyReplyLike) => Promise<void>;
92
+ /**
93
+ * A Fastify `onRequest` hook that puts every contribution on
94
+ * `request.locals`. Declare `locals` with `app.decorateRequest('locals', null)`.
95
+ *
96
+ * ```ts
97
+ * app.decorateRequest('locals', null)
98
+ * app.addHook('onRequest', toFastify([withBetterSupabase(server)]))
99
+ * app.get('/notes', (request) => request.locals.db.notes.findMany().orThrow())
100
+ * ```
101
+ */
102
+ declare function toFastify<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions<FastifyRequestLike>): FastifyHook;
103
+ /**
104
+ * A Fastify `preHandler` hook that refuses callers outside `options`. Runs
105
+ * after `toFastify`.
106
+ */
107
+ declare function fastifyGuard(options?: RouteGuardOptions): FastifyHook;
108
+ /** The part of a Koa context the middleware reads and writes. */
109
+ interface KoaContextLike {
110
+ readonly req: IncomingMessage;
111
+ readonly res: ServerResponse;
112
+ /** Koa's per-request state; the contributions land here. */
113
+ state: Record<string, unknown>;
114
+ status: number;
115
+ body: unknown;
116
+ set(name: string, value: string | readonly string[]): void;
117
+ get response(): {
118
+ get(name: string): string | string[] | undefined;
119
+ };
120
+ }
121
+ /** Koa middleware, typed structurally. */
122
+ type KoaMiddleware = (ctx: KoaContextLike, next: () => Promise<unknown>) => Promise<void>;
123
+ /**
124
+ * Koa middleware that puts every contribution on `ctx.state`, then awaits
125
+ * the rest of the chain. Thrown `DbException`s become Problem Details.
126
+ *
127
+ * ```ts
128
+ * app.use(toKoa([withBetterSupabase(server)]))
129
+ * app.use(async (ctx) => { ctx.body = await ctx.state.db.notes.findMany().orThrow() })
130
+ * ```
131
+ */
132
+ declare function toKoa<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions<KoaContextLike> & {
133
+ readonly expose?: boolean;
134
+ }): KoaMiddleware;
135
+ /** Koa middleware that refuses callers outside `options`. Runs after `toKoa`. */
136
+ declare function koaGuard(options?: RouteGuardOptions): KoaMiddleware;
137
+ //#endregion
138
+ export { toNodeHandler as _, FastifyReplyLike as a, toWebRequest as b, KoaMiddleware as c, guard as d, koaGuard as f, toKoa as g, toFastify as h, FastifyHook as i, ToNodeOptions as l, toExpress as m, ExpressMiddleware as n, FastifyRequestLike as o, problemErrorHandler as p, ExpressResponse as r, KoaContextLike as s, ExpressErrorHandler as t, fastifyGuard as u, WebRequestOptions as v, sendWebResponse as y };
@@ -0,0 +1,98 @@
1
+ import { P as SchemaMeta, u as ClaimsMeta } from "./types-6BdhkmZe.js";
2
+ import { h as Generator } from "./config-D44Y7PAv.js";
3
+ //#region src/core/claims.d.ts
4
+ declare const DEFAULT_CLAIMS: ClaimsMeta;
5
+ /** Where an adapter reads each claim the SQL modules and the provider's hook write. */
6
+ interface ClaimPaths {
7
+ /** The active tenant: the top-level claim, then the same key in `app_metadata`. */
8
+ readonly tenant: readonly [string, string];
9
+ /** `{ [tenantId]: string[] }` of plan features. */
10
+ readonly features: string;
11
+ /** The caller's memberships, a list of `{ scope, id, roles }` or a map of tenant id to role. */
12
+ readonly memberships: string;
13
+ /** The `scope` of tenant entries in the memberships list. */
14
+ readonly scope: string;
15
+ }
16
+ /**
17
+ * The claim paths for `config.claims`, with defaults. For a generated
18
+ * schema, pass `claimsOf(meta)`.
19
+ */
20
+ declare function claimPaths(claims?: Partial<ClaimsMeta>): ClaimPaths;
21
+ /** Where the active tenant is read from: the top-level claim, then `app_metadata`. */
22
+ declare function tenantClaimPaths(tenant?: string): readonly [string, string];
23
+ //#endregion
24
+ //#region src/generators/shared.d.ts
25
+ /** What field planning reads: the metadata and the typed-jsonb config. */
26
+ interface SchemaSource {
27
+ readonly meta: SchemaMeta;
28
+ readonly config: {
29
+ readonly json: Readonly<Record<string, unknown>>;
30
+ };
31
+ }
32
+ interface CommentEntry {
33
+ readonly id: number;
34
+ readonly schema: string;
35
+ readonly name: string;
36
+ readonly comment: string | null;
37
+ }
38
+ /**
39
+ * The catalog parts docs read: `GeneratorInput` satisfies it. Runtime callers
40
+ * that only have `meta` (OpenAPI, MCP) pass none and get no docs.
41
+ */
42
+ interface DocsSource extends SchemaSource {
43
+ readonly introspection?: {
44
+ readonly tables: readonly CommentEntry[];
45
+ readonly views: readonly CommentEntry[];
46
+ readonly materializedViews?: readonly CommentEntry[];
47
+ readonly columns: readonly {
48
+ readonly table_id: number;
49
+ readonly name: string;
50
+ readonly comment: string | null;
51
+ readonly check: string | null;
52
+ }[];
53
+ };
54
+ readonly extras?: {
55
+ readonly tables: readonly {
56
+ readonly schema: string;
57
+ readonly name: string;
58
+ readonly checks: readonly {
59
+ readonly definition: string;
60
+ }[];
61
+ }[];
62
+ };
63
+ }
64
+ //#endregion
65
+ //#region src/generators/json-schema.d.ts
66
+ interface JsonSchemaGeneratorOptions {
67
+ /** Output path relative to the project root. Defaults to `<output>.schema.json`. */
68
+ readonly output?: string;
69
+ /** `$id` of the document. */
70
+ readonly id?: string;
71
+ }
72
+ type JsonSchema = Record<string, unknown>;
73
+ /** JSON Schema (2020-12) `$defs` for every table: `customersRow`, `customersInsert`, ... */
74
+ declare function buildJsonSchema(input: DocsSource, id?: string): JsonSchema;
75
+ /** Writes the JSON Schema document; `createOpenApi` reuses the same `$defs`. */
76
+ declare function jsonSchema(options?: JsonSchemaGeneratorOptions): Generator;
77
+ //#endregion
78
+ //#region src/generators/valibot.d.ts
79
+ interface ValibotGeneratorOptions {
80
+ /** Output path relative to the project root. Defaults to `<output>.valibot.ts`. */
81
+ readonly output?: string;
82
+ /** Schemas for typed jsonb columns: `{ 'customers.metadata': './schemas.ts#metadata' }`. */
83
+ readonly json?: Readonly<Record<string, string>>;
84
+ }
85
+ /** Valibot schemas for every table's Row, Insert and Update shape. */
86
+ declare function valibot(options?: ValibotGeneratorOptions): Generator;
87
+ //#endregion
88
+ //#region src/generators/zod.d.ts
89
+ interface ZodGeneratorOptions {
90
+ /** Output path relative to the project root. Defaults to `<output>.zod.ts`. */
91
+ readonly output?: string;
92
+ /** Schemas for typed jsonb columns: `{ 'customers.metadata': './schemas.ts#metadata' }`. */
93
+ readonly json?: Readonly<Record<string, string>>;
94
+ }
95
+ /** Zod 4 schemas for every table's Row, Insert and Update shape. */
96
+ declare function zod(options?: ZodGeneratorOptions): Generator;
97
+ //#endregion
98
+ export { JsonSchemaGeneratorOptions as a, ClaimPaths as c, tenantClaimPaths as d, valibot as i, DEFAULT_CLAIMS as l, zod as n, buildJsonSchema as o, ValibotGeneratorOptions as r, jsonSchema as s, ZodGeneratorOptions as t, claimPaths as u };