@noy-db/hub 0.3.0-pre.9 → 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 (958) hide show
  1. package/dist/aggregate/index.js +5 -5
  2. package/dist/api-ZGS6LCOF.js +20 -0
  3. package/dist/as/index.js +11 -11
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/backup-BJ57IKAO.js +242 -0
  6. package/dist/backup-BJ57IKAO.js.map +1 -0
  7. package/dist/blobs/index.js +13 -11
  8. package/dist/blobs/index.js.map +1 -1
  9. package/dist/broker/index.js +92 -0
  10. package/dist/broker/index.js.map +1 -0
  11. package/dist/bundle/index.js +25 -22
  12. package/dist/bundle/index.js.map +1 -1
  13. package/dist/by/index.js +2 -2
  14. package/dist/cargo/index.js +31 -32
  15. package/dist/chunk-2NVOWNI3.js +167 -0
  16. package/dist/chunk-2NVOWNI3.js.map +1 -0
  17. package/dist/chunk-3B5VVCNY.js +71 -0
  18. package/dist/chunk-3LQ2YKO4.js +230 -0
  19. package/dist/chunk-3QCRBHCY.js +54 -0
  20. package/dist/chunk-454JXE57.js +1697 -0
  21. package/dist/chunk-454JXE57.js.map +1 -0
  22. package/dist/chunk-4CTHCN4J.js +480 -0
  23. package/dist/chunk-4CTHCN4J.js.map +1 -0
  24. package/dist/chunk-4GPE63GU.js +111 -0
  25. package/dist/chunk-4GPE63GU.js.map +1 -0
  26. package/dist/chunk-4JBYV75E.js +150 -0
  27. package/dist/chunk-4NXKCLLQ.js +97 -0
  28. package/dist/chunk-4VNQOLML.js +29 -0
  29. package/dist/chunk-4VNQOLML.js.map +1 -0
  30. package/dist/chunk-5M5DVGV7.js +69 -0
  31. package/dist/chunk-5O3XF4DV.js +150 -0
  32. package/dist/chunk-5O3XF4DV.js.map +1 -0
  33. package/dist/chunk-5YOLBEQ6.js +30 -0
  34. package/dist/chunk-6CRIV7DE.js +129 -0
  35. package/dist/chunk-6JTIAGHD.js +621 -0
  36. package/dist/chunk-6JTIAGHD.js.map +1 -0
  37. package/dist/chunk-6QTNZJBS.js +255 -0
  38. package/dist/chunk-6T2SCQRU.js +86 -0
  39. package/dist/chunk-7DSTRQIJ.js +45 -0
  40. package/dist/chunk-AUSTCW2X.js +589 -0
  41. package/dist/chunk-B3HJYUOF.js +209 -0
  42. package/dist/chunk-BDVFPG6Y.js +164 -0
  43. package/dist/chunk-BIOUI4HL.js +1554 -0
  44. package/dist/chunk-BIOUI4HL.js.map +1 -0
  45. package/dist/chunk-CAF6WOK7.js +36 -0
  46. package/dist/chunk-CDUQTA3Z.js +381 -0
  47. package/dist/chunk-CDUQTA3Z.js.map +1 -0
  48. package/dist/chunk-CIE2BASH.js +404 -0
  49. package/dist/chunk-CRI4OUV4.js +42 -0
  50. package/dist/chunk-DLG74CNB.js +91 -0
  51. package/dist/chunk-E5ZQT5KX.js +30 -0
  52. package/dist/chunk-E5ZQT5KX.js.map +1 -0
  53. package/dist/chunk-EQO2UVP4.js +247 -0
  54. package/dist/chunk-EQO2UVP4.js.map +1 -0
  55. package/dist/chunk-ERJ7FU55.js +367 -0
  56. package/dist/chunk-EVVGJDRQ.js +205 -0
  57. package/dist/chunk-EVX47VBM.js +74 -0
  58. package/dist/chunk-EVX47VBM.js.map +1 -0
  59. package/dist/chunk-EXK7QRWF.js +59 -0
  60. package/dist/chunk-EYZ6IQ6X.js +202 -0
  61. package/dist/chunk-F64IRYG3.js +45 -0
  62. package/dist/chunk-FHS2HQSH.js +823 -0
  63. package/dist/chunk-FM3G3NOY.js +206 -0
  64. package/dist/chunk-FM3G3NOY.js.map +1 -0
  65. package/dist/chunk-FUG4SFN3.js +36 -0
  66. package/dist/chunk-FUG4SFN3.js.map +1 -0
  67. package/dist/chunk-GKEWXIV5.js +80 -0
  68. package/dist/chunk-GTGPO5KW.js +59 -0
  69. package/dist/chunk-HB3RFQSC.js +95 -0
  70. package/dist/chunk-HDMEGAQE.js +957 -0
  71. package/dist/chunk-HDMEGAQE.js.map +1 -0
  72. package/dist/chunk-HDQIIUPH.js +135 -0
  73. package/dist/chunk-HDQIIUPH.js.map +1 -0
  74. package/dist/chunk-HTJQYHZP.js +344 -0
  75. package/dist/chunk-HTJQYHZP.js.map +1 -0
  76. package/dist/chunk-I6GALP6E.js +99 -0
  77. package/dist/chunk-IGJCYUT5.js +99 -0
  78. package/dist/chunk-IGJCYUT5.js.map +1 -0
  79. package/dist/chunk-IL6POWCW.js +130 -0
  80. package/dist/chunk-IU6SNYX6.js +117 -0
  81. package/dist/chunk-J2ZX2XUV.js +778 -0
  82. package/dist/chunk-JIF24JPM.js +495 -0
  83. package/dist/chunk-JIF24JPM.js.map +1 -0
  84. package/dist/chunk-JK733I5V.js +23 -0
  85. package/dist/chunk-JK733I5V.js.map +1 -0
  86. package/dist/chunk-JKJOGPZN.js +29 -0
  87. package/dist/chunk-JNAI2HN2.js +32 -0
  88. package/dist/chunk-JNAI2HN2.js.map +1 -0
  89. package/dist/chunk-JZUV47FZ.js +41 -0
  90. package/dist/chunk-K5IMOGHB.js +30 -0
  91. package/dist/chunk-KPZS5QAQ.js +151 -0
  92. package/dist/chunk-KPZS5QAQ.js.map +1 -0
  93. package/dist/chunk-KSKBRKGJ.js +291 -0
  94. package/dist/chunk-KSKBRKGJ.js.map +1 -0
  95. package/dist/chunk-LASZKVMO.js +382 -0
  96. package/dist/chunk-LXEXBTKL.js +515 -0
  97. package/dist/chunk-LXEXBTKL.js.map +1 -0
  98. package/dist/chunk-M4CV6BRT.js +524 -0
  99. package/dist/chunk-M4CV6BRT.js.map +1 -0
  100. package/dist/chunk-MEFJPTZ4.js +371 -0
  101. package/dist/chunk-MEFJPTZ4.js.map +1 -0
  102. package/dist/chunk-MV43JSJF.js +265 -0
  103. package/dist/chunk-MV43JSJF.js.map +1 -0
  104. package/dist/chunk-NJ4EOKMB.js +392 -0
  105. package/dist/chunk-NJ4EOKMB.js.map +1 -0
  106. package/dist/chunk-NR5LT5RY.js +135 -0
  107. package/dist/chunk-NWSGI5C7.js +261 -0
  108. package/dist/chunk-OSDB5WW3.js +739 -0
  109. package/dist/chunk-OSDB5WW3.js.map +1 -0
  110. package/dist/chunk-PN2XMATY.js +37 -0
  111. package/dist/chunk-PN2XMATY.js.map +1 -0
  112. package/dist/chunk-Q5VNKNE5.js +70 -0
  113. package/dist/chunk-QLWMEXCT.js +21 -0
  114. package/dist/chunk-QRB7NAOJ.js +123 -0
  115. package/dist/chunk-R4ROFEYC.js +74 -0
  116. package/dist/chunk-RCVJZMFE.js +164 -0
  117. package/dist/chunk-RCVJZMFE.js.map +1 -0
  118. package/dist/chunk-RIX4V2TB.js +367 -0
  119. package/dist/chunk-RYCTDFUX.js +40 -0
  120. package/dist/chunk-RZ5SVOYR.js +155 -0
  121. package/dist/chunk-SLFHQTTW.js +99 -0
  122. package/dist/chunk-SNZ6URZZ.js +2782 -0
  123. package/dist/chunk-SNZ6URZZ.js.map +1 -0
  124. package/dist/chunk-T2FFWNPK.js +75 -0
  125. package/dist/chunk-UNFPPVNI.js +23 -0
  126. package/dist/chunk-VFUPHI2Z.js +333 -0
  127. package/dist/chunk-VFUPHI2Z.js.map +1 -0
  128. package/dist/chunk-VLFCJYTL.js +235 -0
  129. package/dist/chunk-VN3DBQAU.js +124 -0
  130. package/dist/chunk-VYYM3MEN.js +98 -0
  131. package/dist/chunk-VYYM3MEN.js.map +1 -0
  132. package/dist/chunk-VZRODIM3.js +49 -0
  133. package/dist/chunk-W22IKJE2.js +94 -0
  134. package/dist/chunk-X3YYQWOQ.js +155 -0
  135. package/dist/chunk-X7QBD67R.js +14405 -0
  136. package/dist/chunk-X7QBD67R.js.map +1 -0
  137. package/dist/chunk-XDYREZWE.js +1128 -0
  138. package/dist/chunk-XDYREZWE.js.map +1 -0
  139. package/dist/chunk-XWZVFISC.js +720 -0
  140. package/dist/chunk-XWZVFISC.js.map +1 -0
  141. package/dist/chunk-YFXZEAYK.js +85 -0
  142. package/dist/chunk-ZAJAVEXY.js +50 -0
  143. package/dist/chunk-ZICD77GM.js +34 -0
  144. package/dist/chunk-ZJ2AK4V7.js +38 -0
  145. package/dist/chunk-ZUODRVHY.js +14 -0
  146. package/dist/classified/index.js +5 -5
  147. package/dist/classified-marker-CZKA6ITE.js +28 -0
  148. package/dist/classified-marker-CZKA6ITE.js.map +1 -0
  149. package/dist/collection-facade-TLWIPI76.js +44 -0
  150. package/dist/computed-ZIQTYTDI.js +11 -0
  151. package/dist/consent/index.js +9 -9
  152. package/dist/crdt/index.js +1 -1
  153. package/dist/dead-filter-ESOBZZP5.js +28 -0
  154. package/dist/delegation-W7ZV2322.js +25 -0
  155. package/dist/derivations/index.js +12 -12
  156. package/dist/derive-H2BJTLUI.js +21 -0
  157. package/dist/enclave-AP3I5W7O.js +141 -0
  158. package/dist/executor-KGWTNEQD.js +9 -0
  159. package/dist/executor-OVEXR6RT.js +9 -0
  160. package/dist/executor-UNEH5ZYH.js +25 -0
  161. package/dist/export-accessible-PCMXSUZS.js +23 -0
  162. package/dist/extract-partition-SWHFSYJO.js +38 -0
  163. package/dist/fanout-sidecar-A765THMX.js +74 -0
  164. package/dist/find-N6345CNT.js +11 -0
  165. package/dist/forget/index.js +10 -10
  166. package/dist/forget/index.js.map +1 -1
  167. package/dist/guards/index.js +6 -6
  168. package/dist/history/index.js +14 -11
  169. package/dist/history/index.js.map +1 -1
  170. package/dist/i18n/index.js +21 -19
  171. package/dist/i18n/index.js.map +1 -1
  172. package/dist/index.d.ts +307 -1493
  173. package/dist/index.js +309 -190
  174. package/dist/index.js.map +1 -1
  175. package/dist/indexing/index.js +7 -7
  176. package/dist/indexing/index.js.map +1 -1
  177. package/dist/issue-5OKB6I2R.js +19 -0
  178. package/dist/kernel/best-effort-revert.d.ts +52 -0
  179. package/dist/kernel/cache/index.d.ts +10 -0
  180. package/dist/kernel/cache/lru.d.ts +97 -0
  181. package/dist/kernel/cache/policy.d.ts +32 -0
  182. package/dist/kernel/collection-config.d.ts +809 -0
  183. package/dist/kernel/collection.d.ts +1522 -0
  184. package/dist/kernel/constants.d.ts +18 -0
  185. package/dist/kernel/debug.d.ts +25 -0
  186. package/dist/kernel/enclave/broker/proof.d.ts +154 -0
  187. package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
  188. package/dist/kernel/enclave/classify/compare.d.ts +10 -0
  189. package/dist/kernel/enclave/classify/digest.d.ts +8 -0
  190. package/dist/kernel/enclave/classify/find.d.ts +36 -0
  191. package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
  192. package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
  193. package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
  194. package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
  195. package/dist/kernel/enclave/classify/verify.d.ts +36 -0
  196. package/dist/kernel/enclave/classify/write.d.ts +8 -0
  197. package/dist/kernel/enclave/crypto.d.ts +263 -0
  198. package/dist/kernel/enclave/index.d.ts +79 -0
  199. package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
  200. package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
  201. package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
  202. package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
  203. package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
  204. package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
  205. package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
  206. package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
  207. package/dist/kernel/env-check.d.ts +1 -0
  208. package/dist/kernel/errors.d.ts +1922 -0
  209. package/dist/kernel/events.d.ts +11 -0
  210. package/dist/kernel/lazy-count.d.ts +13 -0
  211. package/dist/kernel/memory-store.d.ts +17 -0
  212. package/dist/kernel/mutation.d.ts +14 -0
  213. package/dist/kernel/noydb.d.ts +826 -0
  214. package/dist/kernel/paths.d.ts +25 -0
  215. package/dist/kernel/query/builder.d.ts +520 -0
  216. package/dist/kernel/query/index.d.ts +31 -0
  217. package/dist/kernel/query/join.d.ts +205 -0
  218. package/dist/kernel/query/live.d.ts +111 -0
  219. package/dist/kernel/query/predicate.d.ts +139 -0
  220. package/dist/kernel/query/scan-builder.d.ts +334 -0
  221. package/dist/kernel/refs.d.ts +205 -0
  222. package/dist/kernel/schema.d.ts +134 -0
  223. package/dist/kernel/sync-policy.d.ts +188 -0
  224. package/dist/kernel/tier-visibility.d.ts +54 -0
  225. package/dist/kernel/types.d.ts +3239 -0
  226. package/dist/kernel/util/discriminant.d.ts +58 -0
  227. package/dist/kernel/util/index.d.ts +14 -0
  228. package/dist/kernel/util/sanitize-filename.d.ts +75 -0
  229. package/dist/kernel/validation.d.ts +130 -0
  230. package/dist/kernel/vault.d.ts +1740 -0
  231. package/dist/kernel/via/compose.d.ts +144 -0
  232. package/dist/kernel/via/dispatch.d.ts +195 -0
  233. package/dist/kernel/via/graph-wiring.d.ts +145 -0
  234. package/dist/kernel/via/graph.d.ts +166 -0
  235. package/dist/kernel/via/index.d.ts +200 -0
  236. package/dist/kernel/via/pipeline.d.ts +266 -0
  237. package/dist/kernel/via/reconcile.d.ts +153 -0
  238. package/dist/kernel/via/taint-binding.d.ts +66 -0
  239. package/dist/kernel/write-queue.d.ts +46 -0
  240. package/dist/ledger-GFBKVPV4.js +42 -0
  241. package/dist/legacy/bundle.d.ts +30 -0
  242. package/dist/legacy/kernel.d.ts +33 -0
  243. package/dist/liberate-3VDOT4KO.js +24 -0
  244. package/dist/link-set-Z7Q2ASFX.js +31 -0
  245. package/dist/materialized-views/index.js +19 -17
  246. package/dist/noydb-ZCJOYBDI.js +68 -0
  247. package/dist/on/index.js +9 -9
  248. package/dist/overlay-views/index.js +4 -4
  249. package/dist/periods/index.js +12 -12
  250. package/dist/pod/index.js +11 -11
  251. package/dist/policy-Z3RUAIY2.js +41 -0
  252. package/dist/port/as/index.d.ts +26 -0
  253. package/dist/port/at/index.d.ts +18 -0
  254. package/dist/port/by/default-provider.d.ts +9 -0
  255. package/dist/port/by/index.d.ts +17 -0
  256. package/dist/port/by/types.d.ts +86 -0
  257. package/dist/port/in/index.d.ts +21 -0
  258. package/dist/port/on/index.d.ts +27 -0
  259. package/dist/port/to/index.d.ts +19 -0
  260. package/dist/port/ui/index.d.ts +21 -0
  261. package/dist/port/with/blob-strategy.d.ts +98 -0
  262. package/dist/port/with/broker-strategy.d.ts +84 -0
  263. package/dist/port/with/capabilities.d.ts +31 -0
  264. package/dist/port/with/classified-marker.d.ts +9 -0
  265. package/dist/port/with/classified-strategy.d.ts +62 -0
  266. package/dist/port/with/computed-strategy.d.ts +19 -0
  267. package/dist/port/with/i18n-strategy.d.ts +175 -0
  268. package/dist/port/with/index.d.ts +18 -0
  269. package/dist/port/with/lazy-strategy.d.ts +48 -0
  270. package/dist/port/with/lookup-strategy.d.ts +129 -0
  271. package/dist/port/with/service-bus.d.ts +156 -0
  272. package/dist/port/with/team-strategy.d.ts +36 -0
  273. package/dist/port/with/write-hooks.d.ts +34 -0
  274. package/dist/portability/index.js +8 -8
  275. package/dist/post-register-JTH76BLY.js +60 -0
  276. package/dist/post-register-JTH76BLY.js.map +1 -0
  277. package/dist/public-envelope-B4KNWVUA.js +32 -0
  278. package/dist/purge-scope-FGNNLWHD.js +24 -0
  279. package/dist/purge-scope-FGNNLWHD.js.map +1 -0
  280. package/dist/query/index.js +7 -7
  281. package/dist/read-only-facade-CHCKSEPD.js +8 -0
  282. package/dist/register-VAHONCID.js +23 -0
  283. package/dist/registry-7MLVD3VO.js +19 -0
  284. package/dist/registry-EPKPD5SM.js +18 -0
  285. package/dist/registry-P5T7PS2U.js +9 -0
  286. package/dist/request-withdrawal-TI3A5WPS.js +31 -0
  287. package/dist/reveal-DIBHLUZX.js +38 -0
  288. package/dist/reveal-DIBHLUZX.js.map +1 -0
  289. package/dist/revoke-FDRD6GRW.js +24 -0
  290. package/dist/satellites/index.js +1 -1
  291. package/dist/sealed-record/index.js +12 -12
  292. package/dist/seed-Q6M2IZFL.js +231 -0
  293. package/dist/seed-Q6M2IZFL.js.map +1 -0
  294. package/dist/session/index.js +9 -9
  295. package/dist/shadow/index.js +2 -2
  296. package/dist/signer-MUWEIUI6.js +25 -0
  297. package/dist/snapshots/index.js +10 -10
  298. package/dist/stale-OSQ7J3AA.js +29 -0
  299. package/dist/storage-MVFCGEQE.js +23 -0
  300. package/dist/store-coordination-provider-64OEZFGS.js +142 -0
  301. package/dist/sync/index.js +9 -9
  302. package/dist/team/index.js +15 -15
  303. package/dist/tiers/index.js +14 -10
  304. package/dist/to/index.js +1 -2
  305. package/dist/tx/index.js +3 -3
  306. package/dist/util/index.js +1 -1
  307. package/dist/verify-ZASTRNPR.js +140 -0
  308. package/dist/verify-ZASTRNPR.js.map +1 -0
  309. package/dist/via/blob/active.d.ts +34 -0
  310. package/dist/via/blob/binding.d.ts +86 -0
  311. package/dist/via/blob/index.d.ts +34 -0
  312. package/dist/via/classified/active.d.ts +3 -0
  313. package/dist/via/classified/binding.d.ts +83 -0
  314. package/dist/via/classified/config-drift.d.ts +34 -0
  315. package/dist/via/classified/descriptor.d.ts +66 -0
  316. package/dist/via/classified/errors.d.ts +19 -0
  317. package/dist/via/classified/guards.d.ts +23 -0
  318. package/dist/via/classified/index.d.ts +11 -0
  319. package/dist/via/classified/presets.d.ts +65 -0
  320. package/dist/via/classified/resolve.d.ts +9 -0
  321. package/dist/via/classified/strategy.d.ts +11 -0
  322. package/dist/via/classified/validators.d.ts +3 -0
  323. package/dist/via/classified/write.d.ts +4 -0
  324. package/dist/via/computed/binding.d.ts +34 -0
  325. package/dist/via/computed/descriptor.d.ts +35 -0
  326. package/dist/via/i18n/active.d.ts +28 -0
  327. package/dist/via/i18n/binding.d.ts +36 -0
  328. package/dist/via/i18n/core.d.ts +267 -0
  329. package/dist/via/i18n/densify.d.ts +24 -0
  330. package/dist/via/i18n/dictionary.d.ts +200 -0
  331. package/dist/via/i18n/index.d.ts +21 -0
  332. package/dist/via/i18n/policy.d.ts +44 -0
  333. package/dist/via/i18n/script.d.ts +26 -0
  334. package/dist/via/i18n/strategy.d.ts +13 -0
  335. package/dist/via/lookup/active.d.ts +19 -0
  336. package/dist/via/lookup/binding.d.ts +99 -0
  337. package/dist/via/lookup/descriptor.d.ts +123 -0
  338. package/dist/via/lookup/handle.d.ts +220 -0
  339. package/dist/via/lookup/index.d.ts +17 -0
  340. package/dist/via/lookup/registry.d.ts +228 -0
  341. package/dist/via/lookup/snapshot.d.ts +67 -0
  342. package/dist/via/money/arith.d.ts +68 -0
  343. package/dist/via/money/binding.d.ts +21 -0
  344. package/dist/via/money/branded.d.ts +61 -0
  345. package/dist/via/money/descriptor.d.ts +73 -0
  346. package/dist/via/money/fixed-point.d.ts +51 -0
  347. package/dist/via/money/index.d.ts +15 -0
  348. package/dist/via/money/iso4217.d.ts +6 -0
  349. package/dist/via/money/money-reducer.d.ts +33 -0
  350. package/dist/via/money/normalize.d.ts +105 -0
  351. package/dist/via/money/paths.d.ts +61 -0
  352. package/dist/via/money/where.d.ts +127 -0
  353. package/dist/walk-SVNDIZ62.js +241 -0
  354. package/dist/with/index.js +11 -11
  355. package/dist/with-audit/attestation/active.d.ts +10 -0
  356. package/dist/with-audit/attestation/index.d.ts +16 -0
  357. package/dist/with-audit/attestation/issue.d.ts +29 -0
  358. package/dist/with-audit/attestation/revoke.d.ts +15 -0
  359. package/dist/with-audit/attestation/signer.d.ts +33 -0
  360. package/dist/with-audit/attestation/strategy.d.ts +44 -0
  361. package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
  362. package/dist/with-audit/consent/active.d.ts +14 -0
  363. package/dist/with-audit/consent/consent.d.ts +114 -0
  364. package/dist/with-audit/consent/index.d.ts +14 -0
  365. package/dist/with-audit/consent/strategy.d.ts +36 -0
  366. package/dist/with-audit/forget/active.d.ts +31 -0
  367. package/dist/with-audit/forget/index.d.ts +28 -0
  368. package/dist/with-audit/forget/purge-scope.d.ts +54 -0
  369. package/dist/with-audit/forget/strategy.d.ts +199 -0
  370. package/dist/with-audit/forget/subject-index.d.ts +83 -0
  371. package/dist/with-audit/guards/executor.d.ts +26 -0
  372. package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
  373. package/dist/with-audit/guards/index.d.ts +10 -0
  374. package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
  375. package/dist/with-audit/guards/registry.d.ts +83 -0
  376. package/dist/with-audit/guards/transition-guard.d.ts +82 -0
  377. package/dist/with-audit/guards/types.d.ts +134 -0
  378. package/dist/with-audit/guards/with-guard.d.ts +15 -0
  379. package/dist/with-audit/periods/active.d.ts +11 -0
  380. package/dist/with-audit/periods/index.d.ts +18 -0
  381. package/dist/with-audit/periods/periods.d.ts +417 -0
  382. package/dist/with-audit/periods/strategy.d.ts +32 -0
  383. package/dist/with-audit/periods/vault-facade.d.ts +95 -0
  384. package/dist/with-audit/portability/active.d.ts +11 -0
  385. package/dist/with-audit/portability/export-accessible.d.ts +46 -0
  386. package/dist/with-audit/portability/index.d.ts +18 -0
  387. package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
  388. package/dist/with-audit/portability/strategy.d.ts +31 -0
  389. package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
  390. package/dist/with-audit/sealed-record/active.d.ts +9 -0
  391. package/dist/with-audit/sealed-record/index.d.ts +55 -0
  392. package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
  393. package/dist/with-audit/sealed-record/types.d.ts +27 -0
  394. package/dist/with-audit/tiers/active.d.ts +9 -0
  395. package/dist/with-audit/tiers/index.d.ts +394 -0
  396. package/dist/with-audit/tiers/strategy.d.ts +36 -0
  397. package/dist/with-cargo/active.d.ts +11 -0
  398. package/dist/with-cargo/adopt-partition.d.ts +81 -0
  399. package/dist/with-cargo/decrypt-partition.d.ts +19 -0
  400. package/dist/with-cargo/describe-extraction.d.ts +41 -0
  401. package/dist/with-cargo/extract-partition.d.ts +155 -0
  402. package/dist/with-cargo/index.d.ts +33 -0
  403. package/dist/with-cargo/strategy.d.ts +30 -0
  404. package/dist/with-cargo/vault-diff.d.ts +144 -0
  405. package/dist/with-cargo/walk-closure.d.ts +67 -0
  406. package/dist/with-commit/crdt/active.d.ts +25 -0
  407. package/dist/with-commit/crdt/crdt.d.ts +42 -0
  408. package/dist/with-commit/crdt/index.d.ts +16 -0
  409. package/dist/with-commit/crdt/strategy.d.ts +25 -0
  410. package/dist/with-commit/history/active.d.ts +40 -0
  411. package/dist/with-commit/history/diff.d.ts +23 -0
  412. package/dist/with-commit/history/history.d.ts +73 -0
  413. package/dist/with-commit/history/index.d.ts +30 -0
  414. package/dist/with-commit/history/ledger/constants.d.ts +37 -0
  415. package/dist/with-commit/history/ledger/entry.d.ts +195 -0
  416. package/dist/with-commit/history/ledger/hash.d.ts +30 -0
  417. package/dist/with-commit/history/ledger/index.d.ts +19 -0
  418. package/dist/with-commit/history/ledger/patch.d.ts +99 -0
  419. package/dist/with-commit/history/ledger/store.d.ts +356 -0
  420. package/dist/with-commit/history/strategy.d.ts +136 -0
  421. package/dist/with-commit/history/time-machine.d.ts +202 -0
  422. package/dist/with-commit/numbering/descriptor.d.ts +27 -0
  423. package/dist/with-commit/numbering/index.d.ts +69 -0
  424. package/dist/with-commit/sequence/active.d.ts +10 -0
  425. package/dist/with-commit/sequence/index.d.ts +150 -0
  426. package/dist/with-commit/sequence/strategy.d.ts +26 -0
  427. package/dist/with-commit/tx/active.d.ts +27 -0
  428. package/dist/with-commit/tx/dry-run.d.ts +29 -0
  429. package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
  430. package/dist/with-commit/tx/index.d.ts +13 -0
  431. package/dist/with-commit/tx/invariants.d.ts +68 -0
  432. package/dist/with-commit/tx/strategy.d.ts +23 -0
  433. package/dist/with-commit/tx/transaction.d.ts +212 -0
  434. package/dist/with-fork/archive/engine.d.ts +71 -0
  435. package/dist/with-fork/archive/index.d.ts +23 -0
  436. package/dist/with-fork/shadow/active.d.ts +6 -0
  437. package/dist/with-fork/shadow/index.d.ts +14 -0
  438. package/dist/with-fork/shadow/strategy.d.ts +28 -0
  439. package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
  440. package/dist/with-fork/snapshots/active.d.ts +20 -0
  441. package/dist/with-fork/snapshots/engine.d.ts +36 -0
  442. package/dist/with-fork/snapshots/index.d.ts +5 -0
  443. package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
  444. package/dist/with-fork/snapshots/policy.d.ts +23 -0
  445. package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
  446. package/dist/with-fork/snapshots/strategy.d.ts +48 -0
  447. package/dist/with-formula/computed/index.d.ts +48 -0
  448. package/dist/with-formula/computed/lazy.d.ts +13 -0
  449. package/dist/with-formula/derivations/executor.d.ts +61 -0
  450. package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
  451. package/dist/with-formula/derivations/index.d.ts +6 -0
  452. package/dist/with-formula/derivations/registry.d.ts +67 -0
  453. package/dist/with-formula/derivations/stale.d.ts +39 -0
  454. package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
  455. package/dist/with-formula/derivations/types.d.ts +248 -0
  456. package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
  457. package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
  458. package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
  459. package/dist/with-formula/materialized-views/executor.d.ts +80 -0
  460. package/dist/with-formula/materialized-views/index.d.ts +11 -0
  461. package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
  462. package/dist/with-formula/materialized-views/registry.d.ts +99 -0
  463. package/dist/with-formula/materialized-views/stale.d.ts +113 -0
  464. package/dist/with-formula/materialized-views/types.d.ts +318 -0
  465. package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
  466. package/dist/with-formula/overlay-views/index.d.ts +5 -0
  467. package/dist/with-formula/overlay-views/registry.d.ts +42 -0
  468. package/dist/with-formula/overlay-views/types.d.ts +97 -0
  469. package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
  470. package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
  471. package/dist/with-lookup/aggregate/active.d.ts +33 -0
  472. package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
  473. package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
  474. package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
  475. package/dist/with-lookup/aggregate/index.d.ts +23 -0
  476. package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
  477. package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
  478. package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
  479. package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
  480. package/dist/with-lookup/embeddings/index.d.ts +4 -0
  481. package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
  482. package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
  483. package/dist/with-lookup/indexing/active.d.ts +30 -0
  484. package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
  485. package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
  486. package/dist/with-lookup/indexing/index.d.ts +27 -0
  487. package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
  488. package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
  489. package/dist/with-lookup/indexing/strategy.d.ts +56 -0
  490. package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
  491. package/dist/with-lookup/search/active.d.ts +10 -0
  492. package/dist/with-lookup/search/build-docs.d.ts +15 -0
  493. package/dist/with-lookup/search/collection-facade.d.ts +163 -0
  494. package/dist/with-lookup/search/fuse.d.ts +22 -0
  495. package/dist/with-lookup/search/index-store.d.ts +19 -0
  496. package/dist/with-lookup/search/index.d.ts +19 -0
  497. package/dist/with-lookup/search/inverted-index.d.ts +47 -0
  498. package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
  499. package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
  500. package/dist/with-lookup/search/scan.d.ts +28 -0
  501. package/dist/with-lookup/search/segment.d.ts +15 -0
  502. package/dist/with-lookup/search/serialize.d.ts +4 -0
  503. package/dist/with-lookup/search/snippet.d.ts +5 -0
  504. package/dist/with-lookup/search/strategy.d.ts +41 -0
  505. package/dist/with-lookup/search/tokenize.d.ts +12 -0
  506. package/dist/with-party/auth-introspection/index.d.ts +44 -0
  507. package/dist/with-party/broker/active.d.ts +23 -0
  508. package/dist/with-party/broker/index.d.ts +28 -0
  509. package/dist/with-party/broker/seed.d.ts +77 -0
  510. package/dist/with-party/custody/active.d.ts +10 -0
  511. package/dist/with-party/custody/index.d.ts +69 -0
  512. package/dist/with-party/custody/liberate.d.ts +64 -0
  513. package/dist/with-party/custody/strategy.d.ts +48 -0
  514. package/dist/with-party/directory/index.d.ts +11 -0
  515. package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
  516. package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
  517. package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
  518. package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
  519. package/dist/with-party/directory/storage.d.ts +33 -0
  520. package/dist/with-party/directory/types.d.ts +43 -0
  521. package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
  522. package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
  523. package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
  524. package/dist/with-party/directory/visibility.d.ts +47 -0
  525. package/dist/with-party/policy/engine.d.ts +60 -0
  526. package/dist/with-party/policy/index.d.ts +15 -0
  527. package/dist/with-party/policy/noydb-facade.d.ts +39 -0
  528. package/dist/with-party/policy/presets.d.ts +38 -0
  529. package/dist/with-party/policy/storage.d.ts +31 -0
  530. package/dist/with-party/session/active.d.ts +34 -0
  531. package/dist/with-party/session/dev-unlock.d.ts +128 -0
  532. package/dist/with-party/session/index.d.ts +23 -0
  533. package/dist/with-party/session/session-policy.d.ts +92 -0
  534. package/dist/with-party/session/session.d.ts +131 -0
  535. package/dist/with-party/session/strategy.d.ts +42 -0
  536. package/dist/with-party/session/unlock-state.d.ts +47 -0
  537. package/dist/with-party/sync/index.d.ts +31 -0
  538. package/dist/with-party/tab-coordination.d.ts +73 -0
  539. package/dist/with-party/tab-write-relay.d.ts +39 -0
  540. package/dist/with-party/team/active.d.ts +13 -0
  541. package/dist/with-party/team/authenticators.d.ts +95 -0
  542. package/dist/with-party/team/deed.d.ts +97 -0
  543. package/dist/with-party/team/delegation.d.ts +88 -0
  544. package/dist/with-party/team/index.d.ts +38 -0
  545. package/dist/with-party/team/keyring.d.ts +318 -0
  546. package/dist/with-party/team/magic-link-grant.d.ts +152 -0
  547. package/dist/with-party/team/managed-passphrase.d.ts +280 -0
  548. package/dist/with-party/team/noydb-facade.d.ts +484 -0
  549. package/dist/with-party/team/peer-recover.d.ts +81 -0
  550. package/dist/with-party/team/presence.d.ts +81 -0
  551. package/dist/with-party/team/recovery.d.ts +191 -0
  552. package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
  553. package/dist/with-party/team/rotate-recover.d.ts +275 -0
  554. package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
  555. package/dist/with-party/team/strategy.d.ts +9 -0
  556. package/dist/with-party/team/sync-active.d.ts +33 -0
  557. package/dist/with-party/team/sync-credentials.d.ts +113 -0
  558. package/dist/with-party/team/sync-strategy.d.ts +67 -0
  559. package/dist/with-party/team/sync-transaction.d.ts +39 -0
  560. package/dist/with-party/team/sync.d.ts +174 -0
  561. package/dist/with-party/team/tiers.d.ts +39 -0
  562. package/dist/with-party/team/wrapped-deks.d.ts +86 -0
  563. package/dist/with-pod/backup.d.ts +74 -0
  564. package/dist/with-pod/bundle.d.ts +414 -0
  565. package/dist/with-pod/format.d.ts +203 -0
  566. package/dist/with-pod/index.d.ts +20 -0
  567. package/dist/with-pod/pod-store.d.ts +54 -0
  568. package/dist/with-pod/ulid.d.ts +64 -0
  569. package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
  570. package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
  571. package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
  572. package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
  573. package/dist/with-shape/blobs/import-external.d.ts +50 -0
  574. package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
  575. package/dist/with-shape/blobs/object-projection.d.ts +70 -0
  576. package/dist/with-shape/introspection/describe.d.ts +237 -0
  577. package/dist/with-shape/introspection/field-meta.d.ts +61 -0
  578. package/dist/with-shape/introspection/fields.d.ts +14 -0
  579. package/dist/with-shape/introspection/index.d.ts +12 -0
  580. package/dist/with-shape/introspection/json-schema.d.ts +13 -0
  581. package/dist/with-shape/introspection/meta.d.ts +22 -0
  582. package/dist/with-shape/introspection/projection.d.ts +13 -0
  583. package/dist/with-shape/introspection/types.d.ts +154 -0
  584. package/dist/with-shape/introspection/walk.d.ts +50 -0
  585. package/dist/with-shape/links/lazy-handle.d.ts +36 -0
  586. package/dist/with-shape/links/link-set.d.ts +67 -0
  587. package/dist/with-shape/links/names.d.ts +65 -0
  588. package/dist/with-shape/links/vault-facade.d.ts +211 -0
  589. package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
  590. package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
  591. package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
  592. package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
  593. package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
  594. package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
  595. package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
  596. package/dist/with-shape/satellites/declare.d.ts +60 -0
  597. package/dist/with-shape/satellites/existence.d.ts +5 -0
  598. package/dist/with-shape/satellites/fanout.d.ts +38 -0
  599. package/dist/with-shape/satellites/forget.d.ts +47 -0
  600. package/dist/with-shape/satellites/index.d.ts +3 -0
  601. package/dist/with-shape/satellites/joined.d.ts +19 -0
  602. package/dist/with-shape/satellites/marker.d.ts +10 -0
  603. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  604. package/dist/with-shape/satellites/post-register.d.ts +6 -0
  605. package/dist/with-shape/satellites/proxy.d.ts +37 -0
  606. package/dist/with-shape/satellites/raw-target.d.ts +14 -0
  607. package/dist/with-shape/satellites/registry.d.ts +19 -0
  608. package/dist/with-shape/satellites/types.d.ts +37 -0
  609. package/dist/with-shape/satellites/validate.d.ts +17 -0
  610. package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
  611. package/dist/with-shape/schema-update/cutover.d.ts +5 -0
  612. package/dist/with-shape/schema-update/delta.d.ts +2 -0
  613. package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
  614. package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
  615. package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
  616. package/dist/with-shape/schema-update/fence.d.ts +15 -0
  617. package/dist/with-shape/schema-update/gate.d.ts +16 -0
  618. package/dist/with-shape/schema-update/index.d.ts +6 -0
  619. package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
  620. package/dist/with-shape/schema-update/strategies.d.ts +12 -0
  621. package/dist/with-shape/schema-update/types.d.ts +53 -0
  622. package/dist/with-store/index.d.ts +15 -0
  623. package/dist/with-store/lazy/active.d.ts +12 -0
  624. package/dist/with-store/lazy/index.d.ts +14 -0
  625. package/dist/with-store/lazy/strategy.d.ts +9 -0
  626. package/dist/with-store/route-store.d.ts +259 -0
  627. package/dist/with-store/store-middleware.d.ts +189 -0
  628. package/dist/withdraw-accessible-WZIEVWSR.js +28 -0
  629. package/package.json +47 -55
  630. package/dist/adapter/index.d.ts +0 -4
  631. package/dist/adapter/index.js +0 -15
  632. package/dist/aggregate/index.d.ts +0 -41
  633. package/dist/api-HV4PDUWF.js +0 -20
  634. package/dist/as/index.d.ts +0 -6
  635. package/dist/at/index.d.ts +0 -4
  636. package/dist/attestation/index.d.ts +0 -19
  637. package/dist/backup-ODXO7OGA.js +0 -225
  638. package/dist/backup-ODXO7OGA.js.map +0 -1
  639. package/dist/blobs/index.d.ts +0 -43
  640. package/dist/bundle/index.d.ts +0 -121
  641. package/dist/bundle-DlSxo31R.d.ts +0 -548
  642. package/dist/by/index.d.ts +0 -1
  643. package/dist/cargo/index.d.ts +0 -8
  644. package/dist/chunk-2644KEGW.js +0 -247
  645. package/dist/chunk-2644KEGW.js.map +0 -1
  646. package/dist/chunk-2HVUKRNE.js +0 -21
  647. package/dist/chunk-2KOSJTMU.js +0 -69
  648. package/dist/chunk-2UQ4RMHV.js +0 -167
  649. package/dist/chunk-2UQ4RMHV.js.map +0 -1
  650. package/dist/chunk-2XE6LIXT.js +0 -515
  651. package/dist/chunk-2XE6LIXT.js.map +0 -1
  652. package/dist/chunk-34RRRIC3.js +0 -71
  653. package/dist/chunk-3C5CKXFI.js +0 -621
  654. package/dist/chunk-3C5CKXFI.js.map +0 -1
  655. package/dist/chunk-3I4KYWNP.js +0 -30
  656. package/dist/chunk-42KVY3OC.js +0 -86
  657. package/dist/chunk-4C4WBS4V.js +0 -13822
  658. package/dist/chunk-4C4WBS4V.js.map +0 -1
  659. package/dist/chunk-4G3IT7J7.js +0 -280
  660. package/dist/chunk-4G3IT7J7.js.map +0 -1
  661. package/dist/chunk-4RQ62VSR.js +0 -53
  662. package/dist/chunk-4RQ62VSR.js.map +0 -1
  663. package/dist/chunk-4ZSGSRBI.js +0 -1221
  664. package/dist/chunk-4ZSGSRBI.js.map +0 -1
  665. package/dist/chunk-5GAX2QOH.js +0 -132
  666. package/dist/chunk-5GAX2QOH.js.map +0 -1
  667. package/dist/chunk-5SAZMBW7.js +0 -202
  668. package/dist/chunk-5TZZUL5X.js +0 -30
  669. package/dist/chunk-6CU3FN74.js +0 -777
  670. package/dist/chunk-6G2SCQYS.js +0 -29
  671. package/dist/chunk-6G2SCQYS.js.map +0 -1
  672. package/dist/chunk-6MWUANRF.js +0 -29
  673. package/dist/chunk-6S7T6WC4.js +0 -111
  674. package/dist/chunk-6S7T6WC4.js.map +0 -1
  675. package/dist/chunk-6ULCYCMU.js +0 -74
  676. package/dist/chunk-7HAPHVRJ.js +0 -1695
  677. package/dist/chunk-7HAPHVRJ.js.map +0 -1
  678. package/dist/chunk-7IZQTCTR.js +0 -382
  679. package/dist/chunk-7ZANJ6JZ.js +0 -265
  680. package/dist/chunk-7ZANJ6JZ.js.map +0 -1
  681. package/dist/chunk-A2APWS32.js +0 -150
  682. package/dist/chunk-A2APWS32.js.map +0 -1
  683. package/dist/chunk-A4MAD6PO.js +0 -99
  684. package/dist/chunk-ANDBBA2P.js +0 -36
  685. package/dist/chunk-ANDBBA2P.js.map +0 -1
  686. package/dist/chunk-AUR7MRHA.js +0 -404
  687. package/dist/chunk-AYGZMQP5.js +0 -75
  688. package/dist/chunk-BGIZAFY7.js +0 -1
  689. package/dist/chunk-CJEMA2Z6.js +0 -230
  690. package/dist/chunk-CTSFKDGA.js +0 -40
  691. package/dist/chunk-CU62BBRB.js +0 -1465
  692. package/dist/chunk-CU62BBRB.js.map +0 -1
  693. package/dist/chunk-CWCCYH34.js +0 -23
  694. package/dist/chunk-DEYAO3N6.js +0 -589
  695. package/dist/chunk-DFIBOSOQ.js +0 -85
  696. package/dist/chunk-E5AHO65E.js +0 -150
  697. package/dist/chunk-FC3XK5JT.js +0 -99
  698. package/dist/chunk-FGOGS7CE.js +0 -662
  699. package/dist/chunk-FGOGS7CE.js.map +0 -1
  700. package/dist/chunk-GX2BYNCT.js +0 -117
  701. package/dist/chunk-GZ2MOPVX.js +0 -291
  702. package/dist/chunk-GZ2MOPVX.js.map +0 -1
  703. package/dist/chunk-H57P2SJB.js +0 -126
  704. package/dist/chunk-H57P2SJB.js.map +0 -1
  705. package/dist/chunk-HBTT7YQX.js +0 -94
  706. package/dist/chunk-HOCEGVGQ.js +0 -36
  707. package/dist/chunk-ICV32FPK.js +0 -50
  708. package/dist/chunk-IIP5WFVT.js +0 -462
  709. package/dist/chunk-IIP5WFVT.js.map +0 -1
  710. package/dist/chunk-IUKGIB2Q.js +0 -91
  711. package/dist/chunk-IWTYFS3D.js +0 -129
  712. package/dist/chunk-JC5R7P44.js +0 -355
  713. package/dist/chunk-JC5R7P44.js.map +0 -1
  714. package/dist/chunk-K2WCO3NX.js +0 -1
  715. package/dist/chunk-KBBWY46Y.js +0 -14
  716. package/dist/chunk-KBF5GSGX.js +0 -367
  717. package/dist/chunk-KCG3BHFG.js +0 -99
  718. package/dist/chunk-KCG3BHFG.js.map +0 -1
  719. package/dist/chunk-KNXN47MO.js +0 -155
  720. package/dist/chunk-KWLD2D75.js +0 -38
  721. package/dist/chunk-KXKLKJW4.js +0 -49
  722. package/dist/chunk-KYC4LIEU.js +0 -123
  723. package/dist/chunk-LEOXZY36.js +0 -130
  724. package/dist/chunk-M5I354EE.js +0 -235
  725. package/dist/chunk-MK2BSS44.js +0 -34
  726. package/dist/chunk-MSVY7ULZ.js +0 -70
  727. package/dist/chunk-NNWK3PSY.js +0 -135
  728. package/dist/chunk-NSZ6J5DF.js +0 -59
  729. package/dist/chunk-NUEFXLZU.js +0 -59
  730. package/dist/chunk-NYVQCZ54.js +0 -261
  731. package/dist/chunk-OQAODTYR.js +0 -45
  732. package/dist/chunk-OV4CMJGR.js +0 -164
  733. package/dist/chunk-PEDZFFKW.js +0 -41
  734. package/dist/chunk-PF3FQCCF.js +0 -164
  735. package/dist/chunk-PF3FQCCF.js.map +0 -1
  736. package/dist/chunk-Q2KVKTC2.js +0 -823
  737. package/dist/chunk-QJR3W3MF.js +0 -23
  738. package/dist/chunk-QJR3W3MF.js.map +0 -1
  739. package/dist/chunk-QTXQ6RNZ.js +0 -255
  740. package/dist/chunk-RJ5522XX.js +0 -453
  741. package/dist/chunk-RJ5522XX.js.map +0 -1
  742. package/dist/chunk-RMUXPHIH.js +0 -930
  743. package/dist/chunk-RMUXPHIH.js.map +0 -1
  744. package/dist/chunk-S6AQXDN4.js +0 -155
  745. package/dist/chunk-SSFC3IYA.js +0 -275
  746. package/dist/chunk-SSFC3IYA.js.map +0 -1
  747. package/dist/chunk-SZCHEDML.js +0 -209
  748. package/dist/chunk-TDPEJINP.js +0 -188
  749. package/dist/chunk-TDPEJINP.js.map +0 -1
  750. package/dist/chunk-TQ3REHVF.js +0 -95
  751. package/dist/chunk-TQ3REHVF.js.map +0 -1
  752. package/dist/chunk-UNJU345Q.js +0 -32
  753. package/dist/chunk-UNJU345Q.js.map +0 -1
  754. package/dist/chunk-V7RNIND6.js +0 -265
  755. package/dist/chunk-V7RNIND6.js.map +0 -1
  756. package/dist/chunk-VJ3NQK4K.js +0 -205
  757. package/dist/chunk-WNA6T3MA.js +0 -686
  758. package/dist/chunk-WNA6T3MA.js.map +0 -1
  759. package/dist/chunk-WVCQ75OK.js +0 -124
  760. package/dist/chunk-X66MXMR5.js +0 -42
  761. package/dist/chunk-XHD3L3JO.js +0 -930
  762. package/dist/chunk-XHD3L3JO.js.map +0 -1
  763. package/dist/chunk-XJK2WIYN.js +0 -430
  764. package/dist/chunk-XJK2WIYN.js.map +0 -1
  765. package/dist/chunk-XQ7UYPVN.js +0 -95
  766. package/dist/chunk-Y2OCKFZ3.js +0 -80
  767. package/dist/chunk-YBFOBRTO.js +0 -367
  768. package/dist/chunk-YLN33ADH.js +0 -97
  769. package/dist/chunk-Z5YFRMG5.js +0 -45
  770. package/dist/chunk-ZWQFOXBR.js +0 -54
  771. package/dist/classified/index.d.ts +0 -16
  772. package/dist/classified-marker-IO5EBW7Q.js +0 -24
  773. package/dist/classified-marker-IO5EBW7Q.js.map +0 -1
  774. package/dist/collection-facade-3RAXG2OU.js +0 -38
  775. package/dist/computed-R62HGCO4.js +0 -11
  776. package/dist/consent/index.d.ts +0 -22
  777. package/dist/crdt/index.d.ts +0 -33
  778. package/dist/dead-filter-VNA4M3GP.js +0 -28
  779. package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
  780. package/dist/delegation-ZKII5UBI.js +0 -25
  781. package/dist/derivations/index.d.ts +0 -69
  782. package/dist/derive-5D2C3WG4.js +0 -21
  783. package/dist/describe/index.d.ts +0 -4
  784. package/dist/describe/index.js +0 -1
  785. package/dist/dev-unlock-DDTafVO6.d.ts +0 -263
  786. package/dist/discriminant-BN9REW3o.d.ts +0 -60
  787. package/dist/enclave-EUBEJGPG.js +0 -125
  788. package/dist/executor-IL7SRNUZ.js +0 -23
  789. package/dist/executor-OUA2Y6YC.js +0 -9
  790. package/dist/executor-WAEI6PDV.js +0 -9
  791. package/dist/export-accessible-O55RKAGC.js +0 -23
  792. package/dist/extract-partition-VBGCBA6Q.js +0 -36
  793. package/dist/fanout-sidecar-CI5BCMQM.js +0 -74
  794. package/dist/find-FISGUWSK.js +0 -11
  795. package/dist/forget/index.d.ts +0 -36
  796. package/dist/guards/index.d.ts +0 -34
  797. package/dist/hash-DBkZfIBW.d.ts +0 -72
  798. package/dist/history/index.d.ts +0 -60
  799. package/dist/i18n/index.d.ts +0 -56
  800. package/dist/in/index.d.ts +0 -4
  801. package/dist/index-B9QdHytu.d.ts +0 -123
  802. package/dist/index-CyclmyDr.d.ts +0 -122
  803. package/dist/index-DzhNI2vE.d.ts +0 -23260
  804. package/dist/indexing/index.d.ts +0 -38
  805. package/dist/issue-EQAWIYFQ.js +0 -19
  806. package/dist/kernel/index.d.ts +0 -31
  807. package/dist/kernel/index.js +0 -60
  808. package/dist/lazy/index.d.ts +0 -20
  809. package/dist/ledger-AJA2SR3C.js +0 -42
  810. package/dist/liberate-SEGR4JLY.js +0 -24
  811. package/dist/link-set-YBAC2DQT.js +0 -31
  812. package/dist/materialized-views/index.d.ts +0 -182
  813. package/dist/mime-magic-CbV1quyp.d.ts +0 -103
  814. package/dist/noydb-AMEOU456.js +0 -65
  815. package/dist/on/index.d.ts +0 -4
  816. package/dist/overlay-views/index.d.ts +0 -97
  817. package/dist/periods/index.d.ts +0 -19
  818. package/dist/pod/index.d.ts +0 -62
  819. package/dist/policy-SDGRWVIL.js +0 -41
  820. package/dist/portability/index.d.ts +0 -19
  821. package/dist/post-register-MROIUA5O.js +0 -55
  822. package/dist/post-register-MROIUA5O.js.map +0 -1
  823. package/dist/public-envelope-J5PLQOW2.js +0 -32
  824. package/dist/query/index.d.ts +0 -4
  825. package/dist/read-only-facade-UCYNRE56.js +0 -8
  826. package/dist/register-OVJKW7BS.js +0 -23
  827. package/dist/registry-5RJSK5AJ.js +0 -9
  828. package/dist/registry-DQRNTWRL.js +0 -18
  829. package/dist/registry-LTGLERS7.js +0 -19
  830. package/dist/request-withdrawal-27O77D2V.js +0 -31
  831. package/dist/reveal-LT3I2K4P.js +0 -38
  832. package/dist/reveal-LT3I2K4P.js.map +0 -1
  833. package/dist/revoke-4N45G7D2.js +0 -24
  834. package/dist/revoke-4N45G7D2.js.map +0 -1
  835. package/dist/satellites/index.d.ts +0 -4
  836. package/dist/sealed-record/index.d.ts +0 -68
  837. package/dist/session/index.d.ts +0 -43
  838. package/dist/shadow/index.d.ts +0 -14
  839. package/dist/signer-XJCOV7JD.js +0 -25
  840. package/dist/signer-XJCOV7JD.js.map +0 -1
  841. package/dist/snapshots/index.d.ts +0 -25
  842. package/dist/stale-IYYXEH3U.js +0 -14
  843. package/dist/stale-IYYXEH3U.js.map +0 -1
  844. package/dist/storage-Y44CAPE6.js +0 -23
  845. package/dist/storage-Y44CAPE6.js.map +0 -1
  846. package/dist/store-coordination-provider-WKGAE2WI.js +0 -142
  847. package/dist/subject-index-CyOgGMJL.d.ts +0 -380
  848. package/dist/sync/index.d.ts +0 -40
  849. package/dist/team/index.d.ts +0 -154
  850. package/dist/tiers/index.d.ts +0 -4
  851. package/dist/to/index.d.ts +0 -4
  852. package/dist/transition-guard-BOUkzQU4.d.ts +0 -165
  853. package/dist/tx/index.d.ts +0 -34
  854. package/dist/ui/index.d.ts +0 -4
  855. package/dist/ulid-DRH25k3y.d.ts +0 -66
  856. package/dist/util/index.d.ts +0 -79
  857. package/dist/validators-B3SalxlJ.d.ts +0 -101
  858. package/dist/vault-diff-Dt9NkLzw.d.ts +0 -147
  859. package/dist/verify-GH6CWVSW.js +0 -139
  860. package/dist/verify-GH6CWVSW.js.map +0 -1
  861. package/dist/walk-76UCFXYV.js +0 -241
  862. package/dist/with/index.d.ts +0 -37
  863. package/dist/with-materialized-view-BP33v1Z6.d.ts +0 -27
  864. package/dist/with-overlayed-view-DntFpOKN.d.ts +0 -12
  865. package/dist/with-rollup-ClCHO6-4.d.ts +0 -47
  866. package/dist/withdraw-accessible-6J2UH3IN.js +0 -28
  867. package/dist/withdraw-accessible-6J2UH3IN.js.map +0 -1
  868. /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
  869. /package/dist/{chunk-34RRRIC3.js.map → chunk-3B5VVCNY.js.map} +0 -0
  870. /package/dist/{chunk-CJEMA2Z6.js.map → chunk-3LQ2YKO4.js.map} +0 -0
  871. /package/dist/{chunk-ZWQFOXBR.js.map → chunk-3QCRBHCY.js.map} +0 -0
  872. /package/dist/{chunk-E5AHO65E.js.map → chunk-4JBYV75E.js.map} +0 -0
  873. /package/dist/{chunk-YLN33ADH.js.map → chunk-4NXKCLLQ.js.map} +0 -0
  874. /package/dist/{chunk-2KOSJTMU.js.map → chunk-5M5DVGV7.js.map} +0 -0
  875. /package/dist/{chunk-3I4KYWNP.js.map → chunk-5YOLBEQ6.js.map} +0 -0
  876. /package/dist/{chunk-IWTYFS3D.js.map → chunk-6CRIV7DE.js.map} +0 -0
  877. /package/dist/{chunk-QTXQ6RNZ.js.map → chunk-6QTNZJBS.js.map} +0 -0
  878. /package/dist/{chunk-42KVY3OC.js.map → chunk-6T2SCQRU.js.map} +0 -0
  879. /package/dist/{chunk-Z5YFRMG5.js.map → chunk-7DSTRQIJ.js.map} +0 -0
  880. /package/dist/{chunk-DEYAO3N6.js.map → chunk-AUSTCW2X.js.map} +0 -0
  881. /package/dist/{chunk-SZCHEDML.js.map → chunk-B3HJYUOF.js.map} +0 -0
  882. /package/dist/{chunk-OV4CMJGR.js.map → chunk-BDVFPG6Y.js.map} +0 -0
  883. /package/dist/{chunk-HOCEGVGQ.js.map → chunk-CAF6WOK7.js.map} +0 -0
  884. /package/dist/{chunk-AUR7MRHA.js.map → chunk-CIE2BASH.js.map} +0 -0
  885. /package/dist/{chunk-X66MXMR5.js.map → chunk-CRI4OUV4.js.map} +0 -0
  886. /package/dist/{chunk-IUKGIB2Q.js.map → chunk-DLG74CNB.js.map} +0 -0
  887. /package/dist/{chunk-YBFOBRTO.js.map → chunk-ERJ7FU55.js.map} +0 -0
  888. /package/dist/{chunk-VJ3NQK4K.js.map → chunk-EVVGJDRQ.js.map} +0 -0
  889. /package/dist/{chunk-NSZ6J5DF.js.map → chunk-EXK7QRWF.js.map} +0 -0
  890. /package/dist/{chunk-5SAZMBW7.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
  891. /package/dist/{chunk-OQAODTYR.js.map → chunk-F64IRYG3.js.map} +0 -0
  892. /package/dist/{chunk-Q2KVKTC2.js.map → chunk-FHS2HQSH.js.map} +0 -0
  893. /package/dist/{chunk-Y2OCKFZ3.js.map → chunk-GKEWXIV5.js.map} +0 -0
  894. /package/dist/{chunk-NUEFXLZU.js.map → chunk-GTGPO5KW.js.map} +0 -0
  895. /package/dist/{chunk-XQ7UYPVN.js.map → chunk-HB3RFQSC.js.map} +0 -0
  896. /package/dist/{chunk-FC3XK5JT.js.map → chunk-I6GALP6E.js.map} +0 -0
  897. /package/dist/{chunk-LEOXZY36.js.map → chunk-IL6POWCW.js.map} +0 -0
  898. /package/dist/{chunk-GX2BYNCT.js.map → chunk-IU6SNYX6.js.map} +0 -0
  899. /package/dist/{chunk-6CU3FN74.js.map → chunk-J2ZX2XUV.js.map} +0 -0
  900. /package/dist/{chunk-6MWUANRF.js.map → chunk-JKJOGPZN.js.map} +0 -0
  901. /package/dist/{chunk-PEDZFFKW.js.map → chunk-JZUV47FZ.js.map} +0 -0
  902. /package/dist/{chunk-5TZZUL5X.js.map → chunk-K5IMOGHB.js.map} +0 -0
  903. /package/dist/{chunk-7IZQTCTR.js.map → chunk-LASZKVMO.js.map} +0 -0
  904. /package/dist/{chunk-NNWK3PSY.js.map → chunk-NR5LT5RY.js.map} +0 -0
  905. /package/dist/{chunk-NYVQCZ54.js.map → chunk-NWSGI5C7.js.map} +0 -0
  906. /package/dist/{chunk-MSVY7ULZ.js.map → chunk-Q5VNKNE5.js.map} +0 -0
  907. /package/dist/{chunk-2HVUKRNE.js.map → chunk-QLWMEXCT.js.map} +0 -0
  908. /package/dist/{chunk-KYC4LIEU.js.map → chunk-QRB7NAOJ.js.map} +0 -0
  909. /package/dist/{chunk-6ULCYCMU.js.map → chunk-R4ROFEYC.js.map} +0 -0
  910. /package/dist/{chunk-KBF5GSGX.js.map → chunk-RIX4V2TB.js.map} +0 -0
  911. /package/dist/{chunk-CTSFKDGA.js.map → chunk-RYCTDFUX.js.map} +0 -0
  912. /package/dist/{chunk-S6AQXDN4.js.map → chunk-RZ5SVOYR.js.map} +0 -0
  913. /package/dist/{chunk-A4MAD6PO.js.map → chunk-SLFHQTTW.js.map} +0 -0
  914. /package/dist/{chunk-AYGZMQP5.js.map → chunk-T2FFWNPK.js.map} +0 -0
  915. /package/dist/{chunk-CWCCYH34.js.map → chunk-UNFPPVNI.js.map} +0 -0
  916. /package/dist/{chunk-M5I354EE.js.map → chunk-VLFCJYTL.js.map} +0 -0
  917. /package/dist/{chunk-WVCQ75OK.js.map → chunk-VN3DBQAU.js.map} +0 -0
  918. /package/dist/{chunk-KXKLKJW4.js.map → chunk-VZRODIM3.js.map} +0 -0
  919. /package/dist/{chunk-HBTT7YQX.js.map → chunk-W22IKJE2.js.map} +0 -0
  920. /package/dist/{chunk-KNXN47MO.js.map → chunk-X3YYQWOQ.js.map} +0 -0
  921. /package/dist/{chunk-DFIBOSOQ.js.map → chunk-YFXZEAYK.js.map} +0 -0
  922. /package/dist/{chunk-ICV32FPK.js.map → chunk-ZAJAVEXY.js.map} +0 -0
  923. /package/dist/{chunk-MK2BSS44.js.map → chunk-ZICD77GM.js.map} +0 -0
  924. /package/dist/{chunk-KWLD2D75.js.map → chunk-ZJ2AK4V7.js.map} +0 -0
  925. /package/dist/{chunk-KBBWY46Y.js.map → chunk-ZUODRVHY.js.map} +0 -0
  926. /package/dist/{api-HV4PDUWF.js.map → collection-facade-TLWIPI76.js.map} +0 -0
  927. /package/dist/{chunk-BGIZAFY7.js.map → computed-ZIQTYTDI.js.map} +0 -0
  928. /package/dist/{dead-filter-VNA4M3GP.js.map → dead-filter-ESOBZZP5.js.map} +0 -0
  929. /package/dist/{chunk-K2WCO3NX.js.map → delegation-W7ZV2322.js.map} +0 -0
  930. /package/dist/{collection-facade-3RAXG2OU.js.map → derive-H2BJTLUI.js.map} +0 -0
  931. /package/dist/{computed-R62HGCO4.js.map → enclave-AP3I5W7O.js.map} +0 -0
  932. /package/dist/{delegation-ZKII5UBI.js.map → executor-KGWTNEQD.js.map} +0 -0
  933. /package/dist/{derive-5D2C3WG4.js.map → executor-OVEXR6RT.js.map} +0 -0
  934. /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
  935. /package/dist/{enclave-EUBEJGPG.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
  936. /package/dist/{executor-IL7SRNUZ.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
  937. /package/dist/{fanout-sidecar-CI5BCMQM.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
  938. /package/dist/{executor-OUA2Y6YC.js.map → find-N6345CNT.js.map} +0 -0
  939. /package/dist/{executor-WAEI6PDV.js.map → issue-5OKB6I2R.js.map} +0 -0
  940. /package/dist/{export-accessible-O55RKAGC.js.map → ledger-GFBKVPV4.js.map} +0 -0
  941. /package/dist/{extract-partition-VBGCBA6Q.js.map → liberate-3VDOT4KO.js.map} +0 -0
  942. /package/dist/{find-FISGUWSK.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
  943. /package/dist/{issue-EQAWIYFQ.js.map → noydb-ZCJOYBDI.js.map} +0 -0
  944. /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
  945. /package/dist/{ledger-AJA2SR3C.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
  946. /package/dist/{liberate-SEGR4JLY.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
  947. /package/dist/{link-set-YBAC2DQT.js.map → register-VAHONCID.js.map} +0 -0
  948. /package/dist/{noydb-AMEOU456.js.map → registry-7MLVD3VO.js.map} +0 -0
  949. /package/dist/{policy-SDGRWVIL.js.map → registry-EPKPD5SM.js.map} +0 -0
  950. /package/dist/{public-envelope-J5PLQOW2.js.map → registry-P5T7PS2U.js.map} +0 -0
  951. /package/dist/{read-only-facade-UCYNRE56.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
  952. /package/dist/{register-OVJKW7BS.js.map → revoke-FDRD6GRW.js.map} +0 -0
  953. /package/dist/{registry-5RJSK5AJ.js.map → signer-MUWEIUI6.js.map} +0 -0
  954. /package/dist/{registry-DQRNTWRL.js.map → stale-OSQ7J3AA.js.map} +0 -0
  955. /package/dist/{registry-LTGLERS7.js.map → storage-MVFCGEQE.js.map} +0 -0
  956. /package/dist/{store-coordination-provider-WKGAE2WI.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
  957. /package/dist/{walk-76UCFXYV.js.map → walk-SVNDIZ62.js.map} +0 -0
  958. /package/dist/{request-withdrawal-27O77D2V.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
@@ -0,0 +1,394 @@
1
+ /**
2
+ * Hierarchical access — the collection-level tier operations
3
+ * (`putAtTier` / `getAtTier` / `listAtTier` / `elevate` / `demote`).
4
+ *
5
+ * A collection opted into `{ tiers: [...] }` stamps `_tier: N` on each envelope
6
+ * and encrypts its body under the tier-N DEK. These helpers are the read/write
7
+ * surface for that scheme: write at a tier, read with tier-aware visibility
8
+ * (invisibility vs. ghost), and move a record up (`elevate`) or down (`demote`)
9
+ * the tier ladder by re-wrapping its body key.
10
+ *
11
+ * Each function takes a small {@link TiersContext} (the exact `this.*` the
12
+ * moving methods touched) instead of `this`, mirroring the `record-keys/`
13
+ * siblings. Behaviour is byte-identical to the inline code it replaced.
14
+ *
15
+ * The crux is `cekCache`: `elevate`/`demote`/`getAtTier` write the SAME `Lru`
16
+ * reference `Collection` owns (never a copy) so a per-record CEK re-wrap stays
17
+ * synchronous with the cache the kernel's write/read path also mutates. The
18
+ * cross-tier event sink stays collection-resident and is reached via the
19
+ * `emitCrossTierEvent` callback.
20
+ *
21
+ * Internal service — not exported as a `@noy-db/hub/*` subpath.
22
+ */
23
+ export { withTiers } from './active.js';
24
+ export { NO_TIERS, type TiersStrategy } from './strategy.js';
25
+ export { TiersNotEnabledError } from '../../kernel/errors.js';
26
+ import { type RecordCodec, type EnclaveKey, type SealedShredSlot } from '../../kernel/enclave/index.js';
27
+ import type { UnlockedKeyring } from '../../with-party/team/keyring.js';
28
+ import type { Lru } from '../../kernel/cache/index.js';
29
+ import type { BlobFieldsConfig } from '../../with-shape/blobs/blob-compaction.js';
30
+ import { type NoydbStore, type EncryptedEnvelope, type GhostRecord, type TierMode, type CrossTierAccessEvent } from '../../kernel/types.js';
31
+ /** Everything the moving tier methods touched on `this.*`, as a flat context. */
32
+ export interface TiersContext<T> {
33
+ /** Collection name — the crypto AAD scope and tier-DEK key prefix. */
34
+ readonly name: string;
35
+ /** Vault namespace the records live under. */
36
+ readonly vault: string;
37
+ /** The ciphertext store. */
38
+ readonly adapter: NoydbStore;
39
+ /** The caller's unlocked keyring (tier-DEK holdings + role + userId). */
40
+ readonly keyring: UnlockedKeyring;
41
+ /** The record codec — decrypts a tier-0 envelope to T. */
42
+ readonly codec: RecordCodec<T>;
43
+ /**
44
+ * The collection's per-record CEK cache (SHARED reference, not a copy).
45
+ * `elevate`/`demote`/`getAtTier` re-wrap a record's CEK and `set` it here so
46
+ * the move stays synchronous with the cache the kernel's read/write path
47
+ * owns. `null` → no caching.
48
+ */
49
+ readonly cekCache: Lru<string, EnclaveKey> | null;
50
+ /**
51
+ * Sync the collection's decoded-record cache after a tier move rewraps the
52
+ * envelope (#691). The lazy LRU is evicted on EVERY call — it is never
53
+ * re-seeded, since a lazy `#getRaw` miss refetches and decodes the fresh
54
+ * envelope via its adapter fallback (a stale LRU entry after a tier-0
55
+ * `putAtTier` overwrite was the #702 lazy-mode gap). `null` → also evict
56
+ * the eager cache entry; an `entry` → set the eager cache to the given
57
+ * decoded record/version (used by `demote()` landing back at tier 0 and
58
+ * `putAtTier`'s tier-0 write, #702 — the record is tier-0, so it must stay
59
+ * plain-`get()`-readable in-session).
60
+ */
61
+ syncCache(id: string, entry: {
62
+ record: T;
63
+ version: number;
64
+ } | null): void;
65
+ /**
66
+ * Sync the collection's indexes after a tier move rewraps the envelope
67
+ * (#709). Persisted `_idx/<field>/<recordId>` side-cars hold the indexed
68
+ * field's PLAINTEXT value and are always encrypted under the tier-0 DEK,
69
+ * whatever the record's own tier — the same leak class `forget()` fixed
70
+ * via `purgePersistedIndexes` ("forget() crypto-shreds the body but keeps
71
+ * the collection DEK, under which these side-cars are encrypted — so
72
+ * without this they leave the indexed field VALUES readable"). `null` →
73
+ * the record just left tier 0: purge its persisted side-cars and drop its
74
+ * in-memory index entries. A record → it is tier-0 again: (re)build its
75
+ * entries from that record. Call this BEFORE {@link syncCache} — the
76
+ * implementation reads the pre-write cached value as "previous" to clean
77
+ * up stale index buckets, so it must run while that entry is still live.
78
+ * `version` stamps a rebuilt side-car's own envelope version — every
79
+ * caller has one in scope (the envelope it just wrote), including the
80
+ * purge (`null`) branches, which pass it along even though it's ignored
81
+ * there (#720: keeps the parameter honestly required, no dead default).
82
+ * `priorEnvelope` (#720) — the RAW envelope read BEFORE this call's own
83
+ * overwrite (already in scope as `existing`/`envelope` at every record-
84
+ * branch call site), so a lazy same-tier value change (a `putAtTier(0)`
85
+ * dropping an indexed field, a `demote(0)` off an elevated record) can
86
+ * still be tier-gate-decoded as "previous" once the live envelope itself
87
+ * has already moved past it. The `null`-record branches never pass one —
88
+ * see the implementation's doc comment for why they don't need to.
89
+ */
90
+ syncIndexes(id: string, record: T | null, version: number, priorEnvelope?: EncryptedEnvelope): Promise<void>;
91
+ /** Sync the collection's SEARCH artifacts after a tier move (#721). Both the
92
+ * lexical `_ftindex` blob and the `_vec/<id>` embedding are encrypted under
93
+ * the tier-0 DEK and hold the record's derived plaintext (full field text /
94
+ * a text-invertible vector), so leaving them means elevation never hid what
95
+ * the record was searchable by — the `forget()` precedent, unapplied to
96
+ * elevate. `null` → the record left tier 0: purge its `_vec`, and
97
+ * invalidate the `_ftindex` blob (the cache-driven rebuild then excludes
98
+ * it). A record → it is tier-0 again: re-embed it, and invalidate
99
+ * `_ftindex` (rebuild includes it). No-op fast when the collection has no
100
+ * search. */
101
+ syncSearch(id: string, record: T | null, version?: number): Promise<void>;
102
+ /**
103
+ * Sync a record's `_history` snapshots after a tier move rewraps the live
104
+ * envelope (#712, at-rest hardening). Each snapshot carries its own key
105
+ * material (a direct DEK wrap, or a per-record `_cek` itself wrapped under
106
+ * the tier DEK) — `elevate()`'s live-body rewrap moves only the live
107
+ * envelope, leaving prior versions decryptable at rest under the tier the
108
+ * record has moved away from (the same leak class `forget()`'s
109
+ * `tombstoneHistory` closed for erasure). `fromDek`/`toDek` are the SAME
110
+ * DEKs the caller already resolved for the live rewrap — reuse them, don't
111
+ * recompute. No-op when the strategy is `NO_HISTORY`.
112
+ */
113
+ syncHistory(id: string, fromDek: EnclaveKey, toDek: EnclaveKey): Promise<void>;
114
+ /**
115
+ * Save a raw pre-move envelope as a `_history` snapshot (#728). Tier moves
116
+ * (`putAtTier`/`elevate`/`demote`) bump `_v` and overwrite the live
117
+ * envelope without ever snapshotting the version that existed just before
118
+ * the move — so `history()` silently lost it. The caller (`tiers/index.ts`)
119
+ * builds `envelope` by reusing the SAME `rewrapBodyToDek(envelope, fromDek,
120
+ * toDek)` result it already computed for the live write, so the snapshot
121
+ * lands wrapped under the DESTINATION tier's DEK — never `ctx.codec.
122
+ * encryptRecord`, which always resolves the tier-0 DEK and would leak the
123
+ * pre-move body whenever `fromTier > 0`. No-op when history is disabled
124
+ * (folds the `historyConfig.enabled` gate so `tiers/index.ts` stays simple).
125
+ */
126
+ saveHistorySnapshot(id: string, envelope: EncryptedEnvelope): Promise<void>;
127
+ /**
128
+ * `true` iff a real history strategy is wired (not `NO_HISTORY`) AND not
129
+ * explicitly disabled via `historyConfig.enabled`. `putAtTier` checks this
130
+ * BEFORE decrypting `existing` to build a snapshot (#728, #737 regression
131
+ * fix) — unlike elevate/demote, which reuse a `body` rewrap their live
132
+ * write needs unconditionally, putAtTier's live write never decrypts the
133
+ * prior envelope, so building a snapshot is the ONLY reason it would
134
+ * touch (and potentially throw decrypting) `existing`'s ciphertext. A
135
+ * derivation-free, history-disabled collection must not pay that decode —
136
+ * or risk it, on a corrupted/inaccessible prior body — same law
137
+ * `hasDerivedOutputs` already enforces for the derived-outputs decode.
138
+ */
139
+ readonly historyEnabled: boolean;
140
+ /**
141
+ * Rehome a record's blob attachments after a tier move (#724 Arc 10 Task
142
+ * 2, at-rest hardening). A blob's home tier is its owning record's tier —
143
+ * the `_blob` DEK is tier-scoped (`dekKey('_blob', tier)`), so a solo-
144
+ * owned blob's content CEK must move with the record or it stays
145
+ * tier-0-unwrappable at rest even once the live body has moved (the same
146
+ * leak class `syncHistory` closes for `_history` snapshots). Delegates to
147
+ * `BlobSet.rehomeForTier`; no-op fast when the collection has no blob
148
+ * fields. Order-independent with the other sync hooks — touches only
149
+ * blob side structures, not this collection's own cache/indexes.
150
+ */
151
+ syncBlobs(id: string, fromTier: number, toTier: number): Promise<void>;
152
+ /**
153
+ * Purge a record's tier-0-era plaintext ledger deltas after a tier move
154
+ * lands it above tier 0 (#729). The audit ledger is a flat, vault-wide,
155
+ * hash-chained log — a record's reverse-JSON-Patch deltas in
156
+ * `_ledger_deltas` are encrypted under one collection-wide `_ledger` DEK
157
+ * (not the record's own tier DEK), so `elevate()`/`putAtTier()`'s live-body
158
+ * rewrap never moves them: they stay readable at rest to any tier-0
159
+ * caller, the same leak class `syncHistory` closed for `_history`
160
+ * snapshots. Chain-safe: `verify()` reads only `_ledger` entry fields
161
+ * (including `deltaHash`, which lives on the entry, not the deleted delta
162
+ * row), never `_ledger_deltas`, so a purge cannot break it.
163
+ * **Irreversible** — the deleted plaintext cannot be restored by
164
+ * `demote()`. **Metadata-retained** — the `_ledger` entries (that the
165
+ * record was mutated, at which version/timestamp/actor) are untouched;
166
+ * only the delta *content* is purged. No-op when the collection has no
167
+ * ledger (`withHistory()` not enabled).
168
+ */
169
+ syncLedger(id: string): Promise<void>;
170
+ /**
171
+ * Sync a record's derived outputs (materialized-view rows, rollup
172
+ * contributions, `withDerivation` outputs) after a tier move (#722).
173
+ * Those outputs are computed from this record and written to OTHER
174
+ * (output) collections via a plain `put` at tier 0 — `elevate()`'s live-
175
+ * body rewrap moves only the source envelope, so the output rows keep
176
+ * holding the source's tier-0-era plaintext, the same leak class
177
+ * `syncSearch`/`syncIndexes` closed for THIS collection's own artifacts.
178
+ * `elevated` (landing tier > 0) reuses the SAME onDelete fanout
179
+ * `forgetDerivedFanout` drives for `forget()` (`kernel/via/dispatch.ts`)
180
+ * — minus its `'ref'` cascade edge (elevate/demote never erase a
181
+ * *different* record) — to recompute this record's derived outputs as
182
+ * REMOVED. Recompute is tier-safe: the fanout's own source scan reads
183
+ * the elevated-excluding cache (#701/#709/#712), so it naturally omits
184
+ * the now-elevated record instead of re-embedding its plaintext. Landing
185
+ * back at tier 0 (`elevated === false`) is the reverse (Task 2, #722):
186
+ * `syncDerivedOutputs` instead runs the ordinary local-write add-
187
+ * dispatchers (`dispatchDerivations`/`dispatchMaterializedViews`, the
188
+ * same ones a plain `put()` fires) to restore the contribution —
189
+ * reversible, since the source's plaintext survives the elevate/demote
190
+ * rewrap round-trip. `record` is the decoded source record (PRE-move on
191
+ * the remove side, POST-move on the add side); only the rollup edge
192
+ * consumes it on remove, both add-dispatchers require it on add; `null`
193
+ * (tombstone/delete-marker) skips both. `version` stamps the add-
194
+ * dispatchers' `_derivedFrom.sourceVersion` metadata — reuses the version
195
+ * the tier op already has, no re-read; unused on the remove side. No-op
196
+ * fast when the collection has no MV/derivation source — each dispatcher
197
+ * below checks its own source before doing any work.
198
+ */
199
+ syncDerived(id: string, record: T | null, elevated: boolean, version?: number): Promise<void>;
200
+ /**
201
+ * `true` iff the collection has a materialized-view or derivation source
202
+ * attached. Gates the {@link syncDerived} pre-move decode on the remove
203
+ * direction (`elevate()`, `putAtTier(tier>0)`, `demote()`'s intermediate-
204
+ * tier branch): those sites decode the record SOLELY to feed
205
+ * `syncDerived(..., true)`, whose dispatchers no-op immediately when the
206
+ * collection has no MV/derivation source — so a no-derivation collection
207
+ * would otherwise pay a full record-body decrypt on every tier move for
208
+ * nothing (#722 perf regression). `false` short-circuits the decode to
209
+ * `null`, which `syncDerivedOutputs` already treats safely.
210
+ */
211
+ readonly hasDerivedOutputs: boolean;
212
+ /** Emit `_source`/`_sourceTs` provenance fields when a source is supplied. */
213
+ readonly provenance: boolean;
214
+ /** Declared tiers, or null when the feature is off. */
215
+ readonly tiers: ReadonlySet<number> | null;
216
+ /** Above-tier read visibility mode (`'invisibility'` | `'ghost'`). */
217
+ readonly tierMode: TierMode;
218
+ /** Resolve a tier DEK by its `dekKey(name, tier)`. */
219
+ getDEK(key: string): Promise<EnclaveKey>;
220
+ /** Fire a cross-tier access event (sink stays collection-resident). */
221
+ emitCrossTierEvent(event: CrossTierAccessEvent): void;
222
+ /**
223
+ * Register this record's ref in the encrypted `_subject_index` (#766).
224
+ * `putAtTier`'s raw `ctx.adapter.put` bypasses `Collection.put()`'s write-
225
+ * hook pipeline — the `onAfterWrite` hook that normally does this — so a
226
+ * record whose FIRST persistence is `putAtTier` (sensitive from birth, a
227
+ * documented legitimate use) would otherwise never enter the index and
228
+ * stay unreachable by `vault.forget()`. Idempotent (safe on every call,
229
+ * including a repeat write of an already-registered record) and a no-op
230
+ * when the collection declares no forget-subject field.
231
+ */
232
+ addSubjectRef(id: string, record: T): Promise<void>;
233
+ }
234
+ export declare function assertTiersEnabled<T>(ctx: TiersContext<T>): void;
235
+ export declare function assertDeclaredTier<T>(ctx: TiersContext<T>, tier: number): void;
236
+ /**
237
+ * Tier-composition guard (#724 / Arc 7 of the tier-invisibility campaign).
238
+ *
239
+ * Refuses `tiers` declared together with a derived-artifact feature whose
240
+ * crypto has not yet been made tier-aware — i.e. a feature `elevate()` /
241
+ * `demote()` does not re-key when a record moves tiers, so an elevated
242
+ * record's data for that feature would stay readable at tier 0.
243
+ *
244
+ * **Status:** the original call site (`Collection` constructor, beside
245
+ * `buildUniqueConstraintSet`) was removed by Arc 10 Task 1 (#724) — the
246
+ * `tiers + blobFields` refusal below was superseded by a runtime read gate
247
+ * on `collection.blob(id)` (`with-shape/blobs/blob-set.ts`), so this
248
+ * function currently has no caller. Relocated here from
249
+ * `with-lookup/indexing/unique-constraints.ts` (#733) so the tier-domain
250
+ * guard lives in the tier domain, rather than an indexing file it only
251
+ * borrowed for a grandfathered import specifier.
252
+ *
253
+ * ## #724 verified: `tiers + blobFields` leaks
254
+ *
255
+ * `collection.blob(id)` (`Collection.blob()`) never checks the live
256
+ * record's tier before returning a `BlobSet` handle, and `BlobSet`'s crypto
257
+ * is entirely orthogonal to the tier ladder:
258
+ * - the slot map (`_blob_slots_{collection}/{id}`) is encrypted under the
259
+ * collection's TIER-0 DEK (`getDEK(name)` ≡ `dekKey(name, 0)` — see
260
+ * `dekKey` in `with-party/team/tiers.ts`), never a tier-N DEK;
261
+ * - chunk content (`_blob_index` / `_blob_chunks`) is encrypted under the
262
+ * vault-shared `_blob` DEK (`BLOB_COLLECTION`), which has no tier
263
+ * dimension at all.
264
+ * `elevate()`/`demote()` (this file) rewrap only the live record body,
265
+ * `_history` snapshots (#712), and index side-cars — blob slots and chunks
266
+ * are untouched. A caller whose keyring never held the record's elevated
267
+ * tier DEK can still open `collection.blob(id).get(slot)` and read full
268
+ * plaintext, even though `collection.get(id)` correctly reports the same
269
+ * record as invisible. See `__tests__/tier-composition-guard.test.ts` for
270
+ * the reproduction.
271
+ *
272
+ * ## Safe today — no check needed here
273
+ *
274
+ * Field indexes, search (`textIndexes`/`embeddings`), `withHistory`
275
+ * (snapshot keys are rewrapped by `elevate()`/`demote()`, #712), and the
276
+ * decoded-record cache (evicted on tier moves) are already tier-safe. They
277
+ * are not enumerated below; only known-unsafe features are refused, so any
278
+ * combination not named here passes silently by default.
279
+ *
280
+ * ## Deliberately NOT handled here
281
+ *
282
+ * - `ledger` — `withHistory` threads a ledger writer onto every tiered
283
+ * collection by default in shipped usage; refusing `tiers + ledger` would
284
+ * break that default. A ledger-specific tier-rekey handler (rewrap ledger
285
+ * entries, or scope ledger visibility to tier) is a separate arc.
286
+ * - materialized-view (MV) output — an MV's fanout spec lives on the
287
+ * SOURCE collection, not on the MV collection's own config, so it is not
288
+ * visible at `vault.collection()` registration time and this guard cannot
289
+ * detect it structurally.
290
+ */
291
+ export declare function assertTierComposition(collectionName: string, cfg: {
292
+ readonly tiers: boolean;
293
+ readonly blobFields: BlobFieldsConfig | undefined;
294
+ }): void;
295
+ /**
296
+ * Structural surface {@link syncDerivedOutputs} needs from the owning
297
+ * collection — the SAME onDelete dispatchers `forgetDerivedFanout` already
298
+ * drives (`kernel/via/dispatch.ts`), reused as-is (#722). Narrower than
299
+ * `Collection<T>` (avoids an import cycle: collection.ts constructs
300
+ * `TiersContext` FROM `this`, which already satisfies this shape
301
+ * structurally — no cast needed at the `tiersContext()` call site).
302
+ */
303
+ export interface DerivedOutputsHost<T> {
304
+ dispatchMaterializedViewsOnDelete(id: string): Promise<{
305
+ deleted: number;
306
+ residueUndecodable: string[];
307
+ residueDeclined: string[];
308
+ }>;
309
+ dispatchArrayDerivationsOnDelete(id: string, eraseRecordShapeToo?: boolean): Promise<number>;
310
+ dispatchRollupsOnDelete(id: string, deleted: T): Promise<unknown>;
311
+ /** Task 2 (#722) add-direction: the same local-write dispatchers an ordinary `put()` fires. */
312
+ dispatchMaterializedViews(id: string, record: T): Promise<void>;
313
+ dispatchDerivations(id: string, record: T, version: number): Promise<void>;
314
+ }
315
+ /**
316
+ * The {@link TiersContext.syncDerived} implementation collection.ts's
317
+ * `tiersContext()` binds `this` into (#722). See that field's doc comment
318
+ * for the design; `host` is `this` — every dispatcher below is a public
319
+ * Collection method, already self-guarding (no-op) when the collection has
320
+ * no materialized-view/derivation source, so no separate fast-path check is
321
+ * needed here.
322
+ */
323
+ export declare function syncDerivedOutputs<T>(host: DerivedOutputsHost<T>, id: string, record: T | null, elevated: boolean, version?: number): Promise<void>;
324
+ /**
325
+ * tier-aware put. Encrypts the record with the collection's tier-N DEK and
326
+ * stamps `_tier: N` on the envelope. The caller's keyring must hold the tier-N
327
+ * DEK (directly, by delegation, or by virtue of being the grantor); otherwise
328
+ * throws `TierNotGrantedError`.
329
+ *
330
+ * accepts an optional `elevation` context. When present, the emitted cross-tier
331
+ * event is stamped with `authorization: 'elevation'`, the elevation's reason,
332
+ * and the caller's pre-elevation tier. `vault.elevate(...).collection().put`
333
+ * threads this through; direct `putAtTier` calls leave it undefined and fall
334
+ * back to the inherent-write event shape.
335
+ */
336
+ export declare function putAtTier<T>(ctx: TiersContext<T>, id: string, record: T, tier: number, opts?: {
337
+ elevation?: {
338
+ reason: string;
339
+ fromTier: number;
340
+ };
341
+ source?: string;
342
+ sourceTs?: string;
343
+ }): Promise<TierMoveResult>;
344
+ /**
345
+ * tier-aware get. When the stored record is at a tier the caller cannot
346
+ * decrypt:
347
+ * - `'invisibility'` mode (default) → returns `null`.
348
+ * - `'ghost'` mode → returns a `GhostRecord` placeholder with the tier and
349
+ * the record id (the record exists but contents are withheld).
350
+ *
351
+ * Fully-cleared reads return the plaintext record and fire a cross-tier event
352
+ * when `_tier > 0`.
353
+ */
354
+ export declare function getAtTier<T>(ctx: TiersContext<T>, id: string): Promise<T | GhostRecord | null>;
355
+ /**
356
+ * list ids grouped by the caller's readability. Returns only ids whose tier the
357
+ * caller can read. Above-tier ids are omitted in `'invisibility'` mode and
358
+ * included (with tier metadata) in `'ghost'` mode.
359
+ */
360
+ export declare function listAtTier<T>(ctx: TiersContext<T>): Promise<Array<{
361
+ id: string;
362
+ tier: number;
363
+ readable: boolean;
364
+ }>>;
365
+ /**
366
+ * Result of a completed `elevate()`/`demote()` (#764). The record move
367
+ * (put + indexes/cache/ledger/derived/history/blobs sync) always completes —
368
+ * `searchResidue: true` means only the search-index side (`_vec`/`_ftindex`)
369
+ * was left in a needs-retry state (a stuck `PersistedIndexCompensationError`),
370
+ * mirroring `forget()`'s `indexResidue` posture rather than aborting the move.
371
+ */
372
+ export interface TierMoveResult {
373
+ readonly searchResidue: boolean;
374
+ }
375
+ /**
376
+ * elevate a record to a higher tier. Re-encrypts with the target tier's DEK.
377
+ * The caller must hold DEKs for both the current tier (to decrypt) and the
378
+ * target tier (to re-encrypt). Stamps `_elevatedBy` with the caller id so
379
+ * `demote()` can check the reverse operation.
380
+ */
381
+ export declare function elevate<T>(ctx: TiersContext<T>, id: string, toTier: number): Promise<TierMoveResult>;
382
+ /**
383
+ * demote a record to a lower tier. Allowed only for the user who performed the
384
+ * last elevation or an owner.
385
+ */
386
+ export declare function demote<T>(ctx: TiersContext<T>, id: string, toTier: number): Promise<TierMoveResult>;
387
+ /**
388
+ * Classify a live envelope's `_sealed` slots for crypto-shred completeness
389
+ * (#M-1). Thin delegate to {@link RecordCodec.classifySealedShred}; surfaced
390
+ * here because `vault.ts` forget() reaches in via `collection._classifySealedShred`.
391
+ */
392
+ export declare function classifySealedShred<T>(ctx: TiersContext<T>, live: EncryptedEnvelope): Promise<{
393
+ readonly slots: readonly SealedShredSlot[];
394
+ }>;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Tiers capability strategy — the five on-demand collection-level tier
3
+ * operations the `Collection` routes through. The active engine
4
+ * ({@link withTiers}) dynamically imports the tier cores (keeping them out of
5
+ * the floor bundle); {@link NO_TIERS} throws. Collection always builds its
6
+ * per-call {@link TiersContext} and delegates here, so an un-opted-in caller
7
+ * hits `NO_TIERS`'s throw.
8
+ * @internal
9
+ */
10
+ import type { GhostRecord } from '../../kernel/types.js';
11
+ import type { TiersContext, TierMoveResult } from './index.js';
12
+ export type { TierMoveResult };
13
+ export interface TiersStrategy {
14
+ putAtTier<T>(ctx: TiersContext<T>, id: string, record: T, tier: number, opts?: {
15
+ elevation?: {
16
+ reason: string;
17
+ fromTier: number;
18
+ };
19
+ source?: string;
20
+ sourceTs?: string;
21
+ }): Promise<TierMoveResult>;
22
+ getAtTier<T>(ctx: TiersContext<T>, id: string): Promise<T | GhostRecord | null>;
23
+ listAtTier<T>(ctx: TiersContext<T>): Promise<Array<{
24
+ id: string;
25
+ tier: number;
26
+ readable: boolean;
27
+ }>>;
28
+ elevate<T>(ctx: TiersContext<T>, id: string, toTier: number): Promise<TierMoveResult>;
29
+ demote<T>(ctx: TiersContext<T>, id: string, toTier: number): Promise<TierMoveResult>;
30
+ }
31
+ /**
32
+ * No-op stub — the floor default. Every capability method throws
33
+ * {@link TiersNotEnabledError}; opt in with `tiersStrategy: withTiers()` in
34
+ * createNoydb. @internal
35
+ */
36
+ export declare const NO_TIERS: TiersStrategy;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Enable the cargo (partition extraction) capability.
3
+ * Pass to `createNoydb({ cargoStrategy: withCargo() })` to make the source-side
4
+ * `extractPartition(vault, ...)` free function live. The extraction crypto
5
+ * engine is dynamically imported here, so it stays out of the floor bundle
6
+ * until opted in. The recipient-side `adoptPartition` /
7
+ * `decryptExtractedPartition` free functions — and `diffVault` (shared
8
+ * import/merge infra) — are ungated and unaffected.
9
+ */
10
+ import type { CargoStrategy } from './strategy.js';
11
+ export declare function withCargo(): CargoStrategy;
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Partition adoption. Recipient side: verify an extracted bundle,
3
+ * validate the transfer key, import the re-keyed collections into a
4
+ * destination store, and record an `_meta/adoption` marker. The bundle
5
+ * stays UNOWNED after adoption — `createOwnerOnAdoptedPartition`
6
+ * mints the owner; the transfer seal is then destroyed.
7
+ *
8
+ * @module
9
+ */
10
+ import { type EnclaveKey } from '../kernel/enclave/index.js';
11
+ import type { NoydbStore } from '../kernel/types.js';
12
+ import type { SealingKeyProvider } from '../with-party/team/managed-passphrase.js';
13
+ import type { ShamirRecoveryProvider } from '../with-party/team/shamir-recovery-provider.js';
14
+ import type { RecoveryEnrollmentInput } from '../with-party/team/rotate-recover.js';
15
+ import type { TransferSealPayload } from '../with-pod/bundle.js';
16
+ /**
17
+ * Reverse of `sealDeks`. Imports the transfer key, decrypts the
18
+ * sealed `{ collection: base64(rawDEK) }` map (layout iv(12)‖ct‖tag), and
19
+ * re-imports each DEK as an AES-GCM key. Throws `TransferSealError` on a
20
+ * wrong key (AES-GCM auth-tag failure) or malformed payload.
21
+ */
22
+ export declare function unsealDeks(seal: TransferSealPayload, transferKey: Uint8Array): Promise<Map<string, EnclaveKey>>;
23
+ export interface AdoptPartitionOptions {
24
+ readonly transferKey: Uint8Array;
25
+ readonly destinationStore: NoydbStore;
26
+ readonly vaultName: string;
27
+ }
28
+ export interface AdoptPartitionResult {
29
+ readonly vaultName: string;
30
+ readonly needsOwner: true;
31
+ readonly sealId: string;
32
+ }
33
+ export declare function adoptPartition(bundleBytes: Uint8Array, opts: AdoptPartitionOptions): Promise<AdoptPartitionResult>;
34
+ export interface CreateOwnerResult {
35
+ readonly vaultName: string;
36
+ readonly userId: string;
37
+ }
38
+ /** Standard-mode owner: recipient supplies the passphrase. */
39
+ export interface CreateOwnerStandardOptions {
40
+ readonly userId: string;
41
+ readonly passphrase: string;
42
+ readonly transferKey: Uint8Array;
43
+ }
44
+ /**
45
+ * Managed-mode owner: the passphrase is minted + sealed under
46
+ * a `SealingKeyProvider` (e.g. an `at-*` OS keychain) so the partition
47
+ * auto-unlocks on the recipient's device. Managed mode mandates a strong
48
+ * (Shamir) recovery profile at creation, which needs the
49
+ * `shamirRecovery` provider injected.
50
+ */
51
+ export interface CreateOwnerManagedOptions {
52
+ readonly userId: string;
53
+ readonly passphraseMode: 'managed';
54
+ readonly sealingKey: SealingKeyProvider;
55
+ readonly recovery: ReadonlyArray<RecoveryEnrollmentInput>;
56
+ readonly shamirRecovery: ShamirRecoveryProvider;
57
+ readonly transferKey: Uint8Array;
58
+ }
59
+ export type CreateOwnerOptions = CreateOwnerStandardOptions | CreateOwnerManagedOptions;
60
+ /**
61
+ * Mint the first owner keyring on an adopted-but-unowned partition,
62
+ * then destroy the transfer seal.
63
+ *
64
+ * Standard mode: the recipient supplies a passphrase. Managed mode: the
65
+ * passphrase is minted + sealed under a `SealingKeyProvider` and a strong
66
+ * (Shamir) recovery profile is enrolled — orchestrated via the existing
67
+ * `openVaultAndEnrollRecovery` ceremony.
68
+ *
69
+ * Either way, reuses `createOwnerKeyring` to derive the KEK + write the base
70
+ * keyring, then wraps the partition's DEKs (recovered from the seal) under that
71
+ * KEK and re-persists the merged keyring file.
72
+ *
73
+ * Idempotent under retry: the seal is destroyed LAST (Stage D), after the
74
+ * keyring (Stage A), the ledger transition (Stage B), and — in managed mode —
75
+ * strong-recovery enrollment (Stage C). A failure in the fallible enrollment
76
+ * step leaves the seal intact, and re-running with the same `userId` +
77
+ * `transferKey` resumes from the first incomplete stage. (Multi-profile recovery
78
+ * arrays may re-enroll an already-enrolled profile on retry; managed mode's
79
+ * mandated single Shamir profile does not.)
80
+ */
81
+ export declare function createOwnerOnAdoptedPartition(store: NoydbStore, vaultName: string, opts: CreateOwnerOptions): Promise<CreateOwnerResult>;
@@ -0,0 +1,19 @@
1
+ /** One decrypted record from an extracted-partition compartment. */
2
+ export interface DecryptedRecord {
3
+ readonly id: string;
4
+ readonly record: Record<string, unknown>;
5
+ /** Source envelope write timestamp (ISO) — for last-write-wins merges. */
6
+ readonly ts: string;
7
+ /** Source envelope version. */
8
+ readonly version: number;
9
+ /** Provenance source id (FR-5). Present only when the source collection had provenance:true and a source was supplied on put. */
10
+ readonly source?: string;
11
+ /** ISO-8601 timestamp the provenance source was recorded (FR-5). */
12
+ readonly sourceTs?: string;
13
+ }
14
+ /**
15
+ * Decrypt every record of an extracted-partition bundle to plaintext,
16
+ * grouped by collection. Throws if the bundle isn't an
17
+ * extracted-partition or the transfer key is wrong.
18
+ */
19
+ export declare function decryptExtractedPartition(bundleBytes: Uint8Array, transferKey: Uint8Array): Promise<Record<string, DecryptedRecord[]>>;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Partition-extraction dry-run. Read-only preview of what an
3
+ * `extractPartition` would move: record counts, byte totals, and the
4
+ * timestamp span per collection — computed from raw encrypted
5
+ * envelopes WITHOUT decrypting them. Writes nothing, mutates nothing.
6
+ *
7
+ * @module
8
+ */
9
+ import type { Vault } from '../kernel/vault.js';
10
+ import { type WalkClosureOptions, type DanglingRefNotice } from './walk-closure.js';
11
+ export interface ExtractionPreview {
12
+ readonly totalRecords: number;
13
+ /** Sum of serialized encrypted-envelope sizes (bytes). */
14
+ readonly totalBytes: number;
15
+ readonly byCollection: ReadonlyArray<{
16
+ readonly name: string;
17
+ readonly recordCount: number;
18
+ readonly bytes: number;
19
+ /** Earliest envelope `_ts` in this collection (lexicographic). */
20
+ readonly oldestTs?: string;
21
+ readonly newestTs?: string;
22
+ }>;
23
+ readonly graph: {
24
+ readonly depth: number;
25
+ readonly cyclesDetected: boolean;
26
+ };
27
+ /** Records the walk reached but whose envelope couldn't be read. */
28
+ readonly inaccessible: ReadonlyArray<{
29
+ readonly collection: string;
30
+ readonly id: string;
31
+ }>;
32
+ /**
33
+ * #772: outbound FK edges whose referenced parent was excluded from the
34
+ * closure (missing, or tier-elevated and therefore invisible) — mirrors
35
+ * `ExtractPartitionResult.danglingRefs` (#759) so a preview/extract pair
36
+ * gives the SAME signal. A parent excluded this way never appears in
37
+ * `byCollection` at all; this is the only preview-time indicator.
38
+ */
39
+ readonly danglingRefs: ReadonlyArray<DanglingRefNotice>;
40
+ }
41
+ export declare function describeExtraction(vault: Vault, opts: WalkClosureOptions): Promise<ExtractionPreview>;