@noy-db/hub 0.3.0-pre.8 → 0.3.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 (955) hide show
  1. package/dist/aggregate/index.js +9 -8
  2. package/dist/aggregate/index.js.map +1 -1
  3. package/dist/api-ZGS6LCOF.js +20 -0
  4. package/dist/as/index.js +11 -11
  5. package/dist/attestation/index.js +18 -18
  6. package/dist/backup-BJ57IKAO.js +242 -0
  7. package/dist/backup-BJ57IKAO.js.map +1 -0
  8. package/dist/blobs/index.js +13 -11
  9. package/dist/blobs/index.js.map +1 -1
  10. package/dist/broker/index.js +92 -0
  11. package/dist/broker/index.js.map +1 -0
  12. package/dist/bundle/index.js +25 -22
  13. package/dist/bundle/index.js.map +1 -1
  14. package/dist/by/index.js +2 -2
  15. package/dist/cargo/index.js +31 -31
  16. package/dist/chunk-2NVOWNI3.js +167 -0
  17. package/dist/chunk-2NVOWNI3.js.map +1 -0
  18. package/dist/chunk-3B5VVCNY.js +71 -0
  19. package/dist/chunk-3LQ2YKO4.js +230 -0
  20. package/dist/chunk-3QCRBHCY.js +54 -0
  21. package/dist/chunk-454JXE57.js +1697 -0
  22. package/dist/chunk-454JXE57.js.map +1 -0
  23. package/dist/chunk-4CTHCN4J.js +480 -0
  24. package/dist/chunk-4CTHCN4J.js.map +1 -0
  25. package/dist/chunk-4GPE63GU.js +111 -0
  26. package/dist/chunk-4GPE63GU.js.map +1 -0
  27. package/dist/chunk-4JBYV75E.js +150 -0
  28. package/dist/chunk-4NXKCLLQ.js +97 -0
  29. package/dist/chunk-4VNQOLML.js +29 -0
  30. package/dist/chunk-4VNQOLML.js.map +1 -0
  31. package/dist/chunk-5M5DVGV7.js +69 -0
  32. package/dist/chunk-5O3XF4DV.js +150 -0
  33. package/dist/chunk-5O3XF4DV.js.map +1 -0
  34. package/dist/chunk-5YOLBEQ6.js +30 -0
  35. package/dist/chunk-6CRIV7DE.js +129 -0
  36. package/dist/chunk-6JTIAGHD.js +621 -0
  37. package/dist/chunk-6JTIAGHD.js.map +1 -0
  38. package/dist/chunk-6QTNZJBS.js +255 -0
  39. package/dist/chunk-6T2SCQRU.js +86 -0
  40. package/dist/chunk-7DSTRQIJ.js +45 -0
  41. package/dist/chunk-AUSTCW2X.js +589 -0
  42. package/dist/chunk-B3HJYUOF.js +209 -0
  43. package/dist/chunk-BDVFPG6Y.js +164 -0
  44. package/dist/chunk-BIOUI4HL.js +1554 -0
  45. package/dist/chunk-BIOUI4HL.js.map +1 -0
  46. package/dist/chunk-CAF6WOK7.js +36 -0
  47. package/dist/chunk-CDUQTA3Z.js +381 -0
  48. package/dist/chunk-CDUQTA3Z.js.map +1 -0
  49. package/dist/chunk-CIE2BASH.js +404 -0
  50. package/dist/chunk-CRI4OUV4.js +42 -0
  51. package/dist/chunk-DLG74CNB.js +91 -0
  52. package/dist/chunk-E5ZQT5KX.js +30 -0
  53. package/dist/chunk-E5ZQT5KX.js.map +1 -0
  54. package/dist/chunk-EQO2UVP4.js +247 -0
  55. package/dist/chunk-EQO2UVP4.js.map +1 -0
  56. package/dist/chunk-ERJ7FU55.js +367 -0
  57. package/dist/chunk-EVVGJDRQ.js +205 -0
  58. package/dist/chunk-EVX47VBM.js +74 -0
  59. package/dist/chunk-EVX47VBM.js.map +1 -0
  60. package/dist/chunk-EXK7QRWF.js +59 -0
  61. package/dist/chunk-EYZ6IQ6X.js +202 -0
  62. package/dist/chunk-F64IRYG3.js +45 -0
  63. package/dist/chunk-FHS2HQSH.js +823 -0
  64. package/dist/chunk-FM3G3NOY.js +206 -0
  65. package/dist/chunk-FM3G3NOY.js.map +1 -0
  66. package/dist/chunk-FUG4SFN3.js +36 -0
  67. package/dist/chunk-FUG4SFN3.js.map +1 -0
  68. package/dist/chunk-GKEWXIV5.js +80 -0
  69. package/dist/chunk-GTGPO5KW.js +59 -0
  70. package/dist/chunk-HB3RFQSC.js +95 -0
  71. package/dist/chunk-HDMEGAQE.js +957 -0
  72. package/dist/chunk-HDMEGAQE.js.map +1 -0
  73. package/dist/chunk-HDQIIUPH.js +135 -0
  74. package/dist/chunk-HDQIIUPH.js.map +1 -0
  75. package/dist/chunk-HTJQYHZP.js +344 -0
  76. package/dist/chunk-HTJQYHZP.js.map +1 -0
  77. package/dist/chunk-I6GALP6E.js +99 -0
  78. package/dist/chunk-IGJCYUT5.js +99 -0
  79. package/dist/chunk-IGJCYUT5.js.map +1 -0
  80. package/dist/chunk-IL6POWCW.js +130 -0
  81. package/dist/chunk-IU6SNYX6.js +117 -0
  82. package/dist/chunk-J2ZX2XUV.js +778 -0
  83. package/dist/chunk-JIF24JPM.js +495 -0
  84. package/dist/chunk-JIF24JPM.js.map +1 -0
  85. package/dist/chunk-JK733I5V.js +23 -0
  86. package/dist/chunk-JK733I5V.js.map +1 -0
  87. package/dist/chunk-JKJOGPZN.js +29 -0
  88. package/dist/chunk-JNAI2HN2.js +32 -0
  89. package/dist/chunk-JNAI2HN2.js.map +1 -0
  90. package/dist/chunk-JZUV47FZ.js +41 -0
  91. package/dist/chunk-K5IMOGHB.js +30 -0
  92. package/dist/chunk-KPZS5QAQ.js +151 -0
  93. package/dist/chunk-KPZS5QAQ.js.map +1 -0
  94. package/dist/chunk-KSKBRKGJ.js +291 -0
  95. package/dist/chunk-KSKBRKGJ.js.map +1 -0
  96. package/dist/chunk-LASZKVMO.js +382 -0
  97. package/dist/chunk-LXEXBTKL.js +515 -0
  98. package/dist/chunk-LXEXBTKL.js.map +1 -0
  99. package/dist/chunk-M4CV6BRT.js +524 -0
  100. package/dist/chunk-M4CV6BRT.js.map +1 -0
  101. package/dist/chunk-MEFJPTZ4.js +371 -0
  102. package/dist/chunk-MEFJPTZ4.js.map +1 -0
  103. package/dist/chunk-MV43JSJF.js +265 -0
  104. package/dist/chunk-MV43JSJF.js.map +1 -0
  105. package/dist/chunk-NJ4EOKMB.js +392 -0
  106. package/dist/chunk-NJ4EOKMB.js.map +1 -0
  107. package/dist/chunk-NR5LT5RY.js +135 -0
  108. package/dist/chunk-NWSGI5C7.js +261 -0
  109. package/dist/chunk-NWSGI5C7.js.map +1 -0
  110. package/dist/chunk-OSDB5WW3.js +739 -0
  111. package/dist/chunk-OSDB5WW3.js.map +1 -0
  112. package/dist/chunk-PN2XMATY.js +37 -0
  113. package/dist/chunk-PN2XMATY.js.map +1 -0
  114. package/dist/chunk-Q5VNKNE5.js +70 -0
  115. package/dist/chunk-QLWMEXCT.js +21 -0
  116. package/dist/chunk-QRB7NAOJ.js +123 -0
  117. package/dist/chunk-R4ROFEYC.js +74 -0
  118. package/dist/chunk-RCVJZMFE.js +164 -0
  119. package/dist/chunk-RCVJZMFE.js.map +1 -0
  120. package/dist/chunk-RIX4V2TB.js +367 -0
  121. package/dist/chunk-RYCTDFUX.js +40 -0
  122. package/dist/chunk-RZ5SVOYR.js +155 -0
  123. package/dist/chunk-SLFHQTTW.js +99 -0
  124. package/dist/chunk-SNZ6URZZ.js +2782 -0
  125. package/dist/chunk-SNZ6URZZ.js.map +1 -0
  126. package/dist/chunk-T2FFWNPK.js +75 -0
  127. package/dist/chunk-T2FFWNPK.js.map +1 -0
  128. package/dist/chunk-UNFPPVNI.js +23 -0
  129. package/dist/chunk-VFUPHI2Z.js +333 -0
  130. package/dist/chunk-VFUPHI2Z.js.map +1 -0
  131. package/dist/chunk-VLFCJYTL.js +235 -0
  132. package/dist/chunk-VN3DBQAU.js +124 -0
  133. package/dist/chunk-VYYM3MEN.js +98 -0
  134. package/dist/chunk-VYYM3MEN.js.map +1 -0
  135. package/dist/chunk-VZRODIM3.js +49 -0
  136. package/dist/chunk-W22IKJE2.js +94 -0
  137. package/dist/chunk-X3YYQWOQ.js +155 -0
  138. package/dist/chunk-X7QBD67R.js +14405 -0
  139. package/dist/chunk-X7QBD67R.js.map +1 -0
  140. package/dist/chunk-XDYREZWE.js +1128 -0
  141. package/dist/chunk-XDYREZWE.js.map +1 -0
  142. package/dist/chunk-XWZVFISC.js +720 -0
  143. package/dist/chunk-XWZVFISC.js.map +1 -0
  144. package/dist/chunk-YFXZEAYK.js +85 -0
  145. package/dist/chunk-ZAJAVEXY.js +50 -0
  146. package/dist/chunk-ZICD77GM.js +34 -0
  147. package/dist/chunk-ZJ2AK4V7.js +38 -0
  148. package/dist/chunk-ZJ2AK4V7.js.map +1 -0
  149. package/dist/chunk-ZUODRVHY.js +14 -0
  150. package/dist/classified/index.js +5 -3
  151. package/dist/classified-marker-CZKA6ITE.js +28 -0
  152. package/dist/classified-marker-CZKA6ITE.js.map +1 -0
  153. package/dist/collection-facade-TLWIPI76.js +44 -0
  154. package/dist/computed-ZIQTYTDI.js +11 -0
  155. package/dist/consent/index.js +9 -9
  156. package/dist/crdt/index.js +1 -1
  157. package/dist/dead-filter-ESOBZZP5.js +28 -0
  158. package/dist/delegation-W7ZV2322.js +25 -0
  159. package/dist/derivations/index.js +12 -11
  160. package/dist/derive-H2BJTLUI.js +21 -0
  161. package/dist/enclave-AP3I5W7O.js +141 -0
  162. package/dist/executor-KGWTNEQD.js +9 -0
  163. package/dist/executor-OVEXR6RT.js +9 -0
  164. package/dist/executor-UNEH5ZYH.js +25 -0
  165. package/dist/export-accessible-PCMXSUZS.js +23 -0
  166. package/dist/extract-partition-SWHFSYJO.js +38 -0
  167. package/dist/fanout-sidecar-A765THMX.js +74 -0
  168. package/dist/find-N6345CNT.js +11 -0
  169. package/dist/forget/index.js +10 -10
  170. package/dist/forget/index.js.map +1 -1
  171. package/dist/guards/index.js +6 -6
  172. package/dist/history/index.js +14 -11
  173. package/dist/history/index.js.map +1 -1
  174. package/dist/i18n/index.js +50 -37
  175. package/dist/i18n/index.js.map +1 -1
  176. package/dist/index.d.ts +307 -1459
  177. package/dist/index.js +595 -198
  178. package/dist/index.js.map +1 -1
  179. package/dist/indexing/index.js +7 -7
  180. package/dist/indexing/index.js.map +1 -1
  181. package/dist/issue-5OKB6I2R.js +19 -0
  182. package/dist/kernel/best-effort-revert.d.ts +52 -0
  183. package/dist/kernel/cache/index.d.ts +10 -0
  184. package/dist/kernel/cache/lru.d.ts +97 -0
  185. package/dist/kernel/cache/policy.d.ts +32 -0
  186. package/dist/kernel/collection-config.d.ts +809 -0
  187. package/dist/kernel/collection.d.ts +1522 -0
  188. package/dist/kernel/constants.d.ts +18 -0
  189. package/dist/kernel/debug.d.ts +25 -0
  190. package/dist/kernel/enclave/broker/proof.d.ts +154 -0
  191. package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
  192. package/dist/kernel/enclave/classify/compare.d.ts +10 -0
  193. package/dist/kernel/enclave/classify/digest.d.ts +8 -0
  194. package/dist/kernel/enclave/classify/find.d.ts +36 -0
  195. package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
  196. package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
  197. package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
  198. package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
  199. package/dist/kernel/enclave/classify/verify.d.ts +36 -0
  200. package/dist/kernel/enclave/classify/write.d.ts +8 -0
  201. package/dist/kernel/enclave/crypto.d.ts +263 -0
  202. package/dist/kernel/enclave/index.d.ts +79 -0
  203. package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
  204. package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
  205. package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
  206. package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
  207. package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
  208. package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
  209. package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
  210. package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
  211. package/dist/kernel/env-check.d.ts +1 -0
  212. package/dist/kernel/errors.d.ts +1922 -0
  213. package/dist/kernel/events.d.ts +11 -0
  214. package/dist/kernel/lazy-count.d.ts +13 -0
  215. package/dist/kernel/memory-store.d.ts +17 -0
  216. package/dist/kernel/mutation.d.ts +14 -0
  217. package/dist/kernel/noydb.d.ts +826 -0
  218. package/dist/kernel/paths.d.ts +25 -0
  219. package/dist/kernel/query/builder.d.ts +520 -0
  220. package/dist/kernel/query/index.d.ts +31 -0
  221. package/dist/kernel/query/join.d.ts +205 -0
  222. package/dist/kernel/query/live.d.ts +111 -0
  223. package/dist/kernel/query/predicate.d.ts +139 -0
  224. package/dist/kernel/query/scan-builder.d.ts +334 -0
  225. package/dist/kernel/refs.d.ts +205 -0
  226. package/dist/kernel/schema.d.ts +134 -0
  227. package/dist/kernel/sync-policy.d.ts +188 -0
  228. package/dist/kernel/tier-visibility.d.ts +54 -0
  229. package/dist/kernel/types.d.ts +3239 -0
  230. package/dist/kernel/util/discriminant.d.ts +58 -0
  231. package/dist/kernel/util/index.d.ts +14 -0
  232. package/dist/kernel/util/sanitize-filename.d.ts +75 -0
  233. package/dist/kernel/validation.d.ts +130 -0
  234. package/dist/kernel/vault.d.ts +1740 -0
  235. package/dist/kernel/via/compose.d.ts +144 -0
  236. package/dist/kernel/via/dispatch.d.ts +195 -0
  237. package/dist/kernel/via/graph-wiring.d.ts +145 -0
  238. package/dist/kernel/via/graph.d.ts +166 -0
  239. package/dist/kernel/via/index.d.ts +200 -0
  240. package/dist/kernel/via/pipeline.d.ts +266 -0
  241. package/dist/kernel/via/reconcile.d.ts +153 -0
  242. package/dist/kernel/via/taint-binding.d.ts +66 -0
  243. package/dist/kernel/write-queue.d.ts +46 -0
  244. package/dist/ledger-GFBKVPV4.js +42 -0
  245. package/dist/legacy/bundle.d.ts +30 -0
  246. package/dist/legacy/kernel.d.ts +33 -0
  247. package/dist/liberate-3VDOT4KO.js +24 -0
  248. package/dist/link-set-Z7Q2ASFX.js +31 -0
  249. package/dist/materialized-views/index.js +19 -15
  250. package/dist/noydb-ZCJOYBDI.js +68 -0
  251. package/dist/on/index.js +9 -9
  252. package/dist/overlay-views/index.js +4 -4
  253. package/dist/periods/index.js +12 -12
  254. package/dist/pod/index.js +11 -11
  255. package/dist/policy-Z3RUAIY2.js +41 -0
  256. package/dist/port/as/index.d.ts +26 -0
  257. package/dist/port/at/index.d.ts +18 -0
  258. package/dist/port/by/default-provider.d.ts +9 -0
  259. package/dist/port/by/index.d.ts +17 -0
  260. package/dist/port/by/types.d.ts +86 -0
  261. package/dist/port/in/index.d.ts +21 -0
  262. package/dist/port/on/index.d.ts +27 -0
  263. package/dist/port/to/index.d.ts +19 -0
  264. package/dist/port/ui/index.d.ts +21 -0
  265. package/dist/port/with/blob-strategy.d.ts +98 -0
  266. package/dist/port/with/broker-strategy.d.ts +84 -0
  267. package/dist/port/with/capabilities.d.ts +31 -0
  268. package/dist/port/with/classified-marker.d.ts +9 -0
  269. package/dist/port/with/classified-strategy.d.ts +62 -0
  270. package/dist/port/with/computed-strategy.d.ts +19 -0
  271. package/dist/port/with/i18n-strategy.d.ts +175 -0
  272. package/dist/port/with/index.d.ts +18 -0
  273. package/dist/port/with/lazy-strategy.d.ts +48 -0
  274. package/dist/port/with/lookup-strategy.d.ts +129 -0
  275. package/dist/port/with/service-bus.d.ts +156 -0
  276. package/dist/port/with/team-strategy.d.ts +36 -0
  277. package/dist/port/with/write-hooks.d.ts +34 -0
  278. package/dist/portability/index.js +8 -8
  279. package/dist/post-register-JTH76BLY.js +60 -0
  280. package/dist/post-register-JTH76BLY.js.map +1 -0
  281. package/dist/public-envelope-B4KNWVUA.js +32 -0
  282. package/dist/purge-scope-FGNNLWHD.js +24 -0
  283. package/dist/purge-scope-FGNNLWHD.js.map +1 -0
  284. package/dist/query/index.js +9 -6
  285. package/dist/read-only-facade-CHCKSEPD.js +8 -0
  286. package/dist/register-VAHONCID.js +23 -0
  287. package/dist/registry-7MLVD3VO.js +19 -0
  288. package/dist/registry-EPKPD5SM.js +18 -0
  289. package/dist/registry-P5T7PS2U.js +9 -0
  290. package/dist/request-withdrawal-TI3A5WPS.js +31 -0
  291. package/dist/reveal-DIBHLUZX.js +38 -0
  292. package/dist/reveal-DIBHLUZX.js.map +1 -0
  293. package/dist/revoke-FDRD6GRW.js +24 -0
  294. package/dist/satellites/index.js +1 -1
  295. package/dist/sealed-record/index.js +12 -12
  296. package/dist/seed-Q6M2IZFL.js +231 -0
  297. package/dist/seed-Q6M2IZFL.js.map +1 -0
  298. package/dist/session/index.js +9 -9
  299. package/dist/shadow/index.js +2 -2
  300. package/dist/signer-MUWEIUI6.js +25 -0
  301. package/dist/snapshots/index.js +10 -10
  302. package/dist/stale-OSQ7J3AA.js +29 -0
  303. package/dist/storage-MVFCGEQE.js +23 -0
  304. package/dist/store-coordination-provider-64OEZFGS.js +142 -0
  305. package/dist/sync/index.js +9 -9
  306. package/dist/team/index.js +15 -15
  307. package/dist/tiers/index.js +14 -10
  308. package/dist/to/index.js +1 -2
  309. package/dist/tx/index.js +3 -3
  310. package/dist/util/index.js +1 -1
  311. package/dist/verify-ZASTRNPR.js +140 -0
  312. package/dist/verify-ZASTRNPR.js.map +1 -0
  313. package/dist/via/blob/active.d.ts +34 -0
  314. package/dist/via/blob/binding.d.ts +86 -0
  315. package/dist/via/blob/index.d.ts +34 -0
  316. package/dist/via/classified/active.d.ts +3 -0
  317. package/dist/via/classified/binding.d.ts +83 -0
  318. package/dist/via/classified/config-drift.d.ts +34 -0
  319. package/dist/via/classified/descriptor.d.ts +66 -0
  320. package/dist/via/classified/errors.d.ts +19 -0
  321. package/dist/via/classified/guards.d.ts +23 -0
  322. package/dist/via/classified/index.d.ts +11 -0
  323. package/dist/via/classified/presets.d.ts +65 -0
  324. package/dist/via/classified/resolve.d.ts +9 -0
  325. package/dist/via/classified/strategy.d.ts +11 -0
  326. package/dist/via/classified/validators.d.ts +3 -0
  327. package/dist/via/classified/write.d.ts +4 -0
  328. package/dist/via/computed/binding.d.ts +34 -0
  329. package/dist/via/computed/descriptor.d.ts +35 -0
  330. package/dist/via/i18n/active.d.ts +28 -0
  331. package/dist/via/i18n/binding.d.ts +36 -0
  332. package/dist/via/i18n/core.d.ts +267 -0
  333. package/dist/via/i18n/densify.d.ts +24 -0
  334. package/dist/via/i18n/dictionary.d.ts +200 -0
  335. package/dist/via/i18n/index.d.ts +21 -0
  336. package/dist/via/i18n/policy.d.ts +44 -0
  337. package/dist/via/i18n/script.d.ts +26 -0
  338. package/dist/via/i18n/strategy.d.ts +13 -0
  339. package/dist/via/lookup/active.d.ts +19 -0
  340. package/dist/via/lookup/binding.d.ts +99 -0
  341. package/dist/via/lookup/descriptor.d.ts +123 -0
  342. package/dist/via/lookup/handle.d.ts +220 -0
  343. package/dist/via/lookup/index.d.ts +17 -0
  344. package/dist/via/lookup/registry.d.ts +228 -0
  345. package/dist/via/lookup/snapshot.d.ts +67 -0
  346. package/dist/via/money/arith.d.ts +68 -0
  347. package/dist/via/money/binding.d.ts +21 -0
  348. package/dist/via/money/branded.d.ts +61 -0
  349. package/dist/via/money/descriptor.d.ts +73 -0
  350. package/dist/via/money/fixed-point.d.ts +51 -0
  351. package/dist/via/money/index.d.ts +15 -0
  352. package/dist/via/money/iso4217.d.ts +6 -0
  353. package/dist/via/money/money-reducer.d.ts +33 -0
  354. package/dist/via/money/normalize.d.ts +105 -0
  355. package/dist/via/money/paths.d.ts +61 -0
  356. package/dist/via/money/where.d.ts +127 -0
  357. package/dist/walk-SVNDIZ62.js +241 -0
  358. package/dist/with/index.js +11 -11
  359. package/dist/with-audit/attestation/active.d.ts +10 -0
  360. package/dist/with-audit/attestation/index.d.ts +16 -0
  361. package/dist/with-audit/attestation/issue.d.ts +29 -0
  362. package/dist/with-audit/attestation/revoke.d.ts +15 -0
  363. package/dist/with-audit/attestation/signer.d.ts +33 -0
  364. package/dist/with-audit/attestation/strategy.d.ts +44 -0
  365. package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
  366. package/dist/with-audit/consent/active.d.ts +14 -0
  367. package/dist/with-audit/consent/consent.d.ts +114 -0
  368. package/dist/with-audit/consent/index.d.ts +14 -0
  369. package/dist/with-audit/consent/strategy.d.ts +36 -0
  370. package/dist/with-audit/forget/active.d.ts +31 -0
  371. package/dist/with-audit/forget/index.d.ts +28 -0
  372. package/dist/with-audit/forget/purge-scope.d.ts +54 -0
  373. package/dist/with-audit/forget/strategy.d.ts +199 -0
  374. package/dist/with-audit/forget/subject-index.d.ts +83 -0
  375. package/dist/with-audit/guards/executor.d.ts +26 -0
  376. package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
  377. package/dist/with-audit/guards/index.d.ts +10 -0
  378. package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
  379. package/dist/with-audit/guards/registry.d.ts +83 -0
  380. package/dist/with-audit/guards/transition-guard.d.ts +82 -0
  381. package/dist/with-audit/guards/types.d.ts +134 -0
  382. package/dist/with-audit/guards/with-guard.d.ts +15 -0
  383. package/dist/with-audit/periods/active.d.ts +11 -0
  384. package/dist/with-audit/periods/index.d.ts +18 -0
  385. package/dist/with-audit/periods/periods.d.ts +417 -0
  386. package/dist/with-audit/periods/strategy.d.ts +32 -0
  387. package/dist/with-audit/periods/vault-facade.d.ts +95 -0
  388. package/dist/with-audit/portability/active.d.ts +11 -0
  389. package/dist/with-audit/portability/export-accessible.d.ts +46 -0
  390. package/dist/with-audit/portability/index.d.ts +18 -0
  391. package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
  392. package/dist/with-audit/portability/strategy.d.ts +31 -0
  393. package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
  394. package/dist/with-audit/sealed-record/active.d.ts +9 -0
  395. package/dist/with-audit/sealed-record/index.d.ts +55 -0
  396. package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
  397. package/dist/with-audit/sealed-record/types.d.ts +27 -0
  398. package/dist/with-audit/tiers/active.d.ts +9 -0
  399. package/dist/with-audit/tiers/index.d.ts +394 -0
  400. package/dist/with-audit/tiers/strategy.d.ts +36 -0
  401. package/dist/with-cargo/active.d.ts +11 -0
  402. package/dist/with-cargo/adopt-partition.d.ts +81 -0
  403. package/dist/with-cargo/decrypt-partition.d.ts +19 -0
  404. package/dist/with-cargo/describe-extraction.d.ts +41 -0
  405. package/dist/with-cargo/extract-partition.d.ts +155 -0
  406. package/dist/with-cargo/index.d.ts +33 -0
  407. package/dist/with-cargo/strategy.d.ts +30 -0
  408. package/dist/with-cargo/vault-diff.d.ts +144 -0
  409. package/dist/with-cargo/walk-closure.d.ts +67 -0
  410. package/dist/with-commit/crdt/active.d.ts +25 -0
  411. package/dist/with-commit/crdt/crdt.d.ts +42 -0
  412. package/dist/with-commit/crdt/index.d.ts +16 -0
  413. package/dist/with-commit/crdt/strategy.d.ts +25 -0
  414. package/dist/with-commit/history/active.d.ts +40 -0
  415. package/dist/with-commit/history/diff.d.ts +23 -0
  416. package/dist/with-commit/history/history.d.ts +73 -0
  417. package/dist/with-commit/history/index.d.ts +30 -0
  418. package/dist/with-commit/history/ledger/constants.d.ts +37 -0
  419. package/dist/with-commit/history/ledger/entry.d.ts +195 -0
  420. package/dist/with-commit/history/ledger/hash.d.ts +30 -0
  421. package/dist/with-commit/history/ledger/index.d.ts +19 -0
  422. package/dist/with-commit/history/ledger/patch.d.ts +99 -0
  423. package/dist/with-commit/history/ledger/store.d.ts +356 -0
  424. package/dist/with-commit/history/strategy.d.ts +136 -0
  425. package/dist/with-commit/history/time-machine.d.ts +202 -0
  426. package/dist/with-commit/numbering/descriptor.d.ts +27 -0
  427. package/dist/with-commit/numbering/index.d.ts +69 -0
  428. package/dist/with-commit/sequence/active.d.ts +10 -0
  429. package/dist/with-commit/sequence/index.d.ts +150 -0
  430. package/dist/with-commit/sequence/strategy.d.ts +26 -0
  431. package/dist/with-commit/tx/active.d.ts +27 -0
  432. package/dist/with-commit/tx/dry-run.d.ts +29 -0
  433. package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
  434. package/dist/with-commit/tx/index.d.ts +13 -0
  435. package/dist/with-commit/tx/invariants.d.ts +68 -0
  436. package/dist/with-commit/tx/strategy.d.ts +23 -0
  437. package/dist/with-commit/tx/transaction.d.ts +212 -0
  438. package/dist/with-fork/archive/engine.d.ts +71 -0
  439. package/dist/with-fork/archive/index.d.ts +23 -0
  440. package/dist/with-fork/shadow/active.d.ts +6 -0
  441. package/dist/with-fork/shadow/index.d.ts +14 -0
  442. package/dist/with-fork/shadow/strategy.d.ts +28 -0
  443. package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
  444. package/dist/with-fork/snapshots/active.d.ts +20 -0
  445. package/dist/with-fork/snapshots/engine.d.ts +36 -0
  446. package/dist/with-fork/snapshots/index.d.ts +5 -0
  447. package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
  448. package/dist/with-fork/snapshots/policy.d.ts +23 -0
  449. package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
  450. package/dist/with-fork/snapshots/strategy.d.ts +48 -0
  451. package/dist/with-formula/computed/index.d.ts +48 -0
  452. package/dist/with-formula/computed/lazy.d.ts +13 -0
  453. package/dist/with-formula/derivations/executor.d.ts +61 -0
  454. package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
  455. package/dist/with-formula/derivations/index.d.ts +6 -0
  456. package/dist/with-formula/derivations/registry.d.ts +67 -0
  457. package/dist/with-formula/derivations/stale.d.ts +39 -0
  458. package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
  459. package/dist/with-formula/derivations/types.d.ts +248 -0
  460. package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
  461. package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
  462. package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
  463. package/dist/with-formula/materialized-views/executor.d.ts +80 -0
  464. package/dist/with-formula/materialized-views/index.d.ts +11 -0
  465. package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
  466. package/dist/with-formula/materialized-views/registry.d.ts +99 -0
  467. package/dist/with-formula/materialized-views/stale.d.ts +113 -0
  468. package/dist/with-formula/materialized-views/types.d.ts +318 -0
  469. package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
  470. package/dist/with-formula/overlay-views/index.d.ts +5 -0
  471. package/dist/with-formula/overlay-views/registry.d.ts +42 -0
  472. package/dist/with-formula/overlay-views/types.d.ts +97 -0
  473. package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
  474. package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
  475. package/dist/with-lookup/aggregate/active.d.ts +33 -0
  476. package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
  477. package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
  478. package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
  479. package/dist/with-lookup/aggregate/index.d.ts +23 -0
  480. package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
  481. package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
  482. package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
  483. package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
  484. package/dist/with-lookup/embeddings/index.d.ts +4 -0
  485. package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
  486. package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
  487. package/dist/with-lookup/indexing/active.d.ts +30 -0
  488. package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
  489. package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
  490. package/dist/with-lookup/indexing/index.d.ts +27 -0
  491. package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
  492. package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
  493. package/dist/with-lookup/indexing/strategy.d.ts +56 -0
  494. package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
  495. package/dist/with-lookup/search/active.d.ts +10 -0
  496. package/dist/with-lookup/search/build-docs.d.ts +15 -0
  497. package/dist/with-lookup/search/collection-facade.d.ts +163 -0
  498. package/dist/with-lookup/search/fuse.d.ts +22 -0
  499. package/dist/with-lookup/search/index-store.d.ts +19 -0
  500. package/dist/with-lookup/search/index.d.ts +19 -0
  501. package/dist/with-lookup/search/inverted-index.d.ts +47 -0
  502. package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
  503. package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
  504. package/dist/with-lookup/search/scan.d.ts +28 -0
  505. package/dist/with-lookup/search/segment.d.ts +15 -0
  506. package/dist/with-lookup/search/serialize.d.ts +4 -0
  507. package/dist/with-lookup/search/snippet.d.ts +5 -0
  508. package/dist/with-lookup/search/strategy.d.ts +41 -0
  509. package/dist/with-lookup/search/tokenize.d.ts +12 -0
  510. package/dist/with-party/auth-introspection/index.d.ts +44 -0
  511. package/dist/with-party/broker/active.d.ts +23 -0
  512. package/dist/with-party/broker/index.d.ts +28 -0
  513. package/dist/with-party/broker/seed.d.ts +77 -0
  514. package/dist/with-party/custody/active.d.ts +10 -0
  515. package/dist/with-party/custody/index.d.ts +69 -0
  516. package/dist/with-party/custody/liberate.d.ts +64 -0
  517. package/dist/with-party/custody/strategy.d.ts +48 -0
  518. package/dist/with-party/directory/index.d.ts +11 -0
  519. package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
  520. package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
  521. package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
  522. package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
  523. package/dist/with-party/directory/storage.d.ts +33 -0
  524. package/dist/with-party/directory/types.d.ts +43 -0
  525. package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
  526. package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
  527. package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
  528. package/dist/with-party/directory/visibility.d.ts +47 -0
  529. package/dist/with-party/policy/engine.d.ts +60 -0
  530. package/dist/with-party/policy/index.d.ts +15 -0
  531. package/dist/with-party/policy/noydb-facade.d.ts +39 -0
  532. package/dist/with-party/policy/presets.d.ts +38 -0
  533. package/dist/with-party/policy/storage.d.ts +31 -0
  534. package/dist/with-party/session/active.d.ts +34 -0
  535. package/dist/with-party/session/dev-unlock.d.ts +128 -0
  536. package/dist/with-party/session/index.d.ts +23 -0
  537. package/dist/with-party/session/session-policy.d.ts +92 -0
  538. package/dist/with-party/session/session.d.ts +131 -0
  539. package/dist/with-party/session/strategy.d.ts +42 -0
  540. package/dist/with-party/session/unlock-state.d.ts +47 -0
  541. package/dist/with-party/sync/index.d.ts +31 -0
  542. package/dist/with-party/tab-coordination.d.ts +73 -0
  543. package/dist/with-party/tab-write-relay.d.ts +39 -0
  544. package/dist/with-party/team/active.d.ts +13 -0
  545. package/dist/with-party/team/authenticators.d.ts +95 -0
  546. package/dist/with-party/team/deed.d.ts +97 -0
  547. package/dist/with-party/team/delegation.d.ts +88 -0
  548. package/dist/with-party/team/index.d.ts +38 -0
  549. package/dist/with-party/team/keyring.d.ts +318 -0
  550. package/dist/with-party/team/magic-link-grant.d.ts +152 -0
  551. package/dist/with-party/team/managed-passphrase.d.ts +280 -0
  552. package/dist/with-party/team/noydb-facade.d.ts +484 -0
  553. package/dist/with-party/team/peer-recover.d.ts +81 -0
  554. package/dist/with-party/team/presence.d.ts +81 -0
  555. package/dist/with-party/team/recovery.d.ts +191 -0
  556. package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
  557. package/dist/with-party/team/rotate-recover.d.ts +275 -0
  558. package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
  559. package/dist/with-party/team/strategy.d.ts +9 -0
  560. package/dist/with-party/team/sync-active.d.ts +33 -0
  561. package/dist/with-party/team/sync-credentials.d.ts +113 -0
  562. package/dist/with-party/team/sync-strategy.d.ts +67 -0
  563. package/dist/with-party/team/sync-transaction.d.ts +39 -0
  564. package/dist/with-party/team/sync.d.ts +174 -0
  565. package/dist/with-party/team/tiers.d.ts +39 -0
  566. package/dist/with-party/team/wrapped-deks.d.ts +86 -0
  567. package/dist/with-pod/backup.d.ts +74 -0
  568. package/dist/with-pod/bundle.d.ts +414 -0
  569. package/dist/with-pod/format.d.ts +203 -0
  570. package/dist/with-pod/index.d.ts +20 -0
  571. package/dist/with-pod/pod-store.d.ts +54 -0
  572. package/dist/with-pod/ulid.d.ts +64 -0
  573. package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
  574. package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
  575. package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
  576. package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
  577. package/dist/with-shape/blobs/import-external.d.ts +50 -0
  578. package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
  579. package/dist/with-shape/blobs/object-projection.d.ts +70 -0
  580. package/dist/with-shape/introspection/describe.d.ts +237 -0
  581. package/dist/with-shape/introspection/field-meta.d.ts +61 -0
  582. package/dist/with-shape/introspection/fields.d.ts +14 -0
  583. package/dist/with-shape/introspection/index.d.ts +12 -0
  584. package/dist/with-shape/introspection/json-schema.d.ts +13 -0
  585. package/dist/with-shape/introspection/meta.d.ts +22 -0
  586. package/dist/with-shape/introspection/projection.d.ts +13 -0
  587. package/dist/with-shape/introspection/types.d.ts +154 -0
  588. package/dist/with-shape/introspection/walk.d.ts +50 -0
  589. package/dist/with-shape/links/lazy-handle.d.ts +36 -0
  590. package/dist/with-shape/links/link-set.d.ts +67 -0
  591. package/dist/with-shape/links/names.d.ts +65 -0
  592. package/dist/with-shape/links/vault-facade.d.ts +211 -0
  593. package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
  594. package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
  595. package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
  596. package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
  597. package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
  598. package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
  599. package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
  600. package/dist/with-shape/satellites/declare.d.ts +60 -0
  601. package/dist/with-shape/satellites/existence.d.ts +5 -0
  602. package/dist/with-shape/satellites/fanout.d.ts +38 -0
  603. package/dist/with-shape/satellites/forget.d.ts +47 -0
  604. package/dist/with-shape/satellites/index.d.ts +3 -0
  605. package/dist/with-shape/satellites/joined.d.ts +19 -0
  606. package/dist/with-shape/satellites/marker.d.ts +10 -0
  607. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  608. package/dist/with-shape/satellites/post-register.d.ts +6 -0
  609. package/dist/with-shape/satellites/proxy.d.ts +37 -0
  610. package/dist/with-shape/satellites/raw-target.d.ts +14 -0
  611. package/dist/with-shape/satellites/registry.d.ts +19 -0
  612. package/dist/with-shape/satellites/types.d.ts +37 -0
  613. package/dist/with-shape/satellites/validate.d.ts +17 -0
  614. package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
  615. package/dist/with-shape/schema-update/cutover.d.ts +5 -0
  616. package/dist/with-shape/schema-update/delta.d.ts +2 -0
  617. package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
  618. package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
  619. package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
  620. package/dist/with-shape/schema-update/fence.d.ts +15 -0
  621. package/dist/with-shape/schema-update/gate.d.ts +16 -0
  622. package/dist/with-shape/schema-update/index.d.ts +6 -0
  623. package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
  624. package/dist/with-shape/schema-update/strategies.d.ts +12 -0
  625. package/dist/with-shape/schema-update/types.d.ts +53 -0
  626. package/dist/with-store/index.d.ts +15 -0
  627. package/dist/with-store/lazy/active.d.ts +12 -0
  628. package/dist/with-store/lazy/index.d.ts +14 -0
  629. package/dist/with-store/lazy/strategy.d.ts +9 -0
  630. package/dist/with-store/route-store.d.ts +259 -0
  631. package/dist/with-store/store-middleware.d.ts +189 -0
  632. package/dist/withdraw-accessible-WZIEVWSR.js +28 -0
  633. package/package.json +47 -55
  634. package/dist/adapter/index.d.ts +0 -5
  635. package/dist/adapter/index.js +0 -15
  636. package/dist/aggregate/index.d.ts +0 -42
  637. package/dist/api-JDWL67WL.js +0 -20
  638. package/dist/as/index.d.ts +0 -7
  639. package/dist/at/index.d.ts +0 -5
  640. package/dist/attestation/index.d.ts +0 -20
  641. package/dist/backup-WRGNTGJF.js +0 -225
  642. package/dist/backup-WRGNTGJF.js.map +0 -1
  643. package/dist/blobs/index.d.ts +0 -44
  644. package/dist/bundle/index.d.ts +0 -122
  645. package/dist/bundle-DzWtVw7w.d.ts +0 -548
  646. package/dist/by/index.d.ts +0 -1
  647. package/dist/cargo/index.d.ts +0 -9
  648. package/dist/chunk-25G7PUTA.js +0 -235
  649. package/dist/chunk-26FSVNBL.js +0 -34
  650. package/dist/chunk-2PJB6H3H.js +0 -167
  651. package/dist/chunk-2PJB6H3H.js.map +0 -1
  652. package/dist/chunk-37JZR7CY.js +0 -91
  653. package/dist/chunk-3KBK5LU4.js +0 -117
  654. package/dist/chunk-3YKBGS3I.js +0 -686
  655. package/dist/chunk-3YKBGS3I.js.map +0 -1
  656. package/dist/chunk-44DV37ZV.js +0 -75
  657. package/dist/chunk-44DV37ZV.js.map +0 -1
  658. package/dist/chunk-47C4CI7R.js +0 -108
  659. package/dist/chunk-47C4CI7R.js.map +0 -1
  660. package/dist/chunk-4VDFUBTS.js +0 -275
  661. package/dist/chunk-4VDFUBTS.js.map +0 -1
  662. package/dist/chunk-55LSDABW.js +0 -94
  663. package/dist/chunk-56JB2BGI.js +0 -13003
  664. package/dist/chunk-56JB2BGI.js.map +0 -1
  665. package/dist/chunk-5GQE5IDB.js +0 -513
  666. package/dist/chunk-5GQE5IDB.js.map +0 -1
  667. package/dist/chunk-5HRJQSKN.js +0 -202
  668. package/dist/chunk-5HZULLHE.js +0 -404
  669. package/dist/chunk-5JQMX2EH.js +0 -50
  670. package/dist/chunk-5UOPIPZC.js +0 -95
  671. package/dist/chunk-5YBUFCFF.js +0 -135
  672. package/dist/chunk-62APEMF3.js +0 -280
  673. package/dist/chunk-62APEMF3.js.map +0 -1
  674. package/dist/chunk-6P5AJ2ZS.js +0 -120
  675. package/dist/chunk-6P5AJ2ZS.js.map +0 -1
  676. package/dist/chunk-6PALJTC2.js +0 -430
  677. package/dist/chunk-6PALJTC2.js.map +0 -1
  678. package/dist/chunk-6S7T6WC4.js +0 -111
  679. package/dist/chunk-6S7T6WC4.js.map +0 -1
  680. package/dist/chunk-6Z435B6N.js +0 -1656
  681. package/dist/chunk-6Z435B6N.js.map +0 -1
  682. package/dist/chunk-723XB5NX.js +0 -86
  683. package/dist/chunk-7CZ6YXMO.js +0 -124
  684. package/dist/chunk-7KTL4RHZ.js +0 -120
  685. package/dist/chunk-7KTL4RHZ.js.map +0 -1
  686. package/dist/chunk-7TAV3BFQ.js +0 -766
  687. package/dist/chunk-7TAV3BFQ.js.map +0 -1
  688. package/dist/chunk-BASCPHNM.js +0 -380
  689. package/dist/chunk-BASCPHNM.js.map +0 -1
  690. package/dist/chunk-BGIZAFY7.js +0 -1
  691. package/dist/chunk-BJ2XF2RC.js +0 -823
  692. package/dist/chunk-BM6E4MUT.js +0 -881
  693. package/dist/chunk-BM6E4MUT.js.map +0 -1
  694. package/dist/chunk-BTFTHF6Q.js +0 -42
  695. package/dist/chunk-C4NOLA5X.js +0 -132
  696. package/dist/chunk-C4NOLA5X.js.map +0 -1
  697. package/dist/chunk-CHK5VVMI.js +0 -155
  698. package/dist/chunk-DCVVCJVB.js +0 -45
  699. package/dist/chunk-EU7HDMT3.js +0 -54
  700. package/dist/chunk-F3EKFGUS.js +0 -99
  701. package/dist/chunk-FCOZ7DEC.js +0 -355
  702. package/dist/chunk-FCOZ7DEC.js.map +0 -1
  703. package/dist/chunk-FWART3VA.js +0 -205
  704. package/dist/chunk-FZK3JJJK.js +0 -150
  705. package/dist/chunk-GDOOG5YQ.js +0 -382
  706. package/dist/chunk-GLVXQU3E.js +0 -155
  707. package/dist/chunk-HU55NPHZ.js +0 -80
  708. package/dist/chunk-I6JJ6VJS.js +0 -97
  709. package/dist/chunk-I6URUNTD.js +0 -59
  710. package/dist/chunk-IARAK3PK.js +0 -14
  711. package/dist/chunk-II6DLDZM.js +0 -30
  712. package/dist/chunk-J5YUA6JB.js +0 -23
  713. package/dist/chunk-J7OH6R4K.js +0 -49
  714. package/dist/chunk-K2WCO3NX.js +0 -1
  715. package/dist/chunk-L6Q5NA22.js +0 -40
  716. package/dist/chunk-LFGJG4XZ.js +0 -30
  717. package/dist/chunk-M3OYTM5Z.js +0 -85
  718. package/dist/chunk-MOQ5M46U.js +0 -209
  719. package/dist/chunk-NTPWQH4S.js +0 -589
  720. package/dist/chunk-OJ64XMPJ.js +0 -1434
  721. package/dist/chunk-OJ64XMPJ.js.map +0 -1
  722. package/dist/chunk-OWGAXPRE.js +0 -129
  723. package/dist/chunk-P2PEPSPK.js +0 -230
  724. package/dist/chunk-P6TZ3IVN.js +0 -453
  725. package/dist/chunk-P6TZ3IVN.js.map +0 -1
  726. package/dist/chunk-PAJCRV7O.js +0 -123
  727. package/dist/chunk-PMMV5SQC.js +0 -416
  728. package/dist/chunk-PMMV5SQC.js.map +0 -1
  729. package/dist/chunk-PPPZIBKY.js +0 -261
  730. package/dist/chunk-PPPZIBKY.js.map +0 -1
  731. package/dist/chunk-PVC2FBCQ.js +0 -45
  732. package/dist/chunk-PYIUDUGS.js +0 -36
  733. package/dist/chunk-QABECTNN.js +0 -255
  734. package/dist/chunk-QYMMMKOO.js +0 -164
  735. package/dist/chunk-R4IVPJHN.js +0 -130
  736. package/dist/chunk-REWTMYSF.js +0 -32
  737. package/dist/chunk-REWTMYSF.js.map +0 -1
  738. package/dist/chunk-RNYDHIQL.js +0 -367
  739. package/dist/chunk-RUIMKQTA.js +0 -23
  740. package/dist/chunk-RUIMKQTA.js.map +0 -1
  741. package/dist/chunk-TCGVRKOS.js +0 -367
  742. package/dist/chunk-TIAYXOEI.js +0 -99
  743. package/dist/chunk-TQ3REHVF.js +0 -95
  744. package/dist/chunk-TQ3REHVF.js.map +0 -1
  745. package/dist/chunk-TUL5YQWF.js +0 -777
  746. package/dist/chunk-U7LV2DUN.js +0 -74
  747. package/dist/chunk-UB3XHGFG.js +0 -181
  748. package/dist/chunk-UB3XHGFG.js.map +0 -1
  749. package/dist/chunk-UMH35AQV.js +0 -70
  750. package/dist/chunk-UWZ7O4NR.js +0 -29
  751. package/dist/chunk-V76PHWLE.js +0 -41
  752. package/dist/chunk-VFQOE76I.js +0 -69
  753. package/dist/chunk-VIWOGJ2O.js +0 -71
  754. package/dist/chunk-VK6OC22R.js +0 -37
  755. package/dist/chunk-VK6OC22R.js.map +0 -1
  756. package/dist/chunk-VVLOWY74.js +0 -150
  757. package/dist/chunk-VVLOWY74.js.map +0 -1
  758. package/dist/chunk-W3JABOVB.js +0 -53
  759. package/dist/chunk-W3JABOVB.js.map +0 -1
  760. package/dist/chunk-WPNP3NF5.js +0 -1221
  761. package/dist/chunk-WPNP3NF5.js.map +0 -1
  762. package/dist/chunk-X5QZAJDB.js +0 -59
  763. package/dist/chunk-X6VNIRHS.js +0 -239
  764. package/dist/chunk-X6VNIRHS.js.map +0 -1
  765. package/dist/chunk-XBPUVQDO.js +0 -664
  766. package/dist/chunk-XBPUVQDO.js.map +0 -1
  767. package/dist/chunk-XW5LZYV4.js +0 -21
  768. package/dist/chunk-YTCCC6NG.js +0 -320
  769. package/dist/chunk-YTCCC6NG.js.map +0 -1
  770. package/dist/classified/index.d.ts +0 -17
  771. package/dist/collection-facade-EJVIN2BY.js +0 -39
  772. package/dist/computed-6FOFXQPE.js +0 -11
  773. package/dist/config-drift-RFEVGBKR.js +0 -24
  774. package/dist/config-drift-RFEVGBKR.js.map +0 -1
  775. package/dist/consent/index.d.ts +0 -23
  776. package/dist/crdt/index.d.ts +0 -34
  777. package/dist/dead-filter-RHMNYOXP.js +0 -28
  778. package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
  779. package/dist/delegation-IHXOASHV.js +0 -25
  780. package/dist/derivations/index.d.ts +0 -70
  781. package/dist/derive-CD3ZVIXK.js +0 -21
  782. package/dist/describe/index.d.ts +0 -1
  783. package/dist/describe/index.js +0 -1
  784. package/dist/describe-C6iHNlqJ.d.ts +0 -162
  785. package/dist/dev-unlock-wgQ7Ci5I.d.ts +0 -263
  786. package/dist/discriminant-BN9REW3o.d.ts +0 -60
  787. package/dist/enclave-KGEUW2GL.js +0 -123
  788. package/dist/executor-EUPYHCLU.js +0 -9
  789. package/dist/executor-KZ4B3PRT.js +0 -9
  790. package/dist/executor-MHUM2VZK.js +0 -21
  791. package/dist/export-accessible-Z3NSZZHN.js +0 -23
  792. package/dist/extract-partition-VSKT35JG.js +0 -36
  793. package/dist/fanout-sidecar-NBDKKCHT.js +0 -74
  794. package/dist/find-OH4BEULF.js +0 -11
  795. package/dist/forget/index.d.ts +0 -36
  796. package/dist/guards/index.d.ts +0 -35
  797. package/dist/hash-CwHnoKyW.d.ts +0 -72
  798. package/dist/history/index.d.ts +0 -61
  799. package/dist/i18n/index.d.ts +0 -37
  800. package/dist/in/index.d.ts +0 -5
  801. package/dist/index-B9QdHytu.d.ts +0 -123
  802. package/dist/index-CTvUp94-.d.ts +0 -123
  803. package/dist/index-Dn5GzPg_.d.ts +0 -22138
  804. package/dist/indexing/index.d.ts +0 -39
  805. package/dist/issue-AEOL6RXA.js +0 -19
  806. package/dist/kernel/index.d.ts +0 -32
  807. package/dist/kernel/index.js +0 -59
  808. package/dist/lazy/index.d.ts +0 -21
  809. package/dist/ledger-3LR3YO2W.js +0 -42
  810. package/dist/liberate-XSEPRWEA.js +0 -24
  811. package/dist/link-set-NSUIX6BR.js +0 -31
  812. package/dist/materialized-views/index.d.ts +0 -173
  813. package/dist/mime-magic-CYbFNQ4h.d.ts +0 -103
  814. package/dist/noydb-POVTIVQ6.js +0 -62
  815. package/dist/on/index.d.ts +0 -5
  816. package/dist/overlay-views/index.d.ts +0 -98
  817. package/dist/periods/index.d.ts +0 -20
  818. package/dist/pod/index.d.ts +0 -63
  819. package/dist/policy-Y7HL2KGA.js +0 -41
  820. package/dist/portability/index.d.ts +0 -20
  821. package/dist/post-register-KOFRTCDD.js +0 -55
  822. package/dist/post-register-KOFRTCDD.js.map +0 -1
  823. package/dist/public-envelope-NC7SPNMV.js +0 -32
  824. package/dist/query/index.d.ts +0 -5
  825. package/dist/read-only-facade-5ADRJVTM.js +0 -8
  826. package/dist/register-3D6R2MKN.js +0 -23
  827. package/dist/registry-AI4E46PD.js +0 -19
  828. package/dist/registry-HSNQ4NBP.js +0 -9
  829. package/dist/registry-WIX6QCV5.js +0 -17
  830. package/dist/request-withdrawal-GU4XS2R5.js +0 -31
  831. package/dist/reveal-5Y777N5Q.js +0 -38
  832. package/dist/reveal-5Y777N5Q.js.map +0 -1
  833. package/dist/revoke-ZFETCLYV.js +0 -24
  834. package/dist/revoke-ZFETCLYV.js.map +0 -1
  835. package/dist/satellites/index.d.ts +0 -5
  836. package/dist/sealed-record/index.d.ts +0 -69
  837. package/dist/session/index.d.ts +0 -44
  838. package/dist/shadow/index.d.ts +0 -15
  839. package/dist/signer-GAIMQQ2J.js +0 -25
  840. package/dist/signer-GAIMQQ2J.js.map +0 -1
  841. package/dist/snapshots/index.d.ts +0 -26
  842. package/dist/stale-77LP2EEF.js +0 -14
  843. package/dist/stale-77LP2EEF.js.map +0 -1
  844. package/dist/storage-KEXIXLGM.js +0 -23
  845. package/dist/storage-KEXIXLGM.js.map +0 -1
  846. package/dist/store-coordination-provider-NJDDZ264.js +0 -142
  847. package/dist/subject-index-O75wKshW.d.ts +0 -362
  848. package/dist/sync/index.d.ts +0 -41
  849. package/dist/team/index.d.ts +0 -155
  850. package/dist/tiers/index.d.ts +0 -5
  851. package/dist/to/index.d.ts +0 -5
  852. package/dist/transition-guard-D5RLJv8S.d.ts +0 -165
  853. package/dist/tx/index.d.ts +0 -35
  854. package/dist/ui/index.d.ts +0 -1
  855. package/dist/ulid-DRH25k3y.d.ts +0 -66
  856. package/dist/util/index.d.ts +0 -79
  857. package/dist/validators-C3lrVF-c.d.ts +0 -101
  858. package/dist/vault-diff-_LSIcOMv.d.ts +0 -147
  859. package/dist/verify-CAYGXYNO.js +0 -139
  860. package/dist/verify-CAYGXYNO.js.map +0 -1
  861. package/dist/walk-SMAE4IEI.js +0 -241
  862. package/dist/with/index.d.ts +0 -38
  863. package/dist/with-materialized-view-Xv1-9Bh0.d.ts +0 -27
  864. package/dist/with-overlayed-view-CuWhq_-C.d.ts +0 -12
  865. package/dist/with-rollup-K_iwal4b.d.ts +0 -47
  866. package/dist/withdraw-accessible-Q7BULAN5.js +0 -28
  867. package/dist/withdraw-accessible-Q7BULAN5.js.map +0 -1
  868. /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
  869. /package/dist/{chunk-VIWOGJ2O.js.map → chunk-3B5VVCNY.js.map} +0 -0
  870. /package/dist/{chunk-P2PEPSPK.js.map → chunk-3LQ2YKO4.js.map} +0 -0
  871. /package/dist/{chunk-EU7HDMT3.js.map → chunk-3QCRBHCY.js.map} +0 -0
  872. /package/dist/{chunk-FZK3JJJK.js.map → chunk-4JBYV75E.js.map} +0 -0
  873. /package/dist/{chunk-I6JJ6VJS.js.map → chunk-4NXKCLLQ.js.map} +0 -0
  874. /package/dist/{chunk-VFQOE76I.js.map → chunk-5M5DVGV7.js.map} +0 -0
  875. /package/dist/{chunk-LFGJG4XZ.js.map → chunk-5YOLBEQ6.js.map} +0 -0
  876. /package/dist/{chunk-OWGAXPRE.js.map → chunk-6CRIV7DE.js.map} +0 -0
  877. /package/dist/{chunk-QABECTNN.js.map → chunk-6QTNZJBS.js.map} +0 -0
  878. /package/dist/{chunk-723XB5NX.js.map → chunk-6T2SCQRU.js.map} +0 -0
  879. /package/dist/{chunk-PVC2FBCQ.js.map → chunk-7DSTRQIJ.js.map} +0 -0
  880. /package/dist/{chunk-NTPWQH4S.js.map → chunk-AUSTCW2X.js.map} +0 -0
  881. /package/dist/{chunk-MOQ5M46U.js.map → chunk-B3HJYUOF.js.map} +0 -0
  882. /package/dist/{chunk-QYMMMKOO.js.map → chunk-BDVFPG6Y.js.map} +0 -0
  883. /package/dist/{chunk-PYIUDUGS.js.map → chunk-CAF6WOK7.js.map} +0 -0
  884. /package/dist/{chunk-5HZULLHE.js.map → chunk-CIE2BASH.js.map} +0 -0
  885. /package/dist/{chunk-BTFTHF6Q.js.map → chunk-CRI4OUV4.js.map} +0 -0
  886. /package/dist/{chunk-37JZR7CY.js.map → chunk-DLG74CNB.js.map} +0 -0
  887. /package/dist/{chunk-TCGVRKOS.js.map → chunk-ERJ7FU55.js.map} +0 -0
  888. /package/dist/{chunk-FWART3VA.js.map → chunk-EVVGJDRQ.js.map} +0 -0
  889. /package/dist/{chunk-X5QZAJDB.js.map → chunk-EXK7QRWF.js.map} +0 -0
  890. /package/dist/{chunk-5HRJQSKN.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
  891. /package/dist/{chunk-DCVVCJVB.js.map → chunk-F64IRYG3.js.map} +0 -0
  892. /package/dist/{chunk-BJ2XF2RC.js.map → chunk-FHS2HQSH.js.map} +0 -0
  893. /package/dist/{chunk-HU55NPHZ.js.map → chunk-GKEWXIV5.js.map} +0 -0
  894. /package/dist/{chunk-I6URUNTD.js.map → chunk-GTGPO5KW.js.map} +0 -0
  895. /package/dist/{chunk-5UOPIPZC.js.map → chunk-HB3RFQSC.js.map} +0 -0
  896. /package/dist/{chunk-F3EKFGUS.js.map → chunk-I6GALP6E.js.map} +0 -0
  897. /package/dist/{chunk-R4IVPJHN.js.map → chunk-IL6POWCW.js.map} +0 -0
  898. /package/dist/{chunk-3KBK5LU4.js.map → chunk-IU6SNYX6.js.map} +0 -0
  899. /package/dist/{chunk-TUL5YQWF.js.map → chunk-J2ZX2XUV.js.map} +0 -0
  900. /package/dist/{chunk-UWZ7O4NR.js.map → chunk-JKJOGPZN.js.map} +0 -0
  901. /package/dist/{chunk-V76PHWLE.js.map → chunk-JZUV47FZ.js.map} +0 -0
  902. /package/dist/{chunk-II6DLDZM.js.map → chunk-K5IMOGHB.js.map} +0 -0
  903. /package/dist/{chunk-GDOOG5YQ.js.map → chunk-LASZKVMO.js.map} +0 -0
  904. /package/dist/{chunk-5YBUFCFF.js.map → chunk-NR5LT5RY.js.map} +0 -0
  905. /package/dist/{chunk-UMH35AQV.js.map → chunk-Q5VNKNE5.js.map} +0 -0
  906. /package/dist/{chunk-XW5LZYV4.js.map → chunk-QLWMEXCT.js.map} +0 -0
  907. /package/dist/{chunk-PAJCRV7O.js.map → chunk-QRB7NAOJ.js.map} +0 -0
  908. /package/dist/{chunk-U7LV2DUN.js.map → chunk-R4ROFEYC.js.map} +0 -0
  909. /package/dist/{chunk-RNYDHIQL.js.map → chunk-RIX4V2TB.js.map} +0 -0
  910. /package/dist/{chunk-L6Q5NA22.js.map → chunk-RYCTDFUX.js.map} +0 -0
  911. /package/dist/{chunk-CHK5VVMI.js.map → chunk-RZ5SVOYR.js.map} +0 -0
  912. /package/dist/{chunk-TIAYXOEI.js.map → chunk-SLFHQTTW.js.map} +0 -0
  913. /package/dist/{chunk-J5YUA6JB.js.map → chunk-UNFPPVNI.js.map} +0 -0
  914. /package/dist/{chunk-25G7PUTA.js.map → chunk-VLFCJYTL.js.map} +0 -0
  915. /package/dist/{chunk-7CZ6YXMO.js.map → chunk-VN3DBQAU.js.map} +0 -0
  916. /package/dist/{chunk-J7OH6R4K.js.map → chunk-VZRODIM3.js.map} +0 -0
  917. /package/dist/{chunk-55LSDABW.js.map → chunk-W22IKJE2.js.map} +0 -0
  918. /package/dist/{chunk-GLVXQU3E.js.map → chunk-X3YYQWOQ.js.map} +0 -0
  919. /package/dist/{chunk-M3OYTM5Z.js.map → chunk-YFXZEAYK.js.map} +0 -0
  920. /package/dist/{chunk-5JQMX2EH.js.map → chunk-ZAJAVEXY.js.map} +0 -0
  921. /package/dist/{chunk-26FSVNBL.js.map → chunk-ZICD77GM.js.map} +0 -0
  922. /package/dist/{chunk-IARAK3PK.js.map → chunk-ZUODRVHY.js.map} +0 -0
  923. /package/dist/{api-JDWL67WL.js.map → collection-facade-TLWIPI76.js.map} +0 -0
  924. /package/dist/{chunk-BGIZAFY7.js.map → computed-ZIQTYTDI.js.map} +0 -0
  925. /package/dist/{dead-filter-RHMNYOXP.js.map → dead-filter-ESOBZZP5.js.map} +0 -0
  926. /package/dist/{chunk-K2WCO3NX.js.map → delegation-W7ZV2322.js.map} +0 -0
  927. /package/dist/{collection-facade-EJVIN2BY.js.map → derive-H2BJTLUI.js.map} +0 -0
  928. /package/dist/{computed-6FOFXQPE.js.map → enclave-AP3I5W7O.js.map} +0 -0
  929. /package/dist/{delegation-IHXOASHV.js.map → executor-KGWTNEQD.js.map} +0 -0
  930. /package/dist/{derive-CD3ZVIXK.js.map → executor-OVEXR6RT.js.map} +0 -0
  931. /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
  932. /package/dist/{enclave-KGEUW2GL.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
  933. /package/dist/{executor-EUPYHCLU.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
  934. /package/dist/{fanout-sidecar-NBDKKCHT.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
  935. /package/dist/{executor-KZ4B3PRT.js.map → find-N6345CNT.js.map} +0 -0
  936. /package/dist/{executor-MHUM2VZK.js.map → issue-5OKB6I2R.js.map} +0 -0
  937. /package/dist/{export-accessible-Z3NSZZHN.js.map → ledger-GFBKVPV4.js.map} +0 -0
  938. /package/dist/{extract-partition-VSKT35JG.js.map → liberate-3VDOT4KO.js.map} +0 -0
  939. /package/dist/{find-OH4BEULF.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
  940. /package/dist/{issue-AEOL6RXA.js.map → noydb-ZCJOYBDI.js.map} +0 -0
  941. /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
  942. /package/dist/{ledger-3LR3YO2W.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
  943. /package/dist/{liberate-XSEPRWEA.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
  944. /package/dist/{link-set-NSUIX6BR.js.map → register-VAHONCID.js.map} +0 -0
  945. /package/dist/{noydb-POVTIVQ6.js.map → registry-7MLVD3VO.js.map} +0 -0
  946. /package/dist/{policy-Y7HL2KGA.js.map → registry-EPKPD5SM.js.map} +0 -0
  947. /package/dist/{public-envelope-NC7SPNMV.js.map → registry-P5T7PS2U.js.map} +0 -0
  948. /package/dist/{read-only-facade-5ADRJVTM.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
  949. /package/dist/{register-3D6R2MKN.js.map → revoke-FDRD6GRW.js.map} +0 -0
  950. /package/dist/{registry-AI4E46PD.js.map → signer-MUWEIUI6.js.map} +0 -0
  951. /package/dist/{registry-HSNQ4NBP.js.map → stale-OSQ7J3AA.js.map} +0 -0
  952. /package/dist/{registry-WIX6QCV5.js.map → storage-MVFCGEQE.js.map} +0 -0
  953. /package/dist/{store-coordination-provider-NJDDZ264.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
  954. /package/dist/{walk-SMAE4IEI.js.map → walk-SVNDIZ62.js.map} +0 -0
  955. /package/dist/{request-withdrawal-GU4XS2R5.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
@@ -0,0 +1,166 @@
1
+ import type { ViaPosture } from './index.js';
2
+ /** A (collection, field) node. Artifact-grain targets (rollup field, MV row-class,
3
+ * overlay output) are modelled as a field node whose `field` is the artifact key. */
4
+ export interface FieldRef {
5
+ readonly collection: string;
6
+ readonly field: string;
7
+ }
8
+ export type EdgeKind = 'computed' | 'derivation' | 'rollup' | 'mv' | 'overlay' | 'ref';
9
+ /** `'virtual'` (#638 Task 7) marks a `computed(fn, { mode: 'virtual' })` field's edge —
10
+ * never stored (rides the `present` phase), so it can never be sealed at rest
11
+ * ({@link ViaGraph.taintSealedFields} excludes it) and is always non-queryable
12
+ * regardless of source posture ({@link ViaGraph.effectivePosture} clamps it). */
13
+ export type Grain = 'record' | 'aggregate' | 'virtual';
14
+ /** Delete/forget-time referential policy for a `'ref'` edge (#650 Task 5, spec §4) — duplicated
15
+ * (not imported) from `via/lookup/descriptor.ts`'s `OnDelete`: the kernel spine may not
16
+ * statically import `via/**` (Check 14, `via-layering`). Keep the two in sync by hand. */
17
+ export type OnDelete = 'restrict' | 'cascade' | 'nullify';
18
+ /** Plain (non-via) field baseline — max-permissive; taint only ever tightens. */
19
+ export declare const DEFAULT_POSTURE: ViaPosture;
20
+ /** The per-axis "most restrictive" fold — pure, exported for direct unit testing. */
21
+ export declare function foldPosture(a: ViaPosture, b: ViaPosture): ViaPosture;
22
+ /** Security-axes-only fold for a wildcard collection node (#642): sealed-wins encryptedAtRest,
23
+ * AND exportable, OR forgettable — queryable is NOT folded (stays base.queryable; the sealed
24
+ * clamp to 'none' is buildTaintOverlay's job, so inheriting `sealed` never over-restricts a
25
+ * blob-adjacent output to unqueryable). Pure; exported for unit testing. Distinct from
26
+ * {@link foldPosture} (which folds all four axes) — do NOT reuse foldPosture here. */
27
+ export declare function foldWildcardSecurity(base: ViaPosture, contributor: ViaPosture): ViaPosture;
28
+ /** Metadata-only dependency graph, ONE per vault. Never stores values or key material. */
29
+ export declare class ViaGraph {
30
+ /** Declared source-field postures (registerField), keyed by node id. */
31
+ private readonly _posture;
32
+ /** Every derived target's registration, keyed by the target's node id. */
33
+ private readonly _in;
34
+ /** source node id -> derived edges that depend on it (dispatch/erasure), each carrying
35
+ * its own registration's `kind` (#678 — see {@link OutEdge}). */
36
+ private readonly _out;
37
+ /** Memoized effective posture per derived target node id. */
38
+ private readonly _effectiveCache;
39
+ /** Memoized whole-collection security-axes fold for `'*'` wildcard LEAF nodes (#642),
40
+ * keyed by collection name — see {@link _wildcardContribution}. Cleared alongside
41
+ * `_effectiveCache` on every `registerField`/`registerDerived` (a later-registered
42
+ * field must re-fold on the next read — registration ordering is free). */
43
+ private readonly _wildcardCache;
44
+ /** Collections with at least one classified field (#638 Task 2 fix wave 2,
45
+ * Finding I1 — the reconcile path's combined-state leak guard memory). */
46
+ private readonly _classifiedCollections;
47
+ /** Computed field names declared with no `deps` entry, per collection
48
+ * (Finding I1 — such a field registers no edge when no classified field is
49
+ * present yet, so a LATER, separate reconcile call attaching classifiedFields
50
+ * still needs to see it regardless of declaration order). */
51
+ private readonly _depslessComputed;
52
+ /** Declare a source field's posture (money/i18n/classified/plain). Plain fields
53
+ * default to `DEFAULT_POSTURE`; a later declaration for the same node wins-first (idempotent). */
54
+ registerField(collection: string, field: string, posture: ViaPosture): void;
55
+ /** A derived target depends on `sources` (may be cross-collection). `kind`/`grain`
56
+ * drive dispatch + erasure semantics; sources drive taint. Re-registering the same
57
+ * target replaces `_in` but does not prune stale `_out` edges — callers must
58
+ * register each target at most once per graph lifetime. `onDelete`/`keyField` (#650 Task 5)
59
+ * are meaningful only for `kind === 'ref'` edges — {@link referencingEdgesOf} reads them back. */
60
+ registerDerived(target: FieldRef, sources: readonly FieldRef[], kind: EdgeKind, grain: Grain, onDelete?: OnDelete, keyField?: string): void;
61
+ /** Whether `target` already has a registered in-edge — lets a caller skip
62
+ * re-registering the same target (#638 Task 2 fix wave 2, Finding I2i:
63
+ * `registerDerived`'s at-most-once contract must hold across repeated
64
+ * identical `vault.collection()` calls, not just within a single one). */
65
+ hasDerived(target: FieldRef): boolean;
66
+ /** Mark/query a collection as having declared at least one classified field. */
67
+ markClassified(collection: string): void;
68
+ isClassified(collection: string): boolean;
69
+ /** Mark/query a collection's depsless (no declared `deps`) computed
70
+ * field names — see `_depslessComputed`'s doc comment above. */
71
+ markDepslessComputed(collection: string, field: string): void;
72
+ depslessComputedFields(collection: string): ReadonlySet<string>;
73
+ /** Every field name the graph already has memory of for `collection` — from an
74
+ * EARLIER, separate `vault.collection()` call (registered postures, derived
75
+ * targets, depsless-computed names) — regardless of which via feature declared
76
+ * it. #645 — `via/graph-wiring.ts`'s reconcile-path `knownFields` universe
77
+ * (`collectKnownFieldNames`) is scoped to THIS call's own options only, so a
78
+ * computed field attached in a LATER call whose `deps` correctly names a field
79
+ * declared in an EARLIER call was spuriously refused as "unknown"; this method
80
+ * lets that call site union in the graph's cross-call memory. Excludes the `'*'`
81
+ * wildcard target (an overlay/derivation whole-record fold node, never a real
82
+ * record field — see {@link registerDerived}'s doc comment). */
83
+ knownFieldNames(collection: string): ReadonlySet<string>;
84
+ /** Reject cycles at declare time (vault open). Throws `DerivationCycleError` for a
85
+ * derivation/rollup/computed cycle, `MaterializedViewCycleError` for an MV cycle —
86
+ * same classes + message shape the registries throw today (behavior lock). */
87
+ assertAcyclic(): void;
88
+ /** A leaf (non-derived) node's own posture contribution: its declared posture,
89
+ * or `DEFAULT_POSTURE` if never declared via `registerField`. */
90
+ private _declaredPosture;
91
+ /** A node's posture contribution when folded into a dependent: recurse if it is itself
92
+ * derived; else its declared/default posture — UNLESS it is a `'*'` LEAF node consumed
93
+ * by a folded formula kind (#642, `derivation|rollup|mv|overlay`), in which case it
94
+ * contributes its collection's whole-record security fold ({@link _wildcardContribution}).
95
+ * `kind` is the CONSUMING edge's kind, threaded from {@link _computeEffective}. `'ref'`
96
+ * edges (and the provenance-only untyped call, `kind` left `undefined`) keep `'*'` =
97
+ * identity — the phase-D lookup reliance (`via/lookup/registry.ts:392-397`) that a
98
+ * referencing field must not seal just because its dimension collection has a classified
99
+ * column. */
100
+ private _contribution;
101
+ /** Lazy fold (#642) of a collection's REGISTERED field postures on the security axes only
102
+ * ({@link foldWildcardSecurity} — sealed-wins encryptedAtRest, AND exportable, OR
103
+ * forgettable; queryable stays at DEFAULT_POSTURE's 'full', never folded), seeded at
104
+ * DEFAULT_POSTURE. This is the collection-level posture a `'*'` LEAF node contributes to a
105
+ * folded-kind formula edge (derivation/rollup/mv/overlay) — see {@link _contribution}. A
106
+ * plain (unregistered) field contributes nothing (the identity), so the fold is strictly
107
+ * more conservative than deps-based taint and never hits the KNOWN-LIMIT wall (it names no
108
+ * fields — seam map §1d). Memoized per collection in `_wildcardCache`. */
109
+ private _wildcardContribution;
110
+ private _computeEffective;
111
+ /** Strictest source posture on every axis, per §2. `undefined` when `target` has no
112
+ * in-edges (not a derived field). Transitive: folds through chained derivations. */
113
+ effectivePosture(target: FieldRef): ViaPosture | undefined;
114
+ /** Per-collection { field → effectivePosture } overlay the pipeline consumes (Task 3). */
115
+ taintedPostures(collection: string): ReadonlyMap<string, ViaPosture>;
116
+ /** Materialized (`grain !== 'virtual'`) derived fields on `collection` whose effective
117
+ * encryptedAtRest resolves to 'sealed' — the taint-seal set (Task 3). #638 Task 7
118
+ * makes the `grain !== 'virtual'` filter meaningful: a `computed(fn, { mode: 'virtual' })`
119
+ * field is never stored (rides the `present` phase, seam map Part 4's money-Formatted/
120
+ * i18n-Label precedent), so it is EXCLUDED here even when its effective `encryptedAtRest`
121
+ * folds to `'sealed'` — there is no envelope slot to seal. It still surfaces in
122
+ * {@link taintedPostures} (query refusal via `postureFor`'s `queryable` clamp above, and
123
+ * export refusal via `exportable`) — only the AT-REST SEALING ACTION is skipped. */
124
+ taintSealedFields(collection: string): ReadonlySet<string>;
125
+ /** Fields on `collection` whose registered edge is `grain === 'virtual'` (#638 Task 7) —
126
+ * `via/graph-wiring.ts#applyTaintOverlay` intersects this with `exportable === false`
127
+ * postures to know which virtual fields need PRESENT-TIME (not just export-time)
128
+ * redaction, since a virtual field's value is only ever materialized inside `present()`. */
129
+ virtualFields(collection: string): ReadonlySet<string>;
130
+ /** Per-collection { field → immediate source field names that forced its
131
+ * effective posture away from `DEFAULT_POSTURE` } — `describe()`'s
132
+ * provenance (Task 3). Only the DIRECT declared sources are named (not the
133
+ * ultimate origin several hops up a transitive chain); a source absent
134
+ * from the result contributed nothing restrictive. */
135
+ taintProvenance(collection: string): ReadonlyMap<string, readonly string[]>;
136
+ private _targetsDependingOn;
137
+ /** Dispatch (Task 4): every derived target triggered by a write to `collection`. Excludes
138
+ * `'ref'` edges (#650 Task 5 review, folded Minor) — a `'ref'` edge is consulted only by the
139
+ * delete/forget-time restrict/cascade/nullify path ({@link referencingEdgesOf}), never by the
140
+ * sync/cutover/restore dispatch wave (`runGraphDispatchWave`); counting it here defeated that
141
+ * wave's zero-cost early-continue, costing every write to a referenced backing collection an
142
+ * unconditional decrypt + two no-op dispatch passes. {@link derivedArtifactsOf} (erasure
143
+ * fanout) still includes `'ref'` edges — the forget path genuinely needs them. */
144
+ dependentsOf(collection: string): ReadonlyArray<{
145
+ readonly target: FieldRef;
146
+ readonly kind: EdgeKind;
147
+ readonly grain: Grain;
148
+ }>;
149
+ /** Erasure (Task 6): derived artifacts of a forgotten record whose source is `collection`. */
150
+ derivedArtifactsOf(collection: string): ReadonlyArray<{
151
+ readonly target: FieldRef;
152
+ readonly kind: EdgeKind;
153
+ readonly grain: Grain;
154
+ }>;
155
+ /** Referencing edges pointing AT a backing dimension (delete/forget-time restrict/cascade/
156
+ * nullify, #650 Task 5) — an O(1) reverse lookup via the existing `_out` map (keyed at the
157
+ * dimension's wildcard `field:'*'` node, the same convention every whole-collection source
158
+ * already uses), NEVER a scan across collections or records. `backing` is the collection name
159
+ * a lookup field's edge was registered against (a reserved dimension's `_dict_<name>`/
160
+ * `_lookup_<name>` collection name, or a matrix dimension's own collection name). */
161
+ referencingEdgesOf(backing: string): ReadonlyArray<{
162
+ readonly referencing: FieldRef;
163
+ readonly onDelete: OnDelete;
164
+ readonly keyField: string;
165
+ }>;
166
+ }
@@ -0,0 +1,200 @@
1
+ import type { EncryptedEnvelope } from '../types.js';
2
+ /** Awaitable type for potentially async results. */
3
+ type Awaitable<T> = T | Promise<T>;
4
+ /** Declared security posture — a property the kernel enforces (enforcement activates in phases B/C). */
5
+ export interface ViaPosture {
6
+ readonly encryptedAtRest: 'envelope' | 'sealed';
7
+ readonly queryable: 'none' | 'det-exact' | 'ordered' | 'full';
8
+ readonly exportable: boolean;
9
+ readonly forgettable: boolean;
10
+ }
11
+ /** Opaque marker every feature descriptor extends; the kernel never sees concrete descriptor types. */
12
+ export interface ViaDescriptor {
13
+ readonly _viaBrand: string;
14
+ }
15
+ /** Per-call write context (A: minimal; B/C extend). */
16
+ export interface ViaWriteCtx {
17
+ readonly id: string;
18
+ /** Owning vault name (event payload identity — e.g. i18n:script-violation). */
19
+ readonly vault: string;
20
+ /** Prior stored record (decoded), lazily resolved. Null when creating. */
21
+ readonly prior: () => Promise<Record<string, unknown> | null>;
22
+ /** Typed event emission (e.g. i18n:script-violation). */
23
+ readonly emit: (event: string, payload: unknown) => void;
24
+ }
25
+ /** Per-call read context — mirrors LocaleReadOptions loosely; features narrow. */
26
+ export interface ViaReadCtx {
27
+ readonly locale?: unknown;
28
+ readonly fallback?: unknown;
29
+ readonly layer: string;
30
+ }
31
+ /** One sealed slot's ciphertext — matches the existing `iv:data` sealed map entries (seam map §2 step 2). */
32
+ export interface SealedSlotRef {
33
+ readonly iv: string;
34
+ readonly data: string;
35
+ }
36
+ /**
37
+ * A scoped crypto capability handed to a `via` feature's `encodeAtRest`/
38
+ * `decodeAtRest`/`erase` hooks — never the keyring, never the enclave.
39
+ * `sealedSlots` is pre-bound to one `(collection, recordId)`; `reservedEnvelopes`
40
+ * is a whole-envelope encrypt/decrypt door scoped to collection names under a
41
+ * declared prefix (e.g. `_dict_`).
42
+ */
43
+ export interface ViaCryptoCtx {
44
+ readonly sealedSlots: {
45
+ seal(field: string, plaintext: unknown): Promise<SealedSlotRef>;
46
+ unseal(field: string, ref: SealedSlotRef): Promise<unknown>;
47
+ delete(field: string): Promise<void>;
48
+ };
49
+ reservedEnvelopes(prefix: string): {
50
+ encrypt(collection: string, json: string, v: number): Promise<EncryptedEnvelope>;
51
+ decrypt(collection: string, env: EncryptedEnvelope): Promise<string>;
52
+ };
53
+ }
54
+ /** Per-call erase context — `forget()`'s per-ref participation door (phase C). */
55
+ export interface ViaEraseCtx {
56
+ readonly id: string;
57
+ readonly vault: string;
58
+ readonly live: unknown;
59
+ readonly crypto: ViaCryptoCtx;
60
+ }
61
+ /**
62
+ * What an `erase` hook reports back to `forget()`'s summary ledger entry.
63
+ * `retainedShared` is additive (#629 Task 10) — content NOT erased because
64
+ * still referenced by another live record (blob's shared-chunk dual
65
+ * accounting, `shredAllForRecord()`'s `retainedShared` count). Absent/0 for
66
+ * bindings with no such concept (a sealed field is never "shared").
67
+ */
68
+ export interface ViaEraseReport {
69
+ readonly shredded: number;
70
+ readonly residue: readonly unknown[];
71
+ readonly retainedShared?: number;
72
+ }
73
+ /**
74
+ * A feature bound to one collection's declared config. Record-grain hooks —
75
+ * every hook receives the whole record (matches the real engine signatures,
76
+ * e.g. quantizeMoneyFields(record, moneyFields)). All hooks optional;
77
+ * absent = passthrough. Query-participation hooks are SYNC (#553).
78
+ */
79
+ export interface ViaBinding {
80
+ readonly brand: string;
81
+ readonly posture: ViaPosture;
82
+ /** Declared dependencies (field paths / cross-record specs). MANDATORY for any future
83
+ * derive-bearing binding — phase C validates well-formedness (strings, non-empty,
84
+ * reference declared fields) and graph-registers a derived edge for each covered
85
+ * field at declare time, right after `compileViaBindings` builds the bindings
86
+ * (unknown source field throws `ValidationError`). See
87
+ * `kernel/collection-config.ts`'s `resolveViaBindingDepsEdges`. */
88
+ readonly deps?: readonly string[];
89
+ /** Collection-name prefixes this binding's `reservedEnvelopes` capability may address (e.g. `_dict_`). */
90
+ readonly reservedPrefixes?: readonly string[];
91
+ /**
92
+ * Does this binding own `field`? Backs `ViaPipeline.postureFor` (#629 Task
93
+ * 8's posture consumer) — a passive coverage check, independent of
94
+ * `buildClause`/`compareForOrder` (which some bindings, e.g. classified and
95
+ * blob, never define). SYNC, no side effects.
96
+ *
97
+ * Contract (documentation only — not enforced at runtime, future work):
98
+ * any binding declaring a non-default posture value — `queryable: 'none'`
99
+ * (#629 Task 8) or `exportable: false` (#629 Task 9's `redactForExport`)
100
+ * — MUST implement `covers()`. `postureFor`'s consumers only engage for
101
+ * fields a binding actively claims via `covers()`; a binding that omits
102
+ * it would silently fall through to the generic (unrefused/unredacted)
103
+ * path instead.
104
+ */
105
+ covers?(field: string): boolean;
106
+ /** Refuse a write before crypto runs (classified step-3 slot: storage:'never' rejection + validators). Throws to refuse. */
107
+ enforceWrite?(record: Record<string, unknown>, ctx: ViaWriteCtx): void | Promise<void>;
108
+ /** First pipeline stage (money canonicalizeIncomingMoney). SYNC. */
109
+ ingest?(record: Record<string, unknown>): Record<string, unknown>;
110
+ /** Decode STORED form to canonical for internal boundaries (gates, derivations, patch bases). SYNC. */
111
+ canonicalizeStored?(record: Record<string, unknown>): Record<string, unknown>;
112
+ /** Post-validation write encoding (money quantize; i18n translate→script→validate→densify). May be async. */
113
+ encodeWrite?(record: Record<string, unknown>, ctx: ViaWriteCtx): Awaitable<Record<string, unknown>>;
114
+ /** Final write-pipeline stage: seal/encrypt declared fields via `crypto` before the envelope body is built (classified step-2 slot). */
115
+ encodeAtRest?(record: Record<string, unknown>, crypto: ViaCryptoCtx): Promise<{
116
+ record: Record<string, unknown>;
117
+ sealed?: Record<string, SealedSlotRef>;
118
+ }>;
119
+ /** First read-pipeline stage: unseal/decrypt declared fields via `crypto` before `present` runs (classified sealed-handle slot). */
120
+ decodeAtRest?(record: Record<string, unknown>, sealed: Record<string, SealedSlotRef>, crypto: ViaCryptoCtx, opts: {
121
+ asHandles: boolean;
122
+ }): Promise<Record<string, unknown>>;
123
+ /** Read-time presentation (money decode+virtuals; i18n locale/labels/strip). May be async. */
124
+ present?(record: Record<string, unknown>, ctx: ViaReadCtx): Awaitable<Record<string, unknown>>;
125
+ /**
126
+ * Late read-time presentation (#669) — runs AFTER every binding's `present()` in the
127
+ * money+computed present-order segment (`ViaPipeline`'s `_presentOrder`, `kernel/via/
128
+ * pipeline.ts`), BEFORE the "everything else" segment (i18n/lookup dressing, taint
129
+ * redaction) runs. Exists for a binding that needs to react to a virtual computed
130
+ * field's fresh OWN-field output before anything dresses it (money's MAJOR-UNITS
131
+ * quantize-and-present for a field that is BOTH money AND `mode:'virtual'` computed) —
132
+ * `present()` alone can't express "run after computed for THESE fields only, before
133
+ * computed for all others", since it's a per-BINDING fold, not per-field. Folded over
134
+ * `bindings` in declaration order (mirrors every other per-binding fold), so lookup/
135
+ * i18n dressing and taint/redaction (both in the "everything else" segment) still see
136
+ * the already-dressed value.
137
+ */
138
+ presentLate?(record: Record<string, unknown>, ctx: ViaReadCtx): Awaitable<Record<string, unknown>>;
139
+ /** Returns an opaque clause payload when this binding covers `field`, else undefined. */
140
+ buildClause?(field: string, op: string, value: unknown): unknown | undefined;
141
+ /** Evaluate a payload produced by buildClause against a raw stored value. */
142
+ evaluateClause?(actual: unknown, op: string, payload: unknown): boolean;
143
+ /**
144
+ * Optional: the STORED-form operand for a direct secondary-index probe
145
+ * against a payload produced by `buildClause` (#625) — lets
146
+ * `candidateRecords()` (`query/builder.ts`) hit `CollectionIndexes.
147
+ * lookupEqual`/`lookupIn` for `==`/`in` clauses instead of falling back
148
+ * to a linear scan + per-record `evaluateClause`. Returning `undefined`
149
+ * means "no sound probe for this op/payload" (e.g. a comparison whose
150
+ * stored form isn't a single index-bucketable value, or an op the index
151
+ * can't serve) — the caller falls back to the scan. A binding that
152
+ * never implements this hook always falls back, unchanged from before
153
+ * this hook existed.
154
+ */
155
+ indexProbe?(op: string, payload: unknown): unknown | undefined;
156
+ /**
157
+ * Optional: canonicalize a raw STORED field value into the bucket key an
158
+ * eager index should use (#672) — lets `CollectionIndexes` group a
159
+ * pre-declaration / non-canonical stored value (e.g. a money field's
160
+ * leftover `'0100'` written before its `money()` declaration) under the
161
+ * SAME key a canonical write produces (`'100'`), so the index-probe fast
162
+ * path (`indexProbe` above) and the fallback scan (`evaluateClause`)
163
+ * agree on which records match. `undefined` means "not mine / can't
164
+ * canonicalize this value" — the caller buckets the raw stringified
165
+ * value, unchanged from before this hook existed. MUST agree with what
166
+ * this binding's own `evaluateClause`/`indexProbe` treat as equal, or
167
+ * the fast path and the scan will disagree.
168
+ */
169
+ canonicalizeIndexKey?(field: string, rawValue: unknown): string | undefined;
170
+ /** Decode a raw stored record for query/scan results and callback views ('raw' — no virtuals). */
171
+ decodeResults?(record: unknown): unknown;
172
+ /** Exact ordering for a covered field; undefined when the field is not covered. */
173
+ compareForOrder?(field: string, a: unknown, b: unknown): number | undefined;
174
+ /**
175
+ * Per-key, PER-CALL-locale label resolution for `orderBy(field, dir,
176
+ * { by: 'label' })` (#650 Task 7) — the sibling `compareForOrder` above
177
+ * structurally cannot serve, since it carries no locale parameter.
178
+ * `locale` is the query's per-call locale (`undefined` for a locale-less
179
+ * query — a binding may fall back to its own descriptor-level default,
180
+ * mirroring `present`'s displayLocale hinge). `undefined` return = this
181
+ * binding doesn't resolve a label for `key` at `field` — caller falls
182
+ * back to the raw stored value, same graceful-degrade discipline every
183
+ * other via query hook uses. SYNC (#553 — query participation).
184
+ */
185
+ resolveOrderLabel?(field: string, key: string, locale: string | undefined): string | undefined;
186
+ /** Rewrite an aggregate spec (money exact reducers). */
187
+ wrapReducers?(spec: unknown): unknown;
188
+ /** `forget()`'s per-ref erasure door — shred/report this binding's residue for one record (classified/blob forget participation). */
189
+ erase?(ctx: ViaEraseCtx): Promise<ViaEraseReport>;
190
+ describeFragment?(): Record<string, unknown>;
191
+ }
192
+ /** Binder: constructs a binding from a collection's declared config. Installed by the feature's declaration factory. */
193
+ export type ViaBinder = (config: unknown) => ViaBinding;
194
+ /** @internal — called (idempotently, first-wins) by a feature's declaration factory, e.g. money(). */
195
+ export declare function installViaBinder(brand: string, binder: ViaBinder): void;
196
+ /** @internal — registry presence check. Used by tests (mirrors isMoneyEngineInstalled) and by vault's i18n validator delegators as a no-i18n-ever-declared fast path. */
197
+ export declare function isViaInstalled(brand: string): boolean;
198
+ /** @internal — resolve a binder; throws when the declaration factory never ran (hand-rolled descriptors). */
199
+ export declare function viaBinder(brand: string): ViaBinder;
200
+ export {};
@@ -0,0 +1,266 @@
1
+ import type { ViaBinding, ViaPosture, ViaWriteCtx, ViaReadCtx, ViaCryptoCtx, SealedSlotRef, ViaEraseCtx, ViaEraseReport } from './index.js';
2
+ /** Opaque per-clause query payload carried on FieldClause (replaces the money-only slot). */
3
+ export interface ViaClause {
4
+ readonly brand: string;
5
+ readonly payload: unknown;
6
+ }
7
+ /**
8
+ * The graph-computed taint overlay (#638 Task 3) — `postureFor`'s
9
+ * assignment→enforcement bridge. `postures`/`sealFields` are the
10
+ * enforcement-facing shapes `via/taint-binding.ts#buildTaintOverlay`
11
+ * produces from `ViaGraph.taintedPostures`/`taintSealedFields`;
12
+ * `provenance` (optional — introspection only, never consulted by
13
+ * `postureFor`) is `ViaGraph.taintProvenance`'s output, surfaced by
14
+ * `describe()`.
15
+ */
16
+ export interface ViaTaintOverlay {
17
+ readonly postures: ReadonlyMap<string, ViaPosture>;
18
+ readonly sealFields: ReadonlySet<string>;
19
+ readonly provenance?: ReadonlyMap<string, readonly string[]>;
20
+ /** #642 — the whole-record floor for a derivation/MV/overlay OUTPUT collection (the '*' target's
21
+ * folded, clamped effective posture). postureFor falls back to it for ANY field; redactForExport
22
+ * picks it up per-field; a sealed default drives taintBinding's sealAllFields mode. O(1) read. */
23
+ readonly defaultPosture?: ViaPosture;
24
+ }
25
+ export declare class ViaPipeline {
26
+ readonly bindings: readonly ViaBinding[];
27
+ readonly taint?: ViaTaintOverlay | undefined;
28
+ /**
29
+ * Present-phase-ONLY order (#665, corrected under #665 review) — a stable
30
+ * THREE-WAY partition of `bindings` computed once here at construction:
31
+ * every `'money'`-brand binding first (existing relative order), then
32
+ * every `'computed'`-brand binding (existing relative order), then
33
+ * everything else (existing relative order). `present()` folds over this
34
+ * instead of `bindings` so a `mode: 'virtual'` computed field's value
35
+ * exists before i18n/lookup's dressing `present()` hooks run on it
36
+ * (today's `compileViaBindings` order is money→i18n→lookup→classified→
37
+ * blob→computed, `collection-config.ts:554`, so dressing unconditionally
38
+ * ran BEFORE the value it dresses existed). This reorder is binding-level,
39
+ * not conditioned on any particular field composition — it applies to
40
+ * EVERY collection that compiles a `'computed'` binding at all, not only
41
+ * ones stacking a dresser on the SAME field as a computed one. EVERY other
42
+ * phase (`ingest`/`encodeWrite`/`encodeAtRest`/`enforceWrite`/etc.) keeps
43
+ * folding over `bindings` unchanged — those write/query phases need
44
+ * money-first (`_applyMoneyFields` PREPENDS money, `_applyClassifiedFields`
45
+ * APPENDS classified to preserve it, `kernel/collection.ts:1275-1284,1364-
46
+ * 1368`).
47
+ *
48
+ * Money is deliberately carved OUT of the generic "everything else" slice
49
+ * and kept FIRST — the original two-way `[computed..., rest...]` partition
50
+ * regressed money's composed-field behavior from a benign missing-dressing
51
+ * gap into VALUE CORRUPTION: money's `present()` DECODES its input as a
52
+ * STORED SCALED-INT (and derives `<field>Formatted` from it) — it is not a
53
+ * pure dressing CONSUMER like i18n/lookup, which only ADD a `<field>Label`
54
+ * key and never rewrite the field's own value. Running money AFTER
55
+ * computed on a field composing `computed(virtual)` + `money(...)` on
56
+ * ITSELF means money's decode sees the virtual field's raw MAJOR-unit
57
+ * output (e.g. `21`) and misreads it as a scaled-int, producing a
58
+ * corrupted value (`'0.21'`) instead of the pre-#665 result (the raw `21`
59
+ * surviving untouched, with no `Formatted` key added — a benign
60
+ * missing-dressing gap, not a wrong value). Money-first restores money's
61
+ * exact pre-#665 present position — byte-identical money behavior; the
62
+ * materialized composition pins from the #631 work and the money suites
63
+ * all ran under money-first. i18n/lookup are genuine dressing consumers
64
+ * (they only ADD, never rewrite), so they stay after computed, which is
65
+ * the fix #665 intended. A `'taint'` binding (appended LAST by
66
+ * `via/graph-wiring.ts#applyTaintOverlay`) stays last here too (it's
67
+ * neither money nor computed, so it lands at the tail of the "everything
68
+ * else" slice), preserving its "runs after computed, redacts tainted
69
+ * virtual output" contract (`via/taint-binding.ts`'s `taintBinding` doc
70
+ * comment).
71
+ *
72
+ * Money-dressing a virtual computed field's OWN output (the composed
73
+ * `computed(virtual) + money` case) is NOT resolved by this partition
74
+ * alone — #669 resolves it with a separate mid-fold hook instead:
75
+ * `ViaBinding.presentLate` runs after every binding's `present()` in this
76
+ * money+computed segment, before the "everything else" segment below, so
77
+ * money can quantize/reinterpret a virtual field's fresh MAJOR-UNITS
78
+ * output as if it were a stored value, without perturbing this ordering
79
+ * or the #665 invariant above it (`_presentLateBoundary` below marks
80
+ * exactly where that mid-fold point sits within `_presentOrder`).
81
+ */
82
+ private readonly _presentOrder;
83
+ /** #669 — index into `_presentOrder` where the money+computed segment ends and the
84
+ * "everything else" segment begins (`moneyBindings.length + computedBindings.length`);
85
+ * `present()` runs every binding's `presentLate` at exactly this boundary. */
86
+ private readonly _presentLateBoundary;
87
+ private constructor();
88
+ /** undefined when there is nothing to enforce — the zero-via fast path is
89
+ * `this.via === undefined` (#553: keeps an all-plain collection sync). A
90
+ * `'*'`-defaulted output collection (#642) counts as "something to enforce"
91
+ * even with zero field-specific postures and zero bindings. */
92
+ static build(bindings: readonly ViaBinding[], taint?: ViaTaintOverlay): ViaPipeline | undefined;
93
+ /** Refuse a write before crypto runs: awaits each binding's `enforceWrite` in order — first throw wins. */
94
+ enforceWrite(record: Record<string, unknown>, ctx: ViaWriteCtx): Promise<void>;
95
+ ingest(record: Record<string, unknown>): Record<string, unknown>;
96
+ canonicalizeStored(record: Record<string, unknown>): Record<string, unknown>;
97
+ encodeWrite(record: Record<string, unknown>, ctx: ViaWriteCtx): Promise<Record<string, unknown>>;
98
+ /**
99
+ * Final write-pipeline stage: folds each binding's `encodeAtRest` in
100
+ * order, threading the record and accumulating the sealed-slot map. A
101
+ * field belongs to exactly one via feature — two bindings sealing the
102
+ * same field is a brand-keyed collision and throws.
103
+ */
104
+ encodeAtRest(record: Record<string, unknown>, crypto: ViaCryptoCtx): Promise<{
105
+ record: Record<string, unknown>;
106
+ sealed?: Record<string, SealedSlotRef>;
107
+ }>;
108
+ /** First read-pipeline stage: folds each binding's `decodeAtRest` in order. */
109
+ decodeAtRest(record: Record<string, unknown>, sealed: Record<string, SealedSlotRef>, crypto: ViaCryptoCtx, opts: {
110
+ asHandles: boolean;
111
+ }): Promise<Record<string, unknown>>;
112
+ present(record: Record<string, unknown>, ctx: ViaReadCtx): Promise<Record<string, unknown>>;
113
+ buildClause(field: string, op: string, value: unknown): ViaClause | undefined;
114
+ evaluateClause(clause: ViaClause, actual: unknown, op: string): boolean;
115
+ /**
116
+ * Resolve a `buildClause` payload to an index-probe operand (#625) —
117
+ * mirrors `evaluateClause`'s brand dispatch. `undefined` (a binding
118
+ * with no `indexProbe`, or one that declines to probe this op/payload)
119
+ * means the caller (`candidateRecords()`) must fall back to a scan.
120
+ */
121
+ indexProbe(clause: ViaClause, op: string): unknown | undefined;
122
+ /**
123
+ * Resolve a raw STORED field value to its canonical eager-index bucket
124
+ * key (#672) — folds every binding's `canonicalizeIndexKey`, first
125
+ * non-undefined wins (same fold discipline as `buildClause`). `undefined`
126
+ * means no binding claims `field` (or the value can't be canonicalized)
127
+ * — the caller buckets the raw stringified value, unchanged from before
128
+ * this hook existed.
129
+ */
130
+ canonicalizeIndexKey(field: string, rawValue: unknown): string | undefined;
131
+ decodeResults(record: unknown): unknown;
132
+ /** undefined = no binding covers the field → caller falls back to generic compare. */
133
+ compareForOrder(field: string, a: unknown, b: unknown): number | undefined;
134
+ /** undefined = no binding resolves an order-sort label for `key` at `field`/`locale` (#650 Task 7 —
135
+ * the `orderBy(..., {by:'label'})` per-call-locale channel `compareForOrder` above can't serve). */
136
+ resolveOrderLabel(field: string, key: string, locale: string | undefined): string | undefined;
137
+ /**
138
+ * Which posture governs `field`, if any binding covers it — `undefined`
139
+ * means no binding declares `field` (the generic, non-via query path
140
+ * applies). #629 Task 8's posture consumer: `.where()`/`.orderBy()`
141
+ * consult this before building/evaluating a clause, refusing fields whose
142
+ * posture is `queryable: 'none'` (e.g. blob); every other posture
143
+ * ('det-exact'/'ordered'/'full') is left to the existing per-binding
144
+ * buildClause/evaluateClause/compareForOrder machinery, unchanged.
145
+ *
146
+ * #638 Task 3: the graph-computed taint overlay is consulted FIRST — a
147
+ * derived field's assigned (most-restrictive-of-sources) posture wins over
148
+ * whatever a binding would otherwise report for that field name (no
149
+ * binding covers a computed/derived field today, so this never actually
150
+ * shadows one — see `via/taint-binding.ts`'s `taintBinding.covers`, which
151
+ * only claims the sealed subset for `encodeAtRest`/`decodeAtRest`, not for
152
+ * this lookup).
153
+ */
154
+ postureFor(field: string): ViaPosture | undefined;
155
+ /**
156
+ * Refuse any field-based reducer over a `queryable: 'none'` field (blob) —
157
+ * metadata-only: walks each reducer's `.field` and checks posture, no
158
+ * rewriting. Reducers with no `.field` (e.g. `count()`) are skipped.
159
+ *
160
+ * Shared by `wrapReducers` below (which ALSO applies each binding's
161
+ * rewrite, e.g. money's exact-BigInt reducer swap) and by
162
+ * `ScanBuilder.aggregate()` (#629 Task 8 review fix wave 1), which must
163
+ * call THIS, not `wrapReducers` — wiring full `wrapReducers` into
164
+ * `ScanBuilder.aggregate()` would newly activate money/i18n reducer
165
+ * wrapping on a path that has never run it, a parity-breaking behavior
166
+ * change for existing brands.
167
+ */
168
+ refuseUnqueryableReducers<S>(spec: S): void;
169
+ /**
170
+ * Rewrite an aggregate spec (money exact reducers), then refuse any
171
+ * field-based reducer over a `queryable: 'none'` field (blob) — the same
172
+ * posture gate `.where()`/`.orderBy()` apply, extended to `.aggregate()`
173
+ * (both the bare-spec and builder forms funnel through here).
174
+ */
175
+ wrapReducers<S>(spec: S): S;
176
+ /**
177
+ * Deliberate export-layer redaction (#629 Task 9's posture consumer):
178
+ * for every OWN field the decoded record carries, if the covering
179
+ * binding's posture declares `exportable: false` (classified today;
180
+ * money/i18n/blob are all `true`), replace the value with
181
+ * {@link EXPORT_REDACTION_MARKER} — the same `'[sealed]'` string
182
+ * `SealedHandle.toJSON()` (`kernel/types.ts`) already emits, so this is
183
+ * byte-parity with today's accidental redaction, now independent of the
184
+ * field's runtime shape. `SealedHandle.toJSON()` stays untouched as
185
+ * defense-in-depth: a record read via `collection.get()` and
186
+ * JSON.stringify'd outside `exportStream()` still gets the accident's
187
+ * redaction on its own. Never mutates the input; returns a new object
188
+ * only when a field was actually redacted.
189
+ */
190
+ redactForExport(record: Record<string, unknown>): Record<string, unknown>;
191
+ /**
192
+ * Shared fold over a subset of `this.bindings`: runs each binding's
193
+ * `erase`, concatenating shredded/retainedShared counts and residue.
194
+ * Consults `posture.forgettable` (#629 Task 10) — a binding declaring
195
+ * `forgettable: false` is skipped even if it defines `erase` (none does
196
+ * today; a future non-forgettable binding is supported without a brand check).
197
+ */
198
+ private foldErase;
199
+ /** `forget()`'s per-ref erasure door: folds every binding's `erase`. */
200
+ erase(ctx: ViaEraseCtx): Promise<ViaEraseReport>;
201
+ /**
202
+ * `forget()`'s SEALED-posture-only erase fold (#629 Task 10, `Collection._onViaErase`'s
203
+ * one caller) — classified today; metadata-filtered on
204
+ * `posture.encryptedAtRest`, not brand-checked. `undefined` when no
205
+ * sealed-posture binding is compiled in — `vault.ts` then falls back to
206
+ * its own bare-`sensitive` classification, which no via binding covers.
207
+ */
208
+ eraseSealed(ctx: ViaEraseCtx): Promise<ViaEraseReport | undefined>;
209
+ /** True iff any binding implements decodeResults (query fast-path gating). */
210
+ get hasResultDecode(): boolean;
211
+ /**
212
+ * True iff any binding declares an at-rest hook (`encodeAtRest`/
213
+ * `decodeAtRest`) — the codec boundary's async-stack gate (#629 Task 3
214
+ * consults this to choose between the hook path and today's inline
215
+ * sealed-slot path; a stack with only sync hooks, e.g. money-only, stays
216
+ * `false`).
217
+ */
218
+ get hasAtRestHooks(): boolean;
219
+ /**
220
+ * Fold every binding's `describeFragment()` into one `brand -> fragment`
221
+ * map (#650 Task 7 — the first-ever consumer; `describeFragment` was
222
+ * declared at `via/index.ts:136` since #623 with zero callers until this task).
223
+ * `undefined` when no compiled binding implements it. Consumed by
224
+ * `Collection.describe()`/`describeAsync()`, threaded to `buildDescription`
225
+ * as `BuildDescriptionInput.viaFragments`.
226
+ */
227
+ describeFragments(): Record<string, Record<string, unknown>> | undefined;
228
+ }
229
+ /**
230
+ * The marker `redactForExport` writes for a non-exportable field —
231
+ * intentionally the same literal `SealedHandle.toJSON()` (`kernel/types.ts`)
232
+ * returns, so the two independent redaction layers (deliberate + accident)
233
+ * produce byte-identical export output. Duplicated, not imported, because
234
+ * `SealedHandle.toJSON()` is untouched by #629 Task 9 (belt-and-braces —
235
+ * `via/export-posture-b.test.ts` asserts both layers agree on this string).
236
+ */
237
+ export declare const EXPORT_REDACTION_MARKER = "[sealed]";
238
+ /**
239
+ * Structural shape `exportRedact` needs from a collection: just the typed
240
+ * `_via` accessor `Collection` exposes (`kernel/collection.ts`, #634). A
241
+ * named interface rather than the real `Collection` type, because
242
+ * `collection.ts` imports `ViaPipeline` from this module — importing
243
+ * `Collection` back here would be circular.
244
+ */
245
+ interface HasViaPipeline {
246
+ readonly _via: ViaPipeline | undefined;
247
+ }
248
+ /**
249
+ * Widened sibling of {@link HasViaPipeline}: `via/graph-wiring.ts`'s
250
+ * `applyTaintOverlay` (#666) needs to REASSIGN the live pipeline, not just
251
+ * read it — `_setVia` is `Collection`'s typed writer seam (`kernel/
252
+ * collection.ts`, beside `_via`), replacing the earlier untyped `coll as {
253
+ * via; codec: { setVia } }` cast. Exported (unlike `HasViaPipeline`) because
254
+ * its one consumer lives in a different module.
255
+ */
256
+ export interface HasWritableViaPipeline extends HasViaPipeline {
257
+ _setVia(pipeline: ViaPipeline | undefined): void;
258
+ }
259
+ /**
260
+ * `vault.ts`'s `exportStream()` reach-in (#629 Task 9): apply the owning
261
+ * collection's export redaction to one decoded record. Typed via {@link
262
+ * HasViaPipeline} against `Collection`'s `_via` accessor (#634) — replaces
263
+ * the earlier untyped any-cast reach-in.
264
+ */
265
+ export declare function exportRedact(coll: HasViaPipeline, record: unknown): unknown;
266
+ export {};