@noy-db/hub 0.3.0-pre.10 → 0.3.0-pre.12

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 (898) hide show
  1. package/dist/aggregate/index.js +4 -4
  2. package/dist/api-3TH2GOFQ.js +20 -0
  3. package/dist/as/index.js +11 -11
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/backup-2WVBIVXW.js +225 -0
  6. package/dist/blobs/index.js +10 -10
  7. package/dist/broker/index.js +92 -0
  8. package/dist/broker/index.js.map +1 -0
  9. package/dist/bundle/index.js +20 -20
  10. package/dist/by/index.js +2 -2
  11. package/dist/cargo/index.js +30 -30
  12. package/dist/chunk-2MTRJCBI.js +75 -0
  13. package/dist/chunk-37WOJQWY.js +404 -0
  14. package/dist/chunk-3QSOFZQB.js +589 -0
  15. package/dist/chunk-44IL5G3W.js +99 -0
  16. package/dist/chunk-45QPICLE.js +69 -0
  17. package/dist/chunk-4BQXMCE5.js +164 -0
  18. package/dist/chunk-4GPE63GU.js +111 -0
  19. package/dist/chunk-4GPE63GU.js.map +1 -0
  20. package/dist/chunk-5HNX4OD4.js +30 -0
  21. package/dist/chunk-65VLRG3I.js +54 -0
  22. package/dist/chunk-6MA575R5.js +59 -0
  23. package/dist/chunk-6S7ENMRE.js +524 -0
  24. package/dist/chunk-6S7ENMRE.js.map +1 -0
  25. package/dist/chunk-7GAXFU2O.js +123 -0
  26. package/dist/chunk-7QLY64AD.js +202 -0
  27. package/dist/chunk-7ZOSHEVS.js +235 -0
  28. package/dist/chunk-AAIIDAUC.js +371 -0
  29. package/dist/chunk-AAIIDAUC.js.map +1 -0
  30. package/dist/chunk-AKEOHKMT.js +282 -0
  31. package/dist/chunk-AKEOHKMT.js.map +1 -0
  32. package/dist/chunk-APHLCXVC.js +124 -0
  33. package/dist/chunk-BDEMZD4F.js +129 -0
  34. package/dist/chunk-BDPAVYGJ.js +662 -0
  35. package/dist/chunk-BLUT46UP.js +42 -0
  36. package/dist/chunk-CCIR2OJH.js +778 -0
  37. package/dist/chunk-CXC3JLAQ.js +155 -0
  38. package/dist/chunk-CZMCOFEA.js +1221 -0
  39. package/dist/chunk-DIB2BOIH.js +164 -0
  40. package/dist/chunk-DJ7MRXNA.js +344 -0
  41. package/dist/chunk-DJ7MRXNA.js.map +1 -0
  42. package/dist/chunk-EHW5KTTA.js +150 -0
  43. package/dist/chunk-EHW5KTTA.js.map +1 -0
  44. package/dist/chunk-EIZ4YOG2.js +70 -0
  45. package/dist/chunk-EVHBK7BN.js +515 -0
  46. package/dist/chunk-EXGDL2UQ.js +74 -0
  47. package/dist/chunk-F3LGBRSV.js +453 -0
  48. package/dist/chunk-F44XWXOA.js +392 -0
  49. package/dist/chunk-FF7S3XDW.js +230 -0
  50. package/dist/chunk-FJTWLQV3.js +155 -0
  51. package/dist/chunk-FYNE4WLC.js +36 -0
  52. package/dist/chunk-FZCGIJEJ.js +1505 -0
  53. package/dist/chunk-FZCGIJEJ.js.map +1 -0
  54. package/dist/chunk-GL3JV5EV.js +130 -0
  55. package/dist/chunk-GXLZXD2W.js +29 -0
  56. package/dist/chunk-HA6ZQWA2.js +1056 -0
  57. package/dist/chunk-HA6ZQWA2.js.map +1 -0
  58. package/dist/chunk-HBBZWEC5.js +686 -0
  59. package/dist/chunk-HG76BZ6G.js +188 -0
  60. package/dist/chunk-HGAB325C.js +38 -0
  61. package/dist/chunk-HIOLCOK3.js +30 -0
  62. package/dist/chunk-HIOLCOK3.js.map +1 -0
  63. package/dist/chunk-HK4XTXO4.js +49 -0
  64. package/dist/chunk-HYG32HCM.js +14 -0
  65. package/dist/chunk-ILF5GARW.js +135 -0
  66. package/dist/chunk-INBQ43DI.js +382 -0
  67. package/dist/chunk-IQIVD7TP.js +247 -0
  68. package/dist/chunk-J3JIYFYL.js +45 -0
  69. package/dist/chunk-JC75UBMT.js +32 -0
  70. package/dist/chunk-JC75UBMT.js.map +1 -0
  71. package/dist/chunk-JGUZMC3I.js +150 -0
  72. package/dist/chunk-JRKE5MAZ.js +80 -0
  73. package/dist/chunk-K2DLLK34.js +255 -0
  74. package/dist/chunk-KKYEZCQG.js +34 -0
  75. package/dist/chunk-NAR6IDKH.js +54 -0
  76. package/dist/chunk-NEYKOESM.js +117 -0
  77. package/dist/chunk-NM3IFKBL.js +29 -0
  78. package/dist/chunk-NRYNRSGV.js +99 -0
  79. package/dist/chunk-NT2ZO4KI.js +59 -0
  80. package/dist/chunk-P2LJI6JE.js +94 -0
  81. package/dist/chunk-PH7G7ZI7.js +823 -0
  82. package/dist/chunk-PN5332SU.js +209 -0
  83. package/dist/chunk-QF5LGMSV.js +45 -0
  84. package/dist/chunk-QG5RQQBO.js +367 -0
  85. package/dist/chunk-QYPDYN23.js +23 -0
  86. package/dist/chunk-R3NHNVS5.js +478 -0
  87. package/dist/chunk-R3NHNVS5.js.map +1 -0
  88. package/dist/chunk-RNXJ2VO6.js +280 -0
  89. package/dist/chunk-RXTMLYJS.js +97 -0
  90. package/dist/chunk-S2OWPVSO.js +30 -0
  91. package/dist/chunk-S7TAPIRS.js +205 -0
  92. package/dist/chunk-SAL5X5OK.js +40 -0
  93. package/dist/chunk-SGJGWBSC.js +85 -0
  94. package/dist/chunk-SIAIYP6G.js +50 -0
  95. package/dist/chunk-SXPCZ6LL.js +1697 -0
  96. package/dist/chunk-SXPCZ6LL.js.map +1 -0
  97. package/dist/chunk-TBNF5DV5.js +261 -0
  98. package/dist/chunk-TVOHSPVK.js +21 -0
  99. package/dist/chunk-TVS6BUUR.js +41 -0
  100. package/dist/chunk-UMC5QZTX.js +86 -0
  101. package/dist/chunk-US34HTOI.js +367 -0
  102. package/dist/chunk-VCUQR6ZL.js +621 -0
  103. package/dist/chunk-VXZNSPJM.js +957 -0
  104. package/dist/chunk-VXZNSPJM.js.map +1 -0
  105. package/dist/chunk-WEHIQYQH.js +71 -0
  106. package/dist/chunk-WHQHTNT7.js +265 -0
  107. package/dist/chunk-X6Y5MXTH.js +74 -0
  108. package/dist/chunk-XJ47GS53.js +291 -0
  109. package/dist/chunk-XS6DLN67.js +95 -0
  110. package/dist/chunk-Y5TWPBNW.js +91 -0
  111. package/dist/chunk-YCXKFB7J.js +14181 -0
  112. package/dist/chunk-YCXKFB7J.js.map +1 -0
  113. package/dist/chunk-ZHOJOT6S.js +36 -0
  114. package/dist/chunk-ZL6PRULX.js +167 -0
  115. package/dist/chunk-ZL6PRULX.js.map +1 -0
  116. package/dist/classified/index.js +5 -5
  117. package/dist/classified-marker-M7K3OJPM.js +28 -0
  118. package/dist/classified-marker-M7K3OJPM.js.map +1 -0
  119. package/dist/collection-facade-DWA735G2.js +39 -0
  120. package/dist/computed-ORCGM5JE.js +11 -0
  121. package/dist/consent/index.js +9 -9
  122. package/dist/crdt/index.js +1 -1
  123. package/dist/dead-filter-OV5FGKOG.js +28 -0
  124. package/dist/delegation-YVSHMIZZ.js +25 -0
  125. package/dist/derivations/index.js +12 -12
  126. package/dist/derive-BUO555L5.js +21 -0
  127. package/dist/enclave-XXFUKJC6.js +135 -0
  128. package/dist/executor-6OCCE5VM.js +25 -0
  129. package/dist/executor-JFVAJY42.js +9 -0
  130. package/dist/executor-UPSH5O3F.js +9 -0
  131. package/dist/export-accessible-L4A2QZA5.js +23 -0
  132. package/dist/extract-partition-ZHQ4RGGM.js +36 -0
  133. package/dist/fanout-sidecar-IO2KDUWV.js +74 -0
  134. package/dist/find-ZFZDZQ2U.js +11 -0
  135. package/dist/forget/index.js +10 -10
  136. package/dist/forget/index.js.map +1 -1
  137. package/dist/guards/index.js +3 -3
  138. package/dist/history/index.js +11 -11
  139. package/dist/i18n/index.js +15 -15
  140. package/dist/index.d.ts +303 -1492
  141. package/dist/index.js +172 -171
  142. package/dist/index.js.map +1 -1
  143. package/dist/indexing/index.js +5 -5
  144. package/dist/indexing/index.js.map +1 -1
  145. package/dist/issue-OG4V23SQ.js +19 -0
  146. package/dist/kernel/best-effort-revert.d.ts +52 -0
  147. package/dist/kernel/cache/index.d.ts +10 -0
  148. package/dist/kernel/cache/lru.d.ts +97 -0
  149. package/dist/kernel/cache/policy.d.ts +32 -0
  150. package/dist/kernel/collection-config.d.ts +789 -0
  151. package/dist/kernel/collection.d.ts +1519 -0
  152. package/dist/kernel/constants.d.ts +18 -0
  153. package/dist/kernel/debug.d.ts +25 -0
  154. package/dist/kernel/enclave/broker/proof.d.ts +154 -0
  155. package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
  156. package/dist/kernel/enclave/classify/compare.d.ts +10 -0
  157. package/dist/kernel/enclave/classify/digest.d.ts +8 -0
  158. package/dist/kernel/enclave/classify/find.d.ts +36 -0
  159. package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
  160. package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
  161. package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
  162. package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
  163. package/dist/kernel/enclave/classify/verify.d.ts +33 -0
  164. package/dist/kernel/enclave/classify/write.d.ts +8 -0
  165. package/dist/kernel/enclave/crypto.d.ts +263 -0
  166. package/dist/kernel/enclave/index.d.ts +78 -0
  167. package/dist/kernel/enclave/record-keys/deterministic.d.ts +54 -0
  168. package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
  169. package/dist/kernel/enclave/record-keys/lifecycle.d.ts +57 -0
  170. package/dist/kernel/enclave/record-keys/record-codec.d.ts +301 -0
  171. package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
  172. package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
  173. package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
  174. package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
  175. package/dist/kernel/env-check.d.ts +1 -0
  176. package/dist/kernel/errors.d.ts +1848 -0
  177. package/dist/kernel/events.d.ts +11 -0
  178. package/dist/kernel/memory-store.d.ts +17 -0
  179. package/dist/kernel/mutation.d.ts +14 -0
  180. package/dist/kernel/noydb.d.ts +826 -0
  181. package/dist/kernel/paths.d.ts +25 -0
  182. package/dist/kernel/query/builder.d.ts +520 -0
  183. package/dist/kernel/query/index.d.ts +31 -0
  184. package/dist/kernel/query/join.d.ts +205 -0
  185. package/dist/kernel/query/live.d.ts +111 -0
  186. package/dist/kernel/query/predicate.d.ts +139 -0
  187. package/dist/kernel/query/scan-builder.d.ts +334 -0
  188. package/dist/kernel/refs.d.ts +205 -0
  189. package/dist/kernel/schema.d.ts +134 -0
  190. package/dist/kernel/sync-policy.d.ts +188 -0
  191. package/dist/kernel/types.d.ts +3166 -0
  192. package/dist/kernel/util/discriminant.d.ts +58 -0
  193. package/dist/kernel/util/index.d.ts +14 -0
  194. package/dist/kernel/util/sanitize-filename.d.ts +75 -0
  195. package/dist/kernel/validation.d.ts +130 -0
  196. package/dist/kernel/vault.d.ts +1737 -0
  197. package/dist/kernel/via/compose.d.ts +144 -0
  198. package/dist/kernel/via/dispatch.d.ts +185 -0
  199. package/dist/kernel/via/graph-wiring.d.ts +145 -0
  200. package/dist/kernel/via/graph.d.ts +166 -0
  201. package/dist/kernel/via/index.d.ts +200 -0
  202. package/dist/kernel/via/pipeline.d.ts +266 -0
  203. package/dist/kernel/via/reconcile.d.ts +153 -0
  204. package/dist/kernel/via/taint-binding.d.ts +66 -0
  205. package/dist/kernel/write-queue.d.ts +46 -0
  206. package/dist/ledger-UAQKPWNM.js +42 -0
  207. package/dist/legacy/bundle.d.ts +30 -0
  208. package/dist/legacy/kernel.d.ts +33 -0
  209. package/dist/liberate-GFUQJRK5.js +24 -0
  210. package/dist/link-set-DGYUOFVD.js +31 -0
  211. package/dist/materialized-views/index.js +19 -19
  212. package/dist/noydb-AKH4AMCR.js +67 -0
  213. package/dist/on/index.js +9 -9
  214. package/dist/overlay-views/index.js +4 -4
  215. package/dist/periods/index.js +12 -12
  216. package/dist/pod/index.js +11 -11
  217. package/dist/policy-5POYLI26.js +41 -0
  218. package/dist/port/as/index.d.ts +26 -0
  219. package/dist/port/at/index.d.ts +18 -0
  220. package/dist/port/by/default-provider.d.ts +9 -0
  221. package/dist/port/by/index.d.ts +17 -0
  222. package/dist/port/by/types.d.ts +86 -0
  223. package/dist/port/in/index.d.ts +21 -0
  224. package/dist/port/on/index.d.ts +27 -0
  225. package/dist/port/to/index.d.ts +19 -0
  226. package/dist/port/ui/index.d.ts +21 -0
  227. package/dist/port/with/blob-strategy.d.ts +81 -0
  228. package/dist/port/with/broker-strategy.d.ts +84 -0
  229. package/dist/port/with/capabilities.d.ts +31 -0
  230. package/dist/port/with/classified-marker.d.ts +9 -0
  231. package/dist/port/with/classified-strategy.d.ts +62 -0
  232. package/dist/port/with/computed-strategy.d.ts +19 -0
  233. package/dist/port/with/i18n-strategy.d.ts +175 -0
  234. package/dist/port/with/index.d.ts +18 -0
  235. package/dist/port/with/lazy-strategy.d.ts +48 -0
  236. package/dist/port/with/lookup-strategy.d.ts +129 -0
  237. package/dist/port/with/service-bus.d.ts +156 -0
  238. package/dist/port/with/team-strategy.d.ts +36 -0
  239. package/dist/port/with/write-hooks.d.ts +34 -0
  240. package/dist/portability/index.js +8 -8
  241. package/dist/post-register-LB3P4XQU.js +60 -0
  242. package/dist/post-register-LB3P4XQU.js.map +1 -0
  243. package/dist/public-envelope-GOG4LUM7.js +32 -0
  244. package/dist/purge-scope-FGNNLWHD.js +24 -0
  245. package/dist/purge-scope-FGNNLWHD.js.map +1 -0
  246. package/dist/query/index.js +5 -5
  247. package/dist/register-ZI7YI7US.js +23 -0
  248. package/dist/registry-DZ2T4LL7.js +9 -0
  249. package/dist/registry-NVWEQ2GU.js +18 -0
  250. package/dist/registry-SEKL74ET.js +19 -0
  251. package/dist/request-withdrawal-ZP3JIRVS.js +31 -0
  252. package/dist/reveal-NPVROV4D.js +38 -0
  253. package/dist/revoke-VF6TAJK2.js +24 -0
  254. package/dist/satellites/index.js +1 -1
  255. package/dist/sealed-record/index.js +12 -12
  256. package/dist/seed-VI4FU7UH.js +231 -0
  257. package/dist/seed-VI4FU7UH.js.map +1 -0
  258. package/dist/session/index.js +9 -9
  259. package/dist/shadow/index.js +2 -2
  260. package/dist/signer-DRDDCCHW.js +25 -0
  261. package/dist/snapshots/index.js +10 -10
  262. package/dist/stale-TJXFQKOJ.js +14 -0
  263. package/dist/storage-GR7KZRH4.js +23 -0
  264. package/dist/store-coordination-provider-5KDS2RRP.js +142 -0
  265. package/dist/sync/index.js +9 -9
  266. package/dist/team/index.js +15 -15
  267. package/dist/tiers/index.js +10 -10
  268. package/dist/to/index.js +1 -1
  269. package/dist/tx/index.js +3 -3
  270. package/dist/util/index.js +1 -1
  271. package/dist/verify-QK76NJ4G.js +139 -0
  272. package/dist/via/blob/active.d.ts +34 -0
  273. package/dist/via/blob/binding.d.ts +86 -0
  274. package/dist/via/blob/index.d.ts +34 -0
  275. package/dist/via/classified/active.d.ts +3 -0
  276. package/dist/via/classified/binding.d.ts +83 -0
  277. package/dist/via/classified/config-drift.d.ts +34 -0
  278. package/dist/via/classified/descriptor.d.ts +66 -0
  279. package/dist/via/classified/errors.d.ts +19 -0
  280. package/dist/via/classified/guards.d.ts +23 -0
  281. package/dist/via/classified/index.d.ts +11 -0
  282. package/dist/via/classified/presets.d.ts +65 -0
  283. package/dist/via/classified/resolve.d.ts +9 -0
  284. package/dist/via/classified/strategy.d.ts +11 -0
  285. package/dist/via/classified/validators.d.ts +3 -0
  286. package/dist/via/classified/write.d.ts +4 -0
  287. package/dist/via/computed/binding.d.ts +34 -0
  288. package/dist/via/computed/descriptor.d.ts +35 -0
  289. package/dist/via/i18n/active.d.ts +28 -0
  290. package/dist/via/i18n/binding.d.ts +36 -0
  291. package/dist/via/i18n/core.d.ts +267 -0
  292. package/dist/via/i18n/densify.d.ts +24 -0
  293. package/dist/via/i18n/dictionary.d.ts +200 -0
  294. package/dist/via/i18n/index.d.ts +21 -0
  295. package/dist/via/i18n/policy.d.ts +44 -0
  296. package/dist/via/i18n/script.d.ts +26 -0
  297. package/dist/via/i18n/strategy.d.ts +13 -0
  298. package/dist/via/lookup/active.d.ts +19 -0
  299. package/dist/via/lookup/binding.d.ts +99 -0
  300. package/dist/via/lookup/descriptor.d.ts +123 -0
  301. package/dist/via/lookup/handle.d.ts +220 -0
  302. package/dist/via/lookup/index.d.ts +17 -0
  303. package/dist/via/lookup/registry.d.ts +228 -0
  304. package/dist/via/lookup/snapshot.d.ts +67 -0
  305. package/dist/via/money/arith.d.ts +68 -0
  306. package/dist/via/money/binding.d.ts +21 -0
  307. package/dist/via/money/branded.d.ts +61 -0
  308. package/dist/via/money/descriptor.d.ts +73 -0
  309. package/dist/via/money/fixed-point.d.ts +51 -0
  310. package/dist/via/money/index.d.ts +15 -0
  311. package/dist/via/money/iso4217.d.ts +6 -0
  312. package/dist/via/money/money-reducer.d.ts +33 -0
  313. package/dist/via/money/normalize.d.ts +105 -0
  314. package/dist/via/money/paths.d.ts +61 -0
  315. package/dist/via/money/where.d.ts +127 -0
  316. package/dist/walk-XQCBKSBW.js +241 -0
  317. package/dist/with/index.js +11 -11
  318. package/dist/with-audit/attestation/active.d.ts +10 -0
  319. package/dist/with-audit/attestation/index.d.ts +16 -0
  320. package/dist/with-audit/attestation/issue.d.ts +29 -0
  321. package/dist/with-audit/attestation/revoke.d.ts +15 -0
  322. package/dist/with-audit/attestation/signer.d.ts +33 -0
  323. package/dist/with-audit/attestation/strategy.d.ts +44 -0
  324. package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
  325. package/dist/with-audit/consent/active.d.ts +14 -0
  326. package/dist/with-audit/consent/consent.d.ts +114 -0
  327. package/dist/with-audit/consent/index.d.ts +14 -0
  328. package/dist/with-audit/consent/strategy.d.ts +36 -0
  329. package/dist/with-audit/forget/active.d.ts +31 -0
  330. package/dist/with-audit/forget/index.d.ts +28 -0
  331. package/dist/with-audit/forget/purge-scope.d.ts +54 -0
  332. package/dist/with-audit/forget/strategy.d.ts +177 -0
  333. package/dist/with-audit/forget/subject-index.d.ts +83 -0
  334. package/dist/with-audit/guards/executor.d.ts +26 -0
  335. package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
  336. package/dist/with-audit/guards/index.d.ts +10 -0
  337. package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
  338. package/dist/with-audit/guards/registry.d.ts +83 -0
  339. package/dist/with-audit/guards/transition-guard.d.ts +82 -0
  340. package/dist/with-audit/guards/types.d.ts +134 -0
  341. package/dist/with-audit/guards/with-guard.d.ts +15 -0
  342. package/dist/with-audit/periods/active.d.ts +11 -0
  343. package/dist/with-audit/periods/index.d.ts +18 -0
  344. package/dist/with-audit/periods/periods.d.ts +417 -0
  345. package/dist/with-audit/periods/strategy.d.ts +32 -0
  346. package/dist/with-audit/periods/vault-facade.d.ts +95 -0
  347. package/dist/with-audit/portability/active.d.ts +11 -0
  348. package/dist/with-audit/portability/export-accessible.d.ts +46 -0
  349. package/dist/with-audit/portability/index.d.ts +18 -0
  350. package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
  351. package/dist/with-audit/portability/strategy.d.ts +31 -0
  352. package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
  353. package/dist/with-audit/sealed-record/active.d.ts +9 -0
  354. package/dist/with-audit/sealed-record/index.d.ts +55 -0
  355. package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
  356. package/dist/with-audit/sealed-record/types.d.ts +27 -0
  357. package/dist/with-audit/tiers/active.d.ts +9 -0
  358. package/dist/with-audit/tiers/index.d.ts +122 -0
  359. package/dist/with-audit/tiers/strategy.d.ts +35 -0
  360. package/dist/with-cargo/active.d.ts +11 -0
  361. package/dist/with-cargo/adopt-partition.d.ts +81 -0
  362. package/dist/with-cargo/decrypt-partition.d.ts +19 -0
  363. package/dist/with-cargo/describe-extraction.d.ts +33 -0
  364. package/dist/with-cargo/extract-partition.d.ts +147 -0
  365. package/dist/with-cargo/index.d.ts +33 -0
  366. package/dist/with-cargo/strategy.d.ts +30 -0
  367. package/dist/with-cargo/vault-diff.d.ts +144 -0
  368. package/dist/with-cargo/walk-closure.d.ts +38 -0
  369. package/dist/with-commit/crdt/active.d.ts +25 -0
  370. package/dist/with-commit/crdt/crdt.d.ts +42 -0
  371. package/dist/with-commit/crdt/index.d.ts +16 -0
  372. package/dist/with-commit/crdt/strategy.d.ts +25 -0
  373. package/dist/with-commit/history/active.d.ts +40 -0
  374. package/dist/with-commit/history/diff.d.ts +23 -0
  375. package/dist/with-commit/history/history.d.ts +27 -0
  376. package/dist/with-commit/history/index.d.ts +30 -0
  377. package/dist/with-commit/history/ledger/constants.d.ts +37 -0
  378. package/dist/with-commit/history/ledger/entry.d.ts +195 -0
  379. package/dist/with-commit/history/ledger/hash.d.ts +30 -0
  380. package/dist/with-commit/history/ledger/index.d.ts +19 -0
  381. package/dist/with-commit/history/ledger/patch.d.ts +99 -0
  382. package/dist/with-commit/history/ledger/store.d.ts +335 -0
  383. package/dist/with-commit/history/strategy.d.ts +126 -0
  384. package/dist/with-commit/history/time-machine.d.ts +179 -0
  385. package/dist/with-commit/numbering/descriptor.d.ts +27 -0
  386. package/dist/with-commit/numbering/index.d.ts +69 -0
  387. package/dist/with-commit/sequence/active.d.ts +10 -0
  388. package/dist/with-commit/sequence/index.d.ts +150 -0
  389. package/dist/with-commit/sequence/strategy.d.ts +26 -0
  390. package/dist/with-commit/tx/active.d.ts +27 -0
  391. package/dist/with-commit/tx/dry-run.d.ts +29 -0
  392. package/dist/with-commit/tx/elevated-handle.d.ts +58 -0
  393. package/dist/with-commit/tx/index.d.ts +13 -0
  394. package/dist/with-commit/tx/invariants.d.ts +68 -0
  395. package/dist/with-commit/tx/strategy.d.ts +23 -0
  396. package/dist/with-commit/tx/transaction.d.ts +212 -0
  397. package/dist/with-fork/archive/engine.d.ts +71 -0
  398. package/dist/with-fork/archive/index.d.ts +23 -0
  399. package/dist/with-fork/shadow/active.d.ts +6 -0
  400. package/dist/with-fork/shadow/index.d.ts +14 -0
  401. package/dist/with-fork/shadow/strategy.d.ts +28 -0
  402. package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
  403. package/dist/with-fork/snapshots/active.d.ts +20 -0
  404. package/dist/with-fork/snapshots/engine.d.ts +36 -0
  405. package/dist/with-fork/snapshots/index.d.ts +5 -0
  406. package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
  407. package/dist/with-fork/snapshots/policy.d.ts +23 -0
  408. package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
  409. package/dist/with-fork/snapshots/strategy.d.ts +48 -0
  410. package/dist/with-formula/computed/index.d.ts +48 -0
  411. package/dist/with-formula/computed/lazy.d.ts +13 -0
  412. package/dist/with-formula/derivations/executor.d.ts +61 -0
  413. package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
  414. package/dist/with-formula/derivations/index.d.ts +6 -0
  415. package/dist/with-formula/derivations/registry.d.ts +67 -0
  416. package/dist/with-formula/derivations/stale.d.ts +39 -0
  417. package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
  418. package/dist/with-formula/derivations/types.d.ts +248 -0
  419. package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
  420. package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
  421. package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
  422. package/dist/with-formula/materialized-views/executor.d.ts +71 -0
  423. package/dist/with-formula/materialized-views/index.d.ts +11 -0
  424. package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
  425. package/dist/with-formula/materialized-views/registry.d.ts +99 -0
  426. package/dist/with-formula/materialized-views/stale.d.ts +62 -0
  427. package/dist/with-formula/materialized-views/types.d.ts +318 -0
  428. package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
  429. package/dist/with-formula/overlay-views/index.d.ts +5 -0
  430. package/dist/with-formula/overlay-views/registry.d.ts +42 -0
  431. package/dist/with-formula/overlay-views/types.d.ts +97 -0
  432. package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
  433. package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
  434. package/dist/with-lookup/aggregate/active.d.ts +33 -0
  435. package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
  436. package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
  437. package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
  438. package/dist/with-lookup/aggregate/index.d.ts +23 -0
  439. package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
  440. package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
  441. package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
  442. package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
  443. package/dist/with-lookup/embeddings/index.d.ts +3 -0
  444. package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
  445. package/dist/with-lookup/indexing/active.d.ts +30 -0
  446. package/dist/with-lookup/indexing/collection-facade.d.ts +120 -0
  447. package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
  448. package/dist/with-lookup/indexing/index.d.ts +27 -0
  449. package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
  450. package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
  451. package/dist/with-lookup/indexing/strategy.d.ts +56 -0
  452. package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
  453. package/dist/with-lookup/search/active.d.ts +10 -0
  454. package/dist/with-lookup/search/build-docs.d.ts +15 -0
  455. package/dist/with-lookup/search/collection-facade.d.ts +123 -0
  456. package/dist/with-lookup/search/fuse.d.ts +22 -0
  457. package/dist/with-lookup/search/index-store.d.ts +19 -0
  458. package/dist/with-lookup/search/index.d.ts +19 -0
  459. package/dist/with-lookup/search/inverted-index.d.ts +47 -0
  460. package/dist/with-lookup/search/persisted-index-store.d.ts +41 -0
  461. package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
  462. package/dist/with-lookup/search/scan.d.ts +28 -0
  463. package/dist/with-lookup/search/segment.d.ts +15 -0
  464. package/dist/with-lookup/search/serialize.d.ts +4 -0
  465. package/dist/with-lookup/search/snippet.d.ts +5 -0
  466. package/dist/with-lookup/search/strategy.d.ts +37 -0
  467. package/dist/with-lookup/search/tokenize.d.ts +12 -0
  468. package/dist/with-party/auth-introspection/index.d.ts +44 -0
  469. package/dist/with-party/broker/active.d.ts +23 -0
  470. package/dist/with-party/broker/index.d.ts +28 -0
  471. package/dist/with-party/broker/seed.d.ts +77 -0
  472. package/dist/with-party/custody/active.d.ts +10 -0
  473. package/dist/with-party/custody/index.d.ts +69 -0
  474. package/dist/with-party/custody/liberate.d.ts +64 -0
  475. package/dist/with-party/custody/strategy.d.ts +48 -0
  476. package/dist/with-party/directory/index.d.ts +11 -0
  477. package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
  478. package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
  479. package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
  480. package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
  481. package/dist/with-party/directory/storage.d.ts +33 -0
  482. package/dist/with-party/directory/types.d.ts +43 -0
  483. package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
  484. package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
  485. package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
  486. package/dist/with-party/directory/visibility.d.ts +47 -0
  487. package/dist/with-party/policy/engine.d.ts +60 -0
  488. package/dist/with-party/policy/index.d.ts +15 -0
  489. package/dist/with-party/policy/noydb-facade.d.ts +39 -0
  490. package/dist/with-party/policy/presets.d.ts +38 -0
  491. package/dist/with-party/policy/storage.d.ts +31 -0
  492. package/dist/with-party/session/active.d.ts +34 -0
  493. package/dist/with-party/session/dev-unlock.d.ts +128 -0
  494. package/dist/with-party/session/index.d.ts +23 -0
  495. package/dist/with-party/session/session-policy.d.ts +92 -0
  496. package/dist/with-party/session/session.d.ts +131 -0
  497. package/dist/with-party/session/strategy.d.ts +42 -0
  498. package/dist/with-party/session/unlock-state.d.ts +47 -0
  499. package/dist/with-party/sync/index.d.ts +31 -0
  500. package/dist/with-party/tab-coordination.d.ts +73 -0
  501. package/dist/with-party/tab-write-relay.d.ts +39 -0
  502. package/dist/with-party/team/active.d.ts +13 -0
  503. package/dist/with-party/team/authenticators.d.ts +95 -0
  504. package/dist/with-party/team/deed.d.ts +97 -0
  505. package/dist/with-party/team/delegation.d.ts +88 -0
  506. package/dist/with-party/team/index.d.ts +38 -0
  507. package/dist/with-party/team/keyring.d.ts +318 -0
  508. package/dist/with-party/team/magic-link-grant.d.ts +152 -0
  509. package/dist/with-party/team/managed-passphrase.d.ts +280 -0
  510. package/dist/with-party/team/noydb-facade.d.ts +484 -0
  511. package/dist/with-party/team/peer-recover.d.ts +81 -0
  512. package/dist/with-party/team/presence.d.ts +81 -0
  513. package/dist/with-party/team/recovery.d.ts +191 -0
  514. package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
  515. package/dist/with-party/team/rotate-recover.d.ts +275 -0
  516. package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
  517. package/dist/with-party/team/strategy.d.ts +9 -0
  518. package/dist/with-party/team/sync-active.d.ts +33 -0
  519. package/dist/with-party/team/sync-credentials.d.ts +113 -0
  520. package/dist/with-party/team/sync-strategy.d.ts +67 -0
  521. package/dist/with-party/team/sync-transaction.d.ts +39 -0
  522. package/dist/with-party/team/sync.d.ts +174 -0
  523. package/dist/with-party/team/tiers.d.ts +39 -0
  524. package/dist/with-party/team/wrapped-deks.d.ts +86 -0
  525. package/dist/with-pod/backup.d.ts +74 -0
  526. package/dist/with-pod/bundle.d.ts +414 -0
  527. package/dist/with-pod/format.d.ts +203 -0
  528. package/dist/with-pod/index.d.ts +20 -0
  529. package/dist/with-pod/pod-store.d.ts +54 -0
  530. package/dist/with-pod/ulid.d.ts +64 -0
  531. package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
  532. package/dist/with-shape/blobs/blob-set.d.ts +342 -0
  533. package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
  534. package/dist/with-shape/blobs/import-external.d.ts +50 -0
  535. package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
  536. package/dist/with-shape/blobs/object-projection.d.ts +70 -0
  537. package/dist/with-shape/introspection/describe.d.ts +237 -0
  538. package/dist/with-shape/introspection/field-meta.d.ts +61 -0
  539. package/dist/with-shape/introspection/fields.d.ts +14 -0
  540. package/dist/with-shape/introspection/index.d.ts +12 -0
  541. package/dist/with-shape/introspection/json-schema.d.ts +13 -0
  542. package/dist/with-shape/introspection/meta.d.ts +22 -0
  543. package/dist/with-shape/introspection/projection.d.ts +13 -0
  544. package/dist/with-shape/introspection/types.d.ts +154 -0
  545. package/dist/with-shape/introspection/walk.d.ts +50 -0
  546. package/dist/with-shape/links/lazy-handle.d.ts +36 -0
  547. package/dist/with-shape/links/link-set.d.ts +67 -0
  548. package/dist/with-shape/links/names.d.ts +65 -0
  549. package/dist/with-shape/links/vault-facade.d.ts +211 -0
  550. package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
  551. package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
  552. package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
  553. package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
  554. package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
  555. package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
  556. package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
  557. package/dist/with-shape/satellites/declare.d.ts +60 -0
  558. package/dist/with-shape/satellites/existence.d.ts +5 -0
  559. package/dist/with-shape/satellites/fanout.d.ts +38 -0
  560. package/dist/with-shape/satellites/forget.d.ts +47 -0
  561. package/dist/with-shape/satellites/index.d.ts +3 -0
  562. package/dist/with-shape/satellites/joined.d.ts +19 -0
  563. package/dist/with-shape/satellites/marker.d.ts +10 -0
  564. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  565. package/dist/with-shape/satellites/post-register.d.ts +6 -0
  566. package/dist/with-shape/satellites/proxy.d.ts +37 -0
  567. package/dist/with-shape/satellites/raw-target.d.ts +14 -0
  568. package/dist/with-shape/satellites/registry.d.ts +19 -0
  569. package/dist/with-shape/satellites/types.d.ts +37 -0
  570. package/dist/with-shape/satellites/validate.d.ts +17 -0
  571. package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
  572. package/dist/with-shape/schema-update/cutover.d.ts +5 -0
  573. package/dist/with-shape/schema-update/delta.d.ts +2 -0
  574. package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
  575. package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
  576. package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
  577. package/dist/with-shape/schema-update/fence.d.ts +15 -0
  578. package/dist/with-shape/schema-update/gate.d.ts +16 -0
  579. package/dist/with-shape/schema-update/index.d.ts +6 -0
  580. package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
  581. package/dist/with-shape/schema-update/strategies.d.ts +12 -0
  582. package/dist/with-shape/schema-update/types.d.ts +53 -0
  583. package/dist/with-store/index.d.ts +15 -0
  584. package/dist/with-store/lazy/active.d.ts +12 -0
  585. package/dist/with-store/lazy/index.d.ts +14 -0
  586. package/dist/with-store/lazy/strategy.d.ts +9 -0
  587. package/dist/with-store/route-store.d.ts +259 -0
  588. package/dist/with-store/store-middleware.d.ts +189 -0
  589. package/dist/withdraw-accessible-FMN4LPJZ.js +28 -0
  590. package/package.json +47 -43
  591. package/dist/aggregate/index.d.ts +0 -41
  592. package/dist/api-TX2EX2FX.js +0 -20
  593. package/dist/as/index.d.ts +0 -6
  594. package/dist/at/index.d.ts +0 -4
  595. package/dist/attestation/index.d.ts +0 -19
  596. package/dist/backup-R7NTDFKY.js +0 -225
  597. package/dist/blobs/index.d.ts +0 -43
  598. package/dist/bundle/index.d.ts +0 -121
  599. package/dist/bundle-D6GxiUfq.d.ts +0 -548
  600. package/dist/by/index.d.ts +0 -1
  601. package/dist/cargo/index.d.ts +0 -7
  602. package/dist/chunk-2OV5NVE7.js +0 -95
  603. package/dist/chunk-2OZXVKVP.js +0 -367
  604. package/dist/chunk-2REPHKET.js +0 -54
  605. package/dist/chunk-3JXPAHOZ.js +0 -686
  606. package/dist/chunk-3MATJ6O4.js +0 -367
  607. package/dist/chunk-3OPY6MK2.js +0 -404
  608. package/dist/chunk-3QSIU3UT.js +0 -291
  609. package/dist/chunk-4OMCIY6F.js +0 -99
  610. package/dist/chunk-5I35DOHK.js +0 -94
  611. package/dist/chunk-5VG4IJR7.js +0 -235
  612. package/dist/chunk-5YESYH2C.js +0 -155
  613. package/dist/chunk-6G5ORS5D.js +0 -202
  614. package/dist/chunk-6P5XCKSD.js +0 -71
  615. package/dist/chunk-6S7T6WC4.js +0 -111
  616. package/dist/chunk-6S7T6WC4.js.map +0 -1
  617. package/dist/chunk-7BWJHO2A.js +0 -34
  618. package/dist/chunk-7P2SDJG3.js +0 -279
  619. package/dist/chunk-7P2SDJG3.js.map +0 -1
  620. package/dist/chunk-ANB77BVV.js +0 -150
  621. package/dist/chunk-ANB77BVV.js.map +0 -1
  622. package/dist/chunk-BKARNZJN.js +0 -382
  623. package/dist/chunk-BQISD5ZV.js +0 -261
  624. package/dist/chunk-BUAQ7YI3.js +0 -1697
  625. package/dist/chunk-BUAQ7YI3.js.map +0 -1
  626. package/dist/chunk-CB7CWSKW.js +0 -430
  627. package/dist/chunk-CB7CWSKW.js.map +0 -1
  628. package/dist/chunk-DFVUTGT2.js +0 -515
  629. package/dist/chunk-DJ7KIPLV.js +0 -23
  630. package/dist/chunk-DSKDQP3G.js +0 -14066
  631. package/dist/chunk-DSKDQP3G.js.map +0 -1
  632. package/dist/chunk-DV4HUP5G.js +0 -99
  633. package/dist/chunk-EOXAAJTY.js +0 -621
  634. package/dist/chunk-ET67AY6B.js +0 -74
  635. package/dist/chunk-F4CEK5YM.js +0 -123
  636. package/dist/chunk-FORYWFN6.js +0 -130
  637. package/dist/chunk-FRP6D2DM.js +0 -91
  638. package/dist/chunk-FUOE7UUV.js +0 -341
  639. package/dist/chunk-FUOE7UUV.js.map +0 -1
  640. package/dist/chunk-G4JYND6L.js +0 -42
  641. package/dist/chunk-G6XV4H65.js +0 -59
  642. package/dist/chunk-GNMXXTMN.js +0 -85
  643. package/dist/chunk-HPWKV3YB.js +0 -21
  644. package/dist/chunk-HY3AUMFI.js +0 -41
  645. package/dist/chunk-HYR4WZZ3.js +0 -69
  646. package/dist/chunk-ICXIFFYZ.js +0 -355
  647. package/dist/chunk-ICXIFFYZ.js.map +0 -1
  648. package/dist/chunk-IVLTXX4W.js +0 -280
  649. package/dist/chunk-J4LPNIGK.js +0 -777
  650. package/dist/chunk-JJZ2LW6T.js +0 -36
  651. package/dist/chunk-KJ2BCBTL.js +0 -589
  652. package/dist/chunk-KNZB6JMR.js +0 -129
  653. package/dist/chunk-LEJIKBBB.js +0 -124
  654. package/dist/chunk-LL2NIVUR.js +0 -188
  655. package/dist/chunk-MCHVVJIA.js +0 -968
  656. package/dist/chunk-MCHVVJIA.js.map +0 -1
  657. package/dist/chunk-NUEQU36L.js +0 -392
  658. package/dist/chunk-O45M6LDB.js +0 -38
  659. package/dist/chunk-OBKWYKYC.js +0 -117
  660. package/dist/chunk-OHHKHSJP.js +0 -209
  661. package/dist/chunk-OT76OZL6.js +0 -45
  662. package/dist/chunk-OVYRLHPE.js +0 -150
  663. package/dist/chunk-OXCSVM3B.js +0 -155
  664. package/dist/chunk-P33LUIML.js +0 -205
  665. package/dist/chunk-PLS64NCS.js +0 -59
  666. package/dist/chunk-PS2NEWEX.js +0 -36
  667. package/dist/chunk-QA2KUPCP.js +0 -45
  668. package/dist/chunk-QOC3VYL2.js +0 -30
  669. package/dist/chunk-QSFOZUYL.js +0 -823
  670. package/dist/chunk-RHK32N73.js +0 -30
  671. package/dist/chunk-RW3Y22MW.js +0 -97
  672. package/dist/chunk-S7VFUQM2.js +0 -1484
  673. package/dist/chunk-S7VFUQM2.js.map +0 -1
  674. package/dist/chunk-T7WSLRAU.js +0 -49
  675. package/dist/chunk-TAKWLZZX.js +0 -944
  676. package/dist/chunk-TAKWLZZX.js.map +0 -1
  677. package/dist/chunk-TMBXVJKT.js +0 -75
  678. package/dist/chunk-TWKKOM55.js +0 -54
  679. package/dist/chunk-U3WZCU7E.js +0 -14
  680. package/dist/chunk-UF362QVH.js +0 -70
  681. package/dist/chunk-UN4FVIBH.js +0 -135
  682. package/dist/chunk-VEAVKDDB.js +0 -29
  683. package/dist/chunk-VEPTFUJY.js +0 -29
  684. package/dist/chunk-VJV7GKQK.js +0 -662
  685. package/dist/chunk-VQRAIPYF.js +0 -50
  686. package/dist/chunk-VRIYFLBA.js +0 -74
  687. package/dist/chunk-VWM3DAVB.js +0 -265
  688. package/dist/chunk-VWRRVE6D.js +0 -80
  689. package/dist/chunk-WBJIQSLL.js +0 -167
  690. package/dist/chunk-WBJIQSLL.js.map +0 -1
  691. package/dist/chunk-WIGQB62E.js +0 -164
  692. package/dist/chunk-WZSCE6RM.js +0 -466
  693. package/dist/chunk-WZSCE6RM.js.map +0 -1
  694. package/dist/chunk-XGDAPN6M.js +0 -255
  695. package/dist/chunk-XH7XP3OL.js +0 -1221
  696. package/dist/chunk-XREOISSI.js +0 -40
  697. package/dist/chunk-XUBPSPKD.js +0 -164
  698. package/dist/chunk-Y3A5CB5G.js +0 -247
  699. package/dist/chunk-YCXCR7VG.js +0 -230
  700. package/dist/chunk-YMVQD5Q5.js +0 -453
  701. package/dist/chunk-YN5IAHN6.js +0 -32
  702. package/dist/chunk-YN5IAHN6.js.map +0 -1
  703. package/dist/chunk-ZYJ55N7N.js +0 -86
  704. package/dist/classified/index.d.ts +0 -16
  705. package/dist/classified-marker-H6YSHYNK.js +0 -24
  706. package/dist/classified-marker-H6YSHYNK.js.map +0 -1
  707. package/dist/collection-facade-LVD22JLM.js +0 -39
  708. package/dist/computed-EXDMQODG.js +0 -11
  709. package/dist/consent/index.d.ts +0 -22
  710. package/dist/crdt/index.d.ts +0 -33
  711. package/dist/dead-filter-HQIE2YG7.js +0 -28
  712. package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
  713. package/dist/delegation-BJP73GAP.js +0 -25
  714. package/dist/derivations/index.d.ts +0 -69
  715. package/dist/derive-BME7HDWO.js +0 -21
  716. package/dist/dev-unlock-Bmm2pgJ0.d.ts +0 -263
  717. package/dist/discriminant-BN9REW3o.d.ts +0 -60
  718. package/dist/enclave-NHORSWSF.js +0 -125
  719. package/dist/executor-FE6X4LFX.js +0 -9
  720. package/dist/executor-KSHKRJXP.js +0 -25
  721. package/dist/executor-ZHTJJICG.js +0 -9
  722. package/dist/export-accessible-DACHM5VT.js +0 -23
  723. package/dist/extract-partition-RNENZZ4T.js +0 -36
  724. package/dist/fanout-sidecar-OFWN3NM7.js +0 -74
  725. package/dist/find-BNGBJNKP.js +0 -11
  726. package/dist/forget/index.d.ts +0 -36
  727. package/dist/guards/index.d.ts +0 -34
  728. package/dist/hash-DAJjMsCE.d.ts +0 -72
  729. package/dist/history/index.d.ts +0 -60
  730. package/dist/i18n/index.d.ts +0 -56
  731. package/dist/in/index.d.ts +0 -4
  732. package/dist/index-B9QdHytu.d.ts +0 -123
  733. package/dist/index-DjWbxsjb.d.ts +0 -23579
  734. package/dist/index-qwuNvO2B.d.ts +0 -144
  735. package/dist/indexing/index.d.ts +0 -38
  736. package/dist/issue-NDI4CVZU.js +0 -19
  737. package/dist/lazy/index.d.ts +0 -20
  738. package/dist/ledger-6NDS2EO4.js +0 -42
  739. package/dist/liberate-HN3RIGIP.js +0 -24
  740. package/dist/link-set-SJB2MVJV.js +0 -31
  741. package/dist/materialized-views/index.d.ts +0 -189
  742. package/dist/mime-magic-bBj5OgUC.d.ts +0 -103
  743. package/dist/noydb-BWF6EPIR.js +0 -66
  744. package/dist/on/index.d.ts +0 -4
  745. package/dist/overlay-views/index.d.ts +0 -97
  746. package/dist/periods/index.d.ts +0 -19
  747. package/dist/pod/index.d.ts +0 -62
  748. package/dist/policy-WGNAG5H6.js +0 -41
  749. package/dist/portability/index.d.ts +0 -19
  750. package/dist/post-register-CWKBQRC7.js +0 -55
  751. package/dist/post-register-CWKBQRC7.js.map +0 -1
  752. package/dist/public-envelope-EJLVIFX7.js +0 -32
  753. package/dist/query/index.d.ts +0 -4
  754. package/dist/register-SBIX7TVV.js +0 -23
  755. package/dist/registry-3EQG6OOE.js +0 -18
  756. package/dist/registry-CA327ACV.js +0 -9
  757. package/dist/registry-E7OXOTSV.js +0 -19
  758. package/dist/request-withdrawal-KAH2AAXC.js +0 -31
  759. package/dist/reveal-R3JLHMUF.js +0 -38
  760. package/dist/revoke-IXLOJ3IH.js +0 -24
  761. package/dist/satellites/index.d.ts +0 -4
  762. package/dist/sealed-record/index.d.ts +0 -68
  763. package/dist/session/index.d.ts +0 -43
  764. package/dist/shadow/index.d.ts +0 -14
  765. package/dist/signer-Y46N2GJ3.js +0 -25
  766. package/dist/snapshots/index.d.ts +0 -25
  767. package/dist/stale-Z7IW6RIL.js +0 -14
  768. package/dist/storage-ADNP2UWI.js +0 -23
  769. package/dist/store-coordination-provider-DTDMI6VL.js +0 -142
  770. package/dist/subject-index-CyOgGMJL.d.ts +0 -380
  771. package/dist/sync/index.d.ts +0 -40
  772. package/dist/team/index.d.ts +0 -154
  773. package/dist/tiers/index.d.ts +0 -4
  774. package/dist/to/index.d.ts +0 -4
  775. package/dist/transition-guard-DI-krBsZ.d.ts +0 -165
  776. package/dist/tx/index.d.ts +0 -34
  777. package/dist/ui/index.d.ts +0 -4
  778. package/dist/ulid-DRH25k3y.d.ts +0 -66
  779. package/dist/util/index.d.ts +0 -79
  780. package/dist/validators-BUcli5Nh.d.ts +0 -101
  781. package/dist/vault-diff-Z2DUayMe.d.ts +0 -147
  782. package/dist/verify-JPF2YR5E.js +0 -139
  783. package/dist/walk-XYA2O3LW.js +0 -241
  784. package/dist/with/index.d.ts +0 -37
  785. package/dist/with-materialized-view-BUmzlXue.d.ts +0 -27
  786. package/dist/with-overlayed-view-m4FaXXTO.d.ts +0 -12
  787. package/dist/with-rollup-DEKGI9vb.d.ts +0 -47
  788. package/dist/withdraw-accessible-WLV4MTEN.js +0 -28
  789. /package/dist/{api-TX2EX2FX.js.map → api-3TH2GOFQ.js.map} +0 -0
  790. /package/dist/{backup-R7NTDFKY.js.map → backup-2WVBIVXW.js.map} +0 -0
  791. /package/dist/{chunk-TMBXVJKT.js.map → chunk-2MTRJCBI.js.map} +0 -0
  792. /package/dist/{chunk-3OPY6MK2.js.map → chunk-37WOJQWY.js.map} +0 -0
  793. /package/dist/{chunk-KJ2BCBTL.js.map → chunk-3QSOFZQB.js.map} +0 -0
  794. /package/dist/{chunk-DV4HUP5G.js.map → chunk-44IL5G3W.js.map} +0 -0
  795. /package/dist/{chunk-HYR4WZZ3.js.map → chunk-45QPICLE.js.map} +0 -0
  796. /package/dist/{chunk-XUBPSPKD.js.map → chunk-4BQXMCE5.js.map} +0 -0
  797. /package/dist/{chunk-RHK32N73.js.map → chunk-5HNX4OD4.js.map} +0 -0
  798. /package/dist/{chunk-2REPHKET.js.map → chunk-65VLRG3I.js.map} +0 -0
  799. /package/dist/{chunk-G6XV4H65.js.map → chunk-6MA575R5.js.map} +0 -0
  800. /package/dist/{chunk-F4CEK5YM.js.map → chunk-7GAXFU2O.js.map} +0 -0
  801. /package/dist/{chunk-6G5ORS5D.js.map → chunk-7QLY64AD.js.map} +0 -0
  802. /package/dist/{chunk-5VG4IJR7.js.map → chunk-7ZOSHEVS.js.map} +0 -0
  803. /package/dist/{chunk-LEJIKBBB.js.map → chunk-APHLCXVC.js.map} +0 -0
  804. /package/dist/{chunk-KNZB6JMR.js.map → chunk-BDEMZD4F.js.map} +0 -0
  805. /package/dist/{chunk-VJV7GKQK.js.map → chunk-BDPAVYGJ.js.map} +0 -0
  806. /package/dist/{chunk-G4JYND6L.js.map → chunk-BLUT46UP.js.map} +0 -0
  807. /package/dist/{chunk-J4LPNIGK.js.map → chunk-CCIR2OJH.js.map} +0 -0
  808. /package/dist/{chunk-5YESYH2C.js.map → chunk-CXC3JLAQ.js.map} +0 -0
  809. /package/dist/{chunk-XH7XP3OL.js.map → chunk-CZMCOFEA.js.map} +0 -0
  810. /package/dist/{chunk-WIGQB62E.js.map → chunk-DIB2BOIH.js.map} +0 -0
  811. /package/dist/{chunk-UF362QVH.js.map → chunk-EIZ4YOG2.js.map} +0 -0
  812. /package/dist/{chunk-DFVUTGT2.js.map → chunk-EVHBK7BN.js.map} +0 -0
  813. /package/dist/{chunk-ET67AY6B.js.map → chunk-EXGDL2UQ.js.map} +0 -0
  814. /package/dist/{chunk-YMVQD5Q5.js.map → chunk-F3LGBRSV.js.map} +0 -0
  815. /package/dist/{chunk-NUEQU36L.js.map → chunk-F44XWXOA.js.map} +0 -0
  816. /package/dist/{chunk-YCXCR7VG.js.map → chunk-FF7S3XDW.js.map} +0 -0
  817. /package/dist/{chunk-OXCSVM3B.js.map → chunk-FJTWLQV3.js.map} +0 -0
  818. /package/dist/{chunk-PS2NEWEX.js.map → chunk-FYNE4WLC.js.map} +0 -0
  819. /package/dist/{chunk-FORYWFN6.js.map → chunk-GL3JV5EV.js.map} +0 -0
  820. /package/dist/{chunk-VEAVKDDB.js.map → chunk-GXLZXD2W.js.map} +0 -0
  821. /package/dist/{chunk-3JXPAHOZ.js.map → chunk-HBBZWEC5.js.map} +0 -0
  822. /package/dist/{chunk-LL2NIVUR.js.map → chunk-HG76BZ6G.js.map} +0 -0
  823. /package/dist/{chunk-O45M6LDB.js.map → chunk-HGAB325C.js.map} +0 -0
  824. /package/dist/{chunk-T7WSLRAU.js.map → chunk-HK4XTXO4.js.map} +0 -0
  825. /package/dist/{chunk-U3WZCU7E.js.map → chunk-HYG32HCM.js.map} +0 -0
  826. /package/dist/{chunk-UN4FVIBH.js.map → chunk-ILF5GARW.js.map} +0 -0
  827. /package/dist/{chunk-BKARNZJN.js.map → chunk-INBQ43DI.js.map} +0 -0
  828. /package/dist/{chunk-Y3A5CB5G.js.map → chunk-IQIVD7TP.js.map} +0 -0
  829. /package/dist/{chunk-QA2KUPCP.js.map → chunk-J3JIYFYL.js.map} +0 -0
  830. /package/dist/{chunk-OVYRLHPE.js.map → chunk-JGUZMC3I.js.map} +0 -0
  831. /package/dist/{chunk-VWRRVE6D.js.map → chunk-JRKE5MAZ.js.map} +0 -0
  832. /package/dist/{chunk-XGDAPN6M.js.map → chunk-K2DLLK34.js.map} +0 -0
  833. /package/dist/{chunk-7BWJHO2A.js.map → chunk-KKYEZCQG.js.map} +0 -0
  834. /package/dist/{chunk-TWKKOM55.js.map → chunk-NAR6IDKH.js.map} +0 -0
  835. /package/dist/{chunk-OBKWYKYC.js.map → chunk-NEYKOESM.js.map} +0 -0
  836. /package/dist/{chunk-VEPTFUJY.js.map → chunk-NM3IFKBL.js.map} +0 -0
  837. /package/dist/{chunk-4OMCIY6F.js.map → chunk-NRYNRSGV.js.map} +0 -0
  838. /package/dist/{chunk-PLS64NCS.js.map → chunk-NT2ZO4KI.js.map} +0 -0
  839. /package/dist/{chunk-5I35DOHK.js.map → chunk-P2LJI6JE.js.map} +0 -0
  840. /package/dist/{chunk-QSFOZUYL.js.map → chunk-PH7G7ZI7.js.map} +0 -0
  841. /package/dist/{chunk-OHHKHSJP.js.map → chunk-PN5332SU.js.map} +0 -0
  842. /package/dist/{chunk-OT76OZL6.js.map → chunk-QF5LGMSV.js.map} +0 -0
  843. /package/dist/{chunk-3MATJ6O4.js.map → chunk-QG5RQQBO.js.map} +0 -0
  844. /package/dist/{chunk-DJ7KIPLV.js.map → chunk-QYPDYN23.js.map} +0 -0
  845. /package/dist/{chunk-IVLTXX4W.js.map → chunk-RNXJ2VO6.js.map} +0 -0
  846. /package/dist/{chunk-RW3Y22MW.js.map → chunk-RXTMLYJS.js.map} +0 -0
  847. /package/dist/{chunk-QOC3VYL2.js.map → chunk-S2OWPVSO.js.map} +0 -0
  848. /package/dist/{chunk-P33LUIML.js.map → chunk-S7TAPIRS.js.map} +0 -0
  849. /package/dist/{chunk-XREOISSI.js.map → chunk-SAL5X5OK.js.map} +0 -0
  850. /package/dist/{chunk-GNMXXTMN.js.map → chunk-SGJGWBSC.js.map} +0 -0
  851. /package/dist/{chunk-VQRAIPYF.js.map → chunk-SIAIYP6G.js.map} +0 -0
  852. /package/dist/{chunk-BQISD5ZV.js.map → chunk-TBNF5DV5.js.map} +0 -0
  853. /package/dist/{chunk-HPWKV3YB.js.map → chunk-TVOHSPVK.js.map} +0 -0
  854. /package/dist/{chunk-HY3AUMFI.js.map → chunk-TVS6BUUR.js.map} +0 -0
  855. /package/dist/{chunk-ZYJ55N7N.js.map → chunk-UMC5QZTX.js.map} +0 -0
  856. /package/dist/{chunk-2OZXVKVP.js.map → chunk-US34HTOI.js.map} +0 -0
  857. /package/dist/{chunk-EOXAAJTY.js.map → chunk-VCUQR6ZL.js.map} +0 -0
  858. /package/dist/{chunk-6P5XCKSD.js.map → chunk-WEHIQYQH.js.map} +0 -0
  859. /package/dist/{chunk-VWM3DAVB.js.map → chunk-WHQHTNT7.js.map} +0 -0
  860. /package/dist/{chunk-VRIYFLBA.js.map → chunk-X6Y5MXTH.js.map} +0 -0
  861. /package/dist/{chunk-3QSIU3UT.js.map → chunk-XJ47GS53.js.map} +0 -0
  862. /package/dist/{chunk-2OV5NVE7.js.map → chunk-XS6DLN67.js.map} +0 -0
  863. /package/dist/{chunk-FRP6D2DM.js.map → chunk-Y5TWPBNW.js.map} +0 -0
  864. /package/dist/{chunk-JJZ2LW6T.js.map → chunk-ZHOJOT6S.js.map} +0 -0
  865. /package/dist/{collection-facade-LVD22JLM.js.map → collection-facade-DWA735G2.js.map} +0 -0
  866. /package/dist/{computed-EXDMQODG.js.map → computed-ORCGM5JE.js.map} +0 -0
  867. /package/dist/{dead-filter-HQIE2YG7.js.map → dead-filter-OV5FGKOG.js.map} +0 -0
  868. /package/dist/{delegation-BJP73GAP.js.map → delegation-YVSHMIZZ.js.map} +0 -0
  869. /package/dist/{derive-BME7HDWO.js.map → derive-BUO555L5.js.map} +0 -0
  870. /package/dist/{enclave-NHORSWSF.js.map → enclave-XXFUKJC6.js.map} +0 -0
  871. /package/dist/{executor-FE6X4LFX.js.map → executor-6OCCE5VM.js.map} +0 -0
  872. /package/dist/{executor-KSHKRJXP.js.map → executor-JFVAJY42.js.map} +0 -0
  873. /package/dist/{executor-ZHTJJICG.js.map → executor-UPSH5O3F.js.map} +0 -0
  874. /package/dist/{export-accessible-DACHM5VT.js.map → export-accessible-L4A2QZA5.js.map} +0 -0
  875. /package/dist/{extract-partition-RNENZZ4T.js.map → extract-partition-ZHQ4RGGM.js.map} +0 -0
  876. /package/dist/{fanout-sidecar-OFWN3NM7.js.map → fanout-sidecar-IO2KDUWV.js.map} +0 -0
  877. /package/dist/{find-BNGBJNKP.js.map → find-ZFZDZQ2U.js.map} +0 -0
  878. /package/dist/{issue-NDI4CVZU.js.map → issue-OG4V23SQ.js.map} +0 -0
  879. /package/dist/{ledger-6NDS2EO4.js.map → ledger-UAQKPWNM.js.map} +0 -0
  880. /package/dist/{liberate-HN3RIGIP.js.map → liberate-GFUQJRK5.js.map} +0 -0
  881. /package/dist/{link-set-SJB2MVJV.js.map → link-set-DGYUOFVD.js.map} +0 -0
  882. /package/dist/{noydb-BWF6EPIR.js.map → noydb-AKH4AMCR.js.map} +0 -0
  883. /package/dist/{policy-WGNAG5H6.js.map → policy-5POYLI26.js.map} +0 -0
  884. /package/dist/{public-envelope-EJLVIFX7.js.map → public-envelope-GOG4LUM7.js.map} +0 -0
  885. /package/dist/{register-SBIX7TVV.js.map → register-ZI7YI7US.js.map} +0 -0
  886. /package/dist/{registry-3EQG6OOE.js.map → registry-DZ2T4LL7.js.map} +0 -0
  887. /package/dist/{registry-CA327ACV.js.map → registry-NVWEQ2GU.js.map} +0 -0
  888. /package/dist/{registry-E7OXOTSV.js.map → registry-SEKL74ET.js.map} +0 -0
  889. /package/dist/{request-withdrawal-KAH2AAXC.js.map → request-withdrawal-ZP3JIRVS.js.map} +0 -0
  890. /package/dist/{reveal-R3JLHMUF.js.map → reveal-NPVROV4D.js.map} +0 -0
  891. /package/dist/{revoke-IXLOJ3IH.js.map → revoke-VF6TAJK2.js.map} +0 -0
  892. /package/dist/{signer-Y46N2GJ3.js.map → signer-DRDDCCHW.js.map} +0 -0
  893. /package/dist/{stale-Z7IW6RIL.js.map → stale-TJXFQKOJ.js.map} +0 -0
  894. /package/dist/{storage-ADNP2UWI.js.map → storage-GR7KZRH4.js.map} +0 -0
  895. /package/dist/{store-coordination-provider-DTDMI6VL.js.map → store-coordination-provider-5KDS2RRP.js.map} +0 -0
  896. /package/dist/{verify-JPF2YR5E.js.map → verify-QK76NJ4G.js.map} +0 -0
  897. /package/dist/{walk-XYA2O3LW.js.map → walk-XQCBKSBW.js.map} +0 -0
  898. /package/dist/{withdraw-accessible-WLV4MTEN.js.map → withdraw-accessible-FMN4LPJZ.js.map} +0 -0
@@ -0,0 +1,267 @@
1
+ /**
2
+ * i18nText schema type —
3
+ *
4
+ * `i18nText({ languages, required })` creates a descriptor for a
5
+ * multi-language content field whose value is stored as a
6
+ * `{ [locale]: string }` map (e.g. `{ en: 'Consulting', th: 'ที่ปรึกษา' }`).
7
+ *
8
+ * On put, the descriptor validates that required languages are present.
9
+ * On read (when a `locale` option is passed), the map is collapsed to the
10
+ * caller's locale string via the fallback chain.
11
+ *
12
+ * Design decisions
13
+ * ────────────────
14
+ *
15
+ * **Descriptor pattern (not a Zod type).**
16
+ * `i18nText()` returns a plain descriptor object used in the collection's
17
+ * `i18nFields` option — same pattern as `ref()` / `dictKey()`. This keeps
18
+ * `@noy-db/core` at zero runtime dependencies and avoids Zod v3 field-type
19
+ * constraints. TypeScript inference is handled via the descriptor's type.
20
+ *
21
+ * **Enforcement at the collection boundary.**
22
+ * The `required` option is checked by `Collection.put()` via the compartment's
23
+ * registered `i18nFields`. Failed validation throws `MissingTranslationError`
24
+ * — a distinct class from `SchemaValidationError` so callers can tell
25
+ * "wrong shape" from "missing translations".
26
+ *
27
+ * **Resolution is post-decryption.**
28
+ * Locale resolution happens AFTER `decryptRecord()`, as a pure in-memory
29
+ * transform. No additional crypto work is needed. The resolved record is
30
+ * returned in place of the stored one, with i18nText fields replaced by
31
+ * their locale-resolved strings.
32
+ *
33
+ * **`locale: 'raw'`.**
34
+ * Passing `{ locale: 'raw' }` skips resolution and returns the full
35
+ * `{ [locale]: string }` map — useful for bilingual exports, admin UIs,
36
+ * and any context where all translations must be visible at once.
37
+ *
38
+ * **Out of scope.**
39
+ * Pluralization, RTL rendering, date/number formatting, per-locale CRDT
40
+ * merging.
41
+ */
42
+ import type { OnMissing, OnMissingPolicy, Layer } from './policy.js';
43
+ /** Flatten an intersection into a single object literal for nicer hovers. */
44
+ type Prettify<T> = {
45
+ [K in keyof T]: T[K];
46
+ } & {};
47
+ /**
48
+ * The stored shape of a multilingual field, inferred from its `required`
49
+ * mode — so the compiler forces you to handle an absent optional locale
50
+ * (`string | undefined`) instead of silently yielding `undefined`.
51
+ *
52
+ * Mirrors `i18nText({ languages, required })`:
53
+ * - `'all'` (default) — every locale required: `{ th: string; en: string }`
54
+ * - `'any'` — every locale optional: `{ th?: string; en?: string }`
55
+ * (the "at least one present" guarantee is runtime-only — not expressible
56
+ * in TypeScript — so each key is optional)
57
+ * - `readonly L[]` — listed locales required, the rest optional:
58
+ * `I18nMap<'th'|'en', ['th']>` → `{ th: string; en?: string }`
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * type Lang = 'th' | 'en'
63
+ * interface Contact {
64
+ * name: I18nMap<Lang, 'any'> // { th?: string; en?: string }
65
+ * legalName: I18nMap<Lang, ['th']> // { th: string; en?: string }
66
+ * slug: I18nMap<Lang> // { th: string; en: string }
67
+ * }
68
+ * ```
69
+ *
70
+ * @public
71
+ */
72
+ export type I18nMap<Langs extends string, Required extends 'all' | 'any' | readonly Langs[] = 'all'> = Required extends 'all' ? Record<Langs, string> : Required extends 'any' ? Partial<Record<Langs, string>> : Required extends readonly (infer R extends Langs)[] ? Prettify<Record<R, string> & Partial<Record<Exclude<Langs, R>, string>>> : never;
73
+ /**
74
+ * Options for `i18nText()`.
75
+ *
76
+ * `languages` declares the full set of supported locales. `required`
77
+ * controls which must be present on every `put()`.
78
+ *
79
+ * `autoTranslate` is the per-field opt-in for the `plaintextTranslator`
80
+ * hook. When `true` and a `plaintextTranslator` is configured
81
+ * on `createNoydb()`, missing translations are generated before `put()`.
82
+ * Default: `false`.
83
+ */
84
+ export interface I18nTextOptions {
85
+ /** All supported locale codes (BCP 47). */
86
+ readonly languages: readonly string[];
87
+ /**
88
+ * Which locales must be present on every `put()`.
89
+ *
90
+ * - `'all'` — every declared language must be present.
91
+ * - `'any'` — at least one declared language must be present.
92
+ * - `string[]` — listed locales are required; others are optional.
93
+ */
94
+ readonly required: 'all' | 'any' | readonly string[];
95
+ /**
96
+ * Per-field opt-in for the `plaintextTranslator` hook.
97
+ * When `true`, missing required translations are auto-generated
98
+ * before `put()` if a translator is configured. Default: `false`.
99
+ */
100
+ readonly autoTranslate?: boolean;
101
+ /**
102
+ * What to do when this field is resolved to a locale that is absent.
103
+ * A single policy, or a per-layer map (read/guard/join/mv/derivation/
104
+ * export). Default `'throw'` — today's behavior, zero breaking change.
105
+ * See {@link OnMissingPolicy}.
106
+ *
107
+ * NOTE (current wiring): ALL layers are enforced — `read` (`get`/`list`),
108
+ * `guard`, `derivation`, `mv`, `join`, `export`. Guard / derivation
109
+ * `ctx.vault` reads resolve under their own layer policy (`guard` defaults to
110
+ * the lenient `'substitute'`). The `mv` layer fires for materialized views
111
+ * that declare `{ i18nLocale, i18nFields }` — UNION (group-key i18n fields
112
+ * resolve before the unified-row bucketing) and query-form (resolved in
113
+ * `GroupedAggregation.run` before `groupAndReduce`); grouping a raw i18n field
114
+ * without a locale throws. The `join` layer resolves a joined right-side i18n
115
+ * field to the query locale (`toArray({ locale })` or the vault default; raw
116
+ * when locale-less). The `export` layer fires for
117
+ * `exportStream`/`exportJSON({ resolveLabels })` — records collapse to the
118
+ * export locale.
119
+ */
120
+ readonly onMissing?: OnMissingPolicy;
121
+ /**
122
+ * Ordered preferred-substitute locales used when `onMissing` resolves
123
+ * to `'substitute'` and the target locale is absent. `'any'` as an
124
+ * element means "first non-empty value". A caller-supplied `fallback`
125
+ * at read time takes precedence over this declared list.
126
+ */
127
+ readonly substitute?: readonly string[];
128
+ /**
129
+ * Smart-substitute. When `true`, a missing-locale `substitute` walk that
130
+ * misses the explicit chain prefers the available locale whose script is
131
+ * nearest the target (same script, then Latin) rather than an arbitrary value
132
+ * — e.g. a missing Thai label prefers another Thai (or Latin) translation over
133
+ * an unreadable script. Default `false` (legacy first-non-empty behavior).
134
+ */
135
+ readonly smartSubstitute?: boolean;
136
+ /**
137
+ * Per-locale script enforcement (write-time). `'auto'` infers the
138
+ * allowed Unicode scripts per locale (asymmetric Latin tolerance); an
139
+ * object overrides per slot. Absent ⇒ no check. See `./script.ts`.
140
+ */
141
+ readonly script?: 'auto' | Partial<Record<string, readonly string[]>>;
142
+ /**
143
+ * What to do when a slot's value contains characters outside its
144
+ * allowed script set. Default `'reject'`.
145
+ */
146
+ readonly onScriptViolation?: 'reject' | 'filter' | 'warn';
147
+ /**
148
+ * Eager-fill empty locale slots from the substitute chain at
149
+ * write time, recording provenance in the internal `_i18nFilled` marker.
150
+ * Mutually exclusive with an EXPLICIT `'throw'` onMissing policy (densify
151
+ * fills every hole, so a throw would be unreachable). Without an explicit
152
+ * `substitute`, fills from `'any'` (first non-empty). Default absent.
153
+ */
154
+ readonly densifyOnWrite?: boolean;
155
+ }
156
+ /**
157
+ * Descriptor returned by `i18nText()`. Attach to the collection's
158
+ * `i18nFields` option:
159
+ *
160
+ * ```ts
161
+ * const lineItems = company.collection<LineItem>('line-items', {
162
+ * i18nFields: {
163
+ * description: i18nText({ languages: ['en', 'th'], required: 'all' }),
164
+ * },
165
+ * })
166
+ * ```
167
+ */
168
+ export interface I18nTextDescriptor {
169
+ readonly _noydbI18nText: true;
170
+ /** Via port brand marker — lets an `I18nTextDescriptor` satisfy the kernel's opaque `ViaDescriptor` (#623 Task 9). */
171
+ readonly _viaBrand: 'i18n';
172
+ readonly options: I18nTextOptions;
173
+ }
174
+ /**
175
+ * Create an `I18nTextDescriptor` for a multi-language content field.
176
+ *
177
+ * @param options Language list + enforcement mode.
178
+ *
179
+ * @example
180
+ * ```ts
181
+ * i18nText({ languages: ['en', 'th'], required: 'all' })
182
+ * i18nText({ languages: ['en', 'th'], required: ['th'], autoTranslate: true })
183
+ * ```
184
+ */
185
+ export declare function i18nText(options: I18nTextOptions): I18nTextDescriptor;
186
+ export { isI18nTextDescriptor } from '../../port/with/i18n-strategy.js';
187
+ /**
188
+ * Validate that a value is a valid `{ [locale]: string }` map and that
189
+ * all required locales are present. Throws `MissingTranslationError`
190
+ * when the required constraint is violated.
191
+ *
192
+ * Called by `Collection.put()` for each registered `i18nField`.
193
+ *
194
+ * @param value The raw field value from the record being put.
195
+ * @param field The field name (used in the thrown error message).
196
+ * @param descriptor The `i18nText()` descriptor for this field.
197
+ */
198
+ export declare function validateI18nTextValue(value: unknown, field: string, descriptor: I18nTextDescriptor): void;
199
+ /**
200
+ * Resolve an i18nText value (`{ [locale]: string }` map) to a string
201
+ * for the given locale.
202
+ *
203
+ * @param value The stored locale map.
204
+ * @param locale The requested locale code, or `'raw'` to return the map.
205
+ * @param fallback Single locale or ordered list; use `'any'` as the last
206
+ * element to fall back to any available translation.
207
+ * @param field Field name used in `LocaleNotSpecifiedError` messages.
208
+ * @returns The resolved string, OR the original map when `locale === 'raw'`.
209
+ */
210
+ /** Options for the policy-aware form of {@link resolveI18nText}. */
211
+ export interface ResolveI18nOptions {
212
+ /** Effective policy for the resolution layer. Default `'throw'`. */
213
+ readonly policy?: OnMissing;
214
+ /** Declared substitute chain; applied only under policy `'substitute'`. */
215
+ readonly substitute?: readonly string[];
216
+ /**
217
+ * Smart-substitute. When `true` and policy is `'substitute'`, after the
218
+ * explicit chain misses, pick the available locale whose script is nearest the
219
+ * target (same script first, then Latin's broad readability) instead of an
220
+ * arbitrary value. Default `false`.
221
+ */
222
+ readonly smartSubstitute?: boolean;
223
+ }
224
+ export declare function resolveI18nText(value: Record<string, string>, locale: string, fallback?: string | readonly string[], field?: string): string | Record<string, string>;
225
+ export declare function resolveI18nText(value: Record<string, string>, locale: string, fallback: string | readonly string[] | undefined, field: string | undefined, opts: ResolveI18nOptions): string | Record<string, string> | null;
226
+ export { getAtPath } from '../../kernel/paths.js';
227
+ /**
228
+ * Apply locale resolution to a single record, returning a new copy.
229
+ *
230
+ * For each field registered as an `i18nText` descriptor:
231
+ * - If `locale === 'raw'`, the field value is left as the stored map.
232
+ * - Otherwise, the field value is replaced with the resolved string.
233
+ *
234
+ * Field paths support dot notation (`'address.lineOne'`) and array
235
+ * wildcards (`'contacts[].title'`). Top-level fields work as before.
236
+ *
237
+ * @param record The decrypted record.
238
+ * @param i18nFields Map of field path → `I18nTextDescriptor`.
239
+ * @param locale The requested locale (or `'raw'`).
240
+ * @param fallback Fallback chain (optional).
241
+ * @param layer Resolution layer (default `'read'`). Each field's
242
+ * `onMissing` policy is resolved for this layer, so the
243
+ * same record resolves leniently on a get but strictly
244
+ * inside an mv/derivation.
245
+ */
246
+ export declare function applyI18nLocale(record: Record<string, unknown>, i18nFields: Record<string, I18nTextDescriptor>, locale: string, fallback?: string | readonly string[], layer?: Layer): Record<string, unknown>;
247
+ /**
248
+ * Sync i18n-text-only present-for-join dressing — the exact `join`-layer
249
+ * partial application `kernel/query/join.ts` used to import and call
250
+ * directly before #626's retirement (#650 Task 6): fixes `fallback`
251
+ * `undefined` and `layer` `'join'`. `via/lookup/snapshot.ts`'s
252
+ * `buildPresentForJoin` composes this with the lookup-label half to build
253
+ * the `JoinableSource.presentForJoin` hook the join executor now calls
254
+ * instead of reaching into this module.
255
+ */
256
+ export declare function presentI18nForJoin(record: Record<string, unknown>, i18nFields: Record<string, I18nTextDescriptor>, locale: string): Record<string, unknown>;
257
+ /**
258
+ * Remove the internal densify provenance marker (`_i18nFilled`) from a
259
+ * read-facing record. NON-mutating: returns the same object when the
260
+ * marker is absent, otherwise a shallow copy without the marker.
261
+ *
262
+ * MUST be applied on every user-facing read return — even locale-less ones,
263
+ * which bypass {@link applyI18nLocale}. MUST NOT be applied on the internal
264
+ * prior-read path (decryptRecord / resolveDensifyPrior), where densify needs
265
+ * the marker.
266
+ */
267
+ export declare function stripI18nFilled<T extends Record<string, unknown>>(record: T): T;
@@ -0,0 +1,24 @@
1
+ import type { I18nTextDescriptor } from './core.js';
2
+ /**
3
+ * Per field, the locales that are UNCHANGED round-tripped densify fills — i.e.
4
+ * marked filled on the prior record AND identical in the incoming record.
5
+ * These are exempt from write-time script enforcement (they are derived copies,
6
+ * not authored text). Slots the user changed are NOT exempt (validated as authored).
7
+ */
8
+ export declare function computeExemptFills(prior: Record<string, unknown> | undefined, incoming: Record<string, unknown>, fields: Record<string, I18nTextDescriptor>): Map<string, Set<string>>;
9
+ /**
10
+ * Mutate `record` in place: fill empty declared-language slots for each
11
+ * densify-enabled field from the field's substitute chain, recompute unchanged
12
+ * prior fills, clear marks for slots that became authored, and write the
13
+ * resulting `_i18nFilled` marker (removed when empty).
14
+ *
15
+ * `prior` is read-only — it is never mutated.
16
+ *
17
+ * Provenance uses value-equality (decision A): a slot counts as an unchanged
18
+ * fill when it was prior-marked AND its value still equals the prior value. A
19
+ * consequence is that re-authoring a value byte-identical to the existing fill
20
+ * keeps it classified as a fill (the visible value is unchanged either way; the
21
+ * slot stays script-exempt and will auto-refresh if its source later changes).
22
+ * This is inherent to value-equality provenance, not a bug.
23
+ */
24
+ export declare function densify(record: Record<string, unknown>, prior: Record<string, unknown> | undefined, fields: Record<string, I18nTextDescriptor>): void;
@@ -0,0 +1,200 @@
1
+ /**
2
+ * _dict_* reserved collections + dictKey schema descriptor —
3
+ *
4
+ * Stores bounded enum-like field dictionaries as reserved encrypted
5
+ * collections (`_dict_<name>/`) within a vault. Each dictionary
6
+ * entry maps a stable key (e.g. `'paid'`) to a locale → label record
7
+ * (e.g. `{ en: 'Paid', th: 'ชำระแล้ว' }`).
8
+ *
9
+ * Design decisions
10
+ * ────────────────
11
+ *
12
+ * **Why reserved collections, not a separate store?**
13
+ * Same answer as `_sync_credentials`: the compartment's existing
14
+ * encryption stack is exactly right. Dictionaries are encrypted under the
15
+ * same vault DEK, inherit ACL, ledger, and backup/restore for free.
16
+ *
17
+ * **One collection per dictionary, not one collection with namespaces.**
18
+ * Each `_dict_<name>/` collection holds entries `{ id: key, labels: {...} }`.
19
+ * This composes with `ref()` naturally (a dictKey IS a ref to the dict
20
+ * collection), and means the query DSL works over dictionary entries
21
+ * without any special-casing.
22
+ *
23
+ * **dictKey() is a descriptor, not a Zod type.**
24
+ * The descriptor pattern matches `ref()`: declare NOYDB-specific metadata
25
+ * in the collection options alongside `refs`. TypeScript inference comes
26
+ * from the descriptor's generic parameter, not from Zod internals.
27
+ *
28
+ * API:
29
+ * `dictKey(name, keys?)` — returns a DictKeyDescriptor
30
+ * `vault.dictionary(name)` — returns a DictionaryHandle
31
+ * `DictionaryHandle.put/putAll/get/delete/rename/list` — CRUD
32
+ *
33
+ * The storage engine (`DictionaryHandle`, `DictEntry`, `DictionaryOptions`,
34
+ * `DICT_COLLECTION_PREFIX`, `dictCollectionName`) moved to
35
+ * `via/lookup/handle.ts` (#650 Task 1 — via-lookup extraction, phase
36
+ * D of the Via port) and is renamed `LookupHandle` there; re-exported here
37
+ * under the original names for one release so existing importers of this
38
+ * module compile unchanged. This file keeps only the descriptor factories
39
+ * (`dictKey`/`staticDict`), which are locale/i18n-coupled and stay put.
40
+ */
41
+ import type { OnMissingPolicy } from './policy.js';
42
+ export { isDictCollectionName } from '../../port/with/i18n-strategy.js';
43
+ export { DictionaryHandle, DICT_COLLECTION_PREFIX, dictCollectionName, type DictEntry, type DictionaryOptions, } from '../lookup/handle.js';
44
+ /**
45
+ * Descriptor returned by `dictKey()`. Attach to the collection's
46
+ * `dictKeyFields` option to declare which fields are dictionary-backed:
47
+ *
48
+ * ```ts
49
+ * const invoices = company.collection<Invoice>('invoices', {
50
+ * dictKeyFields: {
51
+ * status: dictKey('status', ['draft', 'open', 'paid'] as const),
52
+ * },
53
+ * })
54
+ * ```
55
+ *
56
+ * The generic parameter `Keys` narrows the TypeScript type of the field
57
+ * to a literal union; the runtime value of `keys` is used by `put()`
58
+ * validation to reject unknown keys when a key set is declared.
59
+ */
60
+ export interface DictKeyDescriptor<Keys extends string = string> {
61
+ readonly _noydbDictKey: true;
62
+ /** Via port brand marker (#623 Task 9) — dictKey shares the i18n binding brand. */
63
+ readonly _viaBrand: 'i18n';
64
+ /** Which dictionary this field references. */
65
+ readonly name: string;
66
+ /** Declared valid keys. When set, `put()` rejects keys not in this set. */
67
+ readonly keys: readonly Keys[] | undefined;
68
+ /**
69
+ * What to do when a label is missing for the resolved locale. Mirrors
70
+ * `i18nText`'s `onMissing`. Default behavior (when unset) preserves the
71
+ * legacy contract: a missing label is omitted (scalar) or `null`
72
+ * (array element) — i.e. `'null'`. Set `'substitute'` to walk the
73
+ * declared `substitute` chain, or `'throw'` to raise.
74
+ */
75
+ readonly onMissing?: OnMissingPolicy;
76
+ /** Ordered preferred-substitute locales for label resolution. */
77
+ readonly substitute?: readonly string[];
78
+ /**
79
+ * Optional inline display labels (value → label map). A SYNC display
80
+ * fallback for `describe()` when async `dictLabels` (from `_dict_`) are
81
+ * not resolved. The async path still wins when available.
82
+ */
83
+ readonly labels?: Record<string, string>;
84
+ }
85
+ /**
86
+ * Create a `DictKeyDescriptor` for a dictionary-backed enum field.
87
+ *
88
+ * @param name The dictionary name (corresponds to `_dict_<name>` collection).
89
+ * @param keysOrMap Either:
90
+ * - An `as const` array of valid key literals — narrows the TypeScript type
91
+ * to a literal union and enables put-time validation.
92
+ * - A **value→label map** (`{ draft: 'Draft', paid: 'Paid' }`) — keys are
93
+ * inferred from the map, and the labels are stored as inline display
94
+ * defaults surfaced by `describe()` without a store read.
95
+ * @param opts `{ labels?, onMissing?, substitute? }` when the array form
96
+ * is used; `opts.labels` provides inline display defaults for
97
+ * specific keys (same semantics as the map form, but
98
+ * explicit key order from the array is preserved).
99
+ *
100
+ * @example
101
+ * ```ts
102
+ * // array form (original):
103
+ * dictKey('status', ['draft', 'open', 'paid'] as const)
104
+ *
105
+ * // value→label map form (keys inferred, inline labels for describe()):
106
+ * dictKey('status', { draft: 'Draft', open: 'Open', paid: 'Paid' })
107
+ *
108
+ * // array + opts.labels (preserves explicit order, partial labels OK):
109
+ * dictKey('status', ['draft', 'open', 'paid'] as const, { labels: { paid: 'Paid' } })
110
+ * ```
111
+ */
112
+ export declare function dictKey<Keys extends string>(name: string, keysOrMap?: readonly Keys[] | Record<Keys, string>, opts?: {
113
+ onMissing?: OnMissingPolicy;
114
+ substitute?: readonly string[];
115
+ labels?: Record<string, string>;
116
+ }): DictKeyDescriptor<Keys>;
117
+ export { isDictKeyDescriptor } from '../../port/with/i18n-strategy.js';
118
+ /**
119
+ * Descriptor returned by `staticDict()`. A sibling to {@link DictKeyDescriptor}
120
+ * for **closed, defined-in-code, identical-across-vaults** enums (honorific,
121
+ * civil-status, gender, religion, ContactTitle, status…).
122
+ *
123
+ * Unlike `dictKey`, the labels are supplied **at registration in code** and
124
+ * resolved through the *same* label machinery, but with **no `_dict_*`
125
+ * per-vault encrypted copy** and **no `rename()`**. The record stores only
126
+ * the **code**; a static dict has no mutation surface.
127
+ *
128
+ * **Hybrid resolution.** Because a static dict is pure code with no
129
+ * vault-locale dependency, it can — via a configured `displayLocale` — emit a
130
+ * `<field>Label` even under a **locale-less read** (the property a locale-less
131
+ * consumer needs and `dictKey` cannot provide). When a locale *is* active it
132
+ * behaves exactly like `dictKey` (honoring `onMissing`/`substitute`).
133
+ *
134
+ * ```ts
135
+ * const workers = vault.collection<Worker>('workers', {
136
+ * dictKeyFields: {
137
+ * civilStatus: staticDict('civilStatus', {
138
+ * adultMale: { th: 'นาย', en: 'Mr' },
139
+ * adultFemale: { th: 'นาง', en: 'Mrs' },
140
+ * }, { displayLocale: 'th' }),
141
+ * },
142
+ * })
143
+ * ```
144
+ */
145
+ export interface StaticDictDescriptor<Keys extends string = string> {
146
+ readonly _noydbStaticDict: true;
147
+ /** Via port brand marker (#623 Task 9) — staticDict shares the i18n binding brand. */
148
+ readonly _viaBrand: 'i18n';
149
+ /** Which dictionary this field references (the registry name). */
150
+ readonly name: string;
151
+ /** The in-code label table: key → { locale → label }. */
152
+ readonly table: Readonly<Record<Keys, Readonly<Record<string, string>>>>;
153
+ /** Declared valid keys — derived from `Object.keys(table)`. */
154
+ readonly keys: readonly Keys[];
155
+ /**
156
+ * Locale used to emit `<field>Label` under a **locale-less** read — the
157
+ * hybrid hinge. When unset, a static dict behaves like `dictKey` under a
158
+ * locale-less read (no label); a locale-less consumer almost always wants
159
+ * it set.
160
+ */
161
+ readonly displayLocale?: string;
162
+ /** Same `onMissing` policy engine as `dictKey`. Default `'null'`. */
163
+ readonly onMissing?: OnMissingPolicy;
164
+ /** Ordered preferred-substitute locales for label resolution. */
165
+ readonly substitute?: readonly string[];
166
+ /**
167
+ * Validate the stored code against `keys` on every `put()`. Default `true`
168
+ * — codes are closed by construction, so an unknown code is a bug. Set
169
+ * `false` to allow open codes (skips the `UnknownDictCodeError` guard).
170
+ */
171
+ readonly validateCodes?: boolean;
172
+ }
173
+ /**
174
+ * Create a `StaticDictDescriptor` for a code-provided enum field — a sibling
175
+ * to {@link dictKey} for closed, code-defined, identical-across-vaults enums.
176
+ *
177
+ * The labels live in `table` (no `_dict_*` collection, no `rename()`); the
178
+ * record stores only the stable code. Pass `displayLocale` so `<field>Label`
179
+ * resolves even under a locale-less read.
180
+ *
181
+ * @param name The dictionary name (used for the readonly-guard registry and
182
+ * the query label seam — never creates a `_dict_<name>` key).
183
+ * @param table `{ key: { locale: label } }` map.
184
+ * @param opts `displayLocale` (locale-less label), `onMissing`, `substitute`.
185
+ *
186
+ * @example
187
+ * ```ts
188
+ * staticDict('civilStatus', {
189
+ * adultMale: { th: 'นาย', en: 'Mr' },
190
+ * adultFemale: { th: 'นาง', en: 'Mrs' },
191
+ * }, { displayLocale: 'th' })
192
+ * ```
193
+ */
194
+ export declare function staticDict<const T extends Record<string, Record<string, string>>>(name: string, table: T, opts?: {
195
+ displayLocale?: string;
196
+ onMissing?: OnMissingPolicy;
197
+ substitute?: readonly string[];
198
+ validateCodes?: boolean;
199
+ }): StaticDictDescriptor<Extract<keyof T, string>>;
200
+ export { isStaticDictDescriptor } from '../../port/with/i18n-strategy.js';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * `@noy-db/hub/i18n` — subpath export for the multi-locale primitives.
3
+ *
4
+ * Apps that only speak English never have to import from this subpath
5
+ * — the main `@noy-db/hub` entry still re-exports these symbols for
6
+ * backward compatibility through.x. Consumers that opt into the
7
+ * subpath import get a smaller bundle (~2 KB estimated savings).
8
+ *
9
+ * Re-exports:
10
+ * - `dictKey`, `DictionaryHandle`, dictionary collection helpers
11
+ * - `i18nText`, `resolveI18nText`, `applyI18nLocale`, validators
12
+ */
13
+ export * from './core.js';
14
+ export * from './dictionary.js';
15
+ export { resolvePolicy } from './policy.js';
16
+ export type { OnMissing, Layer, OnMissingPolicy } from './policy.js';
17
+ export { inferScripts, enforceScript } from './script.js';
18
+ export type { ScriptWarning } from './script.js';
19
+ export { withI18n } from './active.js';
20
+ export type { I18nStrategy } from './strategy.js';
21
+ export { ReservedCollectionNameError, DictKeyMissingError, DictKeyInUseError, MissingTranslationError, LocaleNotSpecifiedError, TranslatorNotConfiguredError, ScriptViolationError, StaticDictReadonlyError, UnknownDictCodeError, } from '../../kernel/errors.js';
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Per-layer i18n resolution policy.
3
+ *
4
+ * `onMissing` governs what happens when a multilingual field is resolved
5
+ * to a target locale that is absent. It may be a single scalar policy or
6
+ * a per-layer map, so a field can be lenient at the app read boundary but
7
+ * strict inside a materialized view.
8
+ *
9
+ * Effective policy for layer `λ`:
10
+ *
11
+ * ```
12
+ * explicit(λ) = typeof onMissing === 'object' ? onMissing[λ] : undefined
13
+ * scalar = typeof onMissing === 'string' ? onMissing : undefined
14
+ * policy(λ) = explicit(λ) ?? layerDefault(λ) ?? scalar ?? 'throw'
15
+ * ```
16
+ *
17
+ * - `layerDefault('guard') = 'substitute'` — guards are lenient unless
18
+ * EXPLICITLY overridden; they never inherit a scalar policy (a guard
19
+ * reading a display value must not hard-fail on a missing locale).
20
+ * - every other layer has no default, so it inherits the scalar, else
21
+ * falls back to `'throw'` (today's behavior — zero breaking change).
22
+ *
23
+ * @public
24
+ */
25
+ export type OnMissing = 'substitute' | 'null' | 'throw';
26
+ /**
27
+ * The contexts in which a multilingual field is resolved. Each can carry
28
+ * its own `onMissing` policy.
29
+ *
30
+ * - `read` — ordinary app reads (`get`/`list`/query projection).
31
+ * - `guard` — a guard callback reading a value.
32
+ * - `join` — a joined record expanded onto a row.
33
+ * - `mv` — materialized-view input.
34
+ * - `derivation` — derivation input.
35
+ * - `export` — bundle/public-envelope export.
36
+ */
37
+ export type Layer = 'read' | 'guard' | 'join' | 'mv' | 'derivation' | 'export';
38
+ /** Field-level policy: a single scalar, or a per-layer map. */
39
+ export type OnMissingPolicy = OnMissing | Partial<Record<Layer, OnMissing>>;
40
+ /**
41
+ * Resolve the effective `OnMissing` for a layer from a field's declared
42
+ * policy. See module docs for the resolution rule.
43
+ */
44
+ export declare function resolvePolicy(onMissing: OnMissingPolicy | undefined, layer: Layer): OnMissing;
@@ -0,0 +1,26 @@
1
+ import type { I18nTextDescriptor } from './core.js';
2
+ /**
3
+ * Infer the allowed Unicode scripts for a BCP-47 locale, with asymmetric
4
+ * Latin tolerance. A script subtag (`th-Latn`) wins over the base
5
+ * language. Unknown locales default to `['Latin']`.
6
+ */
7
+ export declare function inferScripts(locale: string): readonly string[];
8
+ /** A non-fatal script violation recorded under `'filter'`/`'warn'` modes. */
9
+ export interface ScriptWarning {
10
+ readonly field: string;
11
+ readonly locale: string;
12
+ readonly expected: readonly string[];
13
+ readonly sample: string;
14
+ }
15
+ /**
16
+ * Enforce a field's script constraint over an i18nText value map.
17
+ *
18
+ * - No `script` option ⇒ returns the value unchanged.
19
+ * - `onScriptViolation: 'reject'` (default) ⇒ throws {@link ScriptViolationError}.
20
+ * - `'filter'` ⇒ returns a copy with disallowed characters stripped + warnings.
21
+ * - `'warn'` ⇒ returns the value unchanged + warnings.
22
+ */
23
+ export declare function enforceScript(value: Record<string, unknown>, field: string, descriptor: I18nTextDescriptor, exempt?: ReadonlySet<string>): {
24
+ value: Record<string, unknown>;
25
+ warnings: ScriptWarning[];
26
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Strategy seam for the optional i18n (multi-locale + dictionary)
3
+ * service. `I18nStrategy` + `BuildDictionaryHandleOptions` + `NO_I18N`
4
+ * now live on the kernel port (`port/with/i18n-strategy.ts`, #623
5
+ * Task 7) — re-exported here for compat with existing importers of
6
+ * this module. Real `applyI18nLocale` / `validateI18nTextValue` /
7
+ * `DictionaryHandle` are only reachable via `withI18n()` in
8
+ * `./active.ts`.
9
+ *
10
+ * @internal
11
+ */
12
+ export type { I18nStrategy, BuildDictionaryHandleOptions } from '../../port/with/i18n-strategy.js';
13
+ export { NO_I18N } from '../../port/with/i18n-strategy.js';
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Active lookup strategy — `withLookup()` returns the real implementation
3
+ * that constructs `LookupHandle` instances (the `_dict_*` / future
4
+ * `_lookup_*` reserved-collection engine).
5
+ *
6
+ * #650 Task 1 (via-lookup extraction, phase D): this is the new home for
7
+ * the handle-construction logic that used to live inline in
8
+ * `via/i18n/active.ts`'s `withI18n().buildDictionaryHandle`, which
9
+ * now delegates here (same handle, new home — see that file). Splitting
10
+ * the import chain through this file is the same `#553` tree-shake seam
11
+ * `via/i18n/active.ts` already used: the `LookupHandle` engine only
12
+ * ships in a consumer's bundle once something reaches `withLookup()` (today
13
+ * that's transitively via `withI18n()`; later phase-D tasks may call it
14
+ * directly).
15
+ *
16
+ * @public
17
+ */
18
+ import type { LookupStrategy } from '../../port/with/lookup-strategy.js';
19
+ export declare function withLookup(): LookupStrategy;