@cosmicdrift/kumiko-framework 0.368.0 → 0.370.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (453) hide show
  1. package/AGENTS.md +14 -1
  2. package/agents/examples/apex-surface-auth.md +2 -1
  3. package/agents/examples/app-config.md +98 -0
  4. package/agents/examples/auth-mfa.md +72 -0
  5. package/agents/examples/compose-stacks.md +188 -0
  6. package/agents/examples/env-composition.md +268 -0
  7. package/agents/examples/host-routing.md +181 -0
  8. package/agents/examples/legal-pages.md +52 -3
  9. package/agents/examples/managed-config.md +1 -0
  10. package/agents/examples/managed-pages.md +1 -0
  11. package/agents/examples/prod-boot-options.md +180 -0
  12. package/agents/examples/relations.md +4 -0
  13. package/agents/examples/secrets-demo.md +4 -2
  14. package/agents/examples/security-baseline.md +20 -17
  15. package/agents/examples.md +6 -1
  16. package/agents/features.md +17 -5
  17. package/dist/api/anonymous-cookie.d.ts +1 -1
  18. package/dist/api/anonymous-live-entities.d.ts +1 -1
  19. package/dist/api/auth-middleware.d.ts +2 -2
  20. package/dist/api/auth-routes.d.ts +7 -7
  21. package/dist/api/extra-route.d.ts +2 -2
  22. package/dist/api/index.d.ts +37 -37
  23. package/dist/api/jwt.d.ts +1 -1
  24. package/dist/api/observability-middleware.d.ts +1 -1
  25. package/dist/api/readiness.d.ts +1 -1
  26. package/dist/api/redis-sse-broker.d.ts +2 -2
  27. package/dist/api/request-context.d.ts +1 -1
  28. package/dist/api/request-id-middleware.d.ts +3 -3
  29. package/dist/api/route-registrars.d.ts +4 -4
  30. package/dist/api/routes.d.ts +1 -1
  31. package/dist/api/server.d.ts +16 -16
  32. package/dist/api/sse-broker.d.ts +1 -1
  33. package/dist/api/sse-route.d.ts +1 -1
  34. package/dist/api/websocket-route.d.ts +3 -3
  35. package/dist/auth/index.d.ts +2 -2
  36. package/dist/compliance/duration-spec.d.ts +2 -2
  37. package/dist/compliance/index.d.ts +6 -6
  38. package/dist/compliance/profiles.d.ts +1 -1
  39. package/dist/config/index.d.ts +44 -0
  40. package/dist/config/index.js +61 -0
  41. package/dist/crypto/blind-index.d.ts +1 -1
  42. package/dist/crypto/event-pii.d.ts +1 -1
  43. package/dist/crypto/in-memory-kms-adapter.d.ts +1 -1
  44. package/dist/crypto/index.d.ts +11 -11
  45. package/dist/crypto/is-self-pii-field.d.ts +1 -1
  46. package/dist/crypto/kms-wiring.d.ts +2 -2
  47. package/dist/crypto/owner-transition-rekey.d.ts +1 -1
  48. package/dist/crypto/pg-kms-adapter.d.ts +1 -1
  49. package/dist/crypto/pii-field-encryption.d.ts +4 -4
  50. package/dist/crypto/request-kms-cache.d.ts +1 -1
  51. package/dist/crypto/subject-resolver.d.ts +3 -3
  52. package/dist/db/apply-entity-event.d.ts +4 -4
  53. package/dist/db/assert-exists-in.d.ts +4 -4
  54. package/dist/db/blind-index-cleanup.d.ts +2 -2
  55. package/dist/db/collect-table-metas.d.ts +2 -2
  56. package/dist/db/compound-types.d.ts +1 -1
  57. package/dist/db/config-seed.d.ts +5 -5
  58. package/dist/db/connection.d.ts +1 -6
  59. package/dist/db/connection.js +15 -4
  60. package/dist/db/dialect.d.ts +1 -1
  61. package/dist/db/eagerload.d.ts +3 -3
  62. package/dist/db/entity-field-encryption.d.ts +3 -3
  63. package/dist/db/entity-field-encryption.js +3 -1
  64. package/dist/db/entity-table-from-registry.d.ts +3 -3
  65. package/dist/db/entity-table-meta.d.ts +3 -3
  66. package/dist/db/event-store-executor-context.d.ts +9 -9
  67. package/dist/db/event-store-executor-read.d.ts +2 -2
  68. package/dist/db/event-store-executor-write.d.ts +2 -2
  69. package/dist/db/event-store-executor.d.ts +8 -8
  70. package/dist/db/feature-table-sources.d.ts +1 -1
  71. package/dist/db/index.d.ts +39 -39
  72. package/dist/db/located-timestamp.d.ts +1 -1
  73. package/dist/db/lock-guard.d.ts +2 -2
  74. package/dist/db/migrate-generator.d.ts +2 -2
  75. package/dist/db/migrate-runner.d.ts +1 -1
  76. package/dist/db/money.d.ts +1 -1
  77. package/dist/db/parent-ref-clause.d.ts +4 -4
  78. package/dist/db/projection-registry-binding.d.ts +1 -1
  79. package/dist/db/queries/advisory-lock.d.ts +1 -1
  80. package/dist/db/queries/backfill-pii.d.ts +2 -2
  81. package/dist/db/queries/ddl.d.ts +1 -1
  82. package/dist/db/queries/entity-read.d.ts +1 -1
  83. package/dist/db/queries/es-ops.d.ts +1 -1
  84. package/dist/db/queries/event-consumer.d.ts +2 -2
  85. package/dist/db/queries/event-store-admin.d.ts +1 -1
  86. package/dist/db/queries/event-store-transfer.d.ts +1 -1
  87. package/dist/db/queries/event-store.d.ts +1 -1
  88. package/dist/db/queries/pii-backfill-state.d.ts +1 -1
  89. package/dist/db/queries/projection-rebuild.d.ts +1 -1
  90. package/dist/db/queries/raw-sql.d.ts +1 -1
  91. package/dist/db/queries/seed-context.d.ts +2 -2
  92. package/dist/db/queries/shadow-swap.d.ts +3 -3
  93. package/dist/db/queries/table-ops.d.ts +1 -1
  94. package/dist/db/queries/test-stack.d.ts +2 -2
  95. package/dist/db/query.d.ts +3 -3
  96. package/dist/db/rebuild-marker.d.ts +1 -1
  97. package/dist/db/reference-data.d.ts +3 -3
  98. package/dist/db/render-ddl.d.ts +1 -1
  99. package/dist/db/replay-migration-sql.d.ts +1 -1
  100. package/dist/db/retired-framework-tables.d.ts +1 -1
  101. package/dist/db/schema-inspection.d.ts +1 -1
  102. package/dist/db/table-builder.d.ts +4 -4
  103. package/dist/db/table-push.d.ts +3 -3
  104. package/dist/db/tenant-db-runner.d.ts +2 -2
  105. package/dist/db/tenant-db.d.ts +7 -9
  106. package/dist/db/tenant-db.js +2 -12
  107. package/dist/derivatives/derivatives-context.d.ts +3 -3
  108. package/dist/derivatives/field-variants.d.ts +1 -1
  109. package/dist/derivatives/index.d.ts +6 -6
  110. package/dist/engine/access.d.ts +1 -1
  111. package/dist/engine/active-membership.d.ts +2 -2
  112. package/dist/engine/boot-validator/access-declarations.d.ts +1 -1
  113. package/dist/engine/boot-validator/access-roles.d.ts +1 -1
  114. package/dist/engine/boot-validator/action-wiring.d.ts +1 -1
  115. package/dist/engine/boot-validator/api-ext.d.ts +1 -1
  116. package/dist/engine/boot-validator/boot-check.d.ts +1 -1
  117. package/dist/engine/boot-validator/card-meta-overflow.d.ts +1 -1
  118. package/dist/engine/boot-validator/config-deps.d.ts +1 -1
  119. package/dist/engine/boot-validator/detail-screens.d.ts +2 -2
  120. package/dist/engine/boot-validator/entity-handler.d.ts +1 -1
  121. package/dist/engine/boot-validator/entity-list-screens.d.ts +1 -1
  122. package/dist/engine/boot-validator/gdpr-storage.d.ts +1 -1
  123. package/dist/engine/boot-validator/global-tenancy.d.ts +1 -1
  124. package/dist/engine/boot-validator/handler-field-references.d.ts +1 -1
  125. package/dist/engine/boot-validator/i18n-keys.d.ts +1 -1
  126. package/dist/engine/boot-validator/index.d.ts +7 -7
  127. package/dist/engine/boot-validator/nav.d.ts +1 -1
  128. package/dist/engine/boot-validator/ownership.d.ts +2 -2
  129. package/dist/engine/boot-validator/parent-ref.d.ts +1 -1
  130. package/dist/engine/boot-validator/pii-retention.d.ts +2 -2
  131. package/dist/engine/boot-validator/projection-list-screens.d.ts +1 -1
  132. package/dist/engine/boot-validator/query-output-columns.d.ts +1 -1
  133. package/dist/engine/boot-validator/query-refs.d.ts +1 -1
  134. package/dist/engine/boot-validator/record-owned.d.ts +1 -1
  135. package/dist/engine/boot-validator/screens.d.ts +2 -2
  136. package/dist/engine/boot-validator/screens.js +29 -0
  137. package/dist/engine/boot-validator/security-baseline.d.ts +1 -1
  138. package/dist/engine/boot-validator/selector-owner-panels.d.ts +1 -1
  139. package/dist/engine/boot-validator/transfer-graph.d.ts +2 -2
  140. package/dist/engine/boot-validator/url-prefill-fields.d.ts +1 -1
  141. package/dist/engine/boot-validator/workspaces.d.ts +1 -1
  142. package/dist/engine/boot-validator.d.ts +1 -1
  143. package/dist/engine/bridge-stub.d.ts +1 -1
  144. package/dist/engine/build-app-schema.d.ts +2 -2
  145. package/dist/engine/build-config-feature-schema.d.ts +5 -5
  146. package/dist/engine/build-config-feature-schema.js +197 -65
  147. package/dist/engine/build-target.d.ts +2 -2
  148. package/dist/engine/changeset-changes.d.ts +1 -1
  149. package/dist/engine/codemod/index.d.ts +2 -2
  150. package/dist/engine/config-helpers.d.ts +1 -1
  151. package/dist/engine/constants.d.ts +1 -1
  152. package/dist/engine/create-app.d.ts +2 -2
  153. package/dist/engine/cross-tenant.d.ts +2 -2
  154. package/dist/engine/dedupe-features.d.ts +1 -1
  155. package/dist/engine/define-feature.d.ts +1 -1
  156. package/dist/engine/define-feature.js +2 -2
  157. package/dist/engine/define-handler.d.ts +4 -4
  158. package/dist/engine/define-step.d.ts +1 -1
  159. package/dist/engine/define-workflow.d.ts +2 -2
  160. package/dist/engine/effective-features.d.ts +1 -1
  161. package/dist/engine/embedded-derived.d.ts +1 -1
  162. package/dist/engine/entity-handlers.d.ts +6 -5
  163. package/dist/engine/entity-handlers.js +6 -3
  164. package/dist/engine/event-def.d.ts +15 -0
  165. package/dist/engine/event-def.js +123 -0
  166. package/dist/engine/event-helpers.d.ts +1 -1
  167. package/dist/engine/extension-names.d.ts +8 -8
  168. package/dist/engine/extension-selector-plugins.d.ts +4 -1
  169. package/dist/engine/extension-selector-plugins.js +14 -0
  170. package/dist/engine/extensions/escape-hatch-usage.d.ts +1 -1
  171. package/dist/engine/extensions/storage-provider.d.ts +1 -1
  172. package/dist/engine/extensions/tenant-data.d.ts +3 -3
  173. package/dist/engine/extensions/tenant-resource.d.ts +2 -2
  174. package/dist/engine/extensions/user-data.d.ts +2 -2
  175. package/dist/engine/factories.d.ts +1 -1
  176. package/dist/engine/feature-ast/extractors/ai-steps.d.ts +2 -2
  177. package/dist/engine/feature-ast/extractors/events.d.ts +2 -2
  178. package/dist/engine/feature-ast/extractors/handlers.d.ts +4 -4
  179. package/dist/engine/feature-ast/extractors/hooks.d.ts +5 -5
  180. package/dist/engine/feature-ast/extractors/index.d.ts +14 -14
  181. package/dist/engine/feature-ast/extractors/jobs-routes.d.ts +3 -3
  182. package/dist/engine/feature-ast/extractors/projections-screens.d.ts +3 -3
  183. package/dist/engine/feature-ast/extractors/round1.d.ts +2 -2
  184. package/dist/engine/feature-ast/extractors/round2.d.ts +2 -2
  185. package/dist/engine/feature-ast/extractors/round3.d.ts +4 -4
  186. package/dist/engine/feature-ast/extractors/round5.d.ts +2 -2
  187. package/dist/engine/feature-ast/extractors/round6.d.ts +2 -2
  188. package/dist/engine/feature-ast/extractors/shared.d.ts +2 -2
  189. package/dist/engine/feature-ast/index.d.ts +16 -16
  190. package/dist/engine/feature-ast/parse.d.ts +2 -2
  191. package/dist/engine/feature-ast/patch.d.ts +1 -1
  192. package/dist/engine/feature-ast/patcher.d.ts +15 -15
  193. package/dist/engine/feature-ast/pattern-change-schema.d.ts +10 -10
  194. package/dist/engine/feature-ast/patterns.d.ts +15 -15
  195. package/dist/engine/feature-ast/render.d.ts +1 -1
  196. package/dist/engine/feature-builder-state.d.ts +5 -5
  197. package/dist/engine/feature-config-events-jobs.d.ts +5 -3
  198. package/dist/engine/feature-config-events-jobs.js +9 -130
  199. package/dist/engine/feature-entity-handlers.d.ts +4 -4
  200. package/dist/engine/feature-entity-handlers.js +11 -5
  201. package/dist/engine/feature-manifest.d.ts +1 -1
  202. package/dist/engine/feature-ui-extensions.d.ts +7 -7
  203. package/dist/engine/feature-ui-extensions.js +2 -2
  204. package/dist/engine/field-access.d.ts +1 -1
  205. package/dist/engine/field-helpers.d.ts +1 -1
  206. package/dist/engine/handler-helpers.d.ts +1 -1
  207. package/dist/engine/index.d.ts +89 -88
  208. package/dist/engine/index.js +1 -0
  209. package/dist/engine/instruction-fields.d.ts +1 -1
  210. package/dist/engine/object-form.d.ts +1 -1
  211. package/dist/engine/object-form.js +5 -6
  212. package/dist/engine/ownership.d.ts +3 -3
  213. package/dist/engine/pattern-library/index.d.ts +2 -2
  214. package/dist/engine/pattern-library/library.d.ts +2 -2
  215. package/dist/engine/pattern-library/mixed-schemas.d.ts +1 -1
  216. package/dist/engine/pattern-library/opaque-schemas.d.ts +1 -1
  217. package/dist/engine/pattern-library/shared-fields.d.ts +1 -1
  218. package/dist/engine/pattern-library/static-schemas.d.ts +1 -1
  219. package/dist/engine/pattern-library/types.d.ts +1 -1
  220. package/dist/engine/personal-data-fields.d.ts +2 -2
  221. package/dist/engine/pipeline.d.ts +2 -2
  222. package/dist/engine/project-app-schema-for-roles.d.ts +1 -1
  223. package/dist/engine/projection-helpers.d.ts +4 -4
  224. package/dist/engine/read-claim.d.ts +1 -1
  225. package/dist/engine/registry-facade.d.ts +2 -2
  226. package/dist/engine/registry-ingest.d.ts +2 -2
  227. package/dist/engine/registry-state.d.ts +2 -2
  228. package/dist/engine/registry-validate.d.ts +3 -3
  229. package/dist/engine/registry.d.ts +1 -1
  230. package/dist/engine/resolve-config-or-param.d.ts +2 -2
  231. package/dist/engine/role-assignment.d.ts +1 -1
  232. package/dist/engine/run-in.d.ts +1 -1
  233. package/dist/engine/run-pipeline.d.ts +3 -3
  234. package/dist/engine/schema-builder.d.ts +1 -1
  235. package/dist/engine/screen-filter-ops.d.ts +1 -1
  236. package/dist/engine/screen-helpers.d.ts +2 -2
  237. package/dist/engine/soft-delete-cleanup.d.ts +2 -2
  238. package/dist/engine/steps/_event-match.d.ts +1 -1
  239. package/dist/engine/steps/_no-return-guard.d.ts +1 -1
  240. package/dist/engine/steps/_read-source.d.ts +4 -4
  241. package/dist/engine/steps/_resolver-utils.d.ts +1 -1
  242. package/dist/engine/steps/aggregate-append-event.d.ts +1 -1
  243. package/dist/engine/steps/aggregate-create.d.ts +2 -2
  244. package/dist/engine/steps/aggregate-update.d.ts +3 -3
  245. package/dist/engine/steps/branch.d.ts +1 -1
  246. package/dist/engine/steps/call-feature.d.ts +2 -2
  247. package/dist/engine/steps/compute.d.ts +1 -1
  248. package/dist/engine/steps/for-each.d.ts +1 -1
  249. package/dist/engine/steps/mail-send.d.ts +1 -1
  250. package/dist/engine/steps/read-find-many.d.ts +2 -2
  251. package/dist/engine/steps/read-find-one.d.ts +2 -2
  252. package/dist/engine/steps/retry.d.ts +1 -1
  253. package/dist/engine/steps/return.d.ts +2 -2
  254. package/dist/engine/steps/unsafe-projection-delete.d.ts +2 -2
  255. package/dist/engine/steps/unsafe-projection-upsert.d.ts +1 -1
  256. package/dist/engine/steps/wait-for-event.d.ts +1 -1
  257. package/dist/engine/steps/wait.d.ts +1 -1
  258. package/dist/engine/steps/webhook-send.d.ts +1 -1
  259. package/dist/engine/strip-disabled-features-from-app-schema.d.ts +4 -4
  260. package/dist/engine/system-user.d.ts +2 -2
  261. package/dist/engine/template-variables.d.ts +1 -1
  262. package/dist/engine/tier-resolver-extension.d.ts +4 -4
  263. package/dist/engine/transfer-adjacency.d.ts +1 -1
  264. package/dist/engine/types/index.d.ts +6 -6
  265. package/dist/engine/validate-projection-allowlist.d.ts +1 -1
  266. package/dist/engine/validation.d.ts +1 -1
  267. package/dist/entrypoint/index.d.ts +12 -12
  268. package/dist/env/dry-run.d.ts +14 -1
  269. package/dist/env/dry-run.js +50 -0
  270. package/dist/env/index.d.ts +54 -16
  271. package/dist/env/index.js +60 -6
  272. package/dist/errors/classes.d.ts +3 -3
  273. package/dist/errors/docs-url.d.ts +1 -1
  274. package/dist/errors/index.d.ts +18 -18
  275. package/dist/errors/member-resolution.d.ts +1 -1
  276. package/dist/errors/serialize.d.ts +2 -2
  277. package/dist/errors/subject-erased.d.ts +1 -1
  278. package/dist/errors/to-kumiko-error.d.ts +1 -1
  279. package/dist/errors/write-error-info.d.ts +1 -1
  280. package/dist/errors/zod-bridge.d.ts +1 -1
  281. package/dist/es-ops/context.d.ts +4 -4
  282. package/dist/es-ops/index.d.ts +4 -4
  283. package/dist/es-ops/operations-schema.d.ts +1 -1
  284. package/dist/es-ops/runner.d.ts +3 -3
  285. package/dist/es-ops/runner.js +9 -1
  286. package/dist/es-ops/types.d.ts +2 -2
  287. package/dist/event-store/admin-api.d.ts +3 -3
  288. package/dist/event-store/archive.d.ts +2 -2
  289. package/dist/event-store/event-store.d.ts +2 -2
  290. package/dist/event-store/events-schema.d.ts +1 -1
  291. package/dist/event-store/index.d.ts +15 -15
  292. package/dist/event-store/provenance-append.d.ts +3 -3
  293. package/dist/event-store/rebuild-dead-letter.d.ts +2 -2
  294. package/dist/event-store/row-to-stored-event.d.ts +2 -2
  295. package/dist/event-store/snapshot.d.ts +2 -2
  296. package/dist/event-store/tenant-db-append.d.ts +2 -2
  297. package/dist/event-store/transfer.d.ts +3 -3
  298. package/dist/event-store/upcaster-dead-letter.d.ts +2 -2
  299. package/dist/event-store/upcaster.d.ts +3 -3
  300. package/dist/files/assert-file-refs-belong-to-tenant.d.ts +2 -2
  301. package/dist/files/bind-pending-file-refs.d.ts +3 -3
  302. package/dist/files/create-file-ref-from-bytes.d.ts +4 -4
  303. package/dist/files/create-file-ref.d.ts +3 -3
  304. package/dist/files/dispose-removed-file-refs.d.ts +2 -2
  305. package/dist/files/feature.d.ts +3 -3
  306. package/dist/files/file-handle.d.ts +1 -1
  307. package/dist/files/file-ref-entity.d.ts +1 -1
  308. package/dist/files/file-ref-table.d.ts +1 -1
  309. package/dist/files/file-routes.d.ts +5 -5
  310. package/dist/files/in-memory-provider.d.ts +1 -1
  311. package/dist/files/index.d.ts +20 -20
  312. package/dist/files/load-save-file-refs.d.ts +2 -2
  313. package/dist/files/local-provider.d.ts +1 -1
  314. package/dist/files/provider-resolver.d.ts +5 -5
  315. package/dist/files/purge-expired-file-ref-bytes.d.ts +2 -2
  316. package/dist/files/record-read-check.d.ts +1 -1
  317. package/dist/files/record-write-check.d.ts +3 -3
  318. package/dist/files/storage-tracking.d.ts +2 -2
  319. package/dist/files/types.d.ts +1 -1
  320. package/dist/files/zip-stream.d.ts +1 -1
  321. package/dist/i18n/index.d.ts +4 -4
  322. package/dist/i18n/mail-registry.d.ts +1 -1
  323. package/dist/i18n/required-surface-keys.d.ts +1 -1
  324. package/dist/i18n/settings-hub-keys.d.ts +1 -1
  325. package/dist/i18n/settings-hub-keys.js +1 -2
  326. package/dist/internal/stack-support.d.ts +12 -12
  327. package/dist/internal/testing.d.ts +4 -4
  328. package/dist/jobs/index.d.ts +2 -2
  329. package/dist/jobs/job-runner.d.ts +1 -1
  330. package/dist/jobs/max-per-tenant.d.ts +1 -1
  331. package/dist/lifecycle/index.d.ts +2 -2
  332. package/dist/lifecycle/lifecycle.d.ts +1 -1
  333. package/dist/lifecycle/signal-handlers.d.ts +1 -1
  334. package/dist/logging/index.d.ts +4 -4
  335. package/dist/logging/pino-logger.d.ts +1 -1
  336. package/dist/logging/utils.d.ts +1 -1
  337. package/dist/migrations/index.d.ts +4 -4
  338. package/dist/migrations/kumiko-drift.d.ts +1 -1
  339. package/dist/migrations/pending-rebuilds.d.ts +5 -5
  340. package/dist/migrations/pii-event-backfill.d.ts +4 -4
  341. package/dist/migrations/projection-table-index.d.ts +1 -1
  342. package/dist/observability/console-provider.d.ts +1 -1
  343. package/dist/observability/context.d.ts +1 -1
  344. package/dist/observability/escape-hatch-report.d.ts +3 -3
  345. package/dist/observability/fallback.d.ts +1 -1
  346. package/dist/observability/index.d.ts +16 -16
  347. package/dist/observability/metric-validator.d.ts +1 -1
  348. package/dist/observability/metrics-handle.d.ts +1 -1
  349. package/dist/observability/metrics-wiring.d.ts +2 -2
  350. package/dist/observability/noop-provider.d.ts +1 -1
  351. package/dist/observability/prometheus-meter.d.ts +1 -1
  352. package/dist/observability/recording-meter.d.ts +1 -1
  353. package/dist/observability/recording-tracer.d.ts +1 -1
  354. package/dist/observability/redis-wrapper.d.ts +1 -1
  355. package/dist/observability/sensitive-filter.d.ts +1 -1
  356. package/dist/observability/standard-metrics.d.ts +1 -1
  357. package/dist/pipeline/active-membership.d.ts +4 -4
  358. package/dist/pipeline/append-event-core.d.ts +3 -3
  359. package/dist/pipeline/auth-claims-resolver.d.ts +2 -2
  360. package/dist/pipeline/cascade-handler.d.ts +3 -3
  361. package/dist/pipeline/dispatch-batch.d.ts +2 -2
  362. package/dist/pipeline/dispatch-query.d.ts +4 -4
  363. package/dist/pipeline/dispatch-shared.d.ts +17 -17
  364. package/dist/pipeline/dispatch-stream.d.ts +2 -2
  365. package/dist/pipeline/dispatch-write.d.ts +4 -4
  366. package/dist/pipeline/dispatcher-utils.d.ts +2 -2
  367. package/dist/pipeline/dispatcher.d.ts +12 -12
  368. package/dist/pipeline/event-consumer-state.d.ts +1 -1
  369. package/dist/pipeline/event-dispatcher-admin.d.ts +1 -1
  370. package/dist/pipeline/event-dispatcher-delivery.d.ts +7 -7
  371. package/dist/pipeline/event-dispatcher.d.ts +7 -7
  372. package/dist/pipeline/event-retention.d.ts +1 -1
  373. package/dist/pipeline/handler-access-error.d.ts +2 -2
  374. package/dist/pipeline/index.d.ts +42 -42
  375. package/dist/pipeline/irreversible-operation-gate.d.ts +1 -1
  376. package/dist/pipeline/lifecycle-pipeline.d.ts +2 -2
  377. package/dist/pipeline/member-read-only-transaction.d.ts +2 -2
  378. package/dist/pipeline/member-reader.d.ts +5 -5
  379. package/dist/pipeline/msp-rebuild.d.ts +4 -4
  380. package/dist/pipeline/multi-stream-apply-context.d.ts +3 -3
  381. package/dist/pipeline/notify-scope.d.ts +3 -3
  382. package/dist/pipeline/pending-gap-ranges.d.ts +2 -2
  383. package/dist/pipeline/pre-handler-gates.d.ts +3 -3
  384. package/dist/pipeline/pre-transaction-reservations.d.ts +4 -4
  385. package/dist/pipeline/projection-rebuild.d.ts +3 -3
  386. package/dist/pipeline/projection-state.d.ts +1 -1
  387. package/dist/pipeline/projections-runner.d.ts +3 -3
  388. package/dist/pipeline/projections-runner.js +3 -4
  389. package/dist/pipeline/system-hooks.d.ts +4 -4
  390. package/dist/pipeline/system-identity-switch.d.ts +3 -3
  391. package/dist/pipeline/tenant-timezone-cache.d.ts +1 -1
  392. package/dist/pipeline/write-origin.d.ts +3 -3
  393. package/dist/pipeline/write-result-masking.d.ts +2 -2
  394. package/dist/random/index.d.ts +2 -2
  395. package/dist/rate-limit/bucket.d.ts +1 -1
  396. package/dist/rate-limit/index.d.ts +3 -3
  397. package/dist/rate-limit/middleware.d.ts +3 -3
  398. package/dist/redis/cache-sync-bus.d.ts +2 -2
  399. package/dist/redis/cache-sync-topics.d.ts +1 -1
  400. package/dist/redis/index.d.ts +8 -8
  401. package/dist/redis/pubsub-signal.d.ts +1 -1
  402. package/dist/schema-cli.d.ts +1 -1
  403. package/dist/schema-cli.js +9 -1
  404. package/dist/search/derive-search-adapter-config.d.ts +2 -2
  405. package/dist/search/in-memory-adapter.d.ts +1 -1
  406. package/dist/search/index.d.ts +6 -6
  407. package/dist/search/meilisearch-adapter.d.ts +2 -2
  408. package/dist/search/purge-subject.d.ts +4 -4
  409. package/dist/search/reindex-entity.d.ts +3 -3
  410. package/dist/secrets/dek-cache.d.ts +1 -1
  411. package/dist/secrets/env-master-key-provider.d.ts +1 -1
  412. package/dist/secrets/env-master-key-provider.js +26 -11
  413. package/dist/secrets/envelope-cipher.d.ts +2 -2
  414. package/dist/secrets/envelope.d.ts +1 -1
  415. package/dist/secrets/index.d.ts +9 -9
  416. package/dist/secrets/rotation.d.ts +1 -1
  417. package/dist/secrets/stored-envelope.d.ts +1 -1
  418. package/dist/seeding/entity-seed.d.ts +1 -1
  419. package/dist/seeding/index.d.ts +3 -3
  420. package/dist/seeding/seed-users.d.ts +1 -1
  421. package/dist/time/index.d.ts +6 -6
  422. package/dist/ui-types/app-schema.d.ts +5 -5
  423. package/dist/ui-types/index.d.ts +23 -23
  424. package/dist/upgrade-cli.js +18 -6
  425. package/dist/utils/index.d.ts +9 -9
  426. package/package.json +19 -66
  427. package/presets/biome-app.json +80 -0
  428. package/presets/tsconfig.app.json +19 -0
  429. package/src/changes.json +84 -2
  430. package/src/scripts/codemod/README.md +18 -0
  431. package/src/scripts/codemod/codemod-support.ts +1 -1
  432. package/src/scripts/codemod/db-factory.ts +1 -1
  433. package/src/scripts/codemod/feature-factory.ts +1 -1
  434. package/src/scripts/codemod/import-extensions.ts +118 -0
  435. package/src/scripts/codemod/migrate-cross-tenant.ts +2 -2
  436. package/src/scripts/codemod/migrate-db-raw.ts +1 -1
  437. package/src/scripts/codemod/migrate-open-to-all.ts +1 -1
  438. package/src/scripts/codemod/object-form.ts +1 -1
  439. package/src/scripts/codemod/s3-imports.ts +1 -1
  440. package/src/scripts/codemod/tenant-db-options.ts +1 -1
  441. package/src/scripts/codemod/testing-move.ts +2 -2
  442. package/dist/db/bun-db-deprecated.d.ts +0 -10
  443. package/dist/db/bun-db-deprecated.js +0 -5
  444. package/dist/stack/index.d.ts +0 -10
  445. package/dist/stack/index.js +0 -11
  446. package/dist/testing/e2e-generator.d.ts +0 -5
  447. package/dist/testing/e2e-generator.js +0 -5
  448. package/dist/testing/handler-context.d.ts +0 -5
  449. package/dist/testing/handler-context.js +0 -5
  450. package/dist/testing/index.d.ts +0 -10
  451. package/dist/testing/index.js +0 -10
  452. package/dist/testing/real-providers.d.ts +0 -5
  453. package/dist/testing/real-providers.js +0 -5
@@ -4,13 +4,13 @@ import { readPositiveIntEnv } from "../utils/env-parse.js";
4
4
  // so a plain end() (no timeout = wait for queries to finish) hangs forever —
5
5
  // close() must always bound how long shutdown waits.
6
6
  export const DEFAULT_DB_CLOSE_TIMEOUT_SECONDS = 5;
7
- export function createDbConnection(urlOrOptions, legacyOptions = {}) {
8
- const { url, ...options } = typeof urlOrOptions === "string" ? { ...legacyOptions, url: urlOrOptions } : urlOrOptions;
7
+ export function createDbConnection({ url, ...options }) {
9
8
  const pgOptions = {};
10
9
  if (options.maxConnections !== undefined)
11
10
  pgOptions.max = options.maxConnections;
12
- if (options.idleTimeoutSeconds !== undefined)
11
+ if (options.idleTimeoutSeconds !== undefined) {
13
12
  pgOptions.idle_timeout = options.idleTimeoutSeconds;
13
+ }
14
14
  if (options.connectTimeoutSeconds !== undefined) {
15
15
  pgOptions.connect_timeout = options.connectTimeoutSeconds;
16
16
  }
@@ -22,10 +22,21 @@ export function createDbConnection(urlOrOptions, legacyOptions = {}) {
22
22
  return {
23
23
  db: client,
24
24
  client,
25
- close: () => client.end({ timeout: options.closeTimeoutSeconds ?? DEFAULT_DB_CLOSE_TIMEOUT_SECONDS }),
25
+ close: () => client.end({
26
+ timeout: options.closeTimeoutSeconds ?? DEFAULT_DB_CLOSE_TIMEOUT_SECONDS,
27
+ }),
26
28
  };
27
29
  }
30
+ // DB_PROVIDER=bun selected the removed Bun.SQL driver; ignoring it would boot
31
+ // postgres-js under a config that still claims Bun.SQL.
32
+ function assertNoRemovedDbProvider(env) {
33
+ const provider = env["DB_PROVIDER"];
34
+ if (provider !== undefined && provider !== "" && provider !== "postgres") {
35
+ throw new Error(`DB_PROVIDER="${provider}" is no longer supported: postgres-js is the only driver. Remove DB_PROVIDER from the environment.`);
36
+ }
37
+ }
28
38
  export function dbConnectionOptionsFromEnv(env = process.env) {
39
+ assertNoRemovedDbProvider(env);
29
40
  const opts = {};
30
41
  const max = readPositiveIntEnv(env, "DATABASE_POOL_MAX");
31
42
  const idle = readPositiveIntEnv(env, "DATABASE_POOL_IDLE_TIMEOUT");
@@ -1,6 +1,6 @@
1
1
  import { type ColumnHandle, type SchemaTable } from "@cosmicdrift/kumiko-types/schema-table-types";
2
2
  import { Temporal } from "@cosmicdrift/kumiko-types/temporal";
3
- import type { PgType } from "./entity-table-meta.js";
3
+ import type { PgType } from "./entity-table-meta.ts";
4
4
  export type { ColumnHandle, SchemaTable } from "@cosmicdrift/kumiko-types/schema-table-types";
5
5
  export type TableColumns<_T = any> = SchemaTable;
6
6
  export type SelectQuery = any;
@@ -1,6 +1,6 @@
1
- import type { EntityDefinition, SessionUser } from "../engine/types/index.js";
2
- import { type ParentVisibilityOption } from "./parent-ref-clause.js";
3
- import type { TenantDb } from "./tenant-db.js";
1
+ import type { EntityDefinition, SessionUser } from "../engine/types/index.ts";
2
+ import { type ParentVisibilityOption } from "./parent-ref-clause.ts";
3
+ import type { TenantDb } from "./tenant-db.ts";
4
4
  export type EagerLoadEntityResolver = (entityName: string) => EntityDefinition | undefined;
5
5
  export type EagerloadedRow<T extends Record<string, unknown> = Record<string, unknown>> = T & {
6
6
  readonly _refs?: Readonly<Record<string, Record<string, unknown> | ReadonlyArray<Record<string, unknown>> | undefined>>;
@@ -1,6 +1,6 @@
1
- import type { EntityDefinition } from "../engine/types/index.js";
2
- import { type Logger } from "../logging/index.js";
3
- import type { EnvelopeCipher } from "../secrets/envelope-cipher.js";
1
+ import type { EntityDefinition } from "../engine/types/index.ts";
2
+ import { type Logger } from "../logging/index.ts";
3
+ import type { EnvelopeCipher } from "../secrets/envelope-cipher.ts";
4
4
  export declare function collectEncryptedFieldNames(entity: EntityDefinition): ReadonlySet<string>;
5
5
  export declare function isSensitiveLabelField(entity: EntityDefinition, field: string): boolean;
6
6
  export declare function isListFilterAllowed(entity: EntityDefinition, field: string, filter: {
@@ -170,12 +170,14 @@ export function validateEntityFieldEncryptionAvailable(env = process.env, bootCi
170
170
  if (bootCipher ?? injectedCipher)
171
171
  return;
172
172
  try {
173
+ // currentVersion() forces the keyring check: under KUMIKO_DRY_RUN_ENV the
174
+ // provider defers it past construction.
173
175
  createEnvMasterKeyProvider({
174
176
  env: {
175
177
  ...env,
176
178
  KUMIKO_SECRETS_MASTER_KEY_CURRENT_VERSION: env["KUMIKO_SECRETS_MASTER_KEY_CURRENT_VERSION"] ?? "1",
177
179
  },
178
- });
180
+ }).currentVersion();
179
181
  }
180
182
  catch (err) {
181
183
  const reason = err instanceof Error ? err.message : String(err);
@@ -1,4 +1,4 @@
1
- import type { Registry } from "../engine/index.js";
2
- import type { SchemaTable } from "./dialect.js";
3
- import { buildEntityTable } from "./table-builder.js";
1
+ import type { Registry } from "../engine/index.ts";
2
+ import type { SchemaTable } from "./dialect.ts";
3
+ import { buildEntityTable } from "./table-builder.ts";
4
4
  export declare function entityTableFromRegistry(registry: Registry, entityName: string, entity: Parameters<typeof buildEntityTable>[1]): SchemaTable;
@@ -1,7 +1,7 @@
1
1
  import type { EntityTenancy, TenancyBrand } from "@cosmicdrift/kumiko-types/tenancy-brand";
2
- import type { EntityDefinition } from "../engine/types/index.js";
3
- import type { BuildEntityTableMetaOptions, EntityTableMeta, UnmanagedTableInput } from "./entity-table-meta-types.js";
4
- export type { BuildEntityTableMetaOptions, ColumnMeta, CompositePrimaryKeyMeta, EntityTableMeta, IndexMeta, PgType, UnmanagedTableInput, } from "./entity-table-meta-types.js";
2
+ import type { EntityDefinition } from "../engine/types/index.ts";
3
+ import type { BuildEntityTableMetaOptions, EntityTableMeta, UnmanagedTableInput } from "./entity-table-meta-types.ts";
4
+ export type { BuildEntityTableMetaOptions, ColumnMeta, CompositePrimaryKeyMeta, EntityTableMeta, IndexMeta, PgType, UnmanagedTableInput, } from "./entity-table-meta-types.ts";
5
5
  export declare function resolveTableName(entityName: string, entity: EntityDefinition, featureName: string | undefined): string;
6
6
  /**
7
7
  * Derive EntityTableMeta from an EntityDefinition (base columns + field DDL).
@@ -1,12 +1,12 @@
1
- import type { WhereObject } from "../db/query.js";
2
- import type { EntityDefinition, EntityId, SessionUser, TenantId } from "../engine/types/index.js";
3
- import { type WriteFailure } from "../errors/index.js";
4
- import { type EventMetadata } from "../event-store/index.js";
5
- import type { EntityCache } from "../pipeline/entity-cache.js";
6
- import type { SearchAdapter } from "../search/types.js";
7
- import type { TableColumns } from "./dialect.js";
8
- import type { EventStoreExecutorOptions } from "./event-store-executor.js";
9
- import type { TenantDb } from "./tenant-db.js";
1
+ import type { WhereObject } from "../db/query.ts";
2
+ import type { EntityDefinition, EntityId, SessionUser, TenantId } from "../engine/types/index.ts";
3
+ import { type WriteFailure } from "../errors/index.ts";
4
+ import { type EventMetadata } from "../event-store/index.ts";
5
+ import type { EntityCache } from "../pipeline/entity-cache.ts";
6
+ import type { SearchAdapter } from "../search/types.ts";
7
+ import type { TableColumns } from "./dialect.ts";
8
+ import type { EventStoreExecutorOptions } from "./event-store-executor.ts";
9
+ import type { TenantDb } from "./tenant-db.ts";
10
10
  export type Table = TableColumns<any>;
11
11
  export declare function buildFilterWhere(field: string, op: "eq" | "ne" | "lt" | "gt" | "lte" | "gte" | "in", value: unknown): WhereObject | null;
12
12
  export declare function ownershipSubject(user: SessionUser, streamTenantId: TenantId | undefined): SessionUser;
@@ -1,5 +1,5 @@
1
- import type { EventStoreExecutor } from "./event-store-executor.js";
2
- import { type ExecutorContext } from "./event-store-executor-context.js";
1
+ import type { EventStoreExecutor } from "./event-store-executor.ts";
2
+ import { type ExecutorContext } from "./event-store-executor-context.ts";
3
3
  export declare function resolveListPagination(payload: {
4
4
  readonly limit?: unknown;
5
5
  readonly offset?: unknown;
@@ -1,3 +1,3 @@
1
- import { type EventStoreExecutor } from "./event-store-executor.js";
2
- import { type ExecutorContext } from "./event-store-executor-context.js";
1
+ import { type EventStoreExecutor } from "./event-store-executor.ts";
2
+ import { type ExecutorContext } from "./event-store-executor-context.ts";
3
3
  export declare function createWriteVerbs(ctx: ExecutorContext): Pick<EventStoreExecutor, "create" | "update" | "delete" | "forget" | "restore">;
@@ -1,14 +1,14 @@
1
1
  import type { EventStoreExecutor } from "@cosmicdrift/kumiko-types/event-store-executor-types";
2
- import type { LocalKeyKmsAdapter } from "../crypto/index.js";
3
- import type { EntityDefinition } from "../engine/types/index.js";
4
- import type { EntityCache } from "../pipeline/entity-cache.js";
5
- import type { SearchAdapter } from "../search/types.js";
6
- import type { EnvelopeCipher } from "../secrets/envelope-cipher.js";
7
- import { type Table } from "./event-store-executor-context.js";
2
+ import type { LocalKeyKmsAdapter } from "../crypto/index.ts";
3
+ import type { EntityDefinition } from "../engine/types/index.ts";
4
+ import type { EntityCache } from "../pipeline/entity-cache.ts";
5
+ import type { SearchAdapter } from "../search/types.ts";
6
+ import type { EnvelopeCipher } from "../secrets/envelope-cipher.ts";
7
+ import { type Table } from "./event-store-executor-context.ts";
8
8
  export type { EventStoreExecutor, LockGuardOption, WritePurpose, } from "@cosmicdrift/kumiko-types/event-store-executor-types";
9
9
  export { WritePurposes } from "@cosmicdrift/kumiko-types/event-store-executor-types";
10
- export type { EntityLifecycleVerb } from "./event-store-executor-context.js";
11
- export { entityEventName } from "./event-store-executor-context.js";
10
+ export type { EntityLifecycleVerb } from "./event-store-executor-context.ts";
11
+ export { entityEventName } from "./event-store-executor-context.ts";
12
12
  export type EventStoreExecutorOptions = {
13
13
  searchAdapter?: SearchAdapter;
14
14
  entityName: string;
@@ -1,4 +1,4 @@
1
- import type { FeatureDefinition } from "../engine/types/index.js";
1
+ import type { FeatureDefinition } from "../engine/types/index.ts";
2
2
  export type FeatureTableSource = {
3
3
  readonly table: unknown;
4
4
  readonly origin: string;
@@ -1,39 +1,39 @@
1
- export { assertExistsIn } from "./assert-exists-in.js";
2
- export { nullBlindIndexesForSubject, recordEventsOwnedExclusivelyByTenant, recordRowExistsInTenant, recordRowOwningTenantId, subjectRowExistsInTenant, } from "./blind-index-cleanup.js";
3
- export { collectTableMetas } from "./collect-table-metas.js";
4
- export { flattenCompoundTypes, rehydrateCompoundTypes } from "./compound-types.js";
5
- export { seedConfigValues } from "./config-seed.js";
6
- export type { CreateDbConnectionOptions, DbConnection, DbConnectionHandle, DbConnectionOptions, DbRow, DbRunner, DbTx, } from "./connection.js";
7
- export { createDbConnection, DEFAULT_OUTSIDE_TRANSACTION_POOL_MAX, dbConnectionOptionsFromEnv, outsideTransactionPoolOptionsFromEnv, } from "./connection.js";
8
- export type { CursorQueryOptions, CursorResult, DecodedKeysetCursor } from "./cursor.js";
9
- export { decodeCursor, decodeKeysetCursor, encodeCursor, encodeKeysetCursor } from "./cursor.js";
10
- export type { SchemaTable, SelectQuery, TableColumns } from "./dialect.js";
11
- export { bigint, bigserial, boolean, extractTableName, index, instant, instantToDriver, integer, jsonb, moneyAmount, numeric, primaryKey, serial, sql, table, text, timestamp, uniqueIndex, uuid, } from "./dialect.js";
12
- export type { EagerLoadEntityResolver, EagerLoadViewer, EagerloadedRow } from "./eagerload.js";
13
- export { collectReferenceFields, enrichRowWithReferences, enrichWithReferences, } from "./eagerload.js";
14
- export { collectEncryptedFieldNames, configuredEntityFieldEncryption, configureEntityFieldEncryption, decryptEntityFieldValues, encryptEntityFieldValues, } from "./entity-field-encryption.js";
15
- export { entityTableFromRegistry } from "./entity-table-from-registry.js";
16
- export type { BuildEntityTableMetaOptions, ColumnMeta, CompositePrimaryKeyMeta, EntityTableMeta, IndexMeta, PgType, UnmanagedTableInput, } from "./entity-table-meta.js";
17
- export { buildEntityTableMeta, defineUnmanagedTable, deriveEntityTableMeta, } from "./entity-table-meta.js";
18
- export type { EntityLifecycleVerb, EventStoreExecutor, EventStoreExecutorOptions, LockGuardOption, WritePurpose, } from "./event-store-executor.js";
19
- export { createEventStoreExecutor, entityEventName, WritePurposes, } from "./event-store-executor.js";
20
- export { enumerateFeatureTableSources, type FeatureTableSource, } from "./feature-table-sources.js";
21
- export { flattenLocatedTimestamp, rehydrateLocatedTimestamp } from "./located-timestamp.js";
22
- export { assertUniqueTableNames, assertValidMigrationName, diffSnapshots, type GenerateMigrationInput, type GenerateMigrationOutput, generateMigration, loadSnapshotJson, renderMigrationSql, type SchemaDiff, type Snapshot, snapshotFromMetas, writeSnapshotJson, } from "./migrate-generator.js";
23
- export { type AppliedMigration, type ApplyResult, type BaselineResult, baselineMigrations, fetchAppliedMigrations, loadMigrationsFromDir, type Migration, MigrationChecksumMismatchError, readMigrationSqlTexts, runMigrations, runMigrationsFromDir, splitSqlStatements, } from "./migrate-runner.js";
24
- export { flattenMoney, type MoneyRead, moneyPayloadToMinorUnits, rehydrateMoney } from "./money.js";
25
- export { constraintOf, extractPgError, isTableAlreadyExists, isUniqueViolation, type PgErrorInfo, } from "./pg-error.js";
26
- export { acquireNamespacedAdvisoryLock } from "./queries/advisory-lock.js";
27
- export { toPostgresArrayLiteral } from "./queries/postgres-array-literal.js";
28
- export { executeRawQuery, executeRawQueryRead } from "./queries/raw-sql.js";
29
- export type { DeleteManyBatchedOptions, DeleteManyBatchedResult, IncrementCounterOptions, InnerJoinRow, InnerJoinSpec, InsertOnConflictDoNothingOptions, JoinColumnPair, JsonTextMatch, SelectOptions, TableInfo, UpsertOnConflictOptions, WhereObject, WhereOperator, WhereValue, } from "./query.js";
30
- export { aggregateWhere, asEntityTableMeta, asRawClient, countWhere, deleteMany, deleteManyBatched, extractTableInfo, fetchOne, incrementCounter, insertMany, insertOnConflictDoNothing, insertOne, instantToTimestamptzParam, isTimestamptzType, requireEntityTableMeta, runInSavepoint, runInSavepointIfSupported, runnerCanBeginTransaction, selectInnerJoin, selectMany, transaction, unsafeReadRetrying, updateMany, upsertByPk, upsertOnConflict, } from "./query.js";
31
- export { readRebuildMarker, rebuildTablesFromDiff, writeRebuildMarker, } from "./rebuild-marker.js";
32
- export { seedReferenceData } from "./reference-data.js";
33
- export { renderTableDdl, renderTablesDdl } from "./render-ddl.js";
34
- export { diffReplayAgainstSnapshot, type ReplayedSchema, type ReplayedTable, type ReplayMismatch, replayMigrationsDir, } from "./replay-migration-sql.js";
35
- export { findCommentedDropTables, isRetiredFrameworkTable, type RetiredFrameworkTable, retiredFrameworkTables, } from "./retired-framework-tables.js";
36
- export { tableExists } from "./schema-inspection.js";
37
- export { buildBaseColumns, buildEntityTable, declareGlobalTenancy, type EntityTable, physicalColumnName, toSnakeCase, toTableName, } from "./table-builder.js";
38
- export type { CreateTenantDbOptions, TenantDb, TenantDbGrants, TenantDbMode, UncheckedSystemDb, } from "./tenant-db.js";
39
- export { castTenantRows, createSystemDbView, createTenantDb, runInOwnTransaction, SYSTEM_SCOPE_CHECK_BRAND, scopeTenantDbToTenant, } from "./tenant-db.js";
1
+ export { assertExistsIn } from "./assert-exists-in.ts";
2
+ export { nullBlindIndexesForSubject, recordEventsOwnedExclusivelyByTenant, recordRowExistsInTenant, recordRowOwningTenantId, subjectRowExistsInTenant, } from "./blind-index-cleanup.ts";
3
+ export { collectTableMetas } from "./collect-table-metas.ts";
4
+ export { flattenCompoundTypes, rehydrateCompoundTypes } from "./compound-types.ts";
5
+ export { seedConfigValues } from "./config-seed.ts";
6
+ export type { CreateDbConnectionOptions, DbConnection, DbConnectionHandle, DbConnectionOptions, DbRow, DbRunner, DbTx, } from "./connection.ts";
7
+ export { createDbConnection, DEFAULT_OUTSIDE_TRANSACTION_POOL_MAX, dbConnectionOptionsFromEnv, outsideTransactionPoolOptionsFromEnv, } from "./connection.ts";
8
+ export type { CursorQueryOptions, CursorResult, DecodedKeysetCursor } from "./cursor.ts";
9
+ export { decodeCursor, decodeKeysetCursor, encodeCursor, encodeKeysetCursor } from "./cursor.ts";
10
+ export type { SchemaTable, SelectQuery, TableColumns } from "./dialect.ts";
11
+ export { bigint, bigserial, boolean, extractTableName, index, instant, instantToDriver, integer, jsonb, moneyAmount, numeric, primaryKey, serial, sql, table, text, timestamp, uniqueIndex, uuid, } from "./dialect.ts";
12
+ export type { EagerLoadEntityResolver, EagerLoadViewer, EagerloadedRow } from "./eagerload.ts";
13
+ export { collectReferenceFields, enrichRowWithReferences, enrichWithReferences, } from "./eagerload.ts";
14
+ export { collectEncryptedFieldNames, configuredEntityFieldEncryption, configureEntityFieldEncryption, decryptEntityFieldValues, encryptEntityFieldValues, } from "./entity-field-encryption.ts";
15
+ export { entityTableFromRegistry } from "./entity-table-from-registry.ts";
16
+ export type { BuildEntityTableMetaOptions, ColumnMeta, CompositePrimaryKeyMeta, EntityTableMeta, IndexMeta, PgType, UnmanagedTableInput, } from "./entity-table-meta.ts";
17
+ export { buildEntityTableMeta, defineUnmanagedTable, deriveEntityTableMeta, } from "./entity-table-meta.ts";
18
+ export type { EntityLifecycleVerb, EventStoreExecutor, EventStoreExecutorOptions, LockGuardOption, WritePurpose, } from "./event-store-executor.ts";
19
+ export { createEventStoreExecutor, entityEventName, WritePurposes, } from "./event-store-executor.ts";
20
+ export { enumerateFeatureTableSources, type FeatureTableSource, } from "./feature-table-sources.ts";
21
+ export { flattenLocatedTimestamp, rehydrateLocatedTimestamp } from "./located-timestamp.ts";
22
+ export { assertUniqueTableNames, assertValidMigrationName, diffSnapshots, type GenerateMigrationInput, type GenerateMigrationOutput, generateMigration, loadSnapshotJson, renderMigrationSql, type SchemaDiff, type Snapshot, snapshotFromMetas, writeSnapshotJson, } from "./migrate-generator.ts";
23
+ export { type AppliedMigration, type ApplyResult, type BaselineResult, baselineMigrations, fetchAppliedMigrations, loadMigrationsFromDir, type Migration, MigrationChecksumMismatchError, readMigrationSqlTexts, runMigrations, runMigrationsFromDir, splitSqlStatements, } from "./migrate-runner.ts";
24
+ export { flattenMoney, type MoneyRead, moneyPayloadToMinorUnits, rehydrateMoney } from "./money.ts";
25
+ export { constraintOf, extractPgError, isTableAlreadyExists, isUniqueViolation, type PgErrorInfo, } from "./pg-error.ts";
26
+ export { acquireNamespacedAdvisoryLock } from "./queries/advisory-lock.ts";
27
+ export { toPostgresArrayLiteral } from "./queries/postgres-array-literal.ts";
28
+ export { executeRawQuery, executeRawQueryRead } from "./queries/raw-sql.ts";
29
+ export type { DeleteManyBatchedOptions, DeleteManyBatchedResult, IncrementCounterOptions, InnerJoinRow, InnerJoinSpec, InsertOnConflictDoNothingOptions, JoinColumnPair, JsonTextMatch, SelectOptions, TableInfo, UpsertOnConflictOptions, WhereObject, WhereOperator, WhereValue, } from "./query.ts";
30
+ export { aggregateWhere, asEntityTableMeta, asRawClient, countWhere, deleteMany, deleteManyBatched, extractTableInfo, fetchOne, incrementCounter, insertMany, insertOnConflictDoNothing, insertOne, instantToTimestamptzParam, isTimestamptzType, requireEntityTableMeta, runInSavepoint, runInSavepointIfSupported, runnerCanBeginTransaction, selectInnerJoin, selectMany, transaction, unsafeReadRetrying, updateMany, upsertByPk, upsertOnConflict, } from "./query.ts";
31
+ export { readRebuildMarker, rebuildTablesFromDiff, writeRebuildMarker, } from "./rebuild-marker.ts";
32
+ export { seedReferenceData } from "./reference-data.ts";
33
+ export { renderTableDdl, renderTablesDdl } from "./render-ddl.ts";
34
+ export { diffReplayAgainstSnapshot, type ReplayedSchema, type ReplayedTable, type ReplayMismatch, replayMigrationsDir, } from "./replay-migration-sql.ts";
35
+ export { findCommentedDropTables, isRetiredFrameworkTable, type RetiredFrameworkTable, retiredFrameworkTables, } from "./retired-framework-tables.ts";
36
+ export { tableExists } from "./schema-inspection.ts";
37
+ export { buildBaseColumns, buildEntityTable, declareGlobalTenancy, type EntityTable, physicalColumnName, toSnakeCase, toTableName, } from "./table-builder.ts";
38
+ export type { CreateTenantDbOptions, TenantDb, TenantDbGrants, TenantDbMode, UncheckedSystemDb, } from "./tenant-db.ts";
39
+ export { castTenantRows, createSystemDbView, createTenantDb, runInOwnTransaction, SYSTEM_SCOPE_CHECK_BRAND, scopeTenantDbToTenant, } from "./tenant-db.ts";
@@ -1,4 +1,4 @@
1
- import type { EntityDefinition } from "../engine/types/index.js";
1
+ import type { EntityDefinition } from "../engine/types/index.ts";
2
2
  /**
3
3
  * API → DB: locatedTimestamp-Felder zu zwei flachen Spalten flatten.
4
4
  *
@@ -1,4 +1,4 @@
1
- import type { SessionUser } from "../engine/types/index.js";
2
- import type { LockGuardOption } from "./event-store-executor.js";
1
+ import type { SessionUser } from "../engine/types/index.ts";
2
+ import type { LockGuardOption } from "./event-store-executor.ts";
3
3
  export declare function isFrameworkSystemUser(user: SessionUser): boolean;
4
4
  export declare function isLockGuardBypassed(user: SessionUser, options: LockGuardOption | undefined): boolean;
@@ -1,5 +1,5 @@
1
- import type { ColumnMeta, EntityTableMeta, IndexMeta } from "./entity-table-meta.js";
2
- import { type RetiredFrameworkTable } from "./retired-framework-tables.js";
1
+ import type { ColumnMeta, EntityTableMeta, IndexMeta } from "./entity-table-meta.ts";
2
+ import { type RetiredFrameworkTable } from "./retired-framework-tables.ts";
3
3
  declare const SNAPSHOT_VERSION: 1;
4
4
  export type Snapshot = {
5
5
  readonly version: typeof SNAPSHOT_VERSION;
@@ -1,4 +1,4 @@
1
- import type { DbConnection } from "./connection.js";
1
+ import type { DbConnection } from "./connection.ts";
2
2
  export type Migration = {
3
3
  readonly id: string;
4
4
  readonly checksum: string;
@@ -1,4 +1,4 @@
1
- import type { EntityDefinition } from "../engine/types/index.js";
1
+ import type { EntityDefinition } from "../engine/types/index.ts";
2
2
  export declare function toMinorUnits(amount: number): number;
3
3
  export declare function moneyPayloadToMinorUnits(raw: unknown): number | undefined;
4
4
  export declare function flattenMoney(payload: Record<string, unknown>, entity: EntityDefinition): Record<string, unknown>;
@@ -1,8 +1,8 @@
1
1
  import type { ParentVisibilityOption } from "@cosmicdrift/kumiko-types/event-store-executor-types";
2
- import { type OwnershipClause } from "../engine/ownership.js";
3
- import type { EntityDefinition, SessionUser } from "../engine/types/index.js";
4
- import type { Table } from "./event-store-executor-context.js";
5
- import type { TenantDb } from "./tenant-db.js";
2
+ import { type OwnershipClause } from "../engine/ownership.ts";
3
+ import type { EntityDefinition, SessionUser } from "../engine/types/index.ts";
4
+ import type { Table } from "./event-store-executor-context.ts";
5
+ import type { TenantDb } from "./tenant-db.ts";
6
6
  export type { ParentVisibilityOption } from "@cosmicdrift/kumiko-types/event-store-executor-types";
7
7
  export declare function buildParentRefClause(entity: EntityDefinition, table: Table, tableName: string, user: SessionUser, db: TenantDb, option: ParentVisibilityOption | undefined, opts: {
8
8
  readonly includeDeleted?: boolean;
@@ -1,3 +1,3 @@
1
- import type { Registry } from "../engine/types/index.js";
1
+ import type { Registry } from "../engine/types/index.ts";
2
2
  export declare function bindProjectionRegistry(target: object, registry: Registry): void;
3
3
  export declare function projectionRegistryOf(target: object): Registry | undefined;
@@ -1,3 +1,3 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  /** pg_advisory_xact_lock keyed on namespace+key hash — xact-scoped, auto-released at commit/rollback. */
3
3
  export declare function acquireNamespacedAdvisoryLock(db: AnyDb, namespace: number, key: string): Promise<void>;
@@ -1,5 +1,5 @@
1
- import type { Registry } from "../../engine/types/index.js";
2
- import type { DbRunner } from "../connection.js";
1
+ import type { Registry } from "../../engine/types/index.ts";
2
+ import type { DbRunner } from "../connection.ts";
3
3
  export type PiiBackfillFailure = {
4
4
  readonly eventId: string;
5
5
  readonly reason: string;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export declare function executeDdlStatement(db: AnyDb, sqlText: string): Promise<void>;
3
3
  export declare function alterTableAddColumn(db: AnyDb, tableName: string, columnName: string, columnType: string, defaultClause: string, notNull: string, ifNotExists?: boolean): Promise<void>;
4
4
  export declare function createIndexIfNotExists(db: AnyDb, indexKind: "UNIQUE INDEX" | "INDEX", indexName: string, tableName: string, columnList: string, whereSql?: string): Promise<void>;
@@ -1,2 +1,2 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export declare function selectRowForUpdateById(db: AnyDb, tableName: string, id: string | number): Promise<readonly Record<string, unknown>[]>;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  /** Stabiler Lock-Key für pg_advisory_xact_lock — multi-replica seed boots. */
3
3
  export declare const ES_OPS_ADVISORY_LOCK_KEY = 1702063984;
4
4
  export declare function acquireEsOpsAdvisoryLock(db: AnyDb): Promise<void>;
@@ -1,5 +1,5 @@
1
- import type { ConsumerStatuses, PendingGapEntry } from "../../pipeline/event-consumer-state.js";
2
- import type { AnyDb } from "../query.js";
1
+ import type { ConsumerStatuses, PendingGapEntry } from "../../pipeline/event-consumer-state.ts";
2
+ import type { AnyDb } from "../query.ts";
3
3
  export declare function selectSnapshotXmin(db: AnyDb): Promise<string>;
4
4
  export declare function selectSnapshotXmax(db: AnyDb): Promise<string>;
5
5
  /** Serialise against consumer-bootstrap INSERTs during event retention prune. */
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export type RawFirstEventInsertParams = {
3
3
  readonly aggregateId: string;
4
4
  readonly aggregateType: string;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export type TransferEventRowsParams = {
3
3
  readonly sourceTenantId: string;
4
4
  readonly destinationTenantId: string;
@@ -1,5 +1,5 @@
1
1
  import type { DbRunner } from "@cosmicdrift/kumiko-types/db-connection";
2
- import type { AnyDb } from "../query.js";
2
+ import type { AnyDb } from "../query.ts";
3
3
  export declare function claimXactId(db: AnyDb): Promise<void>;
4
4
  export declare function runAtomicEventWrite<T>(db: DbRunner, write: (runner: DbRunner) => Promise<T>): Promise<T>;
5
5
  /** NOTIFY on commit — wakes LISTEN subscribers (event-dispatcher). */
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export type PiiBackfillStateRow = {
3
3
  readonly cursor: string;
4
4
  readonly completed: boolean;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  export declare function markProjectionRebuilding(db: AnyDb, projectionName: string): Promise<void>;
3
3
  export declare function selectEventsForProjectionRebuildBatch(db: AnyDb, aggregateTypes: readonly string[], eventTypes: readonly string[], afterId: bigint, limit: number): Promise<ReadonlyArray<Record<string, unknown>>>;
4
4
  export declare function countSubscribedEvents(db: AnyDb, aggregateTypes: readonly string[], eventTypes: readonly string[]): Promise<bigint>;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  /** Escape hatch for caller-built SQL that may write (or lock). No closed-connection retry —
3
3
  * retrying an ambiguous write risks double-apply (#1358). Prefer {@link executeRawQueryRead}
4
4
  * for SELECT-only paths. */
@@ -1,5 +1,5 @@
1
- import type { DbRunner } from "../connection.js";
2
- import type { AnyDb } from "../query.js";
1
+ import type { DbRunner } from "../connection.ts";
2
+ import type { AnyDb } from "../query.ts";
3
3
  export type SeedUserRow = {
4
4
  readonly id: string;
5
5
  readonly email: string;
@@ -1,7 +1,7 @@
1
1
  import type { ProjectionRowIdOf } from "@cosmicdrift/kumiko-types/projection";
2
- import type { DbConnection, DbTx } from "../connection.js";
3
- import type { EntityTableMeta } from "../entity-table-meta.js";
4
- import { type AnyDb } from "../query.js";
2
+ import type { DbConnection, DbTx } from "../connection.ts";
3
+ import type { EntityTableMeta } from "../entity-table-meta.ts";
4
+ import { type AnyDb } from "../query.ts";
5
5
  export declare const PROJECTION_REBUILD_SCHEMA = "kumiko_rebuild";
6
6
  export declare function ensureRebuildSchema(db: AnyDb): Promise<void>;
7
7
  export declare function rebuildMetaOrThrow(table: unknown, projectionName: string): EntityTableMeta;
@@ -1,4 +1,4 @@
1
- import type { AnyDb } from "../query.js";
1
+ import type { AnyDb } from "../query.ts";
2
2
  /** Double-quote + escape — Postgres identifier rules. */
3
3
  export declare function quoteTableIdent(name: string): string;
4
4
  export declare function truncateTable(db: AnyDb, tableName: string): Promise<void>;
@@ -1,5 +1,5 @@
1
- import type { AnyDb } from "../query.js";
2
- export { alterTableAddColumn, createIndexIfNotExists, executeDdlStatement } from "./ddl.js";
1
+ import type { AnyDb } from "../query.ts";
2
+ export { alterTableAddColumn, createIndexIfNotExists, executeDdlStatement } from "./ddl.ts";
3
3
  export declare function truncateTablesRestartIdentity(db: AnyDb, tableNames: readonly string[]): Promise<void>;
4
4
  export declare function databaseExists(db: AnyDb, dbName: string): Promise<boolean>;
5
5
  export declare function createDatabase(db: AnyDb, dbName: string): Promise<void>;
@@ -2,9 +2,9 @@ import type { AggregateRow, AggregateSpec } from "@cosmicdrift/kumiko-types/aggr
2
2
  import type { DbRunner, DbTx } from "@cosmicdrift/kumiko-types/db-connection";
3
3
  import { Temporal } from "@cosmicdrift/kumiko-types/temporal";
4
4
  import type { SelectOptions, WhereObject } from "@cosmicdrift/kumiko-types/where-clause-types";
5
- import type { EntityTableMeta } from "./entity-table-meta.js";
6
- import { type NotExecutorOnly } from "./table-builder.js";
7
- import { asEntityTableMeta, requireEntityTableMeta } from "./table-introspection.js";
5
+ import type { EntityTableMeta } from "./entity-table-meta.ts";
6
+ import { type NotExecutorOnly } from "./table-builder.ts";
7
+ import { asEntityTableMeta, requireEntityTableMeta } from "./table-introspection.ts";
8
8
  export { asEntityTableMeta, requireEntityTableMeta };
9
9
  export type ReservedClient = {
10
10
  unsafe: RawClient["unsafe"];
@@ -1,4 +1,4 @@
1
- import { type SchemaDiff } from "./migrate-generator.js";
1
+ import { type SchemaDiff } from "./migrate-generator.ts";
2
2
  export declare function rebuildTablesFromDiff(diff: SchemaDiff): readonly string[];
3
3
  export declare function writeRebuildMarker(migrationsDir: string, sqlFilename: string, tables: readonly string[]): void;
4
4
  export declare function readRebuildMarker(migrationsDir: string, migrationId: string): readonly string[];
@@ -1,6 +1,6 @@
1
- import type { ReferenceDataDef } from "../engine/types/index.js";
2
- import type { DbConnection } from "./connection.js";
3
- import type { TableColumns } from "./dialect.js";
1
+ import type { ReferenceDataDef } from "../engine/types/index.ts";
2
+ import type { DbConnection } from "./connection.ts";
3
+ import type { TableColumns } from "./dialect.ts";
4
4
  type Table = TableColumns<any>;
5
5
  /**
6
6
  * Seed reference data at boot time.
@@ -1,4 +1,4 @@
1
- import type { EntityTableMeta, IndexMeta } from "./entity-table-meta.js";
1
+ import type { EntityTableMeta, IndexMeta } from "./entity-table-meta.ts";
2
2
  export declare function renderIndex(tableName: string, idx: IndexMeta): string;
3
3
  export declare function renderTableDdl(meta: EntityTableMeta): readonly string[];
4
4
  export declare function renderTablesDdl(metas: readonly EntityTableMeta[]): readonly string[];
@@ -1,4 +1,4 @@
1
- import type { Snapshot } from "./migrate-generator.js";
1
+ import type { Snapshot } from "./migrate-generator.ts";
2
2
  export type ReplayedTable = {
3
3
  readonly columns: ReadonlySet<string>;
4
4
  };
@@ -1,4 +1,4 @@
1
- import type { Snapshot } from "./migrate-generator.js";
1
+ import type { Snapshot } from "./migrate-generator.ts";
2
2
  export type RetiredFrameworkTable = {
3
3
  readonly tableName: string;
4
4
  readonly sinceVersion: string;
@@ -1,3 +1,3 @@
1
- import type { DbConnection, DbTx } from "./connection.js";
1
+ import type { DbConnection, DbTx } from "./connection.ts";
2
2
  export declare function tableExists(db: DbConnection | DbTx, fullyQualifiedName: string): Promise<boolean>;
3
3
  export declare function columnNamesOf(db: DbConnection | DbTx, tableName: string): Promise<ReadonlySet<string>>;
@@ -1,10 +1,10 @@
1
1
  /// <reference types="temporal-polyfill/global" preserve="true" />
2
2
  import type { ExecutorOnly } from "@cosmicdrift/kumiko-types/executor-brand";
3
3
  import type { TenancyBrand } from "@cosmicdrift/kumiko-types/tenancy-brand";
4
- import type { EntityDefinition, EntityRelations, FieldDefinition, FieldsMap } from "../engine/types/index.js";
5
- import type { Table } from "./event-store-executor-context.js";
6
- export { toSnakeCase } from "../utils/case.js";
7
- import { type ColumnBuilder, type ColumnHandle, type SchemaTable, type TableColumns } from "./dialect.js";
4
+ import type { EntityDefinition, EntityRelations, FieldDefinition, FieldsMap } from "../engine/types/index.ts";
5
+ import type { Table } from "./event-store-executor-context.ts";
6
+ export { toSnakeCase } from "../utils/case.ts";
7
+ import { type ColumnBuilder, type ColumnHandle, type SchemaTable, type TableColumns } from "./dialect.ts";
8
8
  export declare const SOFT_DELETE_LIVE_ROW_PREDICATE = "\"is_deleted\" = false";
9
9
  export declare function physicalColumnName(table: Table, field: string): string;
10
10
  export type AnyPgColumn = ColumnHandle;
@@ -1,6 +1,6 @@
1
- import type { EntityDefinition } from "../engine/types/index.js";
2
- import type { DbConnection } from "./connection.js";
3
- import type { ColumnMeta, EntityTableMeta, IndexMeta } from "./entity-table-meta.js";
1
+ import type { EntityDefinition } from "../engine/types/index.ts";
2
+ import type { DbConnection } from "./connection.ts";
3
+ import type { ColumnMeta, EntityTableMeta, IndexMeta } from "./entity-table-meta.ts";
4
4
  /**
5
5
  * Bypass: creates an entity-table directly without going through the
6
6
  * full registry. Reserved for framework-internal meta-tables and
@@ -1,6 +1,6 @@
1
1
  import type { TenantDb } from "@cosmicdrift/kumiko-types/tenant-db-types";
2
- import { InternalError } from "../errors/index.js";
3
- import type { DbRunner } from "./connection.js";
2
+ import { InternalError } from "../errors/index.ts";
3
+ import type { DbRunner } from "./connection.ts";
4
4
  export declare function bindTenantDbRunner(tenantDb: TenantDb, runner: DbRunner): void;
5
5
  export declare function tenantDbRunner(tenantDb: TenantDb): DbRunner;
6
6
  export declare function denyTenantDbWrites(tenantDb: TenantDb, reason: string): void;
@@ -2,13 +2,13 @@ import type { EntityTableMeta } from "@cosmicdrift/kumiko-types/entity-table-met
2
2
  import type { EscapeHatchDeclaration, EscapeHatchReporter, EscapeHatchTarget } from "@cosmicdrift/kumiko-types/handlers";
3
3
  import type { SchemaTable } from "@cosmicdrift/kumiko-types/schema-table-types";
4
4
  import { type TenantDb, type TenantDbMode, type UncheckedSystemDb } from "@cosmicdrift/kumiko-types/tenant-db-types";
5
- import { asRawClient } from "../db/query.js";
6
- import type { EntityDefinition } from "../engine/types/fields.js";
7
- import { type TenantId } from "../engine/types/identifiers.js";
8
- import type { Registry } from "../engine/types/index.js";
9
- import { type Meter, type Tracer } from "../observability/index.js";
10
- import type { DbRunner } from "./connection.js";
11
- import { tableNameOf } from "./table-introspection.js";
5
+ import { asRawClient } from "../db/query.ts";
6
+ import type { EntityDefinition } from "../engine/types/fields.ts";
7
+ import { type TenantId } from "../engine/types/identifiers.ts";
8
+ import type { Registry } from "../engine/types/index.ts";
9
+ import { type Meter, type Tracer } from "../observability/index.ts";
10
+ import type { DbRunner } from "./connection.ts";
11
+ import { tableNameOf } from "./table-introspection.ts";
12
12
  type Table = SchemaTable;
13
13
  export { SYSTEM_SCOPE_CHECK_BRAND, type TenantDb, type TenantDbMode, type UncheckedSystemDb, } from "@cosmicdrift/kumiko-types/tenant-db-types";
14
14
  export declare function assertPersonalDataWrite(db: TenantDb, tableName: string, keys: readonly string[], entity: EntityDefinition): void;
@@ -47,7 +47,5 @@ export type CreateTenantDbOptions = {
47
47
  readonly grants?: TenantDbGrants;
48
48
  };
49
49
  export declare function createTenantDb(options: CreateTenantDbOptions): TenantDb;
50
- /** @deprecated Positional form, use createTenantDb({ db, tenantId, ... }). Run `bun kumiko-upgrade --apply` to rewrite call sites. Removed in the first release after 2026-10-29. */
51
- export declare function createTenantDb(db: DbRunner, tenantId: TenantId, mode?: TenantDbMode, tracer?: Tracer, meter?: Meter, signal?: AbortSignal, grants?: TenantDbGrants): TenantDb;
52
50
  export declare function createProjectingTenantDb(db: DbRunner, tenantId: TenantId, projectionRegistry: Registry | undefined): TenantDb;
53
51
  export { asRawClient };