dineway 0.1.49 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/dist/activity-DUaz_w7p.mjs +79 -0
  2. package/dist/{activity-events-CwM7yxPW.mjs → activity-events-CJDvE2uc.mjs} +5 -113
  3. package/dist/actor-0QJ1Gbtf.mjs +37 -0
  4. package/dist/after-BfniwgIf.mjs +9 -0
  5. package/dist/{allowed-origins-CyGnbgBd.mjs → allowed-origins--OwHHiY8.mjs} +1 -1
  6. package/dist/api/route-utils.d.mts +9 -10
  7. package/dist/api/route-utils.mjs +16 -13
  8. package/dist/api/schemas/index.d.mts +2 -2
  9. package/dist/api/schemas/index.mjs +5 -4
  10. package/dist/{api-BMIxRIEN.mjs → api-B4PHIF4V.mjs} +93 -41
  11. package/dist/{api-tokens-DtvdtIkm.mjs → api-tokens-tbK_sORH.mjs} +6 -2
  12. package/dist/{apply-D_RlTYtC.mjs → apply-DjTqq6Ae.mjs} +117 -77
  13. package/dist/astro/image-endpoint.d.mts +7 -0
  14. package/dist/astro/image-endpoint.mjs +54 -0
  15. package/dist/astro/index.d.mts +34 -11
  16. package/dist/astro/index.mjs +163 -24
  17. package/dist/astro/integration/shims/use-sync-external-store-with-selector.js +71 -0
  18. package/dist/astro/integration/shims/use-sync-external-store.js +1 -0
  19. package/dist/astro/middleware/auth.d.mts +8 -18
  20. package/dist/astro/middleware/auth.mjs +42 -24
  21. package/dist/astro/middleware/redirect.mjs +13 -4
  22. package/dist/astro/middleware/request-context.mjs +8 -5
  23. package/dist/astro/middleware/seed.d.mts +1 -1
  24. package/dist/astro/middleware/seed.mjs +2 -2
  25. package/dist/astro/middleware/setup.mjs +1 -1
  26. package/dist/astro/middleware.mjs +389 -206
  27. package/dist/astro/routes/admin.astro +6 -1
  28. package/dist/astro/routes/api/admin/allowed-domains/_domain_.mjs +7 -6
  29. package/dist/astro/routes/api/admin/allowed-domains/index.mjs +7 -6
  30. package/dist/astro/routes/api/admin/api-tokens/_id_.mjs +4 -4
  31. package/dist/astro/routes/api/admin/api-tokens/index.mjs +6 -6
  32. package/dist/astro/routes/api/admin/briefing.mjs +21 -17
  33. package/dist/astro/routes/api/admin/byline-fields/_slug_/usage.mjs +4 -4
  34. package/dist/astro/routes/api/admin/byline-fields/_slug_.mjs +9 -8
  35. package/dist/astro/routes/api/admin/byline-fields/index.mjs +9 -8
  36. package/dist/astro/routes/api/admin/byline-fields/reorder.mjs +9 -8
  37. package/dist/astro/routes/api/admin/bylines/_id_/index.mjs +17 -14
  38. package/dist/astro/routes/api/admin/bylines/_id_/translations.mjs +17 -14
  39. package/dist/astro/routes/api/admin/bylines/index.mjs +17 -14
  40. package/dist/astro/routes/api/admin/comments/_id_/status.mjs +14 -12
  41. package/dist/astro/routes/api/admin/comments/_id_.mjs +6 -5
  42. package/dist/astro/routes/api/admin/comments/bulk.mjs +11 -9
  43. package/dist/astro/routes/api/admin/comments/counts.mjs +6 -5
  44. package/dist/astro/routes/api/admin/comments/index.mjs +11 -9
  45. package/dist/astro/routes/api/admin/context/_id_/history.mjs +27 -24
  46. package/dist/astro/routes/api/admin/context/_id_/index.mjs +27 -24
  47. package/dist/astro/routes/api/admin/context/_id_/review.mjs +32 -28
  48. package/dist/astro/routes/api/admin/context/_id_/supersede.mjs +32 -28
  49. package/dist/astro/routes/api/admin/context/diff.mjs +31 -27
  50. package/dist/astro/routes/api/admin/context/index.mjs +32 -28
  51. package/dist/astro/routes/api/admin/context/stale.mjs +31 -27
  52. package/dist/astro/routes/api/admin/hitl-requests/_id_/index.mjs +27 -24
  53. package/dist/astro/routes/api/admin/hitl-requests/_id_/resolve.mjs +31 -27
  54. package/dist/astro/routes/api/admin/hitl-requests/index.mjs +31 -27
  55. package/dist/astro/routes/api/admin/hooks/exclusive/_hookName_.mjs +28 -25
  56. package/dist/astro/routes/api/admin/hooks/exclusive/index.mjs +3 -3
  57. package/dist/astro/routes/api/admin/oauth-clients/_id_.mjs +6 -6
  58. package/dist/astro/routes/api/admin/oauth-clients/index.mjs +6 -6
  59. package/dist/astro/routes/api/admin/plugins/_id_/disable.mjs +56 -51
  60. package/dist/astro/routes/api/admin/plugins/_id_/enable.mjs +56 -51
  61. package/dist/astro/routes/api/admin/plugins/_id_/index.mjs +47 -43
  62. package/dist/astro/routes/api/admin/plugins/_id_/uninstall.mjs +54 -49
  63. package/dist/astro/routes/api/admin/plugins/_id_/update.mjs +53 -48
  64. package/dist/astro/routes/api/admin/plugins/index.mjs +47 -43
  65. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/icon.mjs +2 -2
  66. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/index.mjs +46 -42
  67. package/dist/astro/routes/api/admin/plugins/marketplace/_id_/install.mjs +53 -48
  68. package/dist/astro/routes/api/admin/plugins/marketplace/index.mjs +46 -42
  69. package/dist/astro/routes/api/admin/plugins/updates.mjs +46 -42
  70. package/dist/astro/routes/api/admin/review-requests/_id_/index.mjs +5 -5
  71. package/dist/astro/routes/api/admin/review-requests/_id_/resolve.mjs +32 -63
  72. package/dist/astro/routes/api/admin/review-requests/index.d.mts +2 -1
  73. package/dist/astro/routes/api/admin/review-requests/index.mjs +58 -10
  74. package/dist/astro/routes/api/admin/themes/marketplace/_id_/index.mjs +46 -42
  75. package/dist/astro/routes/api/admin/themes/marketplace/_id_/thumbnail.mjs +2 -2
  76. package/dist/astro/routes/api/admin/themes/marketplace/index.mjs +46 -42
  77. package/dist/astro/routes/api/admin/users/_id_/disable.mjs +3 -3
  78. package/dist/astro/routes/api/admin/users/_id_/enable.mjs +2 -2
  79. package/dist/astro/routes/api/admin/users/_id_/index.mjs +8 -7
  80. package/dist/astro/routes/api/admin/users/_id_/send-recovery.mjs +4 -4
  81. package/dist/astro/routes/api/admin/users/index.mjs +7 -6
  82. package/dist/astro/routes/api/auth/dev-bypass.mjs +4 -4
  83. package/dist/astro/routes/api/auth/invite/accept.mjs +2 -2
  84. package/dist/astro/routes/api/auth/invite/complete.mjs +12 -11
  85. package/dist/astro/routes/api/auth/invite/index.mjs +9 -8
  86. package/dist/astro/routes/api/auth/invite/register-options.mjs +11 -10
  87. package/dist/astro/routes/api/auth/logout.mjs +2 -2
  88. package/dist/astro/routes/api/auth/magic-link/send.mjs +11 -10
  89. package/dist/astro/routes/api/auth/magic-link/verify.mjs +3 -3
  90. package/dist/astro/routes/api/auth/me.mjs +9 -8
  91. package/dist/astro/routes/api/auth/mode.mjs +1 -1
  92. package/dist/astro/routes/api/auth/oauth/_provider_/callback.mjs +3 -3
  93. package/dist/astro/routes/api/auth/oauth/_provider_.mjs +2 -2
  94. package/dist/astro/routes/api/auth/passkey/_id_.mjs +6 -5
  95. package/dist/astro/routes/api/auth/passkey/index.mjs +1 -1
  96. package/dist/astro/routes/api/auth/passkey/options.mjs +12 -11
  97. package/dist/astro/routes/api/auth/passkey/register/options.mjs +10 -9
  98. package/dist/astro/routes/api/auth/passkey/register/verify.mjs +11 -10
  99. package/dist/astro/routes/api/auth/passkey/verify.mjs +11 -10
  100. package/dist/astro/routes/api/auth/setup-token/index.mjs +5 -5
  101. package/dist/astro/routes/api/auth/setup-token/verify.mjs +2 -2
  102. package/dist/astro/routes/api/auth/signup/complete.mjs +12 -11
  103. package/dist/astro/routes/api/auth/signup/request.mjs +11 -10
  104. package/dist/astro/routes/api/auth/signup/verify.mjs +2 -2
  105. package/dist/astro/routes/api/comments/_collection_/_contentId_/index.mjs +15 -13
  106. package/dist/astro/routes/api/comments/_collection_/_contentId_/reactions.d.mts +8 -0
  107. package/dist/astro/routes/api/comments/_collection_/_contentId_/reactions.mjs +160 -0
  108. package/dist/astro/routes/api/content/_collection_/_id_/compare.mjs +2 -2
  109. package/dist/astro/routes/api/content/_collection_/_id_/discard-draft.mjs +6 -5
  110. package/dist/astro/routes/api/content/_collection_/_id_/duplicate.mjs +6 -5
  111. package/dist/astro/routes/api/content/_collection_/_id_/permanent.mjs +6 -5
  112. package/dist/astro/routes/api/content/_collection_/_id_/preview-url.mjs +11 -10
  113. package/dist/astro/routes/api/content/_collection_/_id_/publish.mjs +49 -20
  114. package/dist/astro/routes/api/content/_collection_/_id_/restore.mjs +6 -5
  115. package/dist/astro/routes/api/content/_collection_/_id_/revisions.mjs +2 -2
  116. package/dist/astro/routes/api/content/_collection_/_id_/schedule.mjs +67 -32
  117. package/dist/astro/routes/api/content/_collection_/_id_/terms/_taxonomy_.mjs +16 -14
  118. package/dist/astro/routes/api/content/_collection_/_id_/translations.mjs +2 -2
  119. package/dist/astro/routes/api/content/_collection_/_id_/unpublish.mjs +6 -5
  120. package/dist/astro/routes/api/content/_collection_/_id_.mjs +11 -9
  121. package/dist/astro/routes/api/content/_collection_/authors.mjs +2 -2
  122. package/dist/astro/routes/api/content/_collection_/index.mjs +11 -9
  123. package/dist/astro/routes/api/content/_collection_/trash.mjs +7 -6
  124. package/dist/astro/routes/api/dashboard.mjs +9 -8
  125. package/dist/astro/routes/api/dev/emails.mjs +2 -2
  126. package/dist/astro/routes/api/health.mjs +1 -1
  127. package/dist/astro/routes/api/import/probe.d.mts +3 -3
  128. package/dist/astro/routes/api/import/probe.mjs +22 -10
  129. package/dist/astro/routes/api/import/wordpress/analyze.mjs +9 -6
  130. package/dist/astro/routes/api/import/wordpress/execute.d.mts +18 -1
  131. package/dist/astro/routes/api/import/wordpress/execute.mjs +85 -37
  132. package/dist/astro/routes/api/import/wordpress/media.d.mts +12 -1
  133. package/dist/astro/routes/api/import/wordpress/media.mjs +20 -14
  134. package/dist/astro/routes/api/import/wordpress/prepare.mjs +36 -32
  135. package/dist/astro/routes/api/import/wordpress/rewrite-urls.d.mts +17 -1
  136. package/dist/astro/routes/api/import/wordpress/rewrite-urls.mjs +121 -100
  137. package/dist/astro/routes/api/import/wordpress-plugin/analyze.d.mts +1 -1
  138. package/dist/astro/routes/api/import/wordpress-plugin/analyze.mjs +24 -12
  139. package/dist/astro/routes/api/import/wordpress-plugin/execute.d.mts +55 -2
  140. package/dist/astro/routes/api/import/wordpress-plugin/execute.mjs +284 -55
  141. package/dist/astro/routes/api/manifest.mjs +14 -5
  142. package/dist/astro/routes/api/mcp.mjs +753 -170
  143. package/dist/astro/routes/api/media/_id_/confirm.mjs +38 -10
  144. package/dist/astro/routes/api/media/_id_.mjs +11 -7
  145. package/dist/astro/routes/api/media/file/_...key_.mjs +1 -1
  146. package/dist/astro/routes/api/media/providers/_providerId_/_itemId_.mjs +2 -2
  147. package/dist/astro/routes/api/media/providers/_providerId_/index.mjs +2 -2
  148. package/dist/astro/routes/api/media/providers/index.mjs +2 -2
  149. package/dist/astro/routes/api/media/upload-url.mjs +11 -10
  150. package/dist/astro/routes/api/media.mjs +28 -35
  151. package/dist/astro/routes/api/menus/_name_/items/_id_.mjs +32 -28
  152. package/dist/astro/routes/api/menus/_name_/items.mjs +32 -28
  153. package/dist/astro/routes/api/menus/_name_/reorder.mjs +32 -28
  154. package/dist/astro/routes/api/menus/_name_/translations.mjs +32 -28
  155. package/dist/astro/routes/api/menus/_name_.mjs +32 -28
  156. package/dist/astro/routes/api/menus/index.mjs +32 -28
  157. package/dist/astro/routes/api/oauth/authorize.mjs +7 -7
  158. package/dist/astro/routes/api/oauth/device/authorize.mjs +6 -6
  159. package/dist/astro/routes/api/oauth/device/code.mjs +9 -9
  160. package/dist/astro/routes/api/oauth/device/token.mjs +8 -8
  161. package/dist/astro/routes/api/oauth/register.mjs +4 -4
  162. package/dist/astro/routes/api/oauth/token/refresh.mjs +6 -6
  163. package/dist/astro/routes/api/oauth/token/revoke.mjs +6 -6
  164. package/dist/astro/routes/api/oauth/token.mjs +6 -6
  165. package/dist/astro/routes/api/openapi.json.mjs +4 -3
  166. package/dist/astro/routes/api/plugins/_pluginId_/_...path_.mjs +46 -31
  167. package/dist/astro/routes/api/redirects/404s/index.mjs +11 -10
  168. package/dist/astro/routes/api/redirects/404s/summary.mjs +11 -10
  169. package/dist/astro/routes/api/redirects/_id_.mjs +33 -29
  170. package/dist/astro/routes/api/redirects/index.mjs +33 -29
  171. package/dist/astro/routes/api/revisions/_revisionId_/index.mjs +2 -2
  172. package/dist/astro/routes/api/revisions/_revisionId_/restore.mjs +2 -2
  173. package/dist/astro/routes/api/schema/collections/_slug_/fields/_fieldSlug_.mjs +48 -43
  174. package/dist/astro/routes/api/schema/collections/_slug_/fields/index.mjs +48 -43
  175. package/dist/astro/routes/api/schema/collections/_slug_/fields/reorder.mjs +48 -43
  176. package/dist/astro/routes/api/schema/collections/_slug_/index.mjs +48 -43
  177. package/dist/astro/routes/api/schema/collections/index.mjs +48 -43
  178. package/dist/astro/routes/api/schema/index.mjs +14 -15
  179. package/dist/astro/routes/api/schema/orphans/_slug_.mjs +46 -42
  180. package/dist/astro/routes/api/schema/orphans/index.mjs +46 -42
  181. package/dist/astro/routes/api/search/enable.mjs +11 -10
  182. package/dist/astro/routes/api/search/index.mjs +10 -9
  183. package/dist/astro/routes/api/search/rebuild.mjs +11 -10
  184. package/dist/astro/routes/api/search/stats.mjs +6 -6
  185. package/dist/astro/routes/api/search/suggest.mjs +10 -9
  186. package/dist/astro/routes/api/sections/_slug_.mjs +32 -28
  187. package/dist/astro/routes/api/sections/index.mjs +32 -28
  188. package/dist/astro/routes/api/settings/email.mjs +4 -4
  189. package/dist/astro/routes/api/settings.mjs +32 -28
  190. package/dist/astro/routes/api/setup/admin-verify.mjs +14 -13
  191. package/dist/astro/routes/api/setup/admin.mjs +12 -11
  192. package/dist/astro/routes/api/setup/dev-bypass.mjs +31 -25
  193. package/dist/astro/routes/api/setup/dev-reset.mjs +2 -2
  194. package/dist/astro/routes/api/setup/index.mjs +29 -25
  195. package/dist/astro/routes/api/setup/status.mjs +3 -3
  196. package/dist/astro/routes/api/snapshot.mjs +8 -7
  197. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_/translations.mjs +35 -31
  198. package/dist/astro/routes/api/taxonomies/_name_/terms/_slug_.mjs +35 -31
  199. package/dist/astro/routes/api/taxonomies/_name_/terms/index.mjs +35 -31
  200. package/dist/astro/routes/api/taxonomies/index.mjs +35 -31
  201. package/dist/astro/routes/api/themes/preview.mjs +5 -5
  202. package/dist/astro/routes/api/typegen.mjs +4 -4
  203. package/dist/astro/routes/api/well-known/auth.mjs +3 -3
  204. package/dist/astro/routes/api/well-known/oauth-authorization-server.mjs +3 -3
  205. package/dist/astro/routes/api/well-known/oauth-protected-resource.mjs +3 -3
  206. package/dist/astro/routes/api/widget-areas/_name_/reorder.mjs +31 -27
  207. package/dist/astro/routes/api/widget-areas/_name_/widgets/_id_.mjs +32 -28
  208. package/dist/astro/routes/api/widget-areas/_name_/widgets.mjs +32 -28
  209. package/dist/astro/routes/api/widget-areas/_name_.mjs +29 -26
  210. package/dist/astro/routes/api/widget-areas/index.mjs +32 -28
  211. package/dist/astro/routes/api/widget-components.mjs +2 -2
  212. package/dist/astro/routes/robots.txt.mjs +8 -7
  213. package/dist/astro/routes/sitemap-_collection_.xml.mjs +23 -14
  214. package/dist/astro/routes/sitemap.xml.mjs +9 -8
  215. package/dist/astro/session-driver.d.mts +1 -1
  216. package/dist/astro/session-driver.mjs +2 -2
  217. package/dist/astro/types.d.mts +22 -13
  218. package/dist/{audit-BeNsSyfU.mjs → audit-B2pRxZ20.mjs} +1 -1
  219. package/dist/auth/providers/github.d.mts +1 -1
  220. package/dist/auth/providers/google.d.mts +1 -1
  221. package/dist/{auth-control-guard-Dr14I98m.mjs → auth-control-guard-D71jourk.mjs} +1 -1
  222. package/dist/{authorize-BLO0m7fW.mjs → authorize-ZXPGPwKn.mjs} +1 -1
  223. package/dist/{briefing-CkTee1ex.mjs → briefing-0rf-su3-.mjs} +90 -28
  224. package/dist/{briefing-DJX6irto.mjs → briefing-kRhegBoF.mjs} +2 -1
  225. package/dist/bundle-CEcdUa1s.mjs +602 -0
  226. package/dist/{byline-BVC1lV6G.mjs → byline-7xR185Ly.mjs} +30 -62
  227. package/dist/{byline-fields-Cj39WhXC.mjs → byline-fields-BKzA0fJU.mjs} +1 -1
  228. package/dist/{byline-fields-uJlygdzM.d.mts → byline-fields-Ckeqd1OY.d.mts} +88 -35
  229. package/dist/{byline-fields-cNrLJVRs.mjs → byline-fields-WN7RQT4q.mjs} +10 -4
  230. package/dist/{byline-registry-4v6tXMNX.mjs → byline-registry-Ba54M74c.mjs} +2 -2
  231. package/dist/{bylines-LN9XISRo.mjs → bylines-C-EL6dh3.mjs} +9 -3
  232. package/dist/{bylines-DwokOFj6.mjs → bylines-CmZFCMr0.mjs} +5 -5
  233. package/dist/{cache-Bac05gBd.mjs → cache-DkVCKGio.mjs} +2 -2
  234. package/dist/{chunks-CuUt7K50.mjs → chunks-ChGNDY8r.mjs} +1 -1
  235. package/dist/cli/index.d.mts +29 -1
  236. package/dist/cli/index.mjs +1466 -1763
  237. package/dist/cli/plugin-kit.d.mts +75 -0
  238. package/dist/cli/plugin-kit.mjs +4 -0
  239. package/dist/client/external-auth-headers.d.mts +1 -1
  240. package/dist/client/index.d.mts +27 -52
  241. package/dist/client/index.mjs +34 -6
  242. package/dist/client-factory-BDD9azPJ.mjs +233 -0
  243. package/dist/{comment-Beue8-15.mjs → comment-DFALgsJD.mjs} +13 -3
  244. package/dist/comment-reaction-C37bf99u.mjs +58 -0
  245. package/dist/{comments-DcjFIfqX.mjs → comments-B3NwDBxl.mjs} +1 -1
  246. package/dist/{content-CBxYGWfL.mjs → content-DJcAYFhz.mjs} +51 -34
  247. package/dist/content-refresh-B4ZCmxgd.mjs +1576 -0
  248. package/dist/{context-Df1xVYyr.mjs → context-DnpXcp6Y.mjs} +2 -2
  249. package/dist/{context-CQVNZaR8.mjs → context-fSCYLL3c.mjs} +125 -53
  250. package/dist/{context-route-helpers-B9wj8Rmh.mjs → context-route-helpers-CI8XzcsK.mjs} +2 -1
  251. package/dist/{cron-DxCAU_Sn.mjs → cron-B1SL_lsb.mjs} +7 -3
  252. package/dist/{dashboard-B7ZUNuyF.mjs → dashboard-D0nj5oWg.mjs} +4 -4
  253. package/dist/db/index.d.mts +3 -3
  254. package/dist/db/index.mjs +1 -1
  255. package/dist/db/libsql.d.mts +1 -1
  256. package/dist/db/postgres.d.mts +1 -1
  257. package/dist/db/sqlite.d.mts +1 -1
  258. package/dist/{device-flow-BZVGftqi.mjs → device-flow-BJe6VEhP.mjs} +5 -5
  259. package/dist/{placeholder-d54Qr_7n.mjs → enrich-Ck9tfMqe.mjs} +36 -9
  260. package/dist/{error-DCSuUAZW.mjs → error-CSVaQNZy.mjs} +5 -0
  261. package/dist/{experimental-workflows-CSMffP6q.mjs → experimental-workflows-GVhUgzEs.mjs} +1 -1
  262. package/dist/field-defs-cache-DL-T2XVS.mjs +49 -0
  263. package/dist/forgeway-seo-client-G5ddhVHd.mjs +456 -0
  264. package/dist/{fts-manager-B5l_qwrA.mjs → fts-manager-ewTGohf4.mjs} +1 -1
  265. package/dist/{hitl-requests-7NlzVeUA.mjs → hitl-requests-DEFj8e6u.mjs} +2 -2
  266. package/dist/{hitl-route-helpers-k---_H3-.mjs → hitl-route-helpers-C23JHaWz.mjs} +5 -4
  267. package/dist/import-CXXL5pip.mjs +1354 -0
  268. package/dist/index-DcnOCD1e.d.mts +375 -0
  269. package/dist/index.d.mts +15 -16
  270. package/dist/index.mjs +85 -70
  271. package/dist/{jsonld-DZ67souc.d.mts → jsonld-DzKbhRZ4.d.mts} +8 -4
  272. package/dist/{load-D9OiGr2m.mjs → load-CFtJRT3c.mjs} +1 -1
  273. package/dist/{loader--GOYux8M.mjs → loader-aWkkc1_o.mjs} +117 -31
  274. package/dist/{manifest-schema-qh2P7RDX.mjs → manifest-schema-uA6pRFXi.mjs} +38 -1
  275. package/dist/mcp-reviewed-executor-Dn52L_yY.mjs +558 -0
  276. package/dist/media/image-endpoint.d.mts +32 -0
  277. package/dist/media/image-endpoint.mjs +111 -0
  278. package/dist/media/index.d.mts +27 -2
  279. package/dist/media/index.mjs +5 -3
  280. package/dist/media/local-runtime.d.mts +15 -11
  281. package/dist/media/local-runtime.mjs +9 -7
  282. package/dist/{media-CbKyYukG.mjs → media-CVMOoywq.mjs} +3 -1
  283. package/dist/{media-allowlist-BYxJIcTO.mjs → media-allowlist-zDNJmXCo.mjs} +1 -1
  284. package/dist/media-url-BdoLPvg8.mjs +20 -0
  285. package/dist/{menus-C7F0sCrC.mjs → menus-CCG2z5um.mjs} +80 -15
  286. package/dist/{menus-BZbXf-ej.mjs → menus-CmyIkRG5.mjs} +19 -5
  287. package/dist/{normalize-ByemhhfW.mjs → normalize-Cyt7JdF7.mjs} +8 -1
  288. package/dist/{oauth-authorization-DF-LCsIA.mjs → oauth-authorization-B9H7X85L.mjs} +5 -5
  289. package/dist/{oauth-clients-Du-V0fEm.mjs → oauth-clients-Dwl32-Uj.mjs} +2 -2
  290. package/dist/object-cache/memory.d.mts +14 -0
  291. package/dist/object-cache/memory.mjs +55 -0
  292. package/dist/object-cache-D51qOseS.mjs +419 -0
  293. package/dist/output-DhBe5_Pi.mjs +68 -0
  294. package/dist/page/index.d.mts +10 -3
  295. package/dist/page/index.mjs +2 -2
  296. package/dist/{parse-CneSgl7-.mjs → parse-i15EFSAE.mjs} +1 -1
  297. package/dist/{parser-DxfsARXL.mjs → parser-06LLLL4E.mjs} +151 -9
  298. package/dist/{placeholder-CXfoCtCd.d.mts → placeholder-DkWkXfDI.d.mts} +12 -4
  299. package/dist/plugin-utils.d.mts +8 -9
  300. package/dist/plugins/adapt-sandbox-entry.d.mts +8 -9
  301. package/dist/plugins/adapt-sandbox-entry.mjs +13 -2
  302. package/dist/{plugins-DzfqRREq.mjs → plugins-CPA2PtfY.mjs} +919 -66
  303. package/dist/{transport-LSdZVXHF.mjs → portable-text-BASHceim.mjs} +1 -134
  304. package/dist/portable-text-E79LyjGo.d.mts +45 -0
  305. package/dist/{preview-C-3YTX2U.mjs → preview-BjedZm8G.mjs} +4 -3
  306. package/dist/process-cache-CCDgti7j.mjs +106 -0
  307. package/dist/project-env-DKibmuP8.mjs +95 -0
  308. package/dist/{provider-loader-9it4vd6L.d.mts → provider-loader-DC2JdWeO.d.mts} +1 -1
  309. package/dist/{public-url-B4xV4rGa.d.mts → public-url-DQJCnYi9.d.mts} +1 -1
  310. package/dist/publication-authorization-RKiHXKtq.mjs +985 -0
  311. package/dist/{query-CZ3TH_Uu.mjs → query-C2U5u5_p.mjs} +11 -6
  312. package/dist/{query-Ds0EnMFX.mjs → query-DEv5x6yB.mjs} +281 -76
  313. package/dist/{rate-limit-i0G3IAOX.mjs → rate-limit-DglsAJSw.mjs} +2 -2
  314. package/dist/{redirect-CEACczxo.mjs → redirect-ubhEqQCQ.mjs} +2 -2
  315. package/dist/{redirects-ocRJmQHP.mjs → redirects-Bhpm8bRe.mjs} +35 -19
  316. package/dist/{redirects-DYj1yPxs.mjs → redirects-xs2yahLq.mjs} +47 -24
  317. package/dist/{registry-D7HACema.mjs → registry-BYYyb2tF.mjs} +148 -81
  318. package/dist/request-context.d.mts +2 -0
  319. package/dist/{request-meta-DAb6xaP9.mjs → request-meta-CFe1tW2M.mjs} +1 -1
  320. package/dist/review-payload-BysRWpxS.mjs +111 -0
  321. package/dist/{review-requests-BW2NxY-l.mjs → review-requests-CTWGnWUt.mjs} +1 -1
  322. package/dist/review-requests-D42VEP1l.mjs +142 -0
  323. package/dist/review-route-helpers-C31vO6SI.mjs +41 -0
  324. package/dist/runner-BgmttQmD.mjs +7444 -0
  325. package/dist/{runner-09sTqtv0.d.mts → runner-D6hzs8L9.d.mts} +1 -1
  326. package/dist/runtime.d.mts +9 -10
  327. package/dist/runtime.mjs +3 -3
  328. package/dist/schema-DUtnZxjZ.mjs +8 -0
  329. package/dist/{search-Gdrqj582.mjs → search-DUKgZUlm.mjs} +5 -3
  330. package/dist/{secrets-CeGpBFV2.mjs → secrets-ZV5rd8yV.mjs} +14 -11
  331. package/dist/{sections-BOjU13Y-.mjs → sections-DvFgsnda.mjs} +2 -2
  332. package/dist/seed/index.d.mts +2 -2
  333. package/dist/seed/index.mjs +21 -18
  334. package/dist/seo/index.d.mts +1 -1
  335. package/dist/seo/index.mjs +3 -12
  336. package/dist/{seo-5lJOtB5J.mjs → seo-BLszyJxd.mjs} +22 -4
  337. package/dist/{seo-CLj8lS7Q.mjs → seo-BU8MLCS9.mjs} +5 -2
  338. package/dist/{seo-contributions-CqVvReEj.mjs → seo-contributions-GnCuL1ML.mjs} +11 -3
  339. package/dist/{service-jGlhrICs.mjs → service-FL3fB0Rx.mjs} +2 -2
  340. package/dist/session-user-Ct6GBLvn.mjs +22 -0
  341. package/dist/{settings-CUXOxzsT.mjs → settings-BECcAIRH.mjs} +28 -55
  342. package/dist/{settings-DlBsT2VS.mjs → settings-EzADu-dd.mjs} +2 -2
  343. package/dist/{setup-complete-BRrdPYjZ.mjs → setup-complete-Da0axZEE.mjs} +1 -1
  344. package/dist/{site-activity-DONFrMBJ.mjs → site-activity-h8smOlYI.mjs} +1 -1
  345. package/dist/{site-context-C8Az_P_I.mjs → site-context-B8T1kpUP.mjs} +337 -530
  346. package/dist/{site-url-DIMD68go.mjs → site-url-DJEid0ml.mjs} +1 -1
  347. package/dist/stable-hash-DshcXvRE.mjs +19 -0
  348. package/dist/status-NqWOSFAD.mjs +21 -0
  349. package/dist/storage/local.d.mts +1 -1
  350. package/dist/storage/local.mjs +1 -1
  351. package/dist/storage/s3.d.mts +1 -1
  352. package/dist/storage/s3.mjs +1 -1
  353. package/dist/{taxonomies-D9Sw4wWM.mjs → taxonomies-BiM9NtgW.mjs} +36 -29
  354. package/dist/taxonomies-DSnY5nOa.mjs +443 -0
  355. package/dist/{taxonomy-B169Nm6B.mjs → taxonomy-0k_vRVsD.mjs} +44 -9
  356. package/dist/transport-C46KHLMP.mjs +134 -0
  357. package/dist/types-A8fPOJnl.mjs +69 -0
  358. package/dist/types-BLQCz46p.d.mts +118 -0
  359. package/dist/{types-CwawBUTa.d.mts → types-B_FlxIIl.d.mts} +4 -1
  360. package/dist/{types-CSgR9nQB.mjs → types-ChxYDRvx.mjs} +1 -1
  361. package/dist/{types-GaCtZ1k9.d.mts → types-Cw0PeCT_.d.mts} +18 -0
  362. package/dist/types-DuQn1G7-.d.mts +2973 -0
  363. package/dist/{runtime-C4-2lSFg.d.mts → types-DwoUifGE.d.mts} +5668 -3000
  364. package/dist/{types-DRIKLmJI.d.mts → types-opjX_kz6.d.mts} +17 -2
  365. package/dist/ui/server-runtime.d.mts +13 -15
  366. package/dist/ui/server-runtime.mjs +24 -20
  367. package/dist/url-guoXQQcV.mjs +33 -0
  368. package/dist/{user-DTLoZs16.mjs → user-BH-n01y3.mjs} +2 -2
  369. package/dist/{utils-B8hBJ9Oz.mjs → utils-D1SrKGtP.mjs} +129 -7
  370. package/dist/{validate-DzjCdy6v.d.mts → validate-CbVFoJgc.d.mts} +65 -8
  371. package/dist/{validate-DWmPO6oj.mjs → validate-D1HL-oLR.mjs} +11 -6
  372. package/dist/version-C3iVRuaF.mjs +6 -0
  373. package/dist/{widgets-BpJ8EpPd.mjs → widgets-BZrLrNgS.mjs} +46 -43
  374. package/dist/{wordpress-slugs-DHNR9LpG.mjs → wordpress-slugs-C3PWcowq.mjs} +1 -1
  375. package/dist/{zod-generator-K91-g665.mjs → zod-generator-C7AsLpSB.mjs} +42 -14
  376. package/package.json +38 -8
  377. package/src/components/Block.astro +50 -0
  378. package/src/components/Comments.astro +143 -1
  379. package/src/components/DinewayHead.astro +19 -2
  380. package/src/components/DinewayImage.astro +66 -33
  381. package/src/components/DinewayMedia.astro +1 -2
  382. package/src/components/Image.astro +85 -40
  383. package/src/components/InlinePortableTextEditor.tsx +12 -2
  384. package/src/components/JsonLdScript.astro +9 -0
  385. package/src/components/LiveSearch.astro +40 -4
  386. package/src/components/index.ts +4 -0
  387. package/src/components/live-search-routing.ts +30 -0
  388. package/src/components/portable-text-text-align.ts +15 -0
  389. package/src/ui.ts +2 -0
  390. package/dist/entity-aliases-4y93Yjuc.mjs +0 -51
  391. package/dist/import-4YBXbDkI.mjs +0 -684
  392. package/dist/index-CZiWCQDp.d.mts +0 -227
  393. package/dist/review-requests-Qum4713s.mjs +0 -79
  394. package/dist/runner-DzIpHGND.mjs +0 -2836
  395. package/dist/schema-Bsi-VpYv.mjs +0 -8
  396. package/dist/taxonomies-CZ-_DitR.mjs +0 -327
  397. package/dist/types-CuJOqHfM.d.mts +0 -758
  398. package/dist/types-DSPGWjxO.d.mts +0 -1247
  399. package/dist/types-nP9vGUFq.d.mts +0 -56
  400. package/dist/version-C4gfn0PJ.mjs +0 -6
  401. /package/dist/{adapters-OQCImOL7.d.mts → adapters-BiRymx02.d.mts} +0 -0
  402. /package/dist/{api-tokens-CYUoFGo7.mjs → api-tokens-Ypaly90d.mjs} +0 -0
  403. /package/dist/{challenge-store-DFxX0_15.mjs → challenge-store-D5pSY2S1.mjs} +0 -0
  404. /package/dist/{components--pg6zBvu.mjs → components-DImzlLhb.mjs} +0 -0
  405. /package/dist/{context-types-r8oFvyOq.mjs → context-types-eBuMDAg-.mjs} +0 -0
  406. /package/dist/{default-B6iaLvP7.mjs → default-D4Vygcy_.mjs} +0 -0
  407. /package/dist/{email-console-BOVqIYpB.mjs → email-console-Bp0r68iF.mjs} +0 -0
  408. /package/dist/{escape-BDgouFFY.mjs → escape-DN4Qmjsl.mjs} +0 -0
  409. /package/dist/{hash-BPmX6P8I.mjs → hash-mxxx2oPW.mjs} +0 -0
  410. /package/dist/{mime-CbKsKDCB.mjs → mime-C0vOHFm7.mjs} +0 -0
  411. /package/dist/{mode-CZqCF9dZ.mjs → mode-C8yZnIlR.mjs} +0 -0
  412. /package/dist/{oauth-state-store-qncPB_IU.mjs → oauth-state-store-CndT35iw.mjs} +0 -0
  413. /package/dist/{oauth-user-lookup-BFjWF8wK.mjs → oauth-user-lookup-CMehAaKs.mjs} +0 -0
  414. /package/dist/{options-LsPjZlqD.mjs → options-DQPTH5n0.mjs} +0 -0
  415. /package/dist/{passkey-config-DzHQK90v.mjs → passkey-config-NYukYGed.mjs} +0 -0
  416. /package/dist/{patterns-DKAX6oqN.mjs → patterns-CoqlXUvk.mjs} +0 -0
  417. /package/dist/{provider-loader-DzUxejk7.mjs → provider-loader-BtfrrzfD.mjs} +0 -0
  418. /package/dist/{public-url-B_m9IwdV.mjs → public-url-Cp6hyjVR.mjs} +0 -0
  419. /package/dist/{redirect-BjIBtDWY.mjs → redirect-DrbEmU9a.mjs} +0 -0
  420. /package/dist/{request-cache-ho99schz.mjs → request-cache-CBFjCwSt.mjs} +0 -0
  421. /package/dist/{resolve-DTuDyYKs.mjs → resolve-DE71WcL9.mjs} +0 -0
  422. /package/dist/{setup-nonce-pyGfc9hV.mjs → setup-nonce-BtkKnvxQ.mjs} +0 -0
  423. /package/dist/{sidecar-client-mJxwayYN.mjs → sidecar-client-Ctzfyyp-.mjs} +0 -0
  424. /package/dist/{slugify-BqebcqBg.mjs → slugify-KSsVD_D3.mjs} +0 -0
  425. /package/dist/{ssrf-DiKqWd3N.mjs → ssrf-FJqwQzj4.mjs} +0 -0
  426. /package/dist/{tokens-SLmgowfd.mjs → tokens-BDQU29Vd.mjs} +0 -0
  427. /package/dist/{transaction-CFLhEOuH.mjs → transaction-0LEAAy8R.mjs} +0 -0
  428. /package/dist/{transport-BnsNxh2l.d.mts → transport-D9pKAzFP.d.mts} +0 -0
  429. /package/dist/{trusted-proxy-BgIIcbsN.mjs → trusted-proxy-Dm7Mxvt6.mjs} +0 -0
  430. /package/dist/{types-CJ8DkL0q.mjs → types-B7TDDFMG.mjs} +0 -0
  431. /package/dist/{types-Dryvv7LH.d.mts → types-g0zMtraY.d.mts} +0 -0
  432. /package/dist/{types-Cg276-3z.mjs → types-mVVgRPaU.mjs} +0 -0
  433. /package/dist/{types-DZpT-PnG.d.mts → types-wFu80FrO.d.mts} +0 -0
  434. /package/dist/{url-w7Mp5qAD.mjs → url-EMAguGVk.mjs} +0 -0
@@ -0,0 +1,2973 @@
1
+ import { Generated } from "kysely";
2
+
3
+ //#region src/database/types.d.ts
4
+ interface RevisionTable {
5
+ id: string;
6
+ collection: string;
7
+ entry_id: string;
8
+ data: string;
9
+ author_id: string | null;
10
+ created_at: Generated<string>;
11
+ }
12
+ interface TaxonomyTable {
13
+ id: string;
14
+ name: string;
15
+ slug: string;
16
+ label: string;
17
+ parent_id: string | null;
18
+ data: string | null;
19
+ locale: Generated<string>;
20
+ translation_group: Generated<string | null>;
21
+ }
22
+ interface ContentTaxonomyTable {
23
+ collection: string;
24
+ entry_id: string;
25
+ taxonomy_id: string;
26
+ }
27
+ interface TaxonomyDefTable {
28
+ id: string;
29
+ name: string;
30
+ label: string;
31
+ label_singular: string | null;
32
+ hierarchical: number;
33
+ collections: string | null;
34
+ created_at: Generated<string>;
35
+ locale: Generated<string>;
36
+ translation_group: Generated<string | null>;
37
+ }
38
+ interface MediaTable {
39
+ id: string;
40
+ filename: string;
41
+ mime_type: string;
42
+ size: number | null;
43
+ width: number | null;
44
+ height: number | null;
45
+ alt: string | null;
46
+ caption: string | null;
47
+ storage_key: string;
48
+ status: string;
49
+ content_hash: string | null;
50
+ blurhash: string | null;
51
+ dominant_color: string | null;
52
+ created_at: Generated<string>;
53
+ author_id: string | null;
54
+ }
55
+ interface UserTable {
56
+ id: string;
57
+ email: string;
58
+ name: string | null;
59
+ avatar_url: string | null;
60
+ role: number;
61
+ email_verified: number;
62
+ data: string | null;
63
+ disabled: Generated<number>;
64
+ created_at: Generated<string>;
65
+ updated_at: Generated<string>;
66
+ }
67
+ interface CredentialTable {
68
+ id: string;
69
+ user_id: string;
70
+ public_key: Uint8Array;
71
+ algorithm: number;
72
+ counter: number;
73
+ device_type: string;
74
+ backed_up: number;
75
+ transports: string | null;
76
+ name: string | null;
77
+ created_at: Generated<string>;
78
+ last_used_at: Generated<string>;
79
+ }
80
+ interface AuthTokenTable {
81
+ hash: string;
82
+ user_id: string | null;
83
+ email: string | null;
84
+ type: string;
85
+ role: number | null;
86
+ invited_by: string | null;
87
+ expires_at: string;
88
+ created_at: Generated<string>;
89
+ }
90
+ interface OAuthAccountTable {
91
+ provider: string;
92
+ provider_account_id: string;
93
+ user_id: string;
94
+ created_at: Generated<string>;
95
+ }
96
+ interface AllowedDomainTable {
97
+ domain: string;
98
+ default_role: number;
99
+ enabled: number;
100
+ created_at: Generated<string>;
101
+ }
102
+ interface AuthChallengeTable {
103
+ challenge: string;
104
+ type: string;
105
+ user_id: string | null;
106
+ data: string | null;
107
+ expires_at: string;
108
+ created_at: Generated<string>;
109
+ }
110
+ interface ApiTokenTable {
111
+ id: string;
112
+ name: string;
113
+ token_hash: string;
114
+ prefix: string;
115
+ user_id: string;
116
+ scopes: string;
117
+ expires_at: string | null;
118
+ last_used_at: string | null;
119
+ created_at: Generated<string>;
120
+ }
121
+ interface OAuthTokenTable {
122
+ token_hash: string;
123
+ token_type: string;
124
+ user_id: string;
125
+ scopes: string;
126
+ client_type: string;
127
+ expires_at: string;
128
+ refresh_token_hash: string | null;
129
+ client_id: string | null;
130
+ created_at: Generated<string>;
131
+ }
132
+ interface AuthorizationCodeTable {
133
+ code_hash: string;
134
+ client_id: string;
135
+ redirect_uri: string;
136
+ user_id: string;
137
+ scopes: string;
138
+ code_challenge: string;
139
+ code_challenge_method: string;
140
+ resource: string | null;
141
+ expires_at: string;
142
+ created_at: Generated<string>;
143
+ }
144
+ interface OAuthClientTable {
145
+ id: string;
146
+ name: string;
147
+ redirect_uris: string;
148
+ scopes: string | null;
149
+ created_at: Generated<string>;
150
+ updated_at: Generated<string>;
151
+ }
152
+ interface DeviceCodeTable {
153
+ device_code: string;
154
+ user_code: string;
155
+ scopes: string;
156
+ user_id: string | null;
157
+ status: string;
158
+ expires_at: string;
159
+ interval: number;
160
+ last_polled_at: string | null;
161
+ created_at: Generated<string>;
162
+ }
163
+ interface OptionTable {
164
+ name: string;
165
+ value: string;
166
+ }
167
+ interface AuditLogTable {
168
+ id: string;
169
+ timestamp: Generated<string>;
170
+ actor_id: string | null;
171
+ actor_ip: string | null;
172
+ action: string;
173
+ resource_type: string | null;
174
+ resource_id: string | null;
175
+ details: string | null;
176
+ status: string | null;
177
+ }
178
+ interface SiteActivityLogTable {
179
+ id: string;
180
+ actor_type: "user" | "api_token" | "system";
181
+ actor_id: string;
182
+ auth_metadata: string | null;
183
+ action_type: string;
184
+ subject_type: string;
185
+ subject_id: string | null;
186
+ related_subject_type: string | null;
187
+ related_subject_id: string | null;
188
+ source_type: "api_route" | "mcp_tool" | "system" | "plugin" | "unknown" | null;
189
+ source_name: string | null;
190
+ result_status: Generated<"succeeded" | "pending" | "failed" | "blocked">;
191
+ scope: string;
192
+ summary: string;
193
+ detail: string | null;
194
+ created_at: Generated<string>;
195
+ }
196
+ interface ContextEntryTable {
197
+ id: string;
198
+ scope: string;
199
+ context_type: string;
200
+ title: string;
201
+ body: string;
202
+ policy_key: string | null;
203
+ source_activity_id: string | null;
204
+ created_by_actor_type: "user" | "api_token" | "system";
205
+ created_by_actor_id: string;
206
+ created_auth_metadata: string | null;
207
+ supersedes_id: string | null;
208
+ version: number;
209
+ is_current: Generated<number>;
210
+ valid_until: string | null;
211
+ reviewed_at: string | null;
212
+ reviewed_by_actor_type: "user" | "api_token" | "system" | null;
213
+ reviewed_by_actor_id: string | null;
214
+ review_note: string | null;
215
+ created_at: Generated<string>;
216
+ updated_at: Generated<string>;
217
+ }
218
+ interface ContextTagTable {
219
+ context_entry_id: string;
220
+ tag: string;
221
+ }
222
+ interface ReviewRequestTable {
223
+ id: string;
224
+ status: Generated<"pending" | "approved" | "rejected">;
225
+ collection: string;
226
+ entry_id: string;
227
+ scope: string;
228
+ live_revision_id: string | null;
229
+ draft_revision_id: string | null;
230
+ reviewed_rev: string;
231
+ action_type: string;
232
+ action_hash: string;
233
+ risk_reason: string | null;
234
+ review_payload: string;
235
+ requested_by_actor_type: "user" | "api_token" | "system";
236
+ requested_by_actor_id: string;
237
+ requested_auth_metadata: string | null;
238
+ resolved_by_actor_type: "user" | "api_token" | "system" | null;
239
+ resolved_by_actor_id: string | null;
240
+ resolved_auth_metadata: string | null;
241
+ review_note: string | null;
242
+ created_at: Generated<string>;
243
+ updated_at: Generated<string>;
244
+ resolved_at: string | null;
245
+ }
246
+ interface ContentReleaseGrantTable {
247
+ id: string;
248
+ status: Generated<"active" | "consumed" | "revoked" | "expired">;
249
+ collection: string;
250
+ entry_id: string;
251
+ scope: string;
252
+ live_revision_id: string | null;
253
+ draft_revision_id: string | null;
254
+ reviewed_rev: string;
255
+ editorial_review_request_id: string;
256
+ release_hitl_request_id: string | null;
257
+ operation: "publish" | "schedule";
258
+ scheduled_at: string | null;
259
+ published_at: string | null;
260
+ site_timezone: string;
261
+ action_hash: string;
262
+ policy_contributions: string;
263
+ authorization_method: "human_action" | "approved_hitl";
264
+ authorized_by_actor_type: "user" | "api_token" | "system";
265
+ authorized_by_actor_id: string;
266
+ authorized_auth_metadata: string | null;
267
+ expires_at: string | null;
268
+ created_at: Generated<string>;
269
+ updated_at: Generated<string>;
270
+ consumed_at: string | null;
271
+ revoked_at: string | null;
272
+ revocation_reason: string | null;
273
+ }
274
+ interface EntityAliasTable {
275
+ id: string;
276
+ entity_type: string;
277
+ collection_slug: string | null;
278
+ entity_id: string;
279
+ alias: string;
280
+ normalized_alias: string;
281
+ created_at: Generated<string>;
282
+ }
283
+ interface HandoffSnapshotTable {
284
+ id: string;
285
+ scope: string;
286
+ actor_type: "user" | "api_token" | "system";
287
+ actor_id: string;
288
+ auth_metadata: string | null;
289
+ objective: string;
290
+ reasoning: string;
291
+ key_findings: string;
292
+ touched_objects: string;
293
+ pending_actions: string;
294
+ tool_evidence: string;
295
+ confidence: number | null;
296
+ handoff_kind: "pause" | "review_request" | "assignment";
297
+ reference_type: "review_request" | "assignment" | null;
298
+ reference_id: string | null;
299
+ created_at: Generated<string>;
300
+ resumed_at: string | null;
301
+ }
302
+ interface AssignmentTable {
303
+ id: string;
304
+ scope: string;
305
+ assignment_type: string;
306
+ status: Generated<"pending" | "accepted" | "in_progress" | "blocked" | "completed" | "declined" | "cancelled" | "overdue">;
307
+ priority: Generated<"low" | "normal" | "high" | "urgent">;
308
+ title: string;
309
+ summary: string | null;
310
+ details: string | null;
311
+ assigned_by_actor_type: "user" | "api_token" | "system";
312
+ assigned_by_actor_id: string;
313
+ assigned_to_actor_type: "user" | "api_token" | "system" | null;
314
+ assigned_to_actor_id: string | null;
315
+ metadata: string;
316
+ related_handoff_snapshot_id: string | null;
317
+ related_hitl_request_id: string | null;
318
+ due_at: string | null;
319
+ created_at: Generated<string>;
320
+ updated_at: Generated<string>;
321
+ accepted_at: string | null;
322
+ started_at: string | null;
323
+ blocked_at: string | null;
324
+ completed_at: string | null;
325
+ declined_at: string | null;
326
+ cancelled_at: string | null;
327
+ overdue_at: string | null;
328
+ }
329
+ interface HitlRequestTable {
330
+ id: string;
331
+ scope: string;
332
+ action_type: string;
333
+ status: Generated<"pending" | "approved" | "rejected">;
334
+ priority: Generated<"low" | "normal" | "high" | "urgent">;
335
+ title: string;
336
+ summary: string | null;
337
+ risk_reason: string;
338
+ review_payload: string;
339
+ target_ref_type: string;
340
+ target_ref_id: string;
341
+ requested_by_actor_type: "user" | "api_token" | "system";
342
+ requested_by_actor_id: string;
343
+ requested_auth_metadata: string | null;
344
+ resolved_by_actor_type: "user" | "api_token" | "system" | null;
345
+ resolved_by_actor_id: string | null;
346
+ resolved_auth_metadata: string | null;
347
+ review_note: string | null;
348
+ metadata: string;
349
+ related_assignment_id: string | null;
350
+ related_handoff_snapshot_id: string | null;
351
+ sla_due_at: string | null;
352
+ created_at: Generated<string>;
353
+ updated_at: Generated<string>;
354
+ resolved_at: string | null;
355
+ }
356
+ interface HitlExecutionTable {
357
+ id: string;
358
+ hitl_request_id: string | null;
359
+ plugin_id: string;
360
+ tool_name: string;
361
+ review_mode: "quick" | "strong";
362
+ action_hash: string;
363
+ idempotency_key: string;
364
+ status: Generated<"claimed" | "succeeded" | "failed" | "indeterminate">;
365
+ actor_type: "user" | "api_token" | "system";
366
+ actor_id: string;
367
+ scope: string;
368
+ target_ref_type: string;
369
+ target_ref_id: string;
370
+ result_json: string | null;
371
+ error_code: string | null;
372
+ created_at: Generated<string>;
373
+ updated_at: Generated<string>;
374
+ completed_at: string | null;
375
+ }
376
+ interface PluginSecretTable {
377
+ plugin_id: string;
378
+ secret_name: string;
379
+ encryption_version: number;
380
+ key_id: string;
381
+ nonce: string;
382
+ ciphertext: string;
383
+ fingerprint: string;
384
+ created_at: Generated<string>;
385
+ updated_at: Generated<string>;
386
+ }
387
+ interface MigrationTable {
388
+ name: string;
389
+ timestamp: string;
390
+ }
391
+ interface CollectionTable {
392
+ id: string;
393
+ slug: string;
394
+ label: string;
395
+ label_singular: string | null;
396
+ description: string | null;
397
+ icon: string | null;
398
+ supports: string | null;
399
+ source: string | null;
400
+ search_config: string | null;
401
+ has_seo: number;
402
+ url_pattern: string | null;
403
+ comments_enabled: Generated<number>;
404
+ comments_moderation: Generated<string>;
405
+ comments_closed_after_days: Generated<number>;
406
+ comments_auto_approve_users: Generated<number>;
407
+ created_at: Generated<string>;
408
+ updated_at: Generated<string>;
409
+ }
410
+ interface SeoTable {
411
+ collection: string;
412
+ content_id: string;
413
+ seo_title: string | null;
414
+ seo_description: string | null;
415
+ seo_image: string | null;
416
+ seo_canonical: string | null;
417
+ seo_no_index: number;
418
+ created_at: Generated<string>;
419
+ updated_at: Generated<string>;
420
+ }
421
+ interface FieldTable {
422
+ id: string;
423
+ collection_id: string;
424
+ slug: string;
425
+ label: string;
426
+ type: string;
427
+ column_type: string;
428
+ required: number;
429
+ unique: number;
430
+ default_value: string | null;
431
+ validation: string | null;
432
+ widget: string | null;
433
+ options: string | null;
434
+ sort_order: number;
435
+ searchable: Generated<number>;
436
+ translatable: Generated<number>;
437
+ created_at: Generated<string>;
438
+ }
439
+ interface PluginStorageTable {
440
+ plugin_id: string;
441
+ collection: string;
442
+ id: string;
443
+ data: string;
444
+ created_at: Generated<string>;
445
+ updated_at: Generated<string>;
446
+ }
447
+ interface PluginStateTable {
448
+ plugin_id: string;
449
+ version: string;
450
+ status: string;
451
+ installed_at: Generated<string>;
452
+ activated_at: string | null;
453
+ deactivated_at: string | null;
454
+ data: string | null;
455
+ source: Generated<string>;
456
+ marketplace_version: string | null;
457
+ display_name: string | null;
458
+ description: string | null;
459
+ }
460
+ interface PluginIndexTable {
461
+ plugin_id: string;
462
+ collection: string;
463
+ index_name: string;
464
+ fields: string;
465
+ created_at: Generated<string>;
466
+ }
467
+ interface MenuTable {
468
+ id: string;
469
+ name: string;
470
+ label: string;
471
+ created_at: Generated<string>;
472
+ updated_at: Generated<string>;
473
+ locale: Generated<string>;
474
+ translation_group: Generated<string | null>;
475
+ }
476
+ interface MenuItemTable {
477
+ id: string;
478
+ menu_id: string;
479
+ parent_id: string | null;
480
+ sort_order: number;
481
+ type: string;
482
+ reference_collection: string | null;
483
+ reference_id: string | null;
484
+ custom_url: string | null;
485
+ label: string;
486
+ title_attr: string | null;
487
+ target: string | null;
488
+ css_classes: string | null;
489
+ created_at: Generated<string>;
490
+ locale: Generated<string>;
491
+ translation_group: Generated<string | null>;
492
+ }
493
+ interface WidgetAreaTable {
494
+ id: string;
495
+ name: string;
496
+ label: string;
497
+ description: string | null;
498
+ created_at: Generated<string>;
499
+ }
500
+ interface WidgetTable {
501
+ id: string;
502
+ area_id: string;
503
+ sort_order: number;
504
+ type: string;
505
+ title: string | null;
506
+ content: string | null;
507
+ menu_name: string | null;
508
+ component_id: string | null;
509
+ component_props: string | null;
510
+ created_at: Generated<string>;
511
+ }
512
+ interface CronTaskTable {
513
+ id: string;
514
+ plugin_id: string;
515
+ task_name: string;
516
+ schedule: string;
517
+ is_oneshot: number;
518
+ data: string | null;
519
+ next_run_at: string;
520
+ last_run_at: string | null;
521
+ status: string;
522
+ locked_at: string | null;
523
+ enabled: number;
524
+ created_at: Generated<string>;
525
+ }
526
+ interface CommentTable {
527
+ id: string;
528
+ collection: string;
529
+ content_id: string;
530
+ parent_id: string | null;
531
+ author_name: string;
532
+ author_email: string;
533
+ author_user_id: string | null;
534
+ body: string;
535
+ status: string;
536
+ ip_hash: string | null;
537
+ user_agent: string | null;
538
+ moderation_metadata: string | null;
539
+ created_at: Generated<string>;
540
+ updated_at: Generated<string>;
541
+ }
542
+ interface CommentReactionTable {
543
+ id: string;
544
+ comment_id: string;
545
+ reaction: string;
546
+ voter_hash: string;
547
+ created_at: Generated<string>;
548
+ }
549
+ interface SectionTable {
550
+ id: string;
551
+ slug: string;
552
+ title: string;
553
+ description: string | null;
554
+ keywords: string | null;
555
+ content: string;
556
+ preview_media_id: string | null;
557
+ source: string;
558
+ theme_id: string | null;
559
+ created_at: Generated<string>;
560
+ updated_at: Generated<string>;
561
+ }
562
+ interface DinewaySessionTable {
563
+ id: string;
564
+ value: string;
565
+ updated_at: Generated<string>;
566
+ }
567
+ interface RelationTable {
568
+ id: string;
569
+ name: string;
570
+ parent_collection: string;
571
+ child_collection: string;
572
+ parent_label: string;
573
+ child_label: string;
574
+ locale: Generated<string>;
575
+ translation_group: string;
576
+ created_at: Generated<string>;
577
+ updated_at: Generated<string>;
578
+ }
579
+ interface ContentReferenceTable {
580
+ id: string;
581
+ relation_group: string;
582
+ parent_group: string;
583
+ child_group: string;
584
+ sort_order: Generated<number>;
585
+ created_at: Generated<string>;
586
+ }
587
+ interface MediaUsageSourceTable {
588
+ source_key: string;
589
+ source_type: string;
590
+ collection_slug: string | null;
591
+ content_id: string | null;
592
+ source_variant: string;
593
+ locale: string | null;
594
+ translation_group: string | null;
595
+ content_slug: string | null;
596
+ content_title: string | null;
597
+ content_status: string | null;
598
+ content_scheduled_at: string | null;
599
+ content_deleted_at: string | null;
600
+ revision_id: string | null;
601
+ current_generation: string;
602
+ schema_version: Generated<number>;
603
+ source_updated_at: string | null;
604
+ source_version: number | null;
605
+ source_fingerprint: string | null;
606
+ source_completeness: Generated<string>;
607
+ last_attempted_at: string | null;
608
+ last_error_code: string | null;
609
+ indexed_at: Generated<string>;
610
+ created_at: Generated<string>;
611
+ updated_at: Generated<string>;
612
+ }
613
+ interface MediaUsageTable {
614
+ id: string;
615
+ source_key: string;
616
+ generation: string;
617
+ field_slug: string;
618
+ field_path: string;
619
+ occurrence_index: Generated<number>;
620
+ reference_type: string;
621
+ media_id: string | null;
622
+ provider: Generated<string>;
623
+ provider_asset_id: string;
624
+ media_kind: string | null;
625
+ mime_type: string | null;
626
+ created_at: Generated<string>;
627
+ }
628
+ interface MediaUsageIndexStatusTable {
629
+ adapter_id: string;
630
+ scope_type: string;
631
+ scope_key: string;
632
+ status: string;
633
+ schema_version: Generated<number>;
634
+ started_at: string | null;
635
+ completed_at: string | null;
636
+ cursor: string | null;
637
+ indexed_source_count: Generated<number>;
638
+ failed_source_count: Generated<number>;
639
+ last_error_code: string | null;
640
+ updated_at: Generated<string>;
641
+ }
642
+ interface DinewayWebSessionTable {
643
+ id: string;
644
+ forgeway_user_id: string;
645
+ email: string | null;
646
+ encrypted_refresh_token: string;
647
+ status: Generated<string>;
648
+ expires_at: string;
649
+ last_seen_at: string | null;
650
+ revoked_at: string | null;
651
+ created_at: Generated<string>;
652
+ updated_at: Generated<string>;
653
+ }
654
+ interface DinewayWebOnboardingTable {
655
+ id: string;
656
+ session_id: string;
657
+ forgeway_user_id: string;
658
+ status: Generated<string>;
659
+ current_step: string;
660
+ requested_plan_code: string | null;
661
+ source: string | null;
662
+ handoff_id: string | null;
663
+ context_json: Generated<string>;
664
+ completed_at: string | null;
665
+ created_at: Generated<string>;
666
+ updated_at: Generated<string>;
667
+ }
668
+ interface DinewayWebCheckoutSessionTable {
669
+ id: string;
670
+ session_id: string;
671
+ forgeway_user_id: string;
672
+ plan_code: string;
673
+ forgeway_checkout_session_id: string;
674
+ status: Generated<string>;
675
+ success_url: string;
676
+ cancel_url: string;
677
+ completed_at: string | null;
678
+ created_at: Generated<string>;
679
+ updated_at: Generated<string>;
680
+ }
681
+ interface DinewayWebAccountProjectionTable {
682
+ forgeway_user_id: string;
683
+ email: string | null;
684
+ plan_code: string;
685
+ projection_json: string;
686
+ synced_at: string;
687
+ created_at: Generated<string>;
688
+ updated_at: Generated<string>;
689
+ }
690
+ interface DinewayWebBillingProjectionTable {
691
+ forgeway_user_id: string;
692
+ plan_code: string;
693
+ projection_json: string;
694
+ synced_at: string;
695
+ created_at: Generated<string>;
696
+ updated_at: Generated<string>;
697
+ }
698
+ interface DinewayWebCreditsProjectionTable {
699
+ forgeway_user_id: string;
700
+ plan_code: string;
701
+ available_credits: number;
702
+ projection_json: string;
703
+ synced_at: string;
704
+ created_at: Generated<string>;
705
+ updated_at: Generated<string>;
706
+ }
707
+ interface DinewayWebSitesProjectionTable {
708
+ forgeway_user_id: string;
709
+ plan_code: string;
710
+ used_hosted_sites: number;
711
+ hosted_site_limit: number | null;
712
+ projection_json: string;
713
+ synced_at: string;
714
+ created_at: Generated<string>;
715
+ updated_at: Generated<string>;
716
+ }
717
+ interface DinewayWebHandoffTable {
718
+ id: string;
719
+ token_hash: string;
720
+ forgeway_user_id: string;
721
+ email: string | null;
722
+ target: string;
723
+ reason: string;
724
+ context_json: Generated<string>;
725
+ status: Generated<string>;
726
+ expires_at: string;
727
+ consumed_at: string | null;
728
+ created_at: Generated<string>;
729
+ updated_at: Generated<string>;
730
+ }
731
+ interface DinewayWebHandoffAuditTable {
732
+ id: string;
733
+ handoff_id: string;
734
+ event: string;
735
+ actor_forgeway_user_id: string | null;
736
+ metadata_json: Generated<string>;
737
+ created_at: Generated<string>;
738
+ }
739
+ interface Database {
740
+ revisions: RevisionTable;
741
+ taxonomies: TaxonomyTable;
742
+ content_taxonomies: ContentTaxonomyTable;
743
+ _dineway_taxonomy_defs: TaxonomyDefTable;
744
+ media: MediaTable;
745
+ users: UserTable;
746
+ credentials: CredentialTable;
747
+ auth_tokens: AuthTokenTable;
748
+ oauth_accounts: OAuthAccountTable;
749
+ allowed_domains: AllowedDomainTable;
750
+ auth_challenges: AuthChallengeTable;
751
+ options: OptionTable;
752
+ audit_logs: AuditLogTable;
753
+ _dineway_activity_log: SiteActivityLogTable;
754
+ _dineway_context_entries: ContextEntryTable;
755
+ _dineway_context_tags: ContextTagTable;
756
+ _dineway_review_requests: ReviewRequestTable;
757
+ _dineway_content_release_grants: ContentReleaseGrantTable;
758
+ _dineway_entity_aliases: EntityAliasTable;
759
+ _dineway_handoff_snapshots: HandoffSnapshotTable;
760
+ _dineway_assignments: AssignmentTable;
761
+ _dineway_hitl_requests: HitlRequestTable;
762
+ _dineway_hitl_executions: HitlExecutionTable;
763
+ _dineway_plugin_secrets: PluginSecretTable;
764
+ _dineway_migrations: MigrationTable;
765
+ _dineway_collections: CollectionTable;
766
+ _dineway_fields: FieldTable;
767
+ _plugin_storage: PluginStorageTable;
768
+ _plugin_state: PluginStateTable;
769
+ _plugin_indexes: PluginIndexTable;
770
+ _dineway_menus: MenuTable;
771
+ _dineway_menu_items: MenuItemTable;
772
+ _dineway_widget_areas: WidgetAreaTable;
773
+ _dineway_widgets: WidgetTable;
774
+ _dineway_sections: SectionTable;
775
+ _dineway_api_tokens: ApiTokenTable;
776
+ _dineway_oauth_tokens: OAuthTokenTable;
777
+ _dineway_device_codes: DeviceCodeTable;
778
+ _dineway_authorization_codes: AuthorizationCodeTable;
779
+ _dineway_oauth_clients: OAuthClientTable;
780
+ _dineway_seo: SeoTable;
781
+ _dineway_cron_tasks: CronTaskTable;
782
+ _dineway_comments: CommentTable;
783
+ _dineway_comment_reactions: CommentReactionTable;
784
+ _dineway_redirects: RedirectTable;
785
+ _dineway_404_log: NotFoundLogTable;
786
+ _dineway_bylines: BylineTable;
787
+ _dineway_content_bylines: ContentBylineTable;
788
+ _dineway_byline_fields: BylineFieldTable;
789
+ _dineway_byline_field_values: BylineFieldValueTable;
790
+ _dineway_byline_field_group_values: BylineFieldGroupValueTable;
791
+ _dineway_relations: RelationTable;
792
+ _dineway_content_references: ContentReferenceTable;
793
+ _dineway_media_usage_sources: MediaUsageSourceTable;
794
+ _dineway_media_usage: MediaUsageTable;
795
+ _dineway_media_usage_index_status: MediaUsageIndexStatusTable;
796
+ _dineway_rate_limits: RateLimitTable;
797
+ _dineway_sessions: DinewaySessionTable;
798
+ _dineway_dineway_web_sessions: DinewayWebSessionTable;
799
+ _dineway_dineway_web_onboarding: DinewayWebOnboardingTable;
800
+ _dineway_dineway_web_checkout_sessions: DinewayWebCheckoutSessionTable;
801
+ _dineway_dineway_web_account_projections: DinewayWebAccountProjectionTable;
802
+ _dineway_dineway_web_billing_projections: DinewayWebBillingProjectionTable;
803
+ _dineway_dineway_web_credits_projections: DinewayWebCreditsProjectionTable;
804
+ _dineway_dineway_web_sites_projections: DinewayWebSitesProjectionTable;
805
+ _dineway_dineway_web_handoffs: DinewayWebHandoffTable;
806
+ _dineway_dineway_web_handoff_audit: DinewayWebHandoffAuditTable;
807
+ restaurant_locations: RestaurantLocationTable;
808
+ restaurant_location_memberships: RestaurantLocationMembershipTable;
809
+ restaurant_operating_settings: RestaurantOperatingSettingsTable;
810
+ restaurant_menus: RestaurantMenuTable;
811
+ restaurant_menu_location_assignments: RestaurantMenuLocationAssignmentTable;
812
+ restaurant_menu_sections: RestaurantMenuSectionTable;
813
+ restaurant_menu_items: RestaurantMenuItemTable;
814
+ restaurant_menu_section_items: RestaurantMenuSectionItemTable;
815
+ restaurant_modifier_groups: RestaurantModifierGroupTable;
816
+ restaurant_modifier_options: RestaurantModifierOptionTable;
817
+ restaurant_menu_item_modifier_groups: RestaurantMenuItemModifierGroupTable;
818
+ restaurant_menu_item_translations: RestaurantMenuItemTranslationTable;
819
+ restaurant_menu_overrides: RestaurantMenuOverrideTable;
820
+ restaurant_hours: RestaurantHoursTable;
821
+ restaurant_hours_overrides: RestaurantHoursOverrideTable;
822
+ restaurant_special_hours: RestaurantSpecialHoursTable;
823
+ restaurant_closures: RestaurantClosureTable;
824
+ restaurant_reservation_settings: RestaurantReservationSettingsTable;
825
+ restaurant_capacity_overrides: RestaurantCapacityOverrideTable;
826
+ restaurant_zones: RestaurantZoneTable;
827
+ restaurant_tables: RestaurantTableTable;
828
+ restaurant_reservations: RestaurantReservationTable;
829
+ restaurant_reservation_blocks: RestaurantReservationBlockTable;
830
+ restaurant_capacity_counters: RestaurantCapacityCounterTable;
831
+ restaurant_reservation_holds: RestaurantReservationHoldTable;
832
+ restaurant_reservation_offers: RestaurantReservationOfferTable;
833
+ restaurant_reservation_payment_policies: RestaurantReservationPaymentPolicyTable;
834
+ restaurant_reservation_experiences: RestaurantReservationExperienceTable;
835
+ restaurant_reservation_addon_categories: RestaurantReservationAddonCategoryTable;
836
+ restaurant_reservation_addons: RestaurantReservationAddonTable;
837
+ restaurant_reservation_experience_addon_categories: RestaurantReservationExperienceAddonCategoryTable;
838
+ restaurant_reservation_experience_included_addons: RestaurantReservationExperienceIncludedAddonTable;
839
+ restaurant_reservation_hold_commercial_selections: RestaurantReservationHoldCommercialSelectionTable;
840
+ restaurant_reservation_hold_addons: RestaurantReservationHoldAddonTable;
841
+ restaurant_reservation_hold_addon_operations: RestaurantReservationHoldAddonOperationTable;
842
+ restaurant_reservation_promotions: RestaurantReservationPromotionTable;
843
+ restaurant_reservation_promotion_allocations: RestaurantReservationPromotionAllocationTable;
844
+ restaurant_reservation_promotion_operations: RestaurantReservationPromotionOperationTable;
845
+ restaurant_gift_cards: RestaurantGiftCardTable;
846
+ restaurant_reservation_gift_card_allocations: RestaurantReservationGiftCardAllocationTable;
847
+ restaurant_gift_card_ledger_entries: RestaurantGiftCardLedgerEntryTable;
848
+ restaurant_reservation_gift_card_operations: RestaurantReservationGiftCardOperationTable;
849
+ restaurant_reservation_quotes: RestaurantReservationQuoteTable;
850
+ restaurant_reservation_quote_lines: RestaurantReservationQuoteLineTable;
851
+ restaurant_reservation_quote_checkouts: RestaurantReservationQuoteCheckoutTable;
852
+ restaurant_reservation_guest_settings: RestaurantReservationGuestSettingsTable;
853
+ restaurant_reservation_guest_fields: RestaurantReservationGuestFieldTable;
854
+ restaurant_reservation_guest_field_values: RestaurantReservationGuestFieldValueTable;
855
+ restaurant_reservation_quote_guest_contexts: RestaurantReservationQuoteGuestContextTable;
856
+ restaurant_reservation_quote_guest_field_values: RestaurantReservationQuoteGuestFieldValueTable;
857
+ restaurant_reservation_demand_settings: RestaurantReservationDemandSettingsTable;
858
+ restaurant_reservation_language_settings: RestaurantReservationLanguageSettingsTable;
859
+ restaurant_reservation_analytics_settings: RestaurantReservationAnalyticsSettingsTable;
860
+ restaurant_reservation_analytics_events: RestaurantReservationAnalyticsEventTable;
861
+ restaurant_reservation_requests: RestaurantReservationRequestTable;
862
+ restaurant_reservation_request_table_assignments: RestaurantReservationRequestTableAssignmentTable;
863
+ restaurant_priority_alerts: RestaurantPriorityAlertTable;
864
+ restaurant_priority_alert_opportunities: RestaurantPriorityAlertOpportunityTable;
865
+ restaurant_priority_alert_deliveries: RestaurantPriorityAlertDeliveryTable;
866
+ restaurant_reservation_table_assignments: RestaurantReservationTableAssignmentTable;
867
+ restaurant_guest_access: RestaurantGuestAccessTable;
868
+ restaurant_reservation_request_payment_link_deliveries: RestaurantReservationRequestPaymentLinkDeliveryTable;
869
+ restaurant_reservation_offer_link_deliveries: RestaurantReservationOfferLinkDeliveryTable;
870
+ restaurant_guest_profiles: RestaurantGuestProfileTable;
871
+ restaurant_guest_profile_retention_settings: RestaurantGuestProfileRetentionSettingsTable;
872
+ restaurant_guest_profile_requests: RestaurantGuestProfileRequestTable;
873
+ restaurant_guest_profile_reservations: RestaurantGuestProfileReservationTable;
874
+ restaurant_guest_profile_sharing_consents: RestaurantGuestProfileSharingConsentTable;
875
+ restaurant_related_location_pairs: RestaurantRelatedLocationPairTable;
876
+ restaurant_guest_consents: RestaurantGuestConsentTable;
877
+ restaurant_order_sequences: RestaurantOrderSequenceTable;
878
+ restaurant_orders: RestaurantOrderTable;
879
+ restaurant_order_snapshots: RestaurantOrderSnapshotTable;
880
+ restaurant_order_items: RestaurantOrderItemTable;
881
+ restaurant_order_item_modifiers: RestaurantOrderItemModifierTable;
882
+ restaurant_order_status_history: RestaurantOrderStatusHistoryTable;
883
+ restaurant_cart_holds: RestaurantCartHoldTable;
884
+ restaurant_payments: RestaurantPaymentTable;
885
+ restaurant_refunds: RestaurantRefundTable;
886
+ restaurant_stripe_settings: RestaurantStripeSettingsTable;
887
+ restaurant_stripe_location_settings: RestaurantStripeLocationSettingsTable;
888
+ restaurant_stripe_manual_tax_rates: RestaurantStripeManualTaxRateTable;
889
+ restaurant_stripe_events: RestaurantStripeEventTable;
890
+ payment_stripe_settings: PaymentStripeSettingsTable;
891
+ venue_venues: VenueTable;
892
+ venue_locations: VenueLocationTable;
893
+ venue_location_memberships: VenueLocationMembershipTable;
894
+ venue_spaces: VenueSpaceTable;
895
+ venue_space_layouts: VenueSpaceLayoutTable;
896
+ venue_rate_plans: VenueRatePlanTable;
897
+ venue_booking_policies: VenueBookingPolicyTable;
898
+ venue_orders: VenueOrderTable;
899
+ venue_order_status_history: VenueOrderStatusHistoryTable;
900
+ venue_booking_holds: VenueBookingHoldTable;
901
+ venue_availability_rules: VenueAvailabilityRuleTable;
902
+ venue_availability_blocks: VenueAvailabilityBlockTable;
903
+ venue_cancellation_policies: VenueCancellationPolicyTable;
904
+ venue_cancellation_policy_tiers: VenueCancellationPolicyTierTable;
905
+ venue_order_cancellation_snapshots: VenueOrderCancellationSnapshotTable;
906
+ venue_quotes: VenueQuoteTable;
907
+ venue_quote_lines: VenueQuoteLineTable;
908
+ venue_payment_allocations: VenuePaymentAllocationTable;
909
+ venue_payments: VenuePaymentTable;
910
+ venue_refunds: VenueRefundTable;
911
+ venue_payment_events: VenuePaymentEventTable;
912
+ venue_conversations: VenueConversationTable;
913
+ venue_messages: VenueMessageTable;
914
+ venue_conversation_reads: VenueConversationReadTable;
915
+ venue_notification_settings: VenueNotificationSettingsTable;
916
+ venue_outbox_events: VenueOutboxEventTable;
917
+ venue_guest_access: VenueGuestAccessTable;
918
+ venue_review_invitations: VenueReviewInvitationTable;
919
+ venue_reviews: VenueReviewTable;
920
+ venue_review_responses: VenueReviewResponseTable;
921
+ restaurant_delivery_zones: RestaurantDeliveryZoneTable;
922
+ restaurant_delivery_settings: RestaurantDeliverySettingsTable;
923
+ restaurant_dine_in_settings: RestaurantDineInSettingsTable;
924
+ restaurant_dine_in_sessions: RestaurantDineInSessionTable;
925
+ restaurant_tab_rounds: RestaurantTabRoundTable;
926
+ restaurant_outbox_events: RestaurantOutboxEventTable;
927
+ restaurant_outbox_deliveries: RestaurantOutboxDeliveryTable;
928
+ restaurant_kds_tickets: RestaurantKdsTicketTable;
929
+ restaurant_notification_settings: RestaurantNotificationSettingsTable;
930
+ }
931
+ interface RedirectTable {
932
+ id: string;
933
+ source: string;
934
+ destination: string;
935
+ type: number;
936
+ is_pattern: number;
937
+ enabled: number;
938
+ hits: number;
939
+ last_hit_at: string | null;
940
+ group_name: string | null;
941
+ auto: number;
942
+ created_at: string;
943
+ updated_at: string;
944
+ }
945
+ interface NotFoundLogTable {
946
+ id: string;
947
+ path: string;
948
+ referrer: string | null;
949
+ user_agent: string | null;
950
+ ip: string | null;
951
+ hits: number;
952
+ last_seen_at: string | null;
953
+ created_at: string;
954
+ }
955
+ interface BylineTable {
956
+ id: string;
957
+ slug: string;
958
+ display_name: string;
959
+ bio: string | null;
960
+ avatar_media_id: string | null;
961
+ website_url: string | null;
962
+ user_id: string | null;
963
+ is_guest: number;
964
+ created_at: Generated<string>;
965
+ updated_at: Generated<string>;
966
+ locale: Generated<string>;
967
+ translation_group: Generated<string | null>;
968
+ }
969
+ interface ContentBylineTable {
970
+ id: string;
971
+ collection_slug: string;
972
+ content_id: string;
973
+ byline_id: string;
974
+ sort_order: number;
975
+ role_label: string | null;
976
+ created_at: Generated<string>;
977
+ }
978
+ interface BylineFieldTable {
979
+ id: string;
980
+ slug: string;
981
+ label: string;
982
+ type: string;
983
+ required: number;
984
+ translatable: number;
985
+ validation: string | null;
986
+ sort_order: number;
987
+ created_at: Generated<string>;
988
+ updated_at: Generated<string>;
989
+ }
990
+ interface BylineFieldValueTable {
991
+ byline_id: string;
992
+ field_id: string;
993
+ value: string | null;
994
+ created_at: Generated<string>;
995
+ updated_at: Generated<string>;
996
+ }
997
+ interface BylineFieldGroupValueTable {
998
+ translation_group: string;
999
+ field_id: string;
1000
+ value: string | null;
1001
+ created_at: Generated<string>;
1002
+ updated_at: Generated<string>;
1003
+ }
1004
+ interface RateLimitTable {
1005
+ key: string;
1006
+ window: string;
1007
+ count: number;
1008
+ }
1009
+ type VenueRecordStatus = "draft" | "active" | "archived";
1010
+ type VenueBookingMode = "enquiry" | "request" | "instant";
1011
+ type VenueOrderStatus = "enquired" | "requested" | "quoted" | "negotiating" | "accepted" | "payment_pending" | "confirmed" | "declined" | "withdrawn" | "expired" | "cancelled" | "completed";
1012
+ interface VenueTable {
1013
+ id: string;
1014
+ slug: string;
1015
+ name: string;
1016
+ summary: string | null;
1017
+ description: string | null;
1018
+ status: Generated<VenueRecordStatus>;
1019
+ website_url: string | null;
1020
+ phone: string | null;
1021
+ email: string | null;
1022
+ version: Generated<number>;
1023
+ created_at: Generated<string>;
1024
+ updated_at: Generated<string>;
1025
+ }
1026
+ interface VenueLocationTable {
1027
+ id: string;
1028
+ venue_id: string;
1029
+ slug: string;
1030
+ name: string;
1031
+ status: Generated<VenueRecordStatus>;
1032
+ timezone: string;
1033
+ currency: string;
1034
+ address_line1: string;
1035
+ address_line2: string | null;
1036
+ city: string;
1037
+ region: string | null;
1038
+ postal_code: string | null;
1039
+ country_code: string;
1040
+ latitude: number | null;
1041
+ longitude: number | null;
1042
+ phone: string | null;
1043
+ email: string | null;
1044
+ version: Generated<number>;
1045
+ created_at: Generated<string>;
1046
+ updated_at: Generated<string>;
1047
+ }
1048
+ interface VenueLocationMembershipTable {
1049
+ id: string;
1050
+ user_id: string;
1051
+ location_id: string | null;
1052
+ scope_key: string;
1053
+ role: "viewer" | "staff" | "manager";
1054
+ created_at: Generated<string>;
1055
+ updated_at: Generated<string>;
1056
+ }
1057
+ interface VenueSpaceTable {
1058
+ id: string;
1059
+ location_id: string;
1060
+ slug: string;
1061
+ name: string;
1062
+ summary: string | null;
1063
+ description: string | null;
1064
+ space_type: "hall" | "function_room" | "bar" | "restaurant" | "hotel" | "warehouse" | "studio" | "outdoor" | "boat" | "meeting_room" | "other";
1065
+ privacy: "private" | "semi_private" | "shared" | "whole_venue";
1066
+ status: Generated<VenueRecordStatus>;
1067
+ booking_mode: Generated<VenueBookingMode>;
1068
+ minimum_party_size: Generated<number>;
1069
+ maximum_party_size: number;
1070
+ minimum_duration_minutes: Generated<number>;
1071
+ maximum_duration_minutes: number | null;
1072
+ lead_minutes: Generated<number>;
1073
+ booking_horizon_days: Generated<number>;
1074
+ sort_order: Generated<number>;
1075
+ version: Generated<number>;
1076
+ created_at: Generated<string>;
1077
+ updated_at: Generated<string>;
1078
+ }
1079
+ interface VenueSpaceLayoutTable {
1080
+ id: string;
1081
+ space_id: string;
1082
+ layout_key: string;
1083
+ layout_type: "standing" | "dining" | "theatre" | "boardroom" | "classroom" | "cabaret" | "u_shape" | "reception" | "custom";
1084
+ name: string | null;
1085
+ capacity: number;
1086
+ is_default: Generated<number>;
1087
+ sort_order: Generated<number>;
1088
+ version: Generated<number>;
1089
+ created_at: Generated<string>;
1090
+ updated_at: Generated<string>;
1091
+ }
1092
+ interface VenueRatePlanTable {
1093
+ id: string;
1094
+ space_id: string;
1095
+ name: string;
1096
+ status: Generated<"active" | "archived">;
1097
+ price_basis: "hire_fee" | "minimum_spend" | "per_person";
1098
+ unit: "hour" | "session" | "day" | "person";
1099
+ amount_minor: number;
1100
+ currency: string;
1101
+ tax_behavior: Generated<"exclusive" | "inclusive">;
1102
+ refundable_deposit_minor: Generated<number>;
1103
+ cleaning_fee_minor: Generated<number>;
1104
+ minimum_units: Generated<number>;
1105
+ session_duration_minutes: number | null;
1106
+ days_of_week_json: Generated<string>;
1107
+ local_start_time: string | null;
1108
+ local_end_time: string | null;
1109
+ valid_from: string | null;
1110
+ valid_until: string | null;
1111
+ version: Generated<number>;
1112
+ created_at: Generated<string>;
1113
+ updated_at: Generated<string>;
1114
+ }
1115
+ type VenuePaymentCollection = "full" | "deposit" | "scheduled" | "pay_later" | "offline";
1116
+ interface VenueBookingPolicyTable {
1117
+ id: string;
1118
+ space_id: string;
1119
+ payment_collection: Generated<VenuePaymentCollection>;
1120
+ deposit_type: Generated<"none" | "fixed" | "percentage">;
1121
+ deposit_value: Generated<number>;
1122
+ balance_due_days: number | null;
1123
+ provisional_hold_minutes: Generated<number>;
1124
+ request_response_hours: Generated<number>;
1125
+ requires_quote: Generated<number>;
1126
+ version: Generated<number>;
1127
+ created_at: Generated<string>;
1128
+ updated_at: Generated<string>;
1129
+ }
1130
+ type VenuePaymentStatus = "not_required" | "pending" | "authorized" | "partially_paid" | "paid" | "partially_refunded" | "refunded" | "failed";
1131
+ type VenueQuoteStatus = "not_required" | "pending" | "issued" | "negotiating" | "accepted" | "declined" | "expired";
1132
+ interface VenueOrderTable {
1133
+ id: string;
1134
+ location_id: string;
1135
+ space_id: string;
1136
+ request_key: string;
1137
+ public_reference: string;
1138
+ source: Generated<"public" | "admin" | "mcp" | "federation" | "import">;
1139
+ booking_mode: VenueBookingMode;
1140
+ status: VenueOrderStatus;
1141
+ customer_user_id: string | null;
1142
+ guest_name: string;
1143
+ guest_email: string | null;
1144
+ guest_phone: string | null;
1145
+ event_type: string;
1146
+ starts_at: string;
1147
+ ends_at: string;
1148
+ timezone: string;
1149
+ party_size: number;
1150
+ customer_message: string | null;
1151
+ currency: string;
1152
+ rate_plan_id: string | null;
1153
+ rate_plan_version: number | null;
1154
+ booking_policy_version: number;
1155
+ pricing_snapshot_json: string;
1156
+ subtotal_minor: number;
1157
+ tax_minor: Generated<number>;
1158
+ fees_minor: Generated<number>;
1159
+ refundable_deposit_minor: Generated<number>;
1160
+ total_minor: number;
1161
+ payment_collection: VenuePaymentCollection;
1162
+ payment_status: Generated<VenuePaymentStatus>;
1163
+ quote_status: Generated<VenueQuoteStatus>;
1164
+ accepted_at: string | null;
1165
+ confirmed_at: string | null;
1166
+ declined_at: string | null;
1167
+ withdrawn_at: string | null;
1168
+ expired_at: string | null;
1169
+ cancelled_at: string | null;
1170
+ completed_at: string | null;
1171
+ version: Generated<number>;
1172
+ created_at: Generated<string>;
1173
+ updated_at: Generated<string>;
1174
+ }
1175
+ interface VenueOrderStatusHistoryTable {
1176
+ id: string;
1177
+ order_id: string;
1178
+ from_status: VenueOrderStatus | null;
1179
+ to_status: VenueOrderStatus;
1180
+ actor_type: "user" | "api_token" | "guest" | "system";
1181
+ actor_id: string | null;
1182
+ reason_code: string | null;
1183
+ occurred_at: string;
1184
+ created_at: Generated<string>;
1185
+ }
1186
+ interface VenueBookingHoldTable {
1187
+ id: string;
1188
+ space_id: string;
1189
+ order_id: string | null;
1190
+ request_key: string;
1191
+ starts_at: string;
1192
+ ends_at: string;
1193
+ status: Generated<"active" | "committed" | "released" | "expired">;
1194
+ expires_at: string;
1195
+ committed_at: string | null;
1196
+ released_at: string | null;
1197
+ version: Generated<number>;
1198
+ created_at: Generated<string>;
1199
+ updated_at: Generated<string>;
1200
+ }
1201
+ interface VenueAvailabilityRuleTable {
1202
+ id: string;
1203
+ space_id: string;
1204
+ weekday: number;
1205
+ local_start_time: string;
1206
+ local_end_time: string;
1207
+ slot_minutes: Generated<number>;
1208
+ valid_from: string | null;
1209
+ valid_until: string | null;
1210
+ status: Generated<"active" | "inactive">;
1211
+ version: Generated<number>;
1212
+ created_at: Generated<string>;
1213
+ updated_at: Generated<string>;
1214
+ }
1215
+ interface VenueAvailabilityBlockTable {
1216
+ id: string;
1217
+ space_id: string;
1218
+ order_id: string | null;
1219
+ hold_id: string | null;
1220
+ block_type: "closure" | "external" | "provisional" | "confirmed" | "maintenance";
1221
+ starts_at: string;
1222
+ ends_at: string;
1223
+ reason: string | null;
1224
+ source_reference: string | null;
1225
+ status: Generated<"active" | "released">;
1226
+ released_at: string | null;
1227
+ version: Generated<number>;
1228
+ created_at: Generated<string>;
1229
+ updated_at: Generated<string>;
1230
+ }
1231
+ interface VenueCancellationPolicyTable {
1232
+ id: string;
1233
+ space_id: string;
1234
+ policy_version: number;
1235
+ name: string;
1236
+ status: Generated<"active" | "archived">;
1237
+ grace_minutes: Generated<number>;
1238
+ refund_fees: Generated<number>;
1239
+ refund_refundable_deposit: Generated<number>;
1240
+ record_version: Generated<number>;
1241
+ created_at: Generated<string>;
1242
+ updated_at: Generated<string>;
1243
+ }
1244
+ interface VenueCancellationPolicyTierTable {
1245
+ id: string;
1246
+ policy_id: string;
1247
+ cutoff_minutes: number;
1248
+ refund_basis_points: number;
1249
+ sort_order: Generated<number>;
1250
+ created_at: Generated<string>;
1251
+ }
1252
+ interface VenueOrderCancellationSnapshotTable {
1253
+ order_id: string;
1254
+ policy_id: string;
1255
+ policy_version: number;
1256
+ snapshot_json: string;
1257
+ created_at: Generated<string>;
1258
+ }
1259
+ type VenueQuoteRecordStatus = "draft" | "issued" | "accepted" | "declined" | "expired" | "superseded";
1260
+ interface VenueQuoteTable {
1261
+ id: string;
1262
+ order_id: string;
1263
+ revision: number;
1264
+ status: Generated<VenueQuoteRecordStatus>;
1265
+ currency: string;
1266
+ subtotal_minor: number;
1267
+ discount_minor: Generated<number>;
1268
+ tax_minor: Generated<number>;
1269
+ fees_minor: Generated<number>;
1270
+ refundable_deposit_minor: Generated<number>;
1271
+ total_minor: number;
1272
+ payment_collection: VenuePaymentCollection;
1273
+ initial_due_minor: number;
1274
+ snapshot_json: string;
1275
+ expires_at: string;
1276
+ issued_at: string | null;
1277
+ accepted_at: string | null;
1278
+ declined_at: string | null;
1279
+ superseded_at: string | null;
1280
+ created_by_type: "user" | "api_token" | "guest" | "system";
1281
+ created_by_id: string | null;
1282
+ version: Generated<number>;
1283
+ created_at: Generated<string>;
1284
+ updated_at: Generated<string>;
1285
+ }
1286
+ interface VenueQuoteLineTable {
1287
+ id: string;
1288
+ quote_id: string;
1289
+ line_index: number;
1290
+ line_type: "hire_fee" | "minimum_spend" | "per_person" | "fee" | "tax" | "refundable_deposit" | "discount" | "custom";
1291
+ label: string;
1292
+ quantity: number;
1293
+ unit_amount_minor: number;
1294
+ total_minor: number;
1295
+ currency: string;
1296
+ source_id: string | null;
1297
+ source_version: number | null;
1298
+ metadata_json: Generated<string>;
1299
+ }
1300
+ type VenuePaymentAllocationStatus = "scheduled" | "due" | "pending" | "paid" | "partially_refunded" | "refunded" | "waived" | "cancelled";
1301
+ interface VenuePaymentAllocationTable {
1302
+ id: string;
1303
+ order_id: string;
1304
+ quote_id: string | null;
1305
+ sequence: number;
1306
+ allocation_type: "full" | "deposit" | "balance" | "refundable_deposit" | "adjustment";
1307
+ label: string;
1308
+ currency: string;
1309
+ amount_minor: number;
1310
+ captured_minor: Generated<number>;
1311
+ refunded_minor: Generated<number>;
1312
+ due_at: string | null;
1313
+ status: Generated<VenuePaymentAllocationStatus>;
1314
+ version: Generated<number>;
1315
+ created_at: Generated<string>;
1316
+ updated_at: Generated<string>;
1317
+ }
1318
+ type VenuePaymentRecordStatus = "requires_action" | "processing" | "authorized" | "succeeded" | "partially_refunded" | "refunded" | "failed" | "cancelled";
1319
+ interface VenuePaymentTable {
1320
+ id: string;
1321
+ order_id: string;
1322
+ allocation_id: string | null;
1323
+ operation_key: string;
1324
+ provider: "stripe" | "offline";
1325
+ payment_flow: "checkout" | "payment_element" | "offline";
1326
+ provider_session_id: string | null;
1327
+ provider_payment_id: string | null;
1328
+ status: VenuePaymentRecordStatus;
1329
+ currency: string;
1330
+ amount_requested_minor: number;
1331
+ amount_authorized_minor: Generated<number>;
1332
+ amount_captured_minor: Generated<number>;
1333
+ amount_refunded_minor: Generated<number>;
1334
+ failure_code: string | null;
1335
+ failure_message: string | null;
1336
+ provider_context_json: Generated<string>;
1337
+ processed_at: string | null;
1338
+ version: Generated<number>;
1339
+ created_at: Generated<string>;
1340
+ updated_at: Generated<string>;
1341
+ }
1342
+ interface VenueRefundTable {
1343
+ id: string;
1344
+ order_id: string;
1345
+ payment_id: string;
1346
+ allocation_id: string | null;
1347
+ operation_key: string;
1348
+ provider_refund_id: string | null;
1349
+ status: "pending" | "succeeded" | "failed" | "cancelled";
1350
+ currency: string;
1351
+ amount_minor: number;
1352
+ reason_code: string;
1353
+ failure_code: string | null;
1354
+ failure_message: string | null;
1355
+ completed_at: string | null;
1356
+ version: Generated<number>;
1357
+ created_at: Generated<string>;
1358
+ updated_at: Generated<string>;
1359
+ }
1360
+ interface VenuePaymentEventTable {
1361
+ id: string;
1362
+ provider: "stripe";
1363
+ provider_event_id: string;
1364
+ event_type: string;
1365
+ payload_hash: string;
1366
+ payment_id: string | null;
1367
+ status: Generated<"received" | "processed" | "failed" | "ignored">;
1368
+ error_message: string | null;
1369
+ received_at: string;
1370
+ processed_at: string | null;
1371
+ version: Generated<number>;
1372
+ created_at: Generated<string>;
1373
+ updated_at: Generated<string>;
1374
+ }
1375
+ interface VenueConversationTable {
1376
+ id: string;
1377
+ order_id: string;
1378
+ status: Generated<"open" | "closed">;
1379
+ subject: string;
1380
+ last_message_at: string | null;
1381
+ customer_unread_count: Generated<number>;
1382
+ manager_unread_count: Generated<number>;
1383
+ version: Generated<number>;
1384
+ created_at: Generated<string>;
1385
+ updated_at: Generated<string>;
1386
+ }
1387
+ interface VenueMessageTable {
1388
+ id: string;
1389
+ conversation_id: string;
1390
+ sender_type: "user" | "api_token" | "guest" | "system";
1391
+ sender_id: string | null;
1392
+ sender_role: "customer" | "manager" | "system";
1393
+ body: string;
1394
+ attachments_json: Generated<string>;
1395
+ sent_at: string;
1396
+ edited_at: string | null;
1397
+ redacted_at: string | null;
1398
+ version: Generated<number>;
1399
+ created_at: Generated<string>;
1400
+ updated_at: Generated<string>;
1401
+ }
1402
+ interface VenueConversationReadTable {
1403
+ id: string;
1404
+ conversation_id: string;
1405
+ reader_type: "user" | "api_token" | "guest";
1406
+ reader_id: string;
1407
+ reader_role: "customer" | "manager";
1408
+ last_read_message_id: string | null;
1409
+ last_read_at: string;
1410
+ version: Generated<number>;
1411
+ created_at: Generated<string>;
1412
+ updated_at: Generated<string>;
1413
+ }
1414
+ interface VenueNotificationSettingsTable {
1415
+ location_id: string;
1416
+ email_enabled: Generated<number>;
1417
+ manager_recipients_json: Generated<string>;
1418
+ customer_event_types_json: Generated<string>;
1419
+ manager_event_types_json: Generated<string>;
1420
+ version: Generated<number>;
1421
+ created_at: Generated<string>;
1422
+ updated_at: Generated<string>;
1423
+ }
1424
+ interface VenueOutboxEventTable {
1425
+ id: string;
1426
+ location_id: string;
1427
+ order_id: string | null;
1428
+ aggregate_type: string;
1429
+ aggregate_id: string;
1430
+ event_type: string;
1431
+ dedupe_key: string;
1432
+ payload_json: Generated<string>;
1433
+ status: Generated<"pending" | "processing" | "delivered" | "failed">;
1434
+ attempt_count: Generated<number>;
1435
+ retryable: Generated<0 | 1>;
1436
+ available_at: string;
1437
+ locked_until: string | null;
1438
+ last_error_code: string | null;
1439
+ version: Generated<number>;
1440
+ created_at: Generated<string>;
1441
+ updated_at: Generated<string>;
1442
+ }
1443
+ interface VenueGuestAccessTable {
1444
+ id: string;
1445
+ location_id: string;
1446
+ order_id: string;
1447
+ token_id: string;
1448
+ token_hash: string;
1449
+ purpose: "booking_manage";
1450
+ status: Generated<"active" | "revoked">;
1451
+ expires_at: string;
1452
+ revoked_at: string | null;
1453
+ version: Generated<number>;
1454
+ created_at: Generated<string>;
1455
+ updated_at: Generated<string>;
1456
+ }
1457
+ interface VenueReviewInvitationTable {
1458
+ id: string;
1459
+ order_id: string;
1460
+ customer_user_id: string | null;
1461
+ guest_email_digest: string | null;
1462
+ token_digest: string;
1463
+ status: Generated<"pending" | "sent" | "completed" | "expired" | "revoked">;
1464
+ eligible_at: string;
1465
+ expires_at: string;
1466
+ sent_at: string | null;
1467
+ completed_at: string | null;
1468
+ version: Generated<number>;
1469
+ created_at: Generated<string>;
1470
+ updated_at: Generated<string>;
1471
+ }
1472
+ interface VenueReviewTable {
1473
+ id: string;
1474
+ order_id: string;
1475
+ location_id: string;
1476
+ space_id: string;
1477
+ customer_user_id: string | null;
1478
+ guest_email_digest: string | null;
1479
+ rating: number;
1480
+ communication_rating: number | null;
1481
+ service_rating: number | null;
1482
+ value_rating: number | null;
1483
+ title: string | null;
1484
+ body: string;
1485
+ verified_booking: Generated<number>;
1486
+ status: Generated<"pending" | "published" | "rejected" | "removed">;
1487
+ submitted_at: string;
1488
+ published_at: string | null;
1489
+ moderated_by_type: "user" | "api_token" | "system" | null;
1490
+ moderated_by_id: string | null;
1491
+ moderation_note: string | null;
1492
+ version: Generated<number>;
1493
+ created_at: Generated<string>;
1494
+ updated_at: Generated<string>;
1495
+ }
1496
+ interface VenueReviewResponseTable {
1497
+ id: string;
1498
+ review_id: string;
1499
+ body: string;
1500
+ status: Generated<"draft" | "published" | "removed">;
1501
+ created_by_type: "user" | "api_token" | "system";
1502
+ created_by_id: string | null;
1503
+ published_at: string | null;
1504
+ version: Generated<number>;
1505
+ created_at: Generated<string>;
1506
+ updated_at: Generated<string>;
1507
+ }
1508
+ interface RestaurantLocationTable {
1509
+ id: string;
1510
+ slug: string;
1511
+ name: string;
1512
+ status: "active" | "archived";
1513
+ active_slot: number | null;
1514
+ default_key: "default" | null;
1515
+ timezone: string;
1516
+ currency: string;
1517
+ address_line1: string | null;
1518
+ address_line2: string | null;
1519
+ city: string | null;
1520
+ region: string | null;
1521
+ postal_code: string | null;
1522
+ country_code: string | null;
1523
+ latitude: number | null;
1524
+ longitude: number | null;
1525
+ phone: string | null;
1526
+ email: string | null;
1527
+ service_modes_json: Generated<string>;
1528
+ version: Generated<number>;
1529
+ created_at: Generated<string>;
1530
+ updated_at: Generated<string>;
1531
+ }
1532
+ interface RestaurantLocationMembershipTable {
1533
+ id: string;
1534
+ user_id: string;
1535
+ location_id: string | null;
1536
+ scope_key: string;
1537
+ role: "viewer" | "staff" | "manager";
1538
+ created_at: Generated<string>;
1539
+ updated_at: Generated<string>;
1540
+ }
1541
+ interface RestaurantOperatingSettingsTable {
1542
+ id: string;
1543
+ scope_key: string;
1544
+ location_id: string | null;
1545
+ default_currency: string | null;
1546
+ default_timezone: string | null;
1547
+ default_service_modes_json: string | null;
1548
+ tips_enabled: number | null;
1549
+ suggested_tip_percentages_json: string | null;
1550
+ service_fee_basis_points: number | null;
1551
+ version: Generated<number>;
1552
+ created_at: Generated<string>;
1553
+ updated_at: Generated<string>;
1554
+ }
1555
+ interface RestaurantDeliveryZoneTable {
1556
+ id: string;
1557
+ location_id: string;
1558
+ name: string;
1559
+ status: "active" | "archived";
1560
+ priority: number;
1561
+ radius_meters: number | null;
1562
+ postal_codes_json: Generated<string>;
1563
+ area_codes_json: Generated<string>;
1564
+ fee_minor: Generated<number>;
1565
+ minimum_order_minor: Generated<number>;
1566
+ estimated_minutes: Generated<number>;
1567
+ version: Generated<number>;
1568
+ created_at: Generated<string>;
1569
+ updated_at: Generated<string>;
1570
+ }
1571
+ interface RestaurantDeliverySettingsTable {
1572
+ id: string;
1573
+ location_id: string;
1574
+ slot_minutes: Generated<number>;
1575
+ lead_minutes: Generated<number>;
1576
+ booking_horizon_days: Generated<number>;
1577
+ version: Generated<number>;
1578
+ created_at: Generated<string>;
1579
+ updated_at: Generated<string>;
1580
+ }
1581
+ type RestaurantDineInDefaultPaymentMode = "prepaid" | "offline" | "tab";
1582
+ interface RestaurantDineInSettingsTable {
1583
+ id: string;
1584
+ location_id: string;
1585
+ qr_enabled: Generated<number>;
1586
+ offline_payment_enabled: Generated<number>;
1587
+ open_tab_enabled: Generated<number>;
1588
+ default_payment_mode: Generated<RestaurantDineInDefaultPaymentMode>;
1589
+ tab_authorization_ceiling_minor: Generated<number>;
1590
+ session_ttl_seconds: Generated<number>;
1591
+ version: Generated<number>;
1592
+ created_at: Generated<string>;
1593
+ updated_at: Generated<string>;
1594
+ }
1595
+ interface RestaurantNotificationSettingsTable {
1596
+ id: string;
1597
+ scope_key: string;
1598
+ location_id: string | null;
1599
+ webhook_url: string | null;
1600
+ webhook_enabled: Generated<number>;
1601
+ webhook_event_types_json: Generated<string>;
1602
+ external_kds_url: string | null;
1603
+ external_kds_enabled: Generated<number>;
1604
+ external_kds_event_types_json: Generated<string>;
1605
+ email_enabled: Generated<number>;
1606
+ email_event_types_json: Generated<string>;
1607
+ email_templates_json: Generated<string>;
1608
+ version: Generated<number>;
1609
+ created_at: Generated<string>;
1610
+ updated_at: Generated<string>;
1611
+ }
1612
+ interface RestaurantDineInSessionTable {
1613
+ id: string;
1614
+ location_id: string;
1615
+ table_id: string;
1616
+ session_key: string;
1617
+ token_id: string;
1618
+ token_hash: string;
1619
+ service_date: string;
1620
+ status: "open" | "closed" | "cancelled";
1621
+ expires_at: string;
1622
+ opened_at: string;
1623
+ closed_at: string | null;
1624
+ version: Generated<number>;
1625
+ created_at: Generated<string>;
1626
+ updated_at: Generated<string>;
1627
+ }
1628
+ interface RestaurantTabRoundTable {
1629
+ id: string;
1630
+ location_id: string;
1631
+ session_id: string;
1632
+ order_id: string;
1633
+ payment_id: string | null;
1634
+ round_number: number;
1635
+ request_key: string;
1636
+ payment_mode: "prepaid" | "offline" | "tab";
1637
+ status: "open" | "authorized" | "settled" | "voided";
1638
+ authorization_ceiling_minor: Generated<number>;
1639
+ amount_requested_minor: number;
1640
+ amount_authorized_minor: Generated<number>;
1641
+ amount_captured_minor: Generated<number>;
1642
+ amount_refunded_minor: Generated<number>;
1643
+ opened_at: string;
1644
+ settled_at: string | null;
1645
+ version: Generated<number>;
1646
+ created_at: Generated<string>;
1647
+ updated_at: Generated<string>;
1648
+ }
1649
+ interface RestaurantOutboxEventTable {
1650
+ id: string;
1651
+ location_id: string;
1652
+ aggregate_type: string;
1653
+ aggregate_id: string;
1654
+ event_type: string;
1655
+ dedupe_key: string;
1656
+ payload_json: string;
1657
+ status: Generated<string>;
1658
+ attempt_count: Generated<number>;
1659
+ available_at: string;
1660
+ locked_until: string | null;
1661
+ last_error_code: string | null;
1662
+ version: Generated<number>;
1663
+ created_at: Generated<string>;
1664
+ updated_at: Generated<string>;
1665
+ }
1666
+ interface RestaurantOutboxDeliveryTable {
1667
+ id: string;
1668
+ event_id: string;
1669
+ initial_channel: "email" | "sms" | "whatsapp" | "webhook" | "receipt" | "external_kds";
1670
+ channel: "email" | "sms" | "whatsapp" | "webhook" | "receipt" | "external_kds";
1671
+ status: Generated<string>;
1672
+ attempt_count: Generated<number>;
1673
+ channel_attempt_count: Generated<number>;
1674
+ fallback_count: Generated<number>;
1675
+ available_at: string;
1676
+ locked_until: string | null;
1677
+ last_error_code: string | null;
1678
+ version: Generated<number>;
1679
+ created_at: Generated<string>;
1680
+ updated_at: Generated<string>;
1681
+ }
1682
+ interface RestaurantKdsTicketTable {
1683
+ id: string;
1684
+ location_id: string;
1685
+ order_id: string;
1686
+ order_number: number;
1687
+ fulfilment_type: "dine_in" | "pickup" | "delivery";
1688
+ items_json: string;
1689
+ status: Generated<string>;
1690
+ priority: Generated<number>;
1691
+ started_at: string | null;
1692
+ ready_at: string | null;
1693
+ completed_at: string | null;
1694
+ cancelled_at: string | null;
1695
+ version: Generated<number>;
1696
+ created_at: Generated<string>;
1697
+ updated_at: Generated<string>;
1698
+ }
1699
+ type RestaurantServiceScope = "all" | "dine_in" | "pickup" | "delivery" | "reservations";
1700
+ interface RestaurantHoursTable {
1701
+ id: string;
1702
+ weekday: number;
1703
+ service_scope: RestaurantServiceScope;
1704
+ windows_json: Generated<string>;
1705
+ version: Generated<number>;
1706
+ created_at: Generated<string>;
1707
+ updated_at: Generated<string>;
1708
+ }
1709
+ interface RestaurantHoursOverrideTable extends RestaurantHoursTable {
1710
+ location_id: string;
1711
+ }
1712
+ interface RestaurantSpecialHoursTable {
1713
+ id: string;
1714
+ location_id: string;
1715
+ service_date: string;
1716
+ service_scope: RestaurantServiceScope;
1717
+ is_closed: Generated<number>;
1718
+ windows_json: Generated<string>;
1719
+ reason: string | null;
1720
+ version: Generated<number>;
1721
+ created_at: Generated<string>;
1722
+ updated_at: Generated<string>;
1723
+ }
1724
+ interface RestaurantClosureTable {
1725
+ id: string;
1726
+ location_id: string;
1727
+ closure_type: "temporary" | "private_event";
1728
+ scope: "whole_day" | "time_range";
1729
+ service_scope: RestaurantServiceScope;
1730
+ service_date: string | null;
1731
+ starts_at: string | null;
1732
+ ends_at: string | null;
1733
+ reason: string | null;
1734
+ status: "active" | "removed";
1735
+ removed_at: string | null;
1736
+ version: Generated<number>;
1737
+ created_at: Generated<string>;
1738
+ updated_at: Generated<string>;
1739
+ }
1740
+ interface RestaurantReservationSettingsTable {
1741
+ id: string;
1742
+ default_key: Generated<"default">;
1743
+ capacity_per_slot: Generated<number>;
1744
+ slot_minutes: Generated<number>;
1745
+ lead_minutes: Generated<number>;
1746
+ max_party_size: Generated<number>;
1747
+ hold_minutes: Generated<number>;
1748
+ booking_horizon_days: Generated<number>;
1749
+ version: Generated<number>;
1750
+ created_at: Generated<string>;
1751
+ updated_at: Generated<string>;
1752
+ }
1753
+ interface RestaurantCapacityOverrideTable {
1754
+ id: string;
1755
+ location_id: string;
1756
+ capacity_per_slot: number | null;
1757
+ slot_minutes: number | null;
1758
+ lead_minutes: number | null;
1759
+ max_party_size: number | null;
1760
+ hold_minutes: number | null;
1761
+ booking_horizon_days: number | null;
1762
+ version: Generated<number>;
1763
+ created_at: Generated<string>;
1764
+ updated_at: Generated<string>;
1765
+ }
1766
+ interface RestaurantZoneTable {
1767
+ id: string;
1768
+ location_id: string;
1769
+ slug: string;
1770
+ name: string;
1771
+ status: "active" | "archived";
1772
+ sort_order: Generated<number>;
1773
+ version: Generated<number>;
1774
+ created_at: Generated<string>;
1775
+ updated_at: Generated<string>;
1776
+ }
1777
+ interface RestaurantTableTable {
1778
+ id: string;
1779
+ location_id: string;
1780
+ zone_id: string;
1781
+ slug: string;
1782
+ name: string;
1783
+ minimum_capacity: Generated<number>;
1784
+ maximum_capacity: number;
1785
+ is_combinable: Generated<number>;
1786
+ combination_group: string | null;
1787
+ status: "active" | "archived";
1788
+ sort_order: Generated<number>;
1789
+ version: Generated<number>;
1790
+ created_at: Generated<string>;
1791
+ updated_at: Generated<string>;
1792
+ }
1793
+ type RestaurantReservationStatus = "pending" | "confirmed" | "seated" | "completed" | "cancelled" | "no_show";
1794
+ interface RestaurantReservationTable {
1795
+ id: string;
1796
+ location_id: string;
1797
+ zone_id: string | null;
1798
+ confirmation_code: string;
1799
+ request_key: string;
1800
+ service_date: string;
1801
+ starts_at: string;
1802
+ ends_at: string;
1803
+ timezone: string;
1804
+ party_size: number;
1805
+ status: RestaurantReservationStatus;
1806
+ source: "public" | "admin" | "mcp" | "import";
1807
+ guest_name: string;
1808
+ guest_email: string | null;
1809
+ guest_phone: string | null;
1810
+ special_requests: string | null;
1811
+ preferred_language: Generated<string>;
1812
+ sms_opt_in: Generated<number>;
1813
+ whatsapp_opt_in: Generated<number>;
1814
+ internal_note: string | null;
1815
+ confirmed_at: string | null;
1816
+ cancelled_at: string | null;
1817
+ version: Generated<number>;
1818
+ created_at: Generated<string>;
1819
+ updated_at: Generated<string>;
1820
+ }
1821
+ interface RestaurantReservationBlockTable {
1822
+ id: string;
1823
+ location_id: string;
1824
+ zone_id: string | null;
1825
+ block_type: "closure" | "capacity_override" | "private_event";
1826
+ starts_at: string;
1827
+ ends_at: string;
1828
+ capacity_override: number | null;
1829
+ reason: string | null;
1830
+ status: "active" | "removed";
1831
+ removed_at: string | null;
1832
+ version: Generated<number>;
1833
+ created_at: Generated<string>;
1834
+ updated_at: Generated<string>;
1835
+ }
1836
+ interface RestaurantCapacityCounterTable {
1837
+ id: string;
1838
+ location_id: string;
1839
+ service_date: string;
1840
+ starts_at: string;
1841
+ reserved_seats: Generated<number>;
1842
+ version: Generated<number>;
1843
+ created_at: Generated<string>;
1844
+ updated_at: Generated<string>;
1845
+ }
1846
+ interface RestaurantReservationHoldTable {
1847
+ id: string;
1848
+ location_id: string;
1849
+ zone_id: Generated<string | null>;
1850
+ reservation_id: string | null;
1851
+ request_key: string;
1852
+ token_id: Generated<string | null>;
1853
+ token_hash: Generated<string | null>;
1854
+ service_date: string;
1855
+ starts_at: string;
1856
+ ends_at: string;
1857
+ party_size: number;
1858
+ status: "active" | "committed" | "released" | "expired";
1859
+ expires_at: string;
1860
+ committed_at: string | null;
1861
+ released_at: string | null;
1862
+ version: Generated<number>;
1863
+ created_at: Generated<string>;
1864
+ updated_at: Generated<string>;
1865
+ }
1866
+ interface RestaurantReservationOfferTable {
1867
+ id: string;
1868
+ source_reservation_id: string;
1869
+ location_id: string;
1870
+ zone_id: string | null;
1871
+ hold_id: string;
1872
+ request_key: string;
1873
+ token_id: string;
1874
+ token_hash: string;
1875
+ expires_at: string;
1876
+ service_date: string;
1877
+ starts_at: string;
1878
+ ends_at: string;
1879
+ duration_minutes: number;
1880
+ party_size: number;
1881
+ message: string | null;
1882
+ payment_mode: "none" | "charge";
1883
+ amount_minor: number | null;
1884
+ currency: string | null;
1885
+ status: "pending" | "accepted" | "declined" | "expired";
1886
+ accepted_reservation_id: string | null;
1887
+ offered_by_actor_type: "user" | "api_token" | "system";
1888
+ offered_by_actor_id: string | null;
1889
+ accepted_at: string | null;
1890
+ declined_at: string | null;
1891
+ expired_at: string | null;
1892
+ version: Generated<number>;
1893
+ created_at: Generated<string>;
1894
+ updated_at: Generated<string>;
1895
+ }
1896
+ interface RestaurantReservationPaymentPolicyTable {
1897
+ id: string;
1898
+ location_id: string;
1899
+ request_key: string;
1900
+ name: string;
1901
+ scope_type: "venue_default" | "party_size" | "service_window" | "experience";
1902
+ experience_key: string | null;
1903
+ service_date: string | null;
1904
+ starts_at_local: string | null;
1905
+ ends_at_local: string | null;
1906
+ min_party_size: number | null;
1907
+ max_party_size: number | null;
1908
+ collection_mode: "none" | "charge" | "authorize";
1909
+ amount_basis: "none" | "fixed" | "per_guest" | "quote_percentage" | "quote_total";
1910
+ amount_value: number | null;
1911
+ currency: string | null;
1912
+ cancellation_window_minutes: Generated<number>;
1913
+ cancellation_fee_basis: Generated<"none" | "fixed" | "percentage" | "full">;
1914
+ cancellation_fee_value: number | null;
1915
+ cancellation_fee_currency: string | null;
1916
+ modification_requires_review: Generated<number>;
1917
+ status: Generated<"active" | "inactive">;
1918
+ version: Generated<number>;
1919
+ created_at: Generated<string>;
1920
+ updated_at: Generated<string>;
1921
+ }
1922
+ interface RestaurantReservationExperienceTable {
1923
+ id: string;
1924
+ location_id: string;
1925
+ request_key: string;
1926
+ experience_key: string;
1927
+ name: string;
1928
+ description: string | null;
1929
+ booking_mode: "direct" | "request";
1930
+ price_basis: "none" | "fixed" | "per_guest" | "minimum_spend";
1931
+ price_minor: number | null;
1932
+ currency: string | null;
1933
+ duration_minutes: number | null;
1934
+ min_party_size: number;
1935
+ max_party_size: number;
1936
+ max_bookings_per_slot: number | null;
1937
+ max_covers_per_slot: number | null;
1938
+ sales_start_at: string | null;
1939
+ sales_end_at: string | null;
1940
+ image_media_id: string | null;
1941
+ image_alt_text: string | null;
1942
+ terms_text: string | null;
1943
+ status: Generated<"draft" | "active" | "archived">;
1944
+ sort_order: Generated<number>;
1945
+ version: Generated<number>;
1946
+ created_at: Generated<string>;
1947
+ updated_at: Generated<string>;
1948
+ }
1949
+ interface RestaurantReservationAddonCategoryTable {
1950
+ id: string;
1951
+ location_id: string;
1952
+ request_key: string;
1953
+ category_key: string;
1954
+ name: string;
1955
+ description: string | null;
1956
+ available_for_standard: Generated<number>;
1957
+ min_quantity: Generated<number>;
1958
+ max_quantity: number | null;
1959
+ status: Generated<"active" | "inactive" | "archived">;
1960
+ sort_order: Generated<number>;
1961
+ version: Generated<number>;
1962
+ created_at: Generated<string>;
1963
+ updated_at: Generated<string>;
1964
+ }
1965
+ interface RestaurantReservationAddonTable {
1966
+ id: string;
1967
+ location_id: string;
1968
+ category_id: string;
1969
+ request_key: string;
1970
+ addon_key: string;
1971
+ name: string;
1972
+ description: string | null;
1973
+ price_minor: number;
1974
+ currency: string;
1975
+ tax_code: string | null;
1976
+ tax_behavior: "exclusive" | "inclusive" | null;
1977
+ inventory_mode: "unlimited" | "per_service_date" | "per_slot";
1978
+ inventory_quantity: number | null;
1979
+ max_quantity_per_reservation: number | null;
1980
+ image_media_id: string | null;
1981
+ image_alt_text: string | null;
1982
+ status: Generated<"active" | "inactive" | "archived">;
1983
+ sort_order: Generated<number>;
1984
+ version: Generated<number>;
1985
+ created_at: Generated<string>;
1986
+ updated_at: Generated<string>;
1987
+ }
1988
+ interface RestaurantReservationExperienceAddonCategoryTable {
1989
+ id: string;
1990
+ location_id: string;
1991
+ experience_id: string;
1992
+ category_id: string;
1993
+ request_key: string;
1994
+ min_quantity_override: number | null;
1995
+ max_quantity_override: number | null;
1996
+ status: Generated<"active" | "inactive">;
1997
+ sort_order: Generated<number>;
1998
+ version: Generated<number>;
1999
+ created_at: Generated<string>;
2000
+ updated_at: Generated<string>;
2001
+ }
2002
+ interface RestaurantReservationExperienceIncludedAddonTable {
2003
+ id: string;
2004
+ location_id: string;
2005
+ experience_id: string;
2006
+ addon_id: string;
2007
+ request_key: string;
2008
+ quantity: number;
2009
+ status: Generated<"active" | "inactive">;
2010
+ version: Generated<number>;
2011
+ created_at: Generated<string>;
2012
+ updated_at: Generated<string>;
2013
+ }
2014
+ interface RestaurantReservationHoldCommercialSelectionTable {
2015
+ id: string;
2016
+ hold_id: string;
2017
+ location_id: string;
2018
+ experience_id: string | null;
2019
+ experience_version: number | null;
2020
+ revision: Generated<number>;
2021
+ acknowledged_revision: number | null;
2022
+ version: Generated<number>;
2023
+ created_at: Generated<string>;
2024
+ updated_at: Generated<string>;
2025
+ }
2026
+ interface RestaurantReservationHoldAddonTable {
2027
+ id: string;
2028
+ selection_id: string;
2029
+ hold_id: string;
2030
+ location_id: string;
2031
+ category_id: string;
2032
+ addon_id: string;
2033
+ addon_version: number;
2034
+ allocation_kind: "included" | "selected";
2035
+ requested_quantity: number;
2036
+ allocated_quantity: number;
2037
+ service_date: string;
2038
+ starts_at: string;
2039
+ expires_at: string;
2040
+ status: Generated<"active" | "committed" | "released" | "expired">;
2041
+ released_at: string | null;
2042
+ version: Generated<number>;
2043
+ created_at: Generated<string>;
2044
+ updated_at: Generated<string>;
2045
+ }
2046
+ interface RestaurantReservationHoldAddonOperationTable {
2047
+ id: string;
2048
+ selection_id: string;
2049
+ hold_id: string;
2050
+ operation_key: string;
2051
+ request_hash: string;
2052
+ resulting_revision: number;
2053
+ response_json: string;
2054
+ created_at: Generated<string>;
2055
+ }
2056
+ interface RestaurantReservationPromotionTable {
2057
+ id: string;
2058
+ location_id: string;
2059
+ request_key: string;
2060
+ code_digest: string;
2061
+ code_hint: string;
2062
+ name: string;
2063
+ discount_type: "fixed" | "percentage";
2064
+ discount_value: number;
2065
+ max_discount_minor: number | null;
2066
+ currency: string;
2067
+ applies_to: "all" | "experience" | "addons";
2068
+ service_starts_at: string | null;
2069
+ service_ends_at: string | null;
2070
+ max_redemptions: number | null;
2071
+ reserved_count: Generated<number>;
2072
+ redeemed_count: Generated<number>;
2073
+ status: Generated<"active" | "archived">;
2074
+ version: Generated<number>;
2075
+ created_at: Generated<string>;
2076
+ updated_at: Generated<string>;
2077
+ }
2078
+ interface RestaurantReservationPromotionAllocationTable {
2079
+ id: string;
2080
+ promotion_id: string;
2081
+ promotion_version: number;
2082
+ selection_id: string;
2083
+ hold_id: string;
2084
+ location_id: string;
2085
+ reservation_id: string | null;
2086
+ promotion_name: string;
2087
+ code_hint: string;
2088
+ discount_type: "fixed" | "percentage";
2089
+ discount_value: number;
2090
+ max_discount_minor: number | null;
2091
+ currency: string;
2092
+ applies_to: "all" | "experience" | "addons";
2093
+ expires_at: string;
2094
+ status: Generated<"held" | "attached" | "redeemed" | "released">;
2095
+ attached_at: string | null;
2096
+ redeemed_at: string | null;
2097
+ released_at: string | null;
2098
+ version: Generated<number>;
2099
+ created_at: Generated<string>;
2100
+ updated_at: Generated<string>;
2101
+ }
2102
+ interface RestaurantReservationPromotionOperationTable {
2103
+ id: string;
2104
+ selection_id: string;
2105
+ hold_id: string;
2106
+ promotion_id: string | null;
2107
+ operation_key: string;
2108
+ operation_type: "apply" | "remove";
2109
+ pricing_hash: string;
2110
+ request_hash: string;
2111
+ resulting_revision: number;
2112
+ response_json: string;
2113
+ created_at: Generated<string>;
2114
+ }
2115
+ interface RestaurantGiftCardTable {
2116
+ id: string;
2117
+ location_id: string;
2118
+ request_key: string;
2119
+ request_hash: string;
2120
+ number_digest: string;
2121
+ number_hint: string;
2122
+ pin_digest: string;
2123
+ currency: string;
2124
+ available_minor: Generated<number>;
2125
+ held_minor: Generated<number>;
2126
+ status: Generated<"active" | "inactive">;
2127
+ version: Generated<number>;
2128
+ created_at: Generated<string>;
2129
+ updated_at: Generated<string>;
2130
+ }
2131
+ interface RestaurantReservationGiftCardAllocationTable {
2132
+ id: string;
2133
+ gift_card_id: string;
2134
+ gift_card_version: number;
2135
+ selection_id: string;
2136
+ hold_id: string;
2137
+ location_id: string;
2138
+ reservation_id: string | null;
2139
+ card_hint: string;
2140
+ currency: string;
2141
+ amount_minor: number;
2142
+ refunded_minor: Generated<number>;
2143
+ expires_at: string;
2144
+ status: Generated<"held" | "redeemed" | "released">;
2145
+ redeemed_at: string | null;
2146
+ released_at: string | null;
2147
+ version: Generated<number>;
2148
+ created_at: Generated<string>;
2149
+ updated_at: Generated<string>;
2150
+ }
2151
+ interface RestaurantGiftCardLedgerEntryTable {
2152
+ id: string;
2153
+ gift_card_id: string;
2154
+ allocation_id: string | null;
2155
+ reservation_id: string | null;
2156
+ operation_key: string;
2157
+ entry_type: "issue" | "credit" | "hold" | "release" | "redeem" | "refund";
2158
+ available_delta_minor: number;
2159
+ held_delta_minor: number;
2160
+ available_balance_minor: number;
2161
+ held_balance_minor: number;
2162
+ gift_card_version: number;
2163
+ reason_code: string;
2164
+ created_at: Generated<string>;
2165
+ }
2166
+ interface RestaurantReservationGiftCardOperationTable {
2167
+ id: string;
2168
+ selection_id: string;
2169
+ hold_id: string;
2170
+ gift_card_id: string | null;
2171
+ operation_key: string;
2172
+ operation_type: "apply" | "update" | "remove";
2173
+ pricing_hash: string;
2174
+ request_hash: string;
2175
+ resulting_revision: number;
2176
+ response_json: string;
2177
+ created_at: Generated<string>;
2178
+ }
2179
+ interface RestaurantReservationQuoteTable {
2180
+ id: string;
2181
+ hold_id: string;
2182
+ selection_id: string;
2183
+ location_id: string;
2184
+ payment_policy_id: string;
2185
+ payment_policy_version: number;
2186
+ experience_id: string | null;
2187
+ experience_version: number | null;
2188
+ selection_revision: number;
2189
+ collection_mode: "none" | "charge" | "authorize";
2190
+ currency: string;
2191
+ subtotal_minor: number;
2192
+ discount_minor: number;
2193
+ fee_minor: number;
2194
+ tax_minor: number;
2195
+ gratuity_minor: number;
2196
+ total_minor: number;
2197
+ due_now_minor: number;
2198
+ authorization_minor: number;
2199
+ pricing_hash: string;
2200
+ snapshot_json: string;
2201
+ expires_at: string;
2202
+ created_at: Generated<string>;
2203
+ }
2204
+ interface RestaurantReservationQuoteLineTable {
2205
+ id: string;
2206
+ quote_id: string;
2207
+ line_index: number;
2208
+ line_type: "experience" | "included_addon" | "selected_addon" | "discount" | "fee" | "tax" | "gratuity";
2209
+ source_id: string | null;
2210
+ source_version: number | null;
2211
+ label: string;
2212
+ quantity: number;
2213
+ unit_amount_minor: number;
2214
+ subtotal_minor: number;
2215
+ currency: string;
2216
+ tax_code: string | null;
2217
+ tax_behavior: "exclusive" | "inclusive" | null;
2218
+ }
2219
+ interface RestaurantReservationQuoteCheckoutTable {
2220
+ quote_id: string;
2221
+ hold_id: string;
2222
+ guest_name: string;
2223
+ guest_email: string;
2224
+ guest_phone: string;
2225
+ special_requests: string | null;
2226
+ preferred_language: Generated<string>;
2227
+ sms_opt_in: Generated<number>;
2228
+ whatsapp_opt_in: Generated<number>;
2229
+ status: "awaiting_payment" | "converted" | "expired";
2230
+ reservation_id: string | null;
2231
+ converted_at: string | null;
2232
+ expired_at: string | null;
2233
+ version: Generated<number>;
2234
+ created_at: Generated<string>;
2235
+ updated_at: Generated<string>;
2236
+ }
2237
+ interface RestaurantReservationGuestSettingsTable {
2238
+ id: string;
2239
+ location_id: string;
2240
+ login_mode: Generated<"guest" | "optional" | "required">;
2241
+ version: Generated<number>;
2242
+ created_at: Generated<string>;
2243
+ updated_at: Generated<string>;
2244
+ }
2245
+ interface RestaurantReservationGuestFieldTable {
2246
+ id: string;
2247
+ location_id: string;
2248
+ request_key: string;
2249
+ field_key: string;
2250
+ label: string;
2251
+ description: string | null;
2252
+ input_type: "text" | "textarea" | "select" | "checkbox";
2253
+ required: Generated<number>;
2254
+ options_json: string | null;
2255
+ placeholder: string | null;
2256
+ max_length: number | null;
2257
+ sort_order: Generated<number>;
2258
+ status: Generated<"active" | "inactive">;
2259
+ version: Generated<number>;
2260
+ created_at: Generated<string>;
2261
+ updated_at: Generated<string>;
2262
+ }
2263
+ interface RestaurantReservationGuestFieldValueTable {
2264
+ id: string;
2265
+ reservation_id: string;
2266
+ field_id: string;
2267
+ field_key: string;
2268
+ field_label: string;
2269
+ value_json: string;
2270
+ created_at: Generated<string>;
2271
+ }
2272
+ interface RestaurantReservationQuoteGuestContextTable {
2273
+ quote_id: string;
2274
+ location_id: string;
2275
+ verified_user_id: string | null;
2276
+ guest_profile_id: string;
2277
+ created_at: Generated<string>;
2278
+ }
2279
+ interface RestaurantReservationQuoteGuestFieldValueTable {
2280
+ id: string;
2281
+ quote_id: string;
2282
+ field_id: string;
2283
+ field_key: string;
2284
+ field_label: string;
2285
+ value_json: string;
2286
+ created_at: Generated<string>;
2287
+ }
2288
+ interface RestaurantGuestProfileTable {
2289
+ id: string;
2290
+ location_id: string;
2291
+ created_request_key: string;
2292
+ claimed_user_id: string | null;
2293
+ display_name: string;
2294
+ normalized_email: string | null;
2295
+ normalized_phone: string | null;
2296
+ preferred_language: Generated<string>;
2297
+ preferred_channel: "email" | "sms" | "whatsapp" | null;
2298
+ priority_tier: Generated<number>;
2299
+ status: Generated<"active" | "merged" | "anonymized">;
2300
+ merged_into_id: string | null;
2301
+ last_activity_at: string;
2302
+ anonymized_at: string | null;
2303
+ version: Generated<number>;
2304
+ created_at: Generated<string>;
2305
+ updated_at: Generated<string>;
2306
+ }
2307
+ interface RestaurantGuestProfileRetentionSettingsTable {
2308
+ id: string;
2309
+ location_id: string;
2310
+ inactivity_months: Generated<number>;
2311
+ version: Generated<number>;
2312
+ created_at: Generated<string>;
2313
+ updated_at: Generated<string>;
2314
+ }
2315
+ interface RestaurantGuestProfileReservationTable {
2316
+ id: string;
2317
+ profile_id: string;
2318
+ reservation_id: string;
2319
+ location_id: string;
2320
+ match_source: "contact" | "account" | "staff" | "import";
2321
+ created_at: Generated<string>;
2322
+ }
2323
+ interface RestaurantGuestProfileRequestTable {
2324
+ request_key: string;
2325
+ profile_id: string;
2326
+ location_id: string;
2327
+ input_fingerprint: string;
2328
+ created_at: Generated<string>;
2329
+ }
2330
+ interface RestaurantRelatedLocationPairTable {
2331
+ id: string;
2332
+ location_a_id: string;
2333
+ location_b_id: string;
2334
+ status: "active" | "inactive";
2335
+ policy_version: string;
2336
+ version: Generated<number>;
2337
+ created_at: Generated<string>;
2338
+ updated_at: Generated<string>;
2339
+ }
2340
+ interface RestaurantGuestProfileSharingConsentTable {
2341
+ id: string;
2342
+ pair_id: string;
2343
+ profile_id: string;
2344
+ source_location_id: string;
2345
+ target_location_id: string;
2346
+ request_key: string;
2347
+ status: "granted" | "withdrawn";
2348
+ source: "checkout" | "account";
2349
+ policy_version: string;
2350
+ occurred_at: string;
2351
+ created_at: Generated<string>;
2352
+ }
2353
+ interface RestaurantGuestConsentTable {
2354
+ id: string;
2355
+ profile_id: string;
2356
+ location_id: string;
2357
+ request_key: string;
2358
+ purpose: "marketing" | "reservation_updates" | "priority_alert";
2359
+ channel: "email" | "sms" | "whatsapp";
2360
+ status: "granted" | "withdrawn";
2361
+ source: "checkout" | "account" | "staff" | "import" | "system";
2362
+ policy_version: string;
2363
+ occurred_at: string;
2364
+ created_at: Generated<string>;
2365
+ }
2366
+ interface RestaurantReservationDemandSettingsTable {
2367
+ id: string;
2368
+ location_id: string;
2369
+ requests_enabled: Generated<number>;
2370
+ request_time_mode: Generated<"exact" | "range">;
2371
+ priority_alerts_enabled: Generated<number>;
2372
+ priority_alert_min_party_size: Generated<number>;
2373
+ priority_alert_max_party_size: Generated<number>;
2374
+ priority_alert_batch_size: Generated<number>;
2375
+ priority_alert_batch_interval_minutes: Generated<number>;
2376
+ paid_request_hold_minutes: Generated<number>;
2377
+ version: Generated<number>;
2378
+ created_at: Generated<string>;
2379
+ updated_at: Generated<string>;
2380
+ }
2381
+ interface RestaurantReservationLanguageSettingsTable {
2382
+ id: string;
2383
+ location_id: string;
2384
+ default_language: Generated<string>;
2385
+ enabled_languages_json: Generated<string>;
2386
+ version: Generated<number>;
2387
+ created_at: Generated<string>;
2388
+ updated_at: Generated<string>;
2389
+ }
2390
+ interface RestaurantReservationAnalyticsSettingsTable {
2391
+ id: string;
2392
+ location_id: string;
2393
+ enabled: Generated<number>;
2394
+ retention_days: Generated<number>;
2395
+ version: Generated<number>;
2396
+ created_at: Generated<string>;
2397
+ updated_at: Generated<string>;
2398
+ }
2399
+ interface RestaurantReservationAnalyticsEventTable {
2400
+ id: string;
2401
+ location_id: string;
2402
+ event_type: "flow_viewed" | "availability_searched" | "slot_selected" | "details_viewed" | "upgrades_viewed" | "checkout_viewed" | "checkout_submitted" | "request_submitted" | "priority_alert_subscribed" | "management_viewed";
2403
+ occurred_at: Generated<string>;
2404
+ }
2405
+ interface RestaurantReservationRequestTable {
2406
+ id: string;
2407
+ location_id: string;
2408
+ zone_id: string | null;
2409
+ request_key: string;
2410
+ token_id: string;
2411
+ token_hash: string;
2412
+ token_expires_at: string;
2413
+ service_date: string;
2414
+ starts_at: string;
2415
+ ends_at: string;
2416
+ duration_minutes: number;
2417
+ party_size: number;
2418
+ status: "pending" | "payment_pending" | "converted" | "rejected" | "cancelled" | "expired";
2419
+ guest_name: string;
2420
+ guest_email: string;
2421
+ guest_phone: string;
2422
+ special_requests: string | null;
2423
+ preferred_language: Generated<string>;
2424
+ sms_opt_in: Generated<number>;
2425
+ whatsapp_opt_in: Generated<number>;
2426
+ experience_id: string | null;
2427
+ experience_version: number | null;
2428
+ experience_name: string | null;
2429
+ experience_price_basis: "none" | "fixed" | "per_guest" | "minimum_spend" | null;
2430
+ experience_price_minor: number | null;
2431
+ experience_currency: string | null;
2432
+ reservation_id: string | null;
2433
+ hold_id: string | null;
2434
+ requested_amount_minor: number | null;
2435
+ currency: string | null;
2436
+ payment_deadline_at: string | null;
2437
+ review_note: string | null;
2438
+ decided_by_actor_type: "user" | "api_token" | "system" | null;
2439
+ decided_by_actor_id: string | null;
2440
+ approved_at: string | null;
2441
+ rejected_at: string | null;
2442
+ cancelled_at: string | null;
2443
+ expired_at: string | null;
2444
+ version: Generated<number>;
2445
+ created_at: Generated<string>;
2446
+ updated_at: Generated<string>;
2447
+ }
2448
+ interface RestaurantReservationRequestTableAssignmentTable {
2449
+ id: string;
2450
+ request_id: string;
2451
+ table_id: string;
2452
+ assignment_group_id: string;
2453
+ status: "active" | "removed";
2454
+ assigned_by_actor_type: "user" | "api_token" | "system";
2455
+ assigned_by_actor_id: string | null;
2456
+ assigned_at: Generated<string>;
2457
+ released_at: string | null;
2458
+ version: Generated<number>;
2459
+ created_at: Generated<string>;
2460
+ updated_at: Generated<string>;
2461
+ }
2462
+ interface RestaurantPriorityAlertTable {
2463
+ id: string;
2464
+ location_id: string;
2465
+ zone_id: string | null;
2466
+ request_key: string;
2467
+ token_id: string;
2468
+ token_hash: string;
2469
+ token_expires_at: string;
2470
+ service_date: string;
2471
+ starts_at: string;
2472
+ ends_at: string;
2473
+ duration_minutes: number;
2474
+ party_size: number;
2475
+ status: "active" | "cancelled" | "converted" | "expired";
2476
+ guest_name: string;
2477
+ guest_email: string;
2478
+ guest_phone: string;
2479
+ email_opt_in: number;
2480
+ sms_opt_in: number;
2481
+ whatsapp_opt_in: number;
2482
+ preferred_channel: "email" | "sms" | "whatsapp";
2483
+ preferred_language: Generated<string>;
2484
+ priority_tier: Generated<number>;
2485
+ reservation_id: string | null;
2486
+ notification_count: Generated<number>;
2487
+ last_notified_at: string | null;
2488
+ cancelled_at: string | null;
2489
+ converted_at: string | null;
2490
+ expired_at: string | null;
2491
+ version: Generated<number>;
2492
+ created_at: Generated<string>;
2493
+ updated_at: Generated<string>;
2494
+ }
2495
+ interface RestaurantPriorityAlertOpportunityTable {
2496
+ id: string;
2497
+ location_id: string;
2498
+ zone_id: string | null;
2499
+ request_key: string;
2500
+ service_date: string;
2501
+ starts_at: string;
2502
+ ends_at: string;
2503
+ maximum_party_size: number;
2504
+ status: "active" | "closed" | "expired";
2505
+ expires_at: string;
2506
+ closed_at: string | null;
2507
+ version: Generated<number>;
2508
+ created_at: Generated<string>;
2509
+ updated_at: Generated<string>;
2510
+ }
2511
+ interface RestaurantPriorityAlertDeliveryTable {
2512
+ id: string;
2513
+ opportunity_id: string;
2514
+ alert_id: string;
2515
+ batch_number: number;
2516
+ channel: "email" | "sms" | "whatsapp";
2517
+ status: "scheduled" | "processing" | "sent" | "failed" | "opened" | "converted" | "suppressed" | "expired";
2518
+ token_id: string;
2519
+ token_hash: string;
2520
+ available_at: string;
2521
+ expires_at: string;
2522
+ attempt_count: Generated<number>;
2523
+ channel_attempt_count: Generated<number>;
2524
+ fallback_count: Generated<number>;
2525
+ last_error_code: string | null;
2526
+ sent_at: string | null;
2527
+ opened_at: string | null;
2528
+ converted_at: string | null;
2529
+ version: Generated<number>;
2530
+ created_at: Generated<string>;
2531
+ updated_at: Generated<string>;
2532
+ }
2533
+ interface RestaurantReservationTableAssignmentTable {
2534
+ id: string;
2535
+ reservation_id: string;
2536
+ table_id: string;
2537
+ assignment_group_id: string;
2538
+ status: "active" | "removed";
2539
+ assigned_by_actor_type: "user" | "api_token" | "system";
2540
+ assigned_by_actor_id: string | null;
2541
+ assigned_at: Generated<string>;
2542
+ released_at: string | null;
2543
+ version: Generated<number>;
2544
+ created_at: Generated<string>;
2545
+ updated_at: Generated<string>;
2546
+ }
2547
+ interface RestaurantGuestAccessTable {
2548
+ id: string;
2549
+ location_id: string;
2550
+ token_id: string;
2551
+ token_hash: string;
2552
+ subject_type: "reservation" | "order" | "reservation_request" | "reservation_offer";
2553
+ subject_id: string;
2554
+ purpose: "reservation_status" | "reservation_confirm" | "reservation_cancel" | "order_status" | "reservation_request_payment_link" | "reservation_offer_link";
2555
+ status: "active" | "consumed" | "revoked";
2556
+ expires_at: string;
2557
+ consumed_at: string | null;
2558
+ revoked_at: string | null;
2559
+ created_at: Generated<string>;
2560
+ updated_at: Generated<string>;
2561
+ }
2562
+ interface RestaurantReservationRequestPaymentLinkDeliveryTable {
2563
+ delivery_id: string;
2564
+ access_id: string;
2565
+ issued_at: string;
2566
+ created_at: Generated<string>;
2567
+ updated_at: Generated<string>;
2568
+ }
2569
+ interface RestaurantReservationOfferLinkDeliveryTable {
2570
+ delivery_id: string;
2571
+ access_id: string;
2572
+ issued_at: string;
2573
+ created_at: Generated<string>;
2574
+ updated_at: Generated<string>;
2575
+ }
2576
+ type RestaurantFulfilmentType = "pickup" | "delivery" | "dine_in";
2577
+ type RestaurantOrderSource = "public" | "admin" | "mcp" | "import" | "qr";
2578
+ type RestaurantOrderStatus = "pending_payment" | "confirmed" | "preparing" | "ready" | "out_for_delivery" | "completed" | "cancelled";
2579
+ interface RestaurantOrderSequenceTable {
2580
+ id: string;
2581
+ location_id: string;
2582
+ next_number: Generated<number>;
2583
+ version: Generated<number>;
2584
+ created_at: Generated<string>;
2585
+ updated_at: Generated<string>;
2586
+ }
2587
+ interface RestaurantOrderTable {
2588
+ id: string;
2589
+ location_id: string;
2590
+ table_id: string | null;
2591
+ order_number: number;
2592
+ request_key: string;
2593
+ fulfilment_type: RestaurantFulfilmentType;
2594
+ service_date: string;
2595
+ fulfilment_at: string;
2596
+ timezone: string;
2597
+ status: RestaurantOrderStatus;
2598
+ source: RestaurantOrderSource;
2599
+ guest_name: string;
2600
+ guest_email: string | null;
2601
+ guest_phone: string | null;
2602
+ delivery_address_json: string | null;
2603
+ special_instructions: string | null;
2604
+ internal_note: string | null;
2605
+ confirmed_at: string | null;
2606
+ cancelled_at: string | null;
2607
+ completed_at: string | null;
2608
+ version: Generated<number>;
2609
+ created_at: Generated<string>;
2610
+ updated_at: Generated<string>;
2611
+ }
2612
+ type RestaurantTaxMode = "stripe_tax" | "manual_vat" | "none";
2613
+ type RestaurantTaxBehavior = "exclusive" | "inclusive";
2614
+ type RestaurantPaymentFlow = "checkout" | "payment_element" | "offline";
2615
+ interface RestaurantOrderSnapshotTable {
2616
+ id: string;
2617
+ location_id: string;
2618
+ order_id: string;
2619
+ currency: string;
2620
+ subtotal_minor: number;
2621
+ discount_minor: Generated<number>;
2622
+ tax_minor: Generated<number>;
2623
+ tip_minor: Generated<number>;
2624
+ service_fee_minor: Generated<number>;
2625
+ delivery_fee_minor: Generated<number>;
2626
+ total_minor: number;
2627
+ tax_mode: RestaurantTaxMode;
2628
+ payment_flow: RestaurantPaymentFlow;
2629
+ pricing_hash: string;
2630
+ tax_context_json: Generated<string>;
2631
+ fulfilment_context_json: Generated<string>;
2632
+ provider_context_json: Generated<string>;
2633
+ created_at: Generated<string>;
2634
+ }
2635
+ interface RestaurantOrderItemTable {
2636
+ id: string;
2637
+ location_id: string;
2638
+ order_id: string;
2639
+ snapshot_id: string;
2640
+ menu_item_id: string | null;
2641
+ item_name: string;
2642
+ item_description: string | null;
2643
+ quantity: number;
2644
+ unit_amount_minor: number;
2645
+ discount_amount_minor: Generated<number>;
2646
+ tax_amount_minor: Generated<number>;
2647
+ total_amount_minor: number;
2648
+ tax_code: string | null;
2649
+ tax_behavior: "exclusive" | "inclusive" | "unspecified";
2650
+ sort_order: Generated<number>;
2651
+ created_at: Generated<string>;
2652
+ }
2653
+ interface RestaurantOrderItemModifierTable {
2654
+ id: string;
2655
+ location_id: string;
2656
+ order_id: string;
2657
+ order_item_id: string;
2658
+ modifier_option_id: string | null;
2659
+ group_name: string;
2660
+ option_name: string;
2661
+ quantity: number;
2662
+ unit_amount_minor: number;
2663
+ total_amount_minor: number;
2664
+ sort_order: Generated<number>;
2665
+ created_at: Generated<string>;
2666
+ }
2667
+ interface RestaurantOrderStatusHistoryTable {
2668
+ id: string;
2669
+ location_id: string;
2670
+ order_id: string;
2671
+ from_status: RestaurantOrderStatus | null;
2672
+ to_status: RestaurantOrderStatus;
2673
+ reason: string | null;
2674
+ actor_type: "user" | "api_token" | "system";
2675
+ actor_id: string | null;
2676
+ source: RestaurantOrderSource;
2677
+ created_at: Generated<string>;
2678
+ }
2679
+ interface RestaurantCartHoldTable {
2680
+ id: string;
2681
+ location_id: string;
2682
+ order_id: string | null;
2683
+ cart_key: string;
2684
+ request_key: string;
2685
+ fulfilment_type: RestaurantFulfilmentType;
2686
+ service_date: string;
2687
+ fulfilment_at: string;
2688
+ timezone: string;
2689
+ currency: string;
2690
+ total_minor: number;
2691
+ pricing_hash: string;
2692
+ priced_cart_json: string;
2693
+ status: "active" | "committed" | "released" | "expired";
2694
+ expires_at: string;
2695
+ committed_at: string | null;
2696
+ released_at: string | null;
2697
+ version: Generated<number>;
2698
+ created_at: Generated<string>;
2699
+ updated_at: Generated<string>;
2700
+ }
2701
+ type RestaurantPaymentStatus = "requires_action" | "processing" | "authorized" | "succeeded" | "partially_refunded" | "refunded" | "failed" | "cancelled";
2702
+ interface RestaurantPaymentTable {
2703
+ id: string;
2704
+ location_id: string;
2705
+ order_id: string | null;
2706
+ reservation_request_id: Generated<string | null>;
2707
+ reservation_offer_id: Generated<string | null>;
2708
+ reservation_quote_id: Generated<string | null>;
2709
+ request_key: string;
2710
+ provider: "stripe" | "offline";
2711
+ payment_flow: RestaurantPaymentFlow;
2712
+ provider_session_id: string | null;
2713
+ provider_payment_id: string | null;
2714
+ status: RestaurantPaymentStatus;
2715
+ currency: string;
2716
+ amount_requested_minor: Generated<number>;
2717
+ amount_authorized_minor: Generated<number>;
2718
+ amount_captured_minor: Generated<number>;
2719
+ amount_refunded_minor: Generated<number>;
2720
+ failure_code: string | null;
2721
+ failure_message: string | null;
2722
+ provider_context_json: Generated<string>;
2723
+ processed_at: string | null;
2724
+ version: Generated<number>;
2725
+ created_at: Generated<string>;
2726
+ updated_at: Generated<string>;
2727
+ }
2728
+ interface RestaurantRefundTable {
2729
+ id: string;
2730
+ location_id: string;
2731
+ order_id: string | null;
2732
+ reservation_id: string | null;
2733
+ payment_id: string;
2734
+ request_key: string;
2735
+ provider_refund_id: string | null;
2736
+ status: "pending" | "succeeded" | "failed" | "cancelled";
2737
+ currency: string;
2738
+ amount_minor: number;
2739
+ reason: string;
2740
+ financial_snapshot_json: string;
2741
+ actor_type: "user" | "api_token" | "system";
2742
+ actor_id: string | null;
2743
+ failure_code: string | null;
2744
+ failure_message: string | null;
2745
+ completed_at: string | null;
2746
+ version: Generated<number>;
2747
+ created_at: Generated<string>;
2748
+ updated_at: Generated<string>;
2749
+ }
2750
+ type RestaurantStripeMode = "test" | "live";
2751
+ type RestaurantStripeConfigurationStatus = "unconfigured" | "unverified" | "valid" | "invalid";
2752
+ type RestaurantStripeTaxStatus = "unknown" | "active" | "pending" | "unavailable";
2753
+ type RestaurantStripeConnectStatus = "not_configured" | "restricted" | "ready";
2754
+ interface RestaurantStripeSettingsTable {
2755
+ id: string;
2756
+ default_key: Generated<"default">;
2757
+ mode: Generated<RestaurantStripeMode>;
2758
+ publishable_key: string | null;
2759
+ payments_enabled: Generated<number>;
2760
+ enabled_fulfilment_types_json: Generated<string>;
2761
+ payment_flow: Generated<"checkout" | "payment_element">;
2762
+ automatic_tax_enabled: Generated<number>;
2763
+ default_tax_behavior: Generated<RestaurantTaxBehavior>;
2764
+ configuration_status: Generated<RestaurantStripeConfigurationStatus>;
2765
+ stripe_account_id: string | null;
2766
+ charges_enabled: number | null;
2767
+ details_submitted: number | null;
2768
+ tax_status: Generated<RestaurantStripeTaxStatus>;
2769
+ validation_error_code: string | null;
2770
+ last_validated_at: string | null;
2771
+ connect_status: Generated<RestaurantStripeConnectStatus>;
2772
+ version: Generated<number>;
2773
+ created_at: Generated<string>;
2774
+ updated_at: Generated<string>;
2775
+ }
2776
+ type PaymentStripeMode = "test" | "live";
2777
+ type PaymentStripeConfigurationStatus = "unconfigured" | "unverified" | "valid" | "invalid";
2778
+ type PaymentStripeTaxStatus = "unknown" | "active" | "pending" | "unavailable";
2779
+ type PaymentStripeConnectStatus = "not_configured" | "restricted" | "ready";
2780
+ interface PaymentStripeSettingsTable {
2781
+ id: string;
2782
+ default_key: Generated<"default">;
2783
+ mode: Generated<PaymentStripeMode>;
2784
+ publishable_key: string | null;
2785
+ configuration_status: Generated<PaymentStripeConfigurationStatus>;
2786
+ stripe_account_id: string | null;
2787
+ charges_enabled: number | null;
2788
+ details_submitted: number | null;
2789
+ tax_status: Generated<PaymentStripeTaxStatus>;
2790
+ validation_error_code: string | null;
2791
+ last_validated_at: string | null;
2792
+ connect_status: Generated<PaymentStripeConnectStatus>;
2793
+ version: Generated<number>;
2794
+ created_at: Generated<string>;
2795
+ updated_at: Generated<string>;
2796
+ }
2797
+ interface RestaurantStripeLocationSettingsTable {
2798
+ id: string;
2799
+ location_id: string;
2800
+ payments_enabled: number | null;
2801
+ enabled_fulfilment_types_json: string | null;
2802
+ payment_flow: "checkout" | "payment_element" | null;
2803
+ tax_mode: RestaurantTaxMode | null;
2804
+ tax_behavior: RestaurantTaxBehavior | null;
2805
+ manual_vat_reason: string | null;
2806
+ version: Generated<number>;
2807
+ created_at: Generated<string>;
2808
+ updated_at: Generated<string>;
2809
+ }
2810
+ interface RestaurantStripeManualTaxRateTable {
2811
+ id: string;
2812
+ location_id: string;
2813
+ tax_code: Generated<string>;
2814
+ stripe_tax_rate_id: string;
2815
+ display_name: string;
2816
+ jurisdiction: string;
2817
+ percentage: string;
2818
+ inclusive: Generated<number>;
2819
+ active: Generated<number>;
2820
+ version: Generated<number>;
2821
+ created_at: Generated<string>;
2822
+ updated_at: Generated<string>;
2823
+ }
2824
+ type RestaurantStripeEventStatus = "processing" | "processed" | "failed" | "ignored";
2825
+ interface RestaurantStripeEventTable {
2826
+ id: string;
2827
+ event_id: string;
2828
+ event_type: string;
2829
+ livemode: number;
2830
+ api_version: string | null;
2831
+ object_type: string | null;
2832
+ object_id: string | null;
2833
+ payload_sha256: string;
2834
+ status: Generated<RestaurantStripeEventStatus>;
2835
+ attempt_count: Generated<number>;
2836
+ error_code: string | null;
2837
+ location_id: string | null;
2838
+ payment_id: string | null;
2839
+ received_at: Generated<string>;
2840
+ last_attempt_at: Generated<string>;
2841
+ processed_at: string | null;
2842
+ retain_until: Generated<string>;
2843
+ created_at: Generated<string>;
2844
+ updated_at: Generated<string>;
2845
+ }
2846
+ interface RestaurantMenuTable {
2847
+ id: string;
2848
+ slug: string;
2849
+ name: string;
2850
+ description: string | null;
2851
+ status: "active" | "archived";
2852
+ is_published: Generated<number>;
2853
+ version: Generated<number>;
2854
+ created_at: Generated<string>;
2855
+ updated_at: Generated<string>;
2856
+ }
2857
+ interface RestaurantMenuLocationAssignmentTable {
2858
+ id: string;
2859
+ menu_id: string;
2860
+ location_id: string;
2861
+ is_active: Generated<number>;
2862
+ sort_order: Generated<number>;
2863
+ schedule_json: Generated<string>;
2864
+ service_modes_json: Generated<string>;
2865
+ version: Generated<number>;
2866
+ created_at: Generated<string>;
2867
+ updated_at: Generated<string>;
2868
+ }
2869
+ interface RestaurantMenuSectionTable {
2870
+ id: string;
2871
+ menu_id: string;
2872
+ slug: string;
2873
+ name: string;
2874
+ description: string | null;
2875
+ status: "active" | "archived";
2876
+ is_visible: Generated<number>;
2877
+ available_hours_json: Generated<string>;
2878
+ sort_order: Generated<number>;
2879
+ version: Generated<number>;
2880
+ created_at: Generated<string>;
2881
+ updated_at: Generated<string>;
2882
+ }
2883
+ interface RestaurantMenuItemTable {
2884
+ id: string;
2885
+ slug: string;
2886
+ sku: string | null;
2887
+ name: string;
2888
+ description: string | null;
2889
+ base_price_minor: number;
2890
+ currency: string;
2891
+ tax_code: string | null;
2892
+ tax_behavior: RestaurantTaxBehavior | null;
2893
+ image_id: string | null;
2894
+ image_alt_text: string | null;
2895
+ status: "active" | "archived";
2896
+ is_visible: Generated<number>;
2897
+ is_available: Generated<number>;
2898
+ unavailable_until: string | null;
2899
+ allergens_json: Generated<string>;
2900
+ dietary_tags_json: Generated<string>;
2901
+ version: Generated<number>;
2902
+ created_at: Generated<string>;
2903
+ updated_at: Generated<string>;
2904
+ }
2905
+ interface RestaurantMenuSectionItemTable {
2906
+ id: string;
2907
+ section_id: string;
2908
+ menu_item_id: string;
2909
+ sort_order: Generated<number>;
2910
+ version: Generated<number>;
2911
+ created_at: Generated<string>;
2912
+ updated_at: Generated<string>;
2913
+ }
2914
+ interface RestaurantModifierGroupTable {
2915
+ id: string;
2916
+ slug: string;
2917
+ name: string;
2918
+ description: string | null;
2919
+ status: "active" | "archived";
2920
+ version: Generated<number>;
2921
+ created_at: Generated<string>;
2922
+ updated_at: Generated<string>;
2923
+ }
2924
+ interface RestaurantModifierOptionTable {
2925
+ id: string;
2926
+ modifier_group_id: string;
2927
+ name: string;
2928
+ price_delta_minor: Generated<number>;
2929
+ currency: string;
2930
+ status: "active" | "archived";
2931
+ is_available: Generated<number>;
2932
+ sort_order: Generated<number>;
2933
+ version: Generated<number>;
2934
+ created_at: Generated<string>;
2935
+ updated_at: Generated<string>;
2936
+ }
2937
+ interface RestaurantMenuItemModifierGroupTable {
2938
+ id: string;
2939
+ menu_item_id: string;
2940
+ modifier_group_id: string;
2941
+ min_selections: Generated<number>;
2942
+ max_selections: Generated<number>;
2943
+ sort_order: Generated<number>;
2944
+ version: Generated<number>;
2945
+ created_at: Generated<string>;
2946
+ updated_at: Generated<string>;
2947
+ }
2948
+ interface RestaurantMenuItemTranslationTable {
2949
+ id: string;
2950
+ menu_item_id: string;
2951
+ locale: string;
2952
+ name: string;
2953
+ description: string | null;
2954
+ image_alt_text: string | null;
2955
+ version: Generated<number>;
2956
+ created_at: Generated<string>;
2957
+ updated_at: Generated<string>;
2958
+ }
2959
+ interface RestaurantMenuOverrideTable {
2960
+ id: string;
2961
+ location_id: string;
2962
+ menu_item_id: string;
2963
+ price_minor_override: number | null;
2964
+ currency_override: string | null;
2965
+ available_override: number | null;
2966
+ hidden_override: number | null;
2967
+ unavailable_until_override: string | null;
2968
+ version: Generated<number>;
2969
+ created_at: Generated<string>;
2970
+ updated_at: Generated<string>;
2971
+ }
2972
+ //#endregion
2973
+ export { RestaurantReservationExperienceTable as $, VenuePaymentStatus as $t, RestaurantOperatingSettingsTable as A, VenueAvailabilityRuleTable as At, RestaurantPaymentFlow as B, VenueLocationTable as Bt, RestaurantMenuOverrideTable as C, RestaurantSpecialHoursTable as Ct, RestaurantModifierGroupTable as D, RestaurantZoneTable as Dt, RestaurantMenuTable as E, RestaurantTaxMode as Et, RestaurantOrderSource as F, VenueCancellationPolicyTierTable as Ft, RestaurantPriorityAlertTable as G, VenueOrderStatusHistoryTable as Gt, RestaurantPaymentTable as H, VenueNotificationSettingsTable as Ht, RestaurantOrderStatus as I, VenueConversationReadTable as It, RestaurantReservationAddonTable as J, VenuePaymentAllocationStatus as Jt, RestaurantRefundTable as K, VenueOrderTable as Kt, RestaurantOrderStatusHistoryTable as L, VenueConversationTable as Lt, RestaurantOrderItemTable as M, VenueBookingMode as Mt, RestaurantOrderSequenceTable as N, VenueBookingPolicyTable as Nt, RestaurantModifierOptionTable as O, UserTable as Ot, RestaurantOrderSnapshotTable as P, VenueCancellationPolicyTable as Pt, RestaurantReservationExperienceIncludedAddonTable as Q, VenuePaymentRecordStatus as Qt, RestaurantOrderTable as R, VenueGuestAccessTable as Rt, RestaurantMenuLocationAssignmentTable as S, RestaurantServiceScope as St, RestaurantMenuSectionTable as T, RestaurantTableTable as Tt, RestaurantPriorityAlertDeliveryTable as U, VenueOrderCancellationSnapshotTable as Ut, RestaurantPaymentStatus as V, VenueMessageTable as Vt, RestaurantPriorityAlertOpportunityTable as W, VenueOrderStatus as Wt, RestaurantReservationDemandSettingsTable as X, VenuePaymentCollection as Xt, RestaurantReservationBlockTable as Y, VenuePaymentAllocationTable as Yt, RestaurantReservationExperienceAddonCategoryTable as Z, VenuePaymentEventTable as Zt, RestaurantLocationMembershipTable as _, RestaurantReservationRequestTableAssignmentTable as _t, RestaurantCartHoldTable as a, VenueRatePlanTable as an, RestaurantReservationHoldTable as at, RestaurantMenuItemTable as b, RestaurantReservationTable as bt, RestaurantDeliveryZoneTable as c, VenueReviewInvitationTable as cn, RestaurantReservationOfferTable as ct, RestaurantFulfilmentType as d, VenueSpaceLayoutTable as dn, RestaurantReservationPromotionOperationTable as dt, VenuePaymentTable as en, RestaurantReservationGiftCardAllocationTable as et, RestaurantGiftCardLedgerEntryTable as f, VenueSpaceTable as fn, RestaurantReservationPromotionTable as ft, RestaurantHoursTable as g, RestaurantReservationRequestTable as gt, RestaurantHoursOverrideTable as h, RestaurantReservationQuoteTable as ht, RestaurantCapacityOverrideTable as i, VenueQuoteTable as in, RestaurantReservationHoldCommercialSelectionTable as it, RestaurantOrderItemModifierTable as j, VenueBookingHoldTable as jt, RestaurantNotificationSettingsTable as k, VenueAvailabilityBlockTable as kt, RestaurantDineInSessionTable as l, VenueReviewResponseTable as ln, RestaurantReservationPaymentPolicyTable as lt, RestaurantGuestAccessTable as m, RestaurantReservationQuoteLineTable as mt, MediaTable as n, VenueQuoteRecordStatus as nn, RestaurantReservationHoldAddonOperationTable as nt, RestaurantClosureTable as o, VenueRecordStatus as on, RestaurantReservationLanguageSettingsTable as ot, RestaurantGiftCardTable as p, VenueTable as pn, RestaurantReservationQuoteCheckoutTable as pt, RestaurantReservationAddonCategoryTable as q, VenueOutboxEventTable as qt, RestaurantCapacityCounterTable as r, VenueQuoteStatus as rn, RestaurantReservationHoldAddonTable as rt, RestaurantDeliverySettingsTable as s, VenueRefundTable as sn, RestaurantReservationOfferLinkDeliveryTable as st, Database as t, VenueQuoteLineTable as tn, RestaurantReservationGiftCardOperationTable as tt, RestaurantDineInSettingsTable as u, VenueReviewTable as un, RestaurantReservationPromotionAllocationTable as ut, RestaurantLocationTable as v, RestaurantReservationSettingsTable as vt, RestaurantMenuSectionItemTable as w, RestaurantTabRoundTable as wt, RestaurantMenuItemTranslationTable as x, RestaurantReservationTableAssignmentTable as xt, RestaurantMenuItemModifierGroupTable as y, RestaurantReservationStatus as yt, RestaurantOutboxDeliveryTable as z, VenueLocationMembershipTable as zt };