@c15t/backend 2.0.0-rc.4 → 2.0.0-rc.6

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 (327) hide show
  1. package/dist/302.js +473 -0
  2. package/dist/364.js +1140 -0
  3. package/dist/583.js +540 -0
  4. package/dist/cache.cjs +1 -1
  5. package/dist/cache.js +4 -415
  6. package/dist/core.cjs +849 -96
  7. package/dist/core.js +147 -1817
  8. package/dist/db/adapters/drizzle.cjs +1 -1
  9. package/dist/db/adapters/drizzle.js +1 -2
  10. package/dist/db/adapters/kysely.cjs +1 -1
  11. package/dist/db/adapters/kysely.js +1 -2
  12. package/dist/db/adapters/mongo.cjs +1 -1
  13. package/dist/db/adapters/mongo.js +1 -2
  14. package/dist/db/adapters/prisma.cjs +1 -1
  15. package/dist/db/adapters/prisma.js +1 -2
  16. package/dist/db/adapters/typeorm.cjs +1 -1
  17. package/dist/db/adapters/typeorm.js +1 -2
  18. package/dist/db/adapters.cjs +1 -1
  19. package/dist/db/migrator.cjs +1 -1
  20. package/dist/db/schema.cjs +38 -1
  21. package/dist/db/schema.js +33 -2
  22. package/dist/define-config.cjs +1 -1
  23. package/dist/edge.cjs +1106 -0
  24. package/dist/edge.js +190 -0
  25. package/dist/router.cjs +629 -81
  26. package/dist/router.js +1 -1509
  27. package/dist/types/index.cjs +1 -1
  28. package/{dist → dist-types}/cache/adapters/cloudflare-kv.d.ts +0 -1
  29. package/{dist → dist-types}/cache/adapters/index.d.ts +0 -1
  30. package/{dist → dist-types}/cache/adapters/memory.d.ts +0 -1
  31. package/{dist → dist-types}/cache/adapters/upstash-redis.d.ts +0 -1
  32. package/{dist → dist-types}/cache/gvl-resolver.d.ts +1 -2
  33. package/{dist → dist-types}/cache/index.d.ts +0 -1
  34. package/{dist → dist-types}/cache/keys.d.ts +0 -1
  35. package/{dist → dist-types}/cache/types.d.ts +0 -1
  36. package/{dist → dist-types}/core.d.ts +8 -1
  37. package/{dist → dist-types}/db/migrator/index.d.ts +0 -1
  38. package/{dist → dist-types}/db/registry/consent-policy.d.ts +0 -1
  39. package/{dist → dist-types}/db/registry/consent-purpose.d.ts +0 -1
  40. package/{dist → dist-types}/db/registry/domain.d.ts +0 -1
  41. package/{dist → dist-types}/db/registry/index.d.ts +22 -2
  42. package/dist-types/db/registry/runtime-policy-decision.d.ts +60 -0
  43. package/{dist → dist-types}/db/registry/subject.d.ts +0 -1
  44. package/{dist → dist-types}/db/registry/types.d.ts +1 -2
  45. package/{dist → dist-types}/db/registry/utils/generate-id.d.ts +0 -1
  46. package/{dist → dist-types}/db/registry/utils.d.ts +0 -1
  47. package/{dist → dist-types}/db/schema/1.0.0/audit-log.d.ts +0 -1
  48. package/{dist → dist-types}/db/schema/1.0.0/consent-policy.d.ts +0 -1
  49. package/{dist → dist-types}/db/schema/1.0.0/consent-purpose.d.ts +0 -1
  50. package/{dist → dist-types}/db/schema/1.0.0/consent-record.d.ts +0 -1
  51. package/{dist → dist-types}/db/schema/1.0.0/consent.d.ts +2 -3
  52. package/{dist → dist-types}/db/schema/1.0.0/domain.d.ts +0 -1
  53. package/{dist → dist-types}/db/schema/1.0.0/index.d.ts +0 -1
  54. package/{dist → dist-types}/db/schema/1.0.0/subject.d.ts +0 -1
  55. package/{dist → dist-types}/db/schema/2.0.0/audit-log.d.ts +2 -3
  56. package/{dist → dist-types}/db/schema/2.0.0/consent-policy.d.ts +2 -3
  57. package/{dist → dist-types}/db/schema/2.0.0/consent-purpose.d.ts +2 -3
  58. package/{dist → dist-types}/db/schema/2.0.0/consent.d.ts +6 -3
  59. package/{dist → dist-types}/db/schema/2.0.0/domain.d.ts +2 -3
  60. package/{dist → dist-types}/db/schema/2.0.0/index.d.ts +432 -17
  61. package/dist-types/db/schema/2.0.0/runtime-policy-decision.d.ts +23 -0
  62. package/{dist → dist-types}/db/schema/2.0.0/subject.d.ts +2 -3
  63. package/{dist → dist-types}/db/schema/index.d.ts +862 -33
  64. package/{dist → dist-types}/db/tenant-scope.d.ts +0 -1
  65. package/{dist → dist-types}/define-config.d.ts +0 -1
  66. package/dist-types/edge/index.d.ts +5 -0
  67. package/dist-types/edge/init-handler.d.ts +38 -0
  68. package/dist-types/edge/resolve-consent.d.ts +80 -0
  69. package/dist-types/edge/types.d.ts +13 -0
  70. package/{dist → dist-types}/handlers/consent/check.handler.d.ts +0 -1
  71. package/{src/handlers/consent/index.ts → dist-types/handlers/consent/index.d.ts} +0 -1
  72. package/{dist → dist-types}/handlers/init/geo.d.ts +2 -3
  73. package/{dist → dist-types}/handlers/init/index.d.ts +4 -5
  74. package/dist-types/handlers/init/policy.d.ts +26 -0
  75. package/dist-types/handlers/init/resolve-init.d.ts +44 -0
  76. package/dist-types/handlers/init/translations.d.ts +48 -0
  77. package/dist-types/handlers/policy/snapshot.d.ts +99 -0
  78. package/{src/handlers/status/index.ts → dist-types/handlers/status/index.d.ts} +0 -1
  79. package/{dist → dist-types}/handlers/status/status.handler.d.ts +0 -1
  80. package/{dist → dist-types}/handlers/subject/get.handler.d.ts +0 -1
  81. package/{src/handlers/subject/index.ts → dist-types/handlers/subject/index.d.ts} +0 -1
  82. package/{dist → dist-types}/handlers/subject/list.handler.d.ts +0 -1
  83. package/{dist → dist-types}/handlers/subject/patch.handler.d.ts +0 -1
  84. package/{dist → dist-types}/handlers/subject/post.handler.d.ts +12 -1
  85. package/{dist → dist-types}/handlers/utils/consent-enrichment.d.ts +0 -1
  86. package/{dist → dist-types}/init.d.ts +0 -1
  87. package/{dist → dist-types}/middleware/auth/index.d.ts +0 -1
  88. package/{dist → dist-types}/middleware/auth/validate-api-key.d.ts +0 -1
  89. package/{dist → dist-types}/middleware/cors/cors.d.ts +0 -1
  90. package/{src/middleware/cors/index.ts → dist-types/middleware/cors/index.d.ts} +0 -1
  91. package/{dist → dist-types}/middleware/cors/is-origin-trusted.d.ts +1 -2
  92. package/{dist → dist-types}/middleware/cors/process-cors.d.ts +0 -1
  93. package/{dist → dist-types}/middleware/openapi/config.d.ts +0 -1
  94. package/{dist → dist-types}/middleware/openapi/handlers.d.ts +0 -1
  95. package/{src/middleware/openapi/index.ts → dist-types/middleware/openapi/index.d.ts} +0 -1
  96. package/{dist → dist-types}/middleware/process-ip/index.d.ts +0 -1
  97. package/dist-types/policies/builder.d.ts +127 -0
  98. package/dist-types/policies/defaults.d.ts +2 -0
  99. package/dist-types/policies/matchers.d.ts +3 -0
  100. package/{dist → dist-types}/router.d.ts +0 -1
  101. package/{dist → dist-types}/routes/consent.d.ts +0 -1
  102. package/{src/routes/index.ts → dist-types/routes/index.d.ts} +0 -1
  103. package/{dist → dist-types}/routes/init.d.ts +0 -1
  104. package/{dist → dist-types}/routes/status.d.ts +0 -1
  105. package/{dist → dist-types}/routes/subject.d.ts +0 -1
  106. package/{dist → dist-types}/types/api.d.ts +0 -1
  107. package/{dist → dist-types}/types/index.d.ts +110 -6
  108. package/dist-types/utils/background.d.ts +6 -0
  109. package/{dist → dist-types}/utils/create-telemetry-options.d.ts +0 -1
  110. package/{dist → dist-types}/utils/env.d.ts +0 -1
  111. package/{dist → dist-types}/utils/extract-error-message.d.ts +0 -1
  112. package/{dist → dist-types}/utils/instrumentation.d.ts +0 -1
  113. package/{dist → dist-types}/utils/logger.d.ts +1 -2
  114. package/{dist → dist-types}/utils/metrics.d.ts +0 -1
  115. package/dist-types/version.d.ts +1 -0
  116. package/docs/README.md +49 -0
  117. package/docs/api/configuration.md +197 -0
  118. package/docs/api/endpoints.md +211 -0
  119. package/docs/guides/caching.md +85 -0
  120. package/docs/guides/database-setup.md +128 -0
  121. package/docs/guides/edge-deployment.md +248 -0
  122. package/docs/guides/framework-integration.md +142 -0
  123. package/docs/guides/iab-tcf.md +89 -0
  124. package/docs/guides/observability.md +96 -0
  125. package/docs/guides/policy-packs.md +396 -0
  126. package/docs/quickstart.md +129 -0
  127. package/package.json +45 -31
  128. package/.turbo/turbo-build.log +0 -49
  129. package/CHANGELOG.md +0 -123
  130. package/dist/cache/adapters/cloudflare-kv.d.ts.map +0 -1
  131. package/dist/cache/adapters/index.d.ts.map +0 -1
  132. package/dist/cache/adapters/memory.d.ts.map +0 -1
  133. package/dist/cache/adapters/upstash-redis.d.ts.map +0 -1
  134. package/dist/cache/gvl-resolver.d.ts.map +0 -1
  135. package/dist/cache/index.d.ts.map +0 -1
  136. package/dist/cache/keys.d.ts.map +0 -1
  137. package/dist/cache/types.d.ts.map +0 -1
  138. package/dist/core.d.ts.map +0 -1
  139. package/dist/db/adapters/drizzle.d.ts +0 -2
  140. package/dist/db/adapters/drizzle.d.ts.map +0 -1
  141. package/dist/db/adapters/index.d.ts +0 -2
  142. package/dist/db/adapters/index.d.ts.map +0 -1
  143. package/dist/db/adapters/kysely.d.ts +0 -2
  144. package/dist/db/adapters/kysely.d.ts.map +0 -1
  145. package/dist/db/adapters/mongo.d.ts +0 -2
  146. package/dist/db/adapters/mongo.d.ts.map +0 -1
  147. package/dist/db/adapters/prisma.d.ts +0 -2
  148. package/dist/db/adapters/prisma.d.ts.map +0 -1
  149. package/dist/db/adapters/typeorm.d.ts +0 -2
  150. package/dist/db/adapters/typeorm.d.ts.map +0 -1
  151. package/dist/db/migrator/index.d.ts.map +0 -1
  152. package/dist/db/registry/consent-policy.d.ts.map +0 -1
  153. package/dist/db/registry/consent-purpose.d.ts.map +0 -1
  154. package/dist/db/registry/domain.d.ts.map +0 -1
  155. package/dist/db/registry/index.d.ts.map +0 -1
  156. package/dist/db/registry/subject.d.ts.map +0 -1
  157. package/dist/db/registry/types.d.ts.map +0 -1
  158. package/dist/db/registry/utils/generate-id.d.ts.map +0 -1
  159. package/dist/db/registry/utils.d.ts.map +0 -1
  160. package/dist/db/schema/1.0.0/audit-log.d.ts.map +0 -1
  161. package/dist/db/schema/1.0.0/consent-policy.d.ts.map +0 -1
  162. package/dist/db/schema/1.0.0/consent-purpose.d.ts.map +0 -1
  163. package/dist/db/schema/1.0.0/consent-record.d.ts.map +0 -1
  164. package/dist/db/schema/1.0.0/consent.d.ts.map +0 -1
  165. package/dist/db/schema/1.0.0/domain.d.ts.map +0 -1
  166. package/dist/db/schema/1.0.0/index.d.ts.map +0 -1
  167. package/dist/db/schema/1.0.0/subject.d.ts.map +0 -1
  168. package/dist/db/schema/2.0.0/audit-log.d.ts.map +0 -1
  169. package/dist/db/schema/2.0.0/consent-policy.d.ts.map +0 -1
  170. package/dist/db/schema/2.0.0/consent-purpose.d.ts.map +0 -1
  171. package/dist/db/schema/2.0.0/consent.d.ts.map +0 -1
  172. package/dist/db/schema/2.0.0/domain.d.ts.map +0 -1
  173. package/dist/db/schema/2.0.0/index.d.ts.map +0 -1
  174. package/dist/db/schema/2.0.0/subject.d.ts.map +0 -1
  175. package/dist/db/schema/index.d.ts.map +0 -1
  176. package/dist/db/tenant-scope.d.ts.map +0 -1
  177. package/dist/define-config.d.ts.map +0 -1
  178. package/dist/handlers/consent/check.handler.d.ts.map +0 -1
  179. package/dist/handlers/consent/index.d.ts +0 -12
  180. package/dist/handlers/consent/index.d.ts.map +0 -1
  181. package/dist/handlers/init/geo.d.ts.map +0 -1
  182. package/dist/handlers/init/index.d.ts.map +0 -1
  183. package/dist/handlers/init/translations.d.ts +0 -26
  184. package/dist/handlers/init/translations.d.ts.map +0 -1
  185. package/dist/handlers/status/index.d.ts +0 -7
  186. package/dist/handlers/status/index.d.ts.map +0 -1
  187. package/dist/handlers/status/status.handler.d.ts.map +0 -1
  188. package/dist/handlers/subject/get.handler.d.ts.map +0 -1
  189. package/dist/handlers/subject/index.d.ts +0 -10
  190. package/dist/handlers/subject/index.d.ts.map +0 -1
  191. package/dist/handlers/subject/list.handler.d.ts.map +0 -1
  192. package/dist/handlers/subject/patch.handler.d.ts.map +0 -1
  193. package/dist/handlers/subject/post.handler.d.ts.map +0 -1
  194. package/dist/handlers/utils/consent-enrichment.d.ts.map +0 -1
  195. package/dist/init.d.ts.map +0 -1
  196. package/dist/middleware/auth/index.d.ts.map +0 -1
  197. package/dist/middleware/auth/validate-api-key.d.ts.map +0 -1
  198. package/dist/middleware/cors/cors.d.ts.map +0 -1
  199. package/dist/middleware/cors/index.d.ts +0 -30
  200. package/dist/middleware/cors/index.d.ts.map +0 -1
  201. package/dist/middleware/cors/is-origin-trusted.d.ts.map +0 -1
  202. package/dist/middleware/cors/process-cors.d.ts.map +0 -1
  203. package/dist/middleware/openapi/config.d.ts.map +0 -1
  204. package/dist/middleware/openapi/handlers.d.ts.map +0 -1
  205. package/dist/middleware/openapi/index.d.ts +0 -12
  206. package/dist/middleware/openapi/index.d.ts.map +0 -1
  207. package/dist/middleware/process-ip/index.d.ts.map +0 -1
  208. package/dist/router.d.ts.map +0 -1
  209. package/dist/routes/consent.d.ts.map +0 -1
  210. package/dist/routes/index.d.ts +0 -10
  211. package/dist/routes/index.d.ts.map +0 -1
  212. package/dist/routes/init.d.ts.map +0 -1
  213. package/dist/routes/status.d.ts.map +0 -1
  214. package/dist/routes/subject.d.ts.map +0 -1
  215. package/dist/types/api.d.ts.map +0 -1
  216. package/dist/types/index.d.ts.map +0 -1
  217. package/dist/utils/create-telemetry-options.d.ts.map +0 -1
  218. package/dist/utils/env.d.ts.map +0 -1
  219. package/dist/utils/extract-error-message.d.ts.map +0 -1
  220. package/dist/utils/index.d.ts +0 -4
  221. package/dist/utils/index.d.ts.map +0 -1
  222. package/dist/utils/instrumentation.d.ts.map +0 -1
  223. package/dist/utils/logger.d.ts.map +0 -1
  224. package/dist/utils/metrics.d.ts.map +0 -1
  225. package/dist/version.d.ts +0 -2
  226. package/dist/version.d.ts.map +0 -1
  227. package/knip.json +0 -31
  228. package/rslib.config.ts +0 -93
  229. package/src/cache/adapters/cloudflare-kv.ts +0 -71
  230. package/src/cache/adapters/index.ts +0 -22
  231. package/src/cache/adapters/memory.ts +0 -111
  232. package/src/cache/adapters/upstash-redis.ts +0 -113
  233. package/src/cache/gvl-resolver.ts +0 -289
  234. package/src/cache/index.ts +0 -34
  235. package/src/cache/keys.ts +0 -68
  236. package/src/cache/types.ts +0 -66
  237. package/src/core.ts +0 -369
  238. package/src/db/migrator/index.ts +0 -80
  239. package/src/db/registry/consent-policy.test.ts +0 -451
  240. package/src/db/registry/consent-policy.ts +0 -82
  241. package/src/db/registry/consent-purpose.test.ts +0 -428
  242. package/src/db/registry/consent-purpose.ts +0 -61
  243. package/src/db/registry/domain.test.ts +0 -445
  244. package/src/db/registry/domain.ts +0 -91
  245. package/src/db/registry/index.ts +0 -14
  246. package/src/db/registry/subject.test.ts +0 -371
  247. package/src/db/registry/subject.ts +0 -126
  248. package/src/db/registry/types.ts +0 -10
  249. package/src/db/registry/utils/generate-id.test.ts +0 -216
  250. package/src/db/registry/utils/generate-id.ts +0 -133
  251. package/src/db/registry/utils.ts +0 -133
  252. package/src/db/schema/1.0.0/audit-log.ts +0 -15
  253. package/src/db/schema/1.0.0/consent-policy.ts +0 -14
  254. package/src/db/schema/1.0.0/consent-purpose.ts +0 -14
  255. package/src/db/schema/1.0.0/consent-record.ts +0 -10
  256. package/src/db/schema/1.0.0/consent.ts +0 -20
  257. package/src/db/schema/1.0.0/domain.ts +0 -12
  258. package/src/db/schema/1.0.0/index.ts +0 -48
  259. package/src/db/schema/1.0.0/subject.ts +0 -11
  260. package/src/db/schema/2.0.0/audit-log.ts +0 -18
  261. package/src/db/schema/2.0.0/consent-policy.ts +0 -28
  262. package/src/db/schema/2.0.0/consent-purpose.ts +0 -12
  263. package/src/db/schema/2.0.0/consent.ts +0 -28
  264. package/src/db/schema/2.0.0/domain.ts +0 -12
  265. package/src/db/schema/2.0.0/index.ts +0 -47
  266. package/src/db/schema/2.0.0/subject.ts +0 -13
  267. package/src/db/schema/index.ts +0 -15
  268. package/src/db/tenant-scope.test.ts +0 -747
  269. package/src/db/tenant-scope.ts +0 -103
  270. package/src/define-config.ts +0 -19
  271. package/src/handlers/consent/check.handler.ts +0 -126
  272. package/src/handlers/init/geo.test.ts +0 -317
  273. package/src/handlers/init/geo.ts +0 -195
  274. package/src/handlers/init/index.test.ts +0 -205
  275. package/src/handlers/init/index.ts +0 -114
  276. package/src/handlers/init/translations.test.ts +0 -121
  277. package/src/handlers/init/translations.ts +0 -69
  278. package/src/handlers/status/status.handler.test.ts +0 -155
  279. package/src/handlers/status/status.handler.ts +0 -51
  280. package/src/handlers/subject/get.handler.ts +0 -92
  281. package/src/handlers/subject/list.handler.ts +0 -92
  282. package/src/handlers/subject/patch.handler.ts +0 -119
  283. package/src/handlers/subject/post.handler.test.ts +0 -294
  284. package/src/handlers/subject/post.handler.ts +0 -268
  285. package/src/handlers/utils/consent-enrichment.test.ts +0 -380
  286. package/src/handlers/utils/consent-enrichment.ts +0 -218
  287. package/src/init.test.ts +0 -122
  288. package/src/init.ts +0 -88
  289. package/src/middleware/auth/index.ts +0 -11
  290. package/src/middleware/auth/validate-api-key.test.ts +0 -86
  291. package/src/middleware/auth/validate-api-key.ts +0 -107
  292. package/src/middleware/cors/cors.test.ts +0 -135
  293. package/src/middleware/cors/cors.ts +0 -186
  294. package/src/middleware/cors/is-origin-trusted.test.ts +0 -164
  295. package/src/middleware/cors/is-origin-trusted.ts +0 -130
  296. package/src/middleware/cors/process-cors.ts +0 -91
  297. package/src/middleware/openapi/config.ts +0 -29
  298. package/src/middleware/openapi/handlers.ts +0 -34
  299. package/src/middleware/process-ip/index.test.ts +0 -193
  300. package/src/middleware/process-ip/index.ts +0 -199
  301. package/src/router.ts +0 -15
  302. package/src/routes/consent.ts +0 -52
  303. package/src/routes/init.ts +0 -105
  304. package/src/routes/status.ts +0 -46
  305. package/src/routes/subject.ts +0 -152
  306. package/src/types/api.ts +0 -48
  307. package/src/types/index.ts +0 -391
  308. package/src/utils/create-telemetry-options.test.ts +0 -286
  309. package/src/utils/create-telemetry-options.ts +0 -229
  310. package/src/utils/env.ts +0 -84
  311. package/src/utils/extract-error-message.ts +0 -21
  312. package/src/utils/instrumentation.test.ts +0 -183
  313. package/src/utils/instrumentation.ts +0 -194
  314. package/src/utils/logger.ts +0 -41
  315. package/src/utils/metrics.test.ts +0 -311
  316. package/src/utils/metrics.ts +0 -402
  317. package/src/utils/telemetry-pii.test.ts +0 -323
  318. package/src/version.ts +0 -2
  319. package/tsconfig.json +0 -11
  320. package/vitest.config.ts +0 -28
  321. /package/{src/db/adapters/drizzle.ts → dist-types/db/adapters/drizzle.d.ts} +0 -0
  322. /package/{src/db/adapters/index.ts → dist-types/db/adapters/index.d.ts} +0 -0
  323. /package/{src/db/adapters/kysely.ts → dist-types/db/adapters/kysely.d.ts} +0 -0
  324. /package/{src/db/adapters/mongo.ts → dist-types/db/adapters/mongo.d.ts} +0 -0
  325. /package/{src/db/adapters/prisma.ts → dist-types/db/adapters/prisma.d.ts} +0 -0
  326. /package/{src/db/adapters/typeorm.ts → dist-types/db/adapters/typeorm.d.ts} +0 -0
  327. /package/{src/utils/index.ts → dist-types/utils/index.d.ts} +0 -0
@@ -23,8 +23,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
23
23
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
24
24
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
25
25
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
26
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
27
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
26
28
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
27
- }, Omit<{}, "domain" | "subject" | "policy"> & {
29
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
28
30
  subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
29
31
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
30
32
  externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
@@ -56,8 +58,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
56
58
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
57
59
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
58
60
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
61
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
62
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
59
63
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
60
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
64
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
61
65
  }>>;
62
66
  policy: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
63
67
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
@@ -84,8 +88,52 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
84
88
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
85
89
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
86
90
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
91
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
92
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
87
93
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
88
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
94
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
95
+ }>>;
96
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
97
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
98
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
99
+ policyId: import("fumadb/schema").Column<"string", string, string>;
100
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
101
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
102
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
103
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
104
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
105
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
106
+ model: import("fumadb/schema").Column<"string", string, string>;
107
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
108
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
109
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
110
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
111
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
112
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
113
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
114
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
115
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
116
+ }, Omit<{}, "consents"> & {
117
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
118
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
119
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
120
+ domainId: import("fumadb/schema").Column<"string", string, string>;
121
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
122
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
123
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
124
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
125
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
126
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
127
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
128
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
129
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
130
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
131
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
132
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
133
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
134
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
135
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
136
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
89
137
  }>>;
90
138
  }>>;
91
139
  auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
@@ -134,8 +182,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
134
182
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
135
183
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
136
184
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
185
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
186
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
137
187
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
138
- }, Omit<{}, "domain" | "subject" | "policy"> & {
188
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
139
189
  subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
140
190
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
141
191
  externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
@@ -160,8 +210,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
160
210
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
161
211
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
162
212
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
213
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
214
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
163
215
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
164
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
216
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
165
217
  auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
166
218
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
167
219
  entityType: import("fumadb/schema").Column<"string", string, string>;
@@ -217,8 +269,52 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
217
269
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
218
270
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
219
271
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
272
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
273
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
274
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
275
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
276
+ }>>;
277
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
278
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
279
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
280
+ policyId: import("fumadb/schema").Column<"string", string, string>;
281
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
282
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
283
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
284
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
285
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
286
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
287
+ model: import("fumadb/schema").Column<"string", string, string>;
288
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
289
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
290
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
291
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
292
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
293
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
294
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
295
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
296
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
297
+ }, Omit<{}, "consents"> & {
298
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
299
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
300
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
301
+ domainId: import("fumadb/schema").Column<"string", string, string>;
302
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
303
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
304
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
305
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
306
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
307
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
308
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
309
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
310
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
311
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
312
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
313
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
314
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
315
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
220
316
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
221
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
317
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
222
318
  }>>;
223
319
  }>>;
224
320
  }>;
@@ -247,8 +343,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
247
343
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
248
344
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
249
345
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
346
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
347
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
250
348
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
251
- }, Omit<{}, "domain" | "subject" | "policy"> & {
349
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
252
350
  subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
253
351
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
254
352
  externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
@@ -273,8 +371,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
273
371
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
274
372
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
275
373
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
374
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
375
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
276
376
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
277
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
377
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
278
378
  auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
279
379
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
280
380
  entityType: import("fumadb/schema").Column<"string", string, string>;
@@ -321,8 +421,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
321
421
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
322
422
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
323
423
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
424
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
425
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
324
426
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
325
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
427
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
326
428
  }>>;
327
429
  policy: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
328
430
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
@@ -333,6 +435,221 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
333
435
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
334
436
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
335
437
  }, Omit<{}, "consents"> & /*elided*/ any>>;
438
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
439
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
440
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
441
+ policyId: import("fumadb/schema").Column<"string", string, string>;
442
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
443
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
444
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
445
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
446
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
447
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
448
+ model: import("fumadb/schema").Column<"string", string, string>;
449
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
450
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
451
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
452
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
453
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
454
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
455
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
456
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
457
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
458
+ }, Omit<{}, "consents"> & {
459
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
460
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
461
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
462
+ domainId: import("fumadb/schema").Column<"string", string, string>;
463
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
464
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
465
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
466
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
467
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
468
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
469
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
470
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
471
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
472
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
473
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
474
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
475
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
476
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
477
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
478
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
479
+ }>>;
480
+ }>>;
481
+ }>;
482
+ runtimePolicyDecision: import("fumadb/schema").Table<{
483
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
484
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
485
+ policyId: import("fumadb/schema").Column<"string", string, string>;
486
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
487
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
488
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
489
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
490
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
491
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
492
+ model: import("fumadb/schema").Column<"string", string, string>;
493
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
494
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
495
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
496
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
497
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
498
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
499
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
500
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
501
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
502
+ }, Omit<{}, "consents"> & {
503
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
504
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
505
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
506
+ domainId: import("fumadb/schema").Column<"string", string, string>;
507
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
508
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
509
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
510
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
511
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
512
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
513
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
514
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
515
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
516
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
517
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
518
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
519
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
520
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
521
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
522
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
523
+ subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
524
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
525
+ externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
526
+ identityProvider: import("fumadb/schema").Column<"string", string | null, string | null>;
527
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
528
+ updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
529
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
530
+ }, Omit<{}, "consents" | "auditLogs"> & {
531
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
532
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
533
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
534
+ domainId: import("fumadb/schema").Column<"string", string, string>;
535
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
536
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
537
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
538
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
539
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
540
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
541
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
542
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
543
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
544
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
545
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
546
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
547
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
548
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
549
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
550
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
551
+ auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
552
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
553
+ entityType: import("fumadb/schema").Column<"string", string, string>;
554
+ entityId: import("fumadb/schema").Column<"string", string, string>;
555
+ actionType: import("fumadb/schema").Column<"string", string, string>;
556
+ subjectId: import("fumadb/schema").Column<"string", string | null, string | null>;
557
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
558
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
559
+ changes: import("fumadb/schema").Column<"json", unknown, unknown>;
560
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
561
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
562
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
563
+ }, Omit<{}, "subject"> & {
564
+ subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
565
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
566
+ externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
567
+ identityProvider: import("fumadb/schema").Column<"string", string | null, string | null>;
568
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
569
+ updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
570
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
571
+ }, Omit<{}, "consents" | "auditLogs"> & /*elided*/ any>>;
572
+ }>>;
573
+ }>>;
574
+ domain: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
575
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
576
+ name: import("fumadb/schema").Column<"string", string, string>;
577
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
578
+ updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
579
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
580
+ }, Omit<{}, "consents"> & {
581
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
582
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
583
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
584
+ domainId: import("fumadb/schema").Column<"string", string, string>;
585
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
586
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
587
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
588
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
589
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
590
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
591
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
592
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
593
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
594
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
595
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
596
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
597
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
598
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
599
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
600
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
601
+ }>>;
602
+ policy: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
603
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
604
+ version: import("fumadb/schema").Column<"string", string, string>;
605
+ type: import("fumadb/schema").Column<"string", string, string>;
606
+ effectiveDate: import("fumadb/schema").Column<"timestamp", Date, Date>;
607
+ isActive: import("fumadb/schema").Column<"bool", boolean | null, boolean>;
608
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
609
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
610
+ }, Omit<{}, "consents"> & {
611
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
612
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
613
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
614
+ domainId: import("fumadb/schema").Column<"string", string, string>;
615
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
616
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
617
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
618
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
619
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
620
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
621
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
622
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
623
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
624
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
625
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
626
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
627
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
628
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
629
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
630
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
631
+ }>>;
632
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
633
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
634
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
635
+ policyId: import("fumadb/schema").Column<"string", string, string>;
636
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
637
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
638
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
639
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
640
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
641
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
642
+ model: import("fumadb/schema").Column<"string", string, string>;
643
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
644
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
645
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
646
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
647
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
648
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
649
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
650
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
651
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
652
+ }, Omit<{}, "consents"> & /*elided*/ any>>;
336
653
  }>>;
337
654
  }>;
338
655
  consentPurpose: import("fumadb/schema").Table<{
@@ -358,8 +675,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
358
675
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
359
676
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
360
677
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
678
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
679
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
361
680
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
362
- }, Omit<{}, "domain" | "subject" | "policy"> & {
681
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
363
682
  subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
364
683
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
365
684
  externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
@@ -384,8 +703,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
384
703
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
385
704
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
386
705
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
706
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
707
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
387
708
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
388
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
709
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
389
710
  auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
390
711
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
391
712
  entityType: import("fumadb/schema").Column<"string", string, string>;
@@ -432,8 +753,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
432
753
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
433
754
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
434
755
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
756
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
757
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
435
758
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
436
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
759
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
437
760
  }>>;
438
761
  policy: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
439
762
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
@@ -460,8 +783,52 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
460
783
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
461
784
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
462
785
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
786
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
787
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
463
788
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
464
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
789
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
790
+ }>>;
791
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
792
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
793
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
794
+ policyId: import("fumadb/schema").Column<"string", string, string>;
795
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
796
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
797
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
798
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
799
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
800
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
801
+ model: import("fumadb/schema").Column<"string", string, string>;
802
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
803
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
804
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
805
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
806
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
807
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
808
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
809
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
810
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
811
+ }, Omit<{}, "consents"> & {
812
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
813
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
814
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
815
+ domainId: import("fumadb/schema").Column<"string", string, string>;
816
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
817
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
818
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
819
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
820
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
821
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
822
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
823
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
824
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
825
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
826
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
827
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
828
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
829
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
830
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
831
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
465
832
  }>>;
466
833
  }>;
467
834
  auditLog: import("fumadb/schema").Table<{
@@ -501,8 +868,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
501
868
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
502
869
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
503
870
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
871
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
872
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
504
873
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
505
- }, Omit<{}, "domain" | "subject" | "policy"> & {
874
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & {
506
875
  subject: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
507
876
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
508
877
  externalId: import("fumadb/schema").Column<"string", string | null, string | null>;
@@ -534,8 +903,10 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
534
903
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
535
904
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
536
905
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
906
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
907
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
537
908
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
538
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
909
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
539
910
  }>>;
540
911
  policy: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
541
912
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
@@ -562,8 +933,52 @@ export declare const v2: import("fumadb/schema").Schema<"2.0.0", {
562
933
  tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
563
934
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
564
935
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
936
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
937
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
938
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
939
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
940
+ }>>;
941
+ runtimePolicyDecision: import("fumadb/schema").ExplicitRelation<"one", import("fumadb/schema").Table<{
942
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
943
+ tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
944
+ policyId: import("fumadb/schema").Column<"string", string, string>;
945
+ fingerprint: import("fumadb/schema").Column<"string", string, string>;
946
+ matchedBy: import("fumadb/schema").Column<"string", string, string>;
947
+ countryCode: import("fumadb/schema").Column<"string", string | null, string | null>;
948
+ regionCode: import("fumadb/schema").Column<"string", string | null, string | null>;
949
+ jurisdiction: import("fumadb/schema").Column<"string", string, string>;
950
+ language: import("fumadb/schema").Column<"string", string | null, string | null>;
951
+ model: import("fumadb/schema").Column<"string", string, string>;
952
+ policyI18n: import("fumadb/schema").Column<"json", unknown, unknown>;
953
+ uiMode: import("fumadb/schema").Column<"string", string | null, string | null>;
954
+ bannerUi: import("fumadb/schema").Column<"json", unknown, unknown>;
955
+ dialogUi: import("fumadb/schema").Column<"json", unknown, unknown>;
956
+ categories: import("fumadb/schema").Column<"json", unknown, unknown>;
957
+ preselectedCategories: import("fumadb/schema").Column<"json", unknown, unknown>;
958
+ proofConfig: import("fumadb/schema").Column<"json", unknown, unknown>;
959
+ dedupeKey: import("fumadb/schema").Column<"string", string, string>;
960
+ createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
961
+ }, Omit<{}, "consents"> & {
962
+ consents: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
963
+ id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
964
+ subjectId: import("fumadb/schema").Column<"string", string, string>;
965
+ domainId: import("fumadb/schema").Column<"string", string, string>;
966
+ policyId: import("fumadb/schema").Column<"string", string | null, string | null>;
967
+ purposeIds: import("fumadb/schema").Column<"json", unknown, unknown>;
968
+ metadata: import("fumadb/schema").Column<"json", unknown, unknown>;
969
+ ipAddress: import("fumadb/schema").Column<"string", string | null, string | null>;
970
+ userAgent: import("fumadb/schema").Column<"string", string | null, string | null>;
971
+ givenAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
972
+ validUntil: import("fumadb/schema").Column<"timestamp", Date | null, Date | null>;
973
+ jurisdiction: import("fumadb/schema").Column<"string", string | null, string | null>;
974
+ jurisdictionModel: import("fumadb/schema").Column<"string", string | null, string | null>;
975
+ tcString: import("fumadb/schema").Column<"string", string | null, string | null>;
976
+ uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
977
+ consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
978
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
979
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
565
980
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
566
- }, Omit<{}, "domain" | "subject" | "policy"> & /*elided*/ any>>;
981
+ }, Omit<{}, "domain" | "subject" | "policy" | "runtimePolicyDecision"> & /*elided*/ any>>;
567
982
  }>>;
568
983
  }>>;
569
984
  auditLogs: import("fumadb/schema").ImplicitRelation<"many", import("fumadb/schema").Table<{
@@ -587,5 +1002,5 @@ export * from './consent';
587
1002
  export * from './consent-policy';
588
1003
  export * from './consent-purpose';
589
1004
  export * from './domain';
1005
+ export * from './runtime-policy-decision';
590
1006
  export * from './subject';
591
- //# sourceMappingURL=index.d.ts.map