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

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 (308) hide show
  1. package/dist/core.cjs +830 -74
  2. package/dist/core.js +807 -75
  3. package/dist/db/schema.cjs +37 -0
  4. package/dist/db/schema.js +33 -2
  5. package/dist/edge.cjs +1106 -0
  6. package/dist/edge.js +1069 -0
  7. package/dist/router.cjs +613 -64
  8. package/dist/router.js +613 -64
  9. package/{dist → dist-types}/cache/adapters/cloudflare-kv.d.ts +0 -1
  10. package/{dist → dist-types}/cache/adapters/index.d.ts +0 -1
  11. package/{dist → dist-types}/cache/adapters/memory.d.ts +0 -1
  12. package/{dist → dist-types}/cache/adapters/upstash-redis.d.ts +0 -1
  13. package/{dist → dist-types}/cache/gvl-resolver.d.ts +1 -2
  14. package/{dist → dist-types}/cache/index.d.ts +0 -1
  15. package/{dist → dist-types}/cache/keys.d.ts +0 -1
  16. package/{dist → dist-types}/cache/types.d.ts +0 -1
  17. package/{dist → dist-types}/core.d.ts +8 -1
  18. package/{dist → dist-types}/db/migrator/index.d.ts +0 -1
  19. package/{dist → dist-types}/db/registry/consent-policy.d.ts +0 -1
  20. package/{dist → dist-types}/db/registry/consent-purpose.d.ts +0 -1
  21. package/{dist → dist-types}/db/registry/domain.d.ts +0 -1
  22. package/{dist → dist-types}/db/registry/index.d.ts +22 -2
  23. package/dist-types/db/registry/runtime-policy-decision.d.ts +60 -0
  24. package/{dist → dist-types}/db/registry/subject.d.ts +0 -1
  25. package/{dist → dist-types}/db/registry/types.d.ts +1 -2
  26. package/{dist → dist-types}/db/registry/utils/generate-id.d.ts +0 -1
  27. package/{dist → dist-types}/db/registry/utils.d.ts +0 -1
  28. package/{dist → dist-types}/db/schema/1.0.0/audit-log.d.ts +0 -1
  29. package/{dist → dist-types}/db/schema/1.0.0/consent-policy.d.ts +0 -1
  30. package/{dist → dist-types}/db/schema/1.0.0/consent-purpose.d.ts +0 -1
  31. package/{dist → dist-types}/db/schema/1.0.0/consent-record.d.ts +0 -1
  32. package/{dist → dist-types}/db/schema/1.0.0/consent.d.ts +1 -2
  33. package/{dist → dist-types}/db/schema/1.0.0/domain.d.ts +0 -1
  34. package/{dist → dist-types}/db/schema/1.0.0/index.d.ts +0 -1
  35. package/{dist → dist-types}/db/schema/1.0.0/subject.d.ts +0 -1
  36. package/{dist → dist-types}/db/schema/2.0.0/audit-log.d.ts +1 -2
  37. package/{dist → dist-types}/db/schema/2.0.0/consent-policy.d.ts +1 -2
  38. package/{dist → dist-types}/db/schema/2.0.0/consent-purpose.d.ts +1 -2
  39. package/{dist → dist-types}/db/schema/2.0.0/consent.d.ts +5 -2
  40. package/{dist → dist-types}/db/schema/2.0.0/domain.d.ts +1 -2
  41. package/{dist → dist-types}/db/schema/2.0.0/index.d.ts +432 -17
  42. package/dist-types/db/schema/2.0.0/runtime-policy-decision.d.ts +23 -0
  43. package/{dist → dist-types}/db/schema/2.0.0/subject.d.ts +1 -2
  44. package/{dist → dist-types}/db/schema/index.d.ts +862 -33
  45. package/{dist → dist-types}/db/tenant-scope.d.ts +0 -1
  46. package/{dist → dist-types}/define-config.d.ts +0 -1
  47. package/dist-types/edge/index.d.ts +5 -0
  48. package/dist-types/edge/init-handler.d.ts +38 -0
  49. package/dist-types/edge/resolve-consent.d.ts +80 -0
  50. package/dist-types/edge/types.d.ts +13 -0
  51. package/{dist → dist-types}/handlers/consent/check.handler.d.ts +0 -1
  52. package/{src/handlers/consent/index.ts → dist-types/handlers/consent/index.d.ts} +0 -1
  53. package/{dist → dist-types}/handlers/init/geo.d.ts +2 -3
  54. package/{dist → dist-types}/handlers/init/index.d.ts +4 -5
  55. package/dist-types/handlers/init/policy.d.ts +26 -0
  56. package/dist-types/handlers/init/resolve-init.d.ts +44 -0
  57. package/dist-types/handlers/init/translations.d.ts +48 -0
  58. package/dist-types/handlers/policy/snapshot.d.ts +99 -0
  59. package/{src/handlers/status/index.ts → dist-types/handlers/status/index.d.ts} +0 -1
  60. package/{dist → dist-types}/handlers/status/status.handler.d.ts +0 -1
  61. package/{dist → dist-types}/handlers/subject/get.handler.d.ts +0 -1
  62. package/{src/handlers/subject/index.ts → dist-types/handlers/subject/index.d.ts} +0 -1
  63. package/{dist → dist-types}/handlers/subject/list.handler.d.ts +0 -1
  64. package/{dist → dist-types}/handlers/subject/patch.handler.d.ts +0 -1
  65. package/{dist → dist-types}/handlers/subject/post.handler.d.ts +12 -1
  66. package/{dist → dist-types}/handlers/utils/consent-enrichment.d.ts +0 -1
  67. package/{dist → dist-types}/init.d.ts +0 -1
  68. package/{dist → dist-types}/middleware/auth/index.d.ts +0 -1
  69. package/{dist → dist-types}/middleware/auth/validate-api-key.d.ts +0 -1
  70. package/{dist → dist-types}/middleware/cors/cors.d.ts +0 -1
  71. package/{src/middleware/cors/index.ts → dist-types/middleware/cors/index.d.ts} +0 -1
  72. package/{dist → dist-types}/middleware/cors/is-origin-trusted.d.ts +1 -2
  73. package/{dist → dist-types}/middleware/cors/process-cors.d.ts +0 -1
  74. package/{dist → dist-types}/middleware/openapi/config.d.ts +0 -1
  75. package/{dist → dist-types}/middleware/openapi/handlers.d.ts +0 -1
  76. package/{src/middleware/openapi/index.ts → dist-types/middleware/openapi/index.d.ts} +0 -1
  77. package/{dist → dist-types}/middleware/process-ip/index.d.ts +0 -1
  78. package/dist-types/policies/builder.d.ts +127 -0
  79. package/dist-types/policies/defaults.d.ts +2 -0
  80. package/dist-types/policies/matchers.d.ts +3 -0
  81. package/{dist → dist-types}/router.d.ts +0 -1
  82. package/{dist → dist-types}/routes/consent.d.ts +0 -1
  83. package/{src/routes/index.ts → dist-types/routes/index.d.ts} +0 -1
  84. package/{dist → dist-types}/routes/init.d.ts +0 -1
  85. package/{dist → dist-types}/routes/status.d.ts +0 -1
  86. package/{dist → dist-types}/routes/subject.d.ts +0 -1
  87. package/{dist → dist-types}/types/api.d.ts +0 -1
  88. package/{dist → dist-types}/types/index.d.ts +110 -6
  89. package/dist-types/utils/background.d.ts +6 -0
  90. package/{dist → dist-types}/utils/create-telemetry-options.d.ts +0 -1
  91. package/{dist → dist-types}/utils/env.d.ts +0 -1
  92. package/{dist → dist-types}/utils/extract-error-message.d.ts +0 -1
  93. package/{dist → dist-types}/utils/instrumentation.d.ts +0 -1
  94. package/{dist → dist-types}/utils/logger.d.ts +1 -2
  95. package/{dist → dist-types}/utils/metrics.d.ts +0 -1
  96. package/dist-types/version.d.ts +1 -0
  97. package/docs/README.md +49 -0
  98. package/docs/api/configuration.md +197 -0
  99. package/docs/api/endpoints.md +211 -0
  100. package/docs/guides/caching.md +85 -0
  101. package/docs/guides/database-setup.md +128 -0
  102. package/docs/guides/edge-deployment.md +248 -0
  103. package/docs/guides/framework-integration.md +142 -0
  104. package/docs/guides/iab-tcf.md +89 -0
  105. package/docs/guides/observability.md +96 -0
  106. package/docs/guides/policy-packs.md +396 -0
  107. package/docs/quickstart.md +129 -0
  108. package/package.json +33 -19
  109. package/.turbo/turbo-build.log +0 -49
  110. package/CHANGELOG.md +0 -123
  111. package/dist/cache/adapters/cloudflare-kv.d.ts.map +0 -1
  112. package/dist/cache/adapters/index.d.ts.map +0 -1
  113. package/dist/cache/adapters/memory.d.ts.map +0 -1
  114. package/dist/cache/adapters/upstash-redis.d.ts.map +0 -1
  115. package/dist/cache/gvl-resolver.d.ts.map +0 -1
  116. package/dist/cache/index.d.ts.map +0 -1
  117. package/dist/cache/keys.d.ts.map +0 -1
  118. package/dist/cache/types.d.ts.map +0 -1
  119. package/dist/core.d.ts.map +0 -1
  120. package/dist/db/adapters/drizzle.d.ts +0 -2
  121. package/dist/db/adapters/drizzle.d.ts.map +0 -1
  122. package/dist/db/adapters/index.d.ts +0 -2
  123. package/dist/db/adapters/index.d.ts.map +0 -1
  124. package/dist/db/adapters/kysely.d.ts +0 -2
  125. package/dist/db/adapters/kysely.d.ts.map +0 -1
  126. package/dist/db/adapters/mongo.d.ts +0 -2
  127. package/dist/db/adapters/mongo.d.ts.map +0 -1
  128. package/dist/db/adapters/prisma.d.ts +0 -2
  129. package/dist/db/adapters/prisma.d.ts.map +0 -1
  130. package/dist/db/adapters/typeorm.d.ts +0 -2
  131. package/dist/db/adapters/typeorm.d.ts.map +0 -1
  132. package/dist/db/migrator/index.d.ts.map +0 -1
  133. package/dist/db/registry/consent-policy.d.ts.map +0 -1
  134. package/dist/db/registry/consent-purpose.d.ts.map +0 -1
  135. package/dist/db/registry/domain.d.ts.map +0 -1
  136. package/dist/db/registry/index.d.ts.map +0 -1
  137. package/dist/db/registry/subject.d.ts.map +0 -1
  138. package/dist/db/registry/types.d.ts.map +0 -1
  139. package/dist/db/registry/utils/generate-id.d.ts.map +0 -1
  140. package/dist/db/registry/utils.d.ts.map +0 -1
  141. package/dist/db/schema/1.0.0/audit-log.d.ts.map +0 -1
  142. package/dist/db/schema/1.0.0/consent-policy.d.ts.map +0 -1
  143. package/dist/db/schema/1.0.0/consent-purpose.d.ts.map +0 -1
  144. package/dist/db/schema/1.0.0/consent-record.d.ts.map +0 -1
  145. package/dist/db/schema/1.0.0/consent.d.ts.map +0 -1
  146. package/dist/db/schema/1.0.0/domain.d.ts.map +0 -1
  147. package/dist/db/schema/1.0.0/index.d.ts.map +0 -1
  148. package/dist/db/schema/1.0.0/subject.d.ts.map +0 -1
  149. package/dist/db/schema/2.0.0/audit-log.d.ts.map +0 -1
  150. package/dist/db/schema/2.0.0/consent-policy.d.ts.map +0 -1
  151. package/dist/db/schema/2.0.0/consent-purpose.d.ts.map +0 -1
  152. package/dist/db/schema/2.0.0/consent.d.ts.map +0 -1
  153. package/dist/db/schema/2.0.0/domain.d.ts.map +0 -1
  154. package/dist/db/schema/2.0.0/index.d.ts.map +0 -1
  155. package/dist/db/schema/2.0.0/subject.d.ts.map +0 -1
  156. package/dist/db/schema/index.d.ts.map +0 -1
  157. package/dist/db/tenant-scope.d.ts.map +0 -1
  158. package/dist/define-config.d.ts.map +0 -1
  159. package/dist/handlers/consent/check.handler.d.ts.map +0 -1
  160. package/dist/handlers/consent/index.d.ts +0 -12
  161. package/dist/handlers/consent/index.d.ts.map +0 -1
  162. package/dist/handlers/init/geo.d.ts.map +0 -1
  163. package/dist/handlers/init/index.d.ts.map +0 -1
  164. package/dist/handlers/init/translations.d.ts +0 -26
  165. package/dist/handlers/init/translations.d.ts.map +0 -1
  166. package/dist/handlers/status/index.d.ts +0 -7
  167. package/dist/handlers/status/index.d.ts.map +0 -1
  168. package/dist/handlers/status/status.handler.d.ts.map +0 -1
  169. package/dist/handlers/subject/get.handler.d.ts.map +0 -1
  170. package/dist/handlers/subject/index.d.ts +0 -10
  171. package/dist/handlers/subject/index.d.ts.map +0 -1
  172. package/dist/handlers/subject/list.handler.d.ts.map +0 -1
  173. package/dist/handlers/subject/patch.handler.d.ts.map +0 -1
  174. package/dist/handlers/subject/post.handler.d.ts.map +0 -1
  175. package/dist/handlers/utils/consent-enrichment.d.ts.map +0 -1
  176. package/dist/init.d.ts.map +0 -1
  177. package/dist/middleware/auth/index.d.ts.map +0 -1
  178. package/dist/middleware/auth/validate-api-key.d.ts.map +0 -1
  179. package/dist/middleware/cors/cors.d.ts.map +0 -1
  180. package/dist/middleware/cors/index.d.ts +0 -30
  181. package/dist/middleware/cors/index.d.ts.map +0 -1
  182. package/dist/middleware/cors/is-origin-trusted.d.ts.map +0 -1
  183. package/dist/middleware/cors/process-cors.d.ts.map +0 -1
  184. package/dist/middleware/openapi/config.d.ts.map +0 -1
  185. package/dist/middleware/openapi/handlers.d.ts.map +0 -1
  186. package/dist/middleware/openapi/index.d.ts +0 -12
  187. package/dist/middleware/openapi/index.d.ts.map +0 -1
  188. package/dist/middleware/process-ip/index.d.ts.map +0 -1
  189. package/dist/router.d.ts.map +0 -1
  190. package/dist/routes/consent.d.ts.map +0 -1
  191. package/dist/routes/index.d.ts +0 -10
  192. package/dist/routes/index.d.ts.map +0 -1
  193. package/dist/routes/init.d.ts.map +0 -1
  194. package/dist/routes/status.d.ts.map +0 -1
  195. package/dist/routes/subject.d.ts.map +0 -1
  196. package/dist/types/api.d.ts.map +0 -1
  197. package/dist/types/index.d.ts.map +0 -1
  198. package/dist/utils/create-telemetry-options.d.ts.map +0 -1
  199. package/dist/utils/env.d.ts.map +0 -1
  200. package/dist/utils/extract-error-message.d.ts.map +0 -1
  201. package/dist/utils/index.d.ts +0 -4
  202. package/dist/utils/index.d.ts.map +0 -1
  203. package/dist/utils/instrumentation.d.ts.map +0 -1
  204. package/dist/utils/logger.d.ts.map +0 -1
  205. package/dist/utils/metrics.d.ts.map +0 -1
  206. package/dist/version.d.ts +0 -2
  207. package/dist/version.d.ts.map +0 -1
  208. package/knip.json +0 -31
  209. package/rslib.config.ts +0 -93
  210. package/src/cache/adapters/cloudflare-kv.ts +0 -71
  211. package/src/cache/adapters/index.ts +0 -22
  212. package/src/cache/adapters/memory.ts +0 -111
  213. package/src/cache/adapters/upstash-redis.ts +0 -113
  214. package/src/cache/gvl-resolver.ts +0 -289
  215. package/src/cache/index.ts +0 -34
  216. package/src/cache/keys.ts +0 -68
  217. package/src/cache/types.ts +0 -66
  218. package/src/core.ts +0 -369
  219. package/src/db/migrator/index.ts +0 -80
  220. package/src/db/registry/consent-policy.test.ts +0 -451
  221. package/src/db/registry/consent-policy.ts +0 -82
  222. package/src/db/registry/consent-purpose.test.ts +0 -428
  223. package/src/db/registry/consent-purpose.ts +0 -61
  224. package/src/db/registry/domain.test.ts +0 -445
  225. package/src/db/registry/domain.ts +0 -91
  226. package/src/db/registry/index.ts +0 -14
  227. package/src/db/registry/subject.test.ts +0 -371
  228. package/src/db/registry/subject.ts +0 -126
  229. package/src/db/registry/types.ts +0 -10
  230. package/src/db/registry/utils/generate-id.test.ts +0 -216
  231. package/src/db/registry/utils/generate-id.ts +0 -133
  232. package/src/db/registry/utils.ts +0 -133
  233. package/src/db/schema/1.0.0/audit-log.ts +0 -15
  234. package/src/db/schema/1.0.0/consent-policy.ts +0 -14
  235. package/src/db/schema/1.0.0/consent-purpose.ts +0 -14
  236. package/src/db/schema/1.0.0/consent-record.ts +0 -10
  237. package/src/db/schema/1.0.0/consent.ts +0 -20
  238. package/src/db/schema/1.0.0/domain.ts +0 -12
  239. package/src/db/schema/1.0.0/index.ts +0 -48
  240. package/src/db/schema/1.0.0/subject.ts +0 -11
  241. package/src/db/schema/2.0.0/audit-log.ts +0 -18
  242. package/src/db/schema/2.0.0/consent-policy.ts +0 -28
  243. package/src/db/schema/2.0.0/consent-purpose.ts +0 -12
  244. package/src/db/schema/2.0.0/consent.ts +0 -28
  245. package/src/db/schema/2.0.0/domain.ts +0 -12
  246. package/src/db/schema/2.0.0/index.ts +0 -47
  247. package/src/db/schema/2.0.0/subject.ts +0 -13
  248. package/src/db/schema/index.ts +0 -15
  249. package/src/db/tenant-scope.test.ts +0 -747
  250. package/src/db/tenant-scope.ts +0 -103
  251. package/src/define-config.ts +0 -19
  252. package/src/handlers/consent/check.handler.ts +0 -126
  253. package/src/handlers/init/geo.test.ts +0 -317
  254. package/src/handlers/init/geo.ts +0 -195
  255. package/src/handlers/init/index.test.ts +0 -205
  256. package/src/handlers/init/index.ts +0 -114
  257. package/src/handlers/init/translations.test.ts +0 -121
  258. package/src/handlers/init/translations.ts +0 -69
  259. package/src/handlers/status/status.handler.test.ts +0 -155
  260. package/src/handlers/status/status.handler.ts +0 -51
  261. package/src/handlers/subject/get.handler.ts +0 -92
  262. package/src/handlers/subject/list.handler.ts +0 -92
  263. package/src/handlers/subject/patch.handler.ts +0 -119
  264. package/src/handlers/subject/post.handler.test.ts +0 -294
  265. package/src/handlers/subject/post.handler.ts +0 -268
  266. package/src/handlers/utils/consent-enrichment.test.ts +0 -380
  267. package/src/handlers/utils/consent-enrichment.ts +0 -218
  268. package/src/init.test.ts +0 -122
  269. package/src/init.ts +0 -88
  270. package/src/middleware/auth/index.ts +0 -11
  271. package/src/middleware/auth/validate-api-key.test.ts +0 -86
  272. package/src/middleware/auth/validate-api-key.ts +0 -107
  273. package/src/middleware/cors/cors.test.ts +0 -135
  274. package/src/middleware/cors/cors.ts +0 -186
  275. package/src/middleware/cors/is-origin-trusted.test.ts +0 -164
  276. package/src/middleware/cors/is-origin-trusted.ts +0 -130
  277. package/src/middleware/cors/process-cors.ts +0 -91
  278. package/src/middleware/openapi/config.ts +0 -29
  279. package/src/middleware/openapi/handlers.ts +0 -34
  280. package/src/middleware/process-ip/index.test.ts +0 -193
  281. package/src/middleware/process-ip/index.ts +0 -199
  282. package/src/router.ts +0 -15
  283. package/src/routes/consent.ts +0 -52
  284. package/src/routes/init.ts +0 -105
  285. package/src/routes/status.ts +0 -46
  286. package/src/routes/subject.ts +0 -152
  287. package/src/types/api.ts +0 -48
  288. package/src/types/index.ts +0 -391
  289. package/src/utils/create-telemetry-options.test.ts +0 -286
  290. package/src/utils/create-telemetry-options.ts +0 -229
  291. package/src/utils/env.ts +0 -84
  292. package/src/utils/extract-error-message.ts +0 -21
  293. package/src/utils/instrumentation.test.ts +0 -183
  294. package/src/utils/instrumentation.ts +0 -194
  295. package/src/utils/logger.ts +0 -41
  296. package/src/utils/metrics.test.ts +0 -311
  297. package/src/utils/metrics.ts +0 -402
  298. package/src/utils/telemetry-pii.test.ts +0 -323
  299. package/src/version.ts +0 -2
  300. package/tsconfig.json +0 -11
  301. package/vitest.config.ts +0 -28
  302. /package/{src/db/adapters/drizzle.ts → dist-types/db/adapters/drizzle.d.ts} +0 -0
  303. /package/{src/db/adapters/index.ts → dist-types/db/adapters/index.d.ts} +0 -0
  304. /package/{src/db/adapters/kysely.ts → dist-types/db/adapters/kysely.d.ts} +0 -0
  305. /package/{src/db/adapters/mongo.ts → dist-types/db/adapters/mongo.d.ts} +0 -0
  306. /package/{src/db/adapters/prisma.ts → dist-types/db/adapters/prisma.d.ts} +0 -0
  307. /package/{src/db/adapters/typeorm.ts → dist-types/db/adapters/typeorm.d.ts} +0 -0
  308. /package/{src/utils/index.ts → dist-types/utils/index.d.ts} +0 -0
@@ -43,4 +43,3 @@ export interface KVNamespace {
43
43
  * @public
44
44
  */
45
45
  export declare function createCloudflareKVAdapter(kv: KVNamespace): CacheAdapter;
46
- //# sourceMappingURL=cloudflare-kv.d.ts.map
@@ -8,4 +8,3 @@
8
8
  export { createCloudflareKVAdapter, type KVNamespace, } from './cloudflare-kv';
9
9
  export { clearMemoryCache, createMemoryCacheAdapter, getMemoryCacheSize, } from './memory';
10
10
  export { createUpstashRedisAdapter, createUpstashRedisAdapterFromClient, type UpstashRedisAdapterOptions, } from './upstash-redis';
11
- //# sourceMappingURL=index.d.ts.map
@@ -44,4 +44,3 @@ export declare function clearMemoryCache(): void;
44
44
  * @public
45
45
  */
46
46
  export declare function getMemoryCacheSize(): number;
47
- //# sourceMappingURL=memory.d.ts.map
@@ -72,4 +72,3 @@ export declare function createUpstashRedisAdapter(options: UpstashRedisAdapterOp
72
72
  * @public
73
73
  */
74
74
  export declare function createUpstashRedisAdapterFromClient(client: Redis): CacheAdapter;
75
- //# sourceMappingURL=upstash-redis.d.ts.map
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * @packageDocumentation
11
11
  */
12
- import type { GlobalVendorList } from '@c15t/schema/types';
12
+ import type { GlobalVendorList } from '../../../schema/dist-types/types.d';
13
13
  import type { CacheAdapter } from './types';
14
14
  /**
15
15
  * Options for creating a GVL resolver.
@@ -83,4 +83,3 @@ export interface GVLResolver {
83
83
  * @public
84
84
  */
85
85
  export declare function createGVLResolver(options: GVLResolverOptions): GVLResolver;
86
- //# sourceMappingURL=gvl-resolver.d.ts.map
@@ -10,4 +10,3 @@ export { createGVLResolver, type GVLResolver, type GVLResolverOptions, } from '.
10
10
  export { createCacheKey, createGVLCacheKey } from './keys';
11
11
  export type { CacheAdapter } from './types';
12
12
  export { GVL_TTL_MS, MEMORY_TTL_MS } from './types';
13
- //# sourceMappingURL=index.d.ts.map
@@ -48,4 +48,3 @@ export declare function createGVLCacheKey(appName: string, language: string, ven
48
48
  * @public
49
49
  */
50
50
  export declare function createCacheKey(appName: string, namespace: string, ...parts: (string | number)[]): string;
51
- //# sourceMappingURL=keys.d.ts.map
@@ -58,4 +58,3 @@ export declare const GVL_TTL_MS: number;
58
58
  * @public
59
59
  */
60
60
  export declare const MEMORY_TTL_MS: number;
61
- //# sourceMappingURL=types.d.ts.map
@@ -74,6 +74,13 @@ export interface C15TInstance {
74
74
  */
75
75
  export declare const c15tInstance: (options: C15TOptions) => C15TInstance;
76
76
  export { defineConfig } from './define-config';
77
+ export type { PolicyValidationResult } from './handlers/init/policy';
78
+ export { inspectPolicies } from './handlers/init/policy';
79
+ export type { PolicyBuilderInput } from './policies/builder';
80
+ export { policyBuilder } from './policies/builder';
81
+ export type { EuropePolicyMode, PolicyPackPresets, } from './policies/defaults';
82
+ export { policyPackPresets } from './policies/defaults';
83
+ export type { PolicyMatch } from './policies/matchers';
84
+ export { EEA_COUNTRY_CODES, EU_COUNTRY_CODES, POLICY_MATCH_DATASET_VERSION, policyMatchers, UK_COUNTRY_CODES, } from './policies/matchers';
77
85
  export type { C15TContext, C15TOptions } from './types';
78
86
  export { version } from './version';
79
- //# sourceMappingURL=core.d.ts.map
@@ -26,4 +26,3 @@ interface BaseOptions {
26
26
  */
27
27
  export declare function migrator(options: BaseOptions): Promise<MigrationResult | ORMResult>;
28
28
  export {};
29
- //# sourceMappingURL=index.d.ts.map
@@ -20,4 +20,3 @@ export declare function policyRegistry({ db, ctx }: Registry): {
20
20
  tenantId: string | null;
21
21
  }>;
22
22
  };
23
- //# sourceMappingURL=consent-policy.d.ts.map
@@ -8,4 +8,3 @@ export declare function consentPurposeRegistry({ db, ctx }: Registry): {
8
8
  tenantId: string | null;
9
9
  }>;
10
10
  };
11
- //# sourceMappingURL=consent-purpose.d.ts.map
@@ -15,4 +15,3 @@ export declare function domainRegistry({ db, ctx }: Registry): {
15
15
  tenantId: string | null;
16
16
  }>;
17
17
  };
18
- //# sourceMappingURL=domain.d.ts.map
@@ -1,5 +1,26 @@
1
1
  import type { Registry } from './types';
2
2
  export declare const createRegistry: (ctx: Registry) => {
3
+ findOrCreateRuntimePolicyDecision: (input: import("./runtime-policy-decision").RuntimePolicyDecisionInput) => Promise<{
4
+ id: string;
5
+ tenantId: string | null;
6
+ policyId: string;
7
+ fingerprint: string;
8
+ matchedBy: string;
9
+ countryCode: string | null;
10
+ regionCode: string | null;
11
+ jurisdiction: string;
12
+ language: string | null;
13
+ model: string;
14
+ policyI18n: unknown;
15
+ uiMode: string | null;
16
+ bannerUi: unknown;
17
+ dialogUi: unknown;
18
+ categories: unknown;
19
+ preselectedCategories: unknown;
20
+ proofConfig: unknown;
21
+ dedupeKey: string;
22
+ createdAt: Date;
23
+ }>;
3
24
  findDomainByName: (name: string) => Promise<{
4
25
  id: string;
5
26
  name: string;
@@ -23,7 +44,7 @@ export declare const createRegistry: (ctx: Registry) => {
23
44
  createdAt: Date;
24
45
  tenantId: string | null;
25
46
  } | null>;
26
- findOrCreatePolicy: (type: import("@c15t/schema").PolicyType) => Promise<{
47
+ findOrCreatePolicy: (type: import("../../../../schema/dist-types/index.d.ts").PolicyType) => Promise<{
27
48
  id: string;
28
49
  version: string;
29
50
  type: string;
@@ -53,4 +74,3 @@ export declare const createRegistry: (ctx: Registry) => {
53
74
  tenantId: string | null;
54
75
  }>;
55
76
  };
56
- //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,60 @@
1
+ import type { PolicyModel } from '../../types';
2
+ import type { Registry } from './types';
3
+ interface RuntimePolicyDecisionUiSurface {
4
+ allowedActions?: Array<'accept' | 'reject' | 'customize'>;
5
+ primaryAction?: 'accept' | 'reject' | 'customize';
6
+ layout?: Array<'accept' | 'reject' | 'customize' | Array<'accept' | 'reject' | 'customize'>>;
7
+ direction?: 'row' | 'column';
8
+ uiProfile?: 'balanced' | 'compact' | 'strict';
9
+ scrollLock?: boolean;
10
+ }
11
+ export interface RuntimePolicyDecisionInput {
12
+ tenantId?: string;
13
+ policyId: string;
14
+ fingerprint: string;
15
+ matchedBy: 'region' | 'country' | 'default';
16
+ countryCode: string | null;
17
+ regionCode: string | null;
18
+ jurisdiction: string;
19
+ language?: string;
20
+ model: PolicyModel;
21
+ policyI18n?: {
22
+ language?: string;
23
+ messageProfile?: string;
24
+ };
25
+ uiMode?: 'none' | 'banner' | 'dialog';
26
+ bannerUi?: RuntimePolicyDecisionUiSurface;
27
+ dialogUi?: RuntimePolicyDecisionUiSurface;
28
+ categories?: string[];
29
+ preselectedCategories?: string[];
30
+ proofConfig?: {
31
+ storeIp?: boolean;
32
+ storeUserAgent?: boolean;
33
+ storeLanguage?: boolean;
34
+ };
35
+ dedupeKey: string;
36
+ }
37
+ export declare function runtimePolicyDecisionRegistry({ db, ctx }: Registry): {
38
+ findOrCreateRuntimePolicyDecision: (input: RuntimePolicyDecisionInput) => Promise<{
39
+ id: string;
40
+ tenantId: string | null;
41
+ policyId: string;
42
+ fingerprint: string;
43
+ matchedBy: string;
44
+ countryCode: string | null;
45
+ regionCode: string | null;
46
+ jurisdiction: string;
47
+ language: string | null;
48
+ model: string;
49
+ policyI18n: unknown;
50
+ uiMode: string | null;
51
+ bannerUi: unknown;
52
+ dialogUi: unknown;
53
+ categories: unknown;
54
+ preselectedCategories: unknown;
55
+ proofConfig: unknown;
56
+ dedupeKey: string;
57
+ createdAt: Date;
58
+ }>;
59
+ };
60
+ export {};
@@ -28,4 +28,3 @@ export declare function subjectRegistry({ db, ctx }: Registry): {
28
28
  tenantId: string | null;
29
29
  }>;
30
30
  };
31
- //# sourceMappingURL=subject.d.ts.map
@@ -1,4 +1,4 @@
1
- import type { createLogger } from '@c15t/logger';
1
+ import type { createLogger } from '../../../../logger/dist-types/index.d.ts';
2
2
  import type { InferFumaDB } from 'fumadb';
3
3
  import type { LatestDB } from '../schema';
4
4
  export interface Registry {
@@ -7,4 +7,3 @@ export interface Registry {
7
7
  logger: ReturnType<typeof createLogger>;
8
8
  };
9
9
  }
10
- //# sourceMappingURL=types.d.ts.map
@@ -22,4 +22,3 @@ export declare function generateUniqueId(db: ReturnType<InferFumaDB<typeof Lates
22
22
  baseDelay?: number;
23
23
  }): Promise<string>;
24
24
  export {};
25
- //# sourceMappingURL=generate-id.d.ts.map
@@ -22,4 +22,3 @@ export declare function generateUniqueId(db: ReturnType<InferFumaDB<typeof Lates
22
22
  baseDelay?: number;
23
23
  }): Promise<string>;
24
24
  export {};
25
- //# sourceMappingURL=utils.d.ts.map
@@ -11,4 +11,3 @@ export declare const auditLogTable: import("fumadb/schema").Table<{
11
11
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
12
12
  eventTimezone: import("fumadb/schema").Column<"string", string | null, string>;
13
13
  }, {}>;
14
- //# sourceMappingURL=audit-log.d.ts.map
@@ -10,4 +10,3 @@ export declare const consentPolicyTable: import("fumadb/schema").Table<{
10
10
  isActive: import("fumadb/schema").Column<"bool", boolean | null, boolean>;
11
11
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
12
12
  }, {}>;
13
- //# sourceMappingURL=consent-policy.d.ts.map
@@ -10,4 +10,3 @@ export declare const consentPurposeTable: import("fumadb/schema").Table<{
10
10
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
11
11
  updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
12
12
  }, {}>;
13
- //# sourceMappingURL=consent-purpose.d.ts.map
@@ -6,4 +6,3 @@ export declare const consentRecordTable: import("fumadb/schema").Table<{
6
6
  details: import("fumadb/schema").Column<"json", unknown, unknown>;
7
7
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
8
8
  }, {}>;
9
- //# sourceMappingURL=consent-record.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type Consent, consentSchema } from '@c15t/schema';
1
+ import { type Consent, consentSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const consentTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  subjectId: import("fumadb/schema").Column<"string", string, string>;
@@ -15,4 +15,3 @@ export declare const consentTable: import("fumadb/schema").Table<{
15
15
  isActive: import("fumadb/schema").Column<"bool", boolean | null, boolean>;
16
16
  }, {}>;
17
17
  export { consentSchema, type Consent };
18
- //# sourceMappingURL=consent.d.ts.map
@@ -8,4 +8,3 @@ export declare const domainTable: import("fumadb/schema").Table<{
8
8
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
9
9
  updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
10
10
  }, {}>;
11
- //# sourceMappingURL=domain.d.ts.map
@@ -1472,4 +1472,3 @@ export declare const v1: import("fumadb/schema").Schema<"1.0.0", {
1472
1472
  }>>;
1473
1473
  }>;
1474
1474
  }>;
1475
- //# sourceMappingURL=index.d.ts.map
@@ -7,4 +7,3 @@ export declare const subjectTable: import("fumadb/schema").Table<{
7
7
  createdAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
8
8
  updatedAt: import("fumadb/schema").Column<"timestamp", Date | null, Date>;
9
9
  }, {}>;
10
- //# sourceMappingURL=subject.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type AuditLog, auditLogSchema } from '@c15t/schema';
1
+ import { type AuditLog, auditLogSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const auditLogTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  entityType: import("fumadb/schema").Column<"string", string, string>;
@@ -13,4 +13,3 @@ export declare const auditLogTable: import("fumadb/schema").Table<{
13
13
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
14
14
  }, {}>;
15
15
  export { auditLogSchema, type AuditLog };
16
- //# sourceMappingURL=audit-log.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type ConsentPolicy, consentPolicySchema, type PolicyType, policyTypeSchema } from '@c15t/schema';
1
+ import { type ConsentPolicy, consentPolicySchema, type PolicyType, policyTypeSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const consentPolicyTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  version: import("fumadb/schema").Column<"string", string, string>;
@@ -10,4 +10,3 @@ export declare const consentPolicyTable: import("fumadb/schema").Table<{
10
10
  }, {}>;
11
11
  export { consentPolicySchema, policyTypeSchema, type ConsentPolicy, type PolicyType, };
12
12
  export declare const PolicyTypeSchema: import("valibot").PicklistSchema<["cookie_banner", "privacy_policy", "dpa", "terms_and_conditions", "marketing_communications", "age_verification", "other"], undefined>;
13
- //# sourceMappingURL=consent-policy.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type ConsentPurpose, consentPurposeSchema } from '@c15t/schema';
1
+ import { type ConsentPurpose, consentPurposeSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const consentPurposeTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  code: import("fumadb/schema").Column<"string", string, string>;
@@ -7,4 +7,3 @@ export declare const consentPurposeTable: import("fumadb/schema").Table<{
7
7
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
8
8
  }, {}>;
9
9
  export { consentPurposeSchema, type ConsentPurpose };
10
- //# sourceMappingURL=consent-purpose.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type Consent, consentSchema } from '@c15t/schema';
1
+ import { type Consent, consentSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const consentTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  subjectId: import("fumadb/schema").Column<"string", string, string>;
@@ -20,7 +20,10 @@ export declare const consentTable: import("fumadb/schema").Table<{
20
20
  uiSource: import("fumadb/schema").Column<"string", string | null, string | null>;
21
21
  /** Derived consent action (e.g., 'accept_all', 'reject_all', 'opt_out', 'custom') */
22
22
  consentAction: import("fumadb/schema").Column<"string", string | null, string | null>;
23
+ /** Runtime policy decision reference used for this consent record. */
24
+ runtimePolicyDecisionId: import("fumadb/schema").Column<"string", string | null, string | null>;
25
+ /** Source of runtime policy decision evidence. */
26
+ runtimePolicySource: import("fumadb/schema").Column<"string", string | null, string | null>;
23
27
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
24
28
  }, {}>;
25
29
  export { consentSchema, type Consent };
26
- //# sourceMappingURL=consent.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type Domain, domainSchema } from '@c15t/schema';
1
+ import { type Domain, domainSchema } from '../../../../../schema/dist-types/index.d.ts';
2
2
  export declare const domainTable: import("fumadb/schema").Table<{
3
3
  id: import("fumadb/schema").IdColumn<"varchar(255)", string, string>;
4
4
  name: import("fumadb/schema").Column<"string", string, string>;
@@ -7,4 +7,3 @@ export declare const domainTable: import("fumadb/schema").Table<{
7
7
  tenantId: import("fumadb/schema").Column<"string", string | null, string | null>;
8
8
  }, {}>;
9
9
  export { domainSchema, type Domain };
10
- //# sourceMappingURL=domain.d.ts.map