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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (898) hide show
  1. package/dist/aggregate/index.js +4 -4
  2. package/dist/api-3TH2GOFQ.js +20 -0
  3. package/dist/as/index.js +11 -11
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/backup-2WVBIVXW.js +225 -0
  6. package/dist/blobs/index.js +10 -10
  7. package/dist/broker/index.js +92 -0
  8. package/dist/broker/index.js.map +1 -0
  9. package/dist/bundle/index.js +20 -20
  10. package/dist/by/index.js +2 -2
  11. package/dist/cargo/index.js +30 -30
  12. package/dist/chunk-2MTRJCBI.js +75 -0
  13. package/dist/chunk-37WOJQWY.js +404 -0
  14. package/dist/chunk-3QSOFZQB.js +589 -0
  15. package/dist/chunk-44IL5G3W.js +99 -0
  16. package/dist/chunk-45QPICLE.js +69 -0
  17. package/dist/chunk-4BQXMCE5.js +164 -0
  18. package/dist/chunk-4GPE63GU.js +111 -0
  19. package/dist/chunk-4GPE63GU.js.map +1 -0
  20. package/dist/chunk-5HNX4OD4.js +30 -0
  21. package/dist/chunk-65VLRG3I.js +54 -0
  22. package/dist/chunk-6MA575R5.js +59 -0
  23. package/dist/chunk-6S7ENMRE.js +524 -0
  24. package/dist/chunk-6S7ENMRE.js.map +1 -0
  25. package/dist/chunk-7GAXFU2O.js +123 -0
  26. package/dist/chunk-7QLY64AD.js +202 -0
  27. package/dist/chunk-7ZOSHEVS.js +235 -0
  28. package/dist/chunk-AAIIDAUC.js +371 -0
  29. package/dist/chunk-AAIIDAUC.js.map +1 -0
  30. package/dist/chunk-AKEOHKMT.js +282 -0
  31. package/dist/chunk-AKEOHKMT.js.map +1 -0
  32. package/dist/chunk-APHLCXVC.js +124 -0
  33. package/dist/chunk-BDEMZD4F.js +129 -0
  34. package/dist/chunk-BDPAVYGJ.js +662 -0
  35. package/dist/chunk-BLUT46UP.js +42 -0
  36. package/dist/chunk-CCIR2OJH.js +778 -0
  37. package/dist/chunk-CXC3JLAQ.js +155 -0
  38. package/dist/chunk-CZMCOFEA.js +1221 -0
  39. package/dist/chunk-DIB2BOIH.js +164 -0
  40. package/dist/chunk-DJ7MRXNA.js +344 -0
  41. package/dist/chunk-DJ7MRXNA.js.map +1 -0
  42. package/dist/chunk-EHW5KTTA.js +150 -0
  43. package/dist/chunk-EHW5KTTA.js.map +1 -0
  44. package/dist/chunk-EIZ4YOG2.js +70 -0
  45. package/dist/chunk-EVHBK7BN.js +515 -0
  46. package/dist/chunk-EXGDL2UQ.js +74 -0
  47. package/dist/chunk-F3LGBRSV.js +453 -0
  48. package/dist/chunk-F44XWXOA.js +392 -0
  49. package/dist/chunk-FF7S3XDW.js +230 -0
  50. package/dist/chunk-FJTWLQV3.js +155 -0
  51. package/dist/chunk-FYNE4WLC.js +36 -0
  52. package/dist/chunk-FZCGIJEJ.js +1505 -0
  53. package/dist/chunk-FZCGIJEJ.js.map +1 -0
  54. package/dist/chunk-GL3JV5EV.js +130 -0
  55. package/dist/chunk-GXLZXD2W.js +29 -0
  56. package/dist/chunk-HA6ZQWA2.js +1056 -0
  57. package/dist/chunk-HA6ZQWA2.js.map +1 -0
  58. package/dist/chunk-HBBZWEC5.js +686 -0
  59. package/dist/chunk-HG76BZ6G.js +188 -0
  60. package/dist/chunk-HGAB325C.js +38 -0
  61. package/dist/chunk-HIOLCOK3.js +30 -0
  62. package/dist/chunk-HIOLCOK3.js.map +1 -0
  63. package/dist/chunk-HK4XTXO4.js +49 -0
  64. package/dist/chunk-HYG32HCM.js +14 -0
  65. package/dist/chunk-ILF5GARW.js +135 -0
  66. package/dist/chunk-INBQ43DI.js +382 -0
  67. package/dist/chunk-IQIVD7TP.js +247 -0
  68. package/dist/chunk-J3JIYFYL.js +45 -0
  69. package/dist/chunk-JC75UBMT.js +32 -0
  70. package/dist/chunk-JC75UBMT.js.map +1 -0
  71. package/dist/chunk-JGUZMC3I.js +150 -0
  72. package/dist/chunk-JRKE5MAZ.js +80 -0
  73. package/dist/chunk-K2DLLK34.js +255 -0
  74. package/dist/chunk-KKYEZCQG.js +34 -0
  75. package/dist/chunk-NAR6IDKH.js +54 -0
  76. package/dist/chunk-NEYKOESM.js +117 -0
  77. package/dist/chunk-NM3IFKBL.js +29 -0
  78. package/dist/chunk-NRYNRSGV.js +99 -0
  79. package/dist/chunk-NT2ZO4KI.js +59 -0
  80. package/dist/chunk-P2LJI6JE.js +94 -0
  81. package/dist/chunk-PH7G7ZI7.js +823 -0
  82. package/dist/chunk-PN5332SU.js +209 -0
  83. package/dist/chunk-QF5LGMSV.js +45 -0
  84. package/dist/chunk-QG5RQQBO.js +367 -0
  85. package/dist/chunk-QYPDYN23.js +23 -0
  86. package/dist/chunk-R3NHNVS5.js +478 -0
  87. package/dist/chunk-R3NHNVS5.js.map +1 -0
  88. package/dist/chunk-RNXJ2VO6.js +280 -0
  89. package/dist/chunk-RXTMLYJS.js +97 -0
  90. package/dist/chunk-S2OWPVSO.js +30 -0
  91. package/dist/chunk-S7TAPIRS.js +205 -0
  92. package/dist/chunk-SAL5X5OK.js +40 -0
  93. package/dist/chunk-SGJGWBSC.js +85 -0
  94. package/dist/chunk-SIAIYP6G.js +50 -0
  95. package/dist/chunk-SXPCZ6LL.js +1697 -0
  96. package/dist/chunk-SXPCZ6LL.js.map +1 -0
  97. package/dist/chunk-TBNF5DV5.js +261 -0
  98. package/dist/chunk-TVOHSPVK.js +21 -0
  99. package/dist/chunk-TVS6BUUR.js +41 -0
  100. package/dist/chunk-UMC5QZTX.js +86 -0
  101. package/dist/chunk-US34HTOI.js +367 -0
  102. package/dist/chunk-VCUQR6ZL.js +621 -0
  103. package/dist/chunk-VXZNSPJM.js +957 -0
  104. package/dist/chunk-VXZNSPJM.js.map +1 -0
  105. package/dist/chunk-WEHIQYQH.js +71 -0
  106. package/dist/chunk-WHQHTNT7.js +265 -0
  107. package/dist/chunk-X6Y5MXTH.js +74 -0
  108. package/dist/chunk-XJ47GS53.js +291 -0
  109. package/dist/chunk-XS6DLN67.js +95 -0
  110. package/dist/chunk-Y5TWPBNW.js +91 -0
  111. package/dist/chunk-YCXKFB7J.js +14181 -0
  112. package/dist/chunk-YCXKFB7J.js.map +1 -0
  113. package/dist/chunk-ZHOJOT6S.js +36 -0
  114. package/dist/chunk-ZL6PRULX.js +167 -0
  115. package/dist/chunk-ZL6PRULX.js.map +1 -0
  116. package/dist/classified/index.js +5 -5
  117. package/dist/classified-marker-M7K3OJPM.js +28 -0
  118. package/dist/classified-marker-M7K3OJPM.js.map +1 -0
  119. package/dist/collection-facade-DWA735G2.js +39 -0
  120. package/dist/computed-ORCGM5JE.js +11 -0
  121. package/dist/consent/index.js +9 -9
  122. package/dist/crdt/index.js +1 -1
  123. package/dist/dead-filter-OV5FGKOG.js +28 -0
  124. package/dist/delegation-YVSHMIZZ.js +25 -0
  125. package/dist/derivations/index.js +12 -12
  126. package/dist/derive-BUO555L5.js +21 -0
  127. package/dist/enclave-XXFUKJC6.js +135 -0
  128. package/dist/executor-6OCCE5VM.js +25 -0
  129. package/dist/executor-JFVAJY42.js +9 -0
  130. package/dist/executor-UPSH5O3F.js +9 -0
  131. package/dist/export-accessible-L4A2QZA5.js +23 -0
  132. package/dist/extract-partition-ZHQ4RGGM.js +36 -0
  133. package/dist/fanout-sidecar-IO2KDUWV.js +74 -0
  134. package/dist/find-ZFZDZQ2U.js +11 -0
  135. package/dist/forget/index.js +10 -10
  136. package/dist/forget/index.js.map +1 -1
  137. package/dist/guards/index.js +3 -3
  138. package/dist/history/index.js +11 -11
  139. package/dist/i18n/index.js +15 -15
  140. package/dist/index.d.ts +303 -1492
  141. package/dist/index.js +172 -171
  142. package/dist/index.js.map +1 -1
  143. package/dist/indexing/index.js +5 -5
  144. package/dist/indexing/index.js.map +1 -1
  145. package/dist/issue-OG4V23SQ.js +19 -0
  146. package/dist/kernel/best-effort-revert.d.ts +52 -0
  147. package/dist/kernel/cache/index.d.ts +10 -0
  148. package/dist/kernel/cache/lru.d.ts +97 -0
  149. package/dist/kernel/cache/policy.d.ts +32 -0
  150. package/dist/kernel/collection-config.d.ts +789 -0
  151. package/dist/kernel/collection.d.ts +1519 -0
  152. package/dist/kernel/constants.d.ts +18 -0
  153. package/dist/kernel/debug.d.ts +25 -0
  154. package/dist/kernel/enclave/broker/proof.d.ts +154 -0
  155. package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
  156. package/dist/kernel/enclave/classify/compare.d.ts +10 -0
  157. package/dist/kernel/enclave/classify/digest.d.ts +8 -0
  158. package/dist/kernel/enclave/classify/find.d.ts +36 -0
  159. package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
  160. package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
  161. package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
  162. package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
  163. package/dist/kernel/enclave/classify/verify.d.ts +33 -0
  164. package/dist/kernel/enclave/classify/write.d.ts +8 -0
  165. package/dist/kernel/enclave/crypto.d.ts +263 -0
  166. package/dist/kernel/enclave/index.d.ts +78 -0
  167. package/dist/kernel/enclave/record-keys/deterministic.d.ts +54 -0
  168. package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
  169. package/dist/kernel/enclave/record-keys/lifecycle.d.ts +57 -0
  170. package/dist/kernel/enclave/record-keys/record-codec.d.ts +301 -0
  171. package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
  172. package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
  173. package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
  174. package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
  175. package/dist/kernel/env-check.d.ts +1 -0
  176. package/dist/kernel/errors.d.ts +1848 -0
  177. package/dist/kernel/events.d.ts +11 -0
  178. package/dist/kernel/memory-store.d.ts +17 -0
  179. package/dist/kernel/mutation.d.ts +14 -0
  180. package/dist/kernel/noydb.d.ts +826 -0
  181. package/dist/kernel/paths.d.ts +25 -0
  182. package/dist/kernel/query/builder.d.ts +520 -0
  183. package/dist/kernel/query/index.d.ts +31 -0
  184. package/dist/kernel/query/join.d.ts +205 -0
  185. package/dist/kernel/query/live.d.ts +111 -0
  186. package/dist/kernel/query/predicate.d.ts +139 -0
  187. package/dist/kernel/query/scan-builder.d.ts +334 -0
  188. package/dist/kernel/refs.d.ts +205 -0
  189. package/dist/kernel/schema.d.ts +134 -0
  190. package/dist/kernel/sync-policy.d.ts +188 -0
  191. package/dist/kernel/types.d.ts +3166 -0
  192. package/dist/kernel/util/discriminant.d.ts +58 -0
  193. package/dist/kernel/util/index.d.ts +14 -0
  194. package/dist/kernel/util/sanitize-filename.d.ts +75 -0
  195. package/dist/kernel/validation.d.ts +130 -0
  196. package/dist/kernel/vault.d.ts +1737 -0
  197. package/dist/kernel/via/compose.d.ts +144 -0
  198. package/dist/kernel/via/dispatch.d.ts +185 -0
  199. package/dist/kernel/via/graph-wiring.d.ts +145 -0
  200. package/dist/kernel/via/graph.d.ts +166 -0
  201. package/dist/kernel/via/index.d.ts +200 -0
  202. package/dist/kernel/via/pipeline.d.ts +266 -0
  203. package/dist/kernel/via/reconcile.d.ts +153 -0
  204. package/dist/kernel/via/taint-binding.d.ts +66 -0
  205. package/dist/kernel/write-queue.d.ts +46 -0
  206. package/dist/ledger-UAQKPWNM.js +42 -0
  207. package/dist/legacy/bundle.d.ts +30 -0
  208. package/dist/legacy/kernel.d.ts +33 -0
  209. package/dist/liberate-GFUQJRK5.js +24 -0
  210. package/dist/link-set-DGYUOFVD.js +31 -0
  211. package/dist/materialized-views/index.js +19 -19
  212. package/dist/noydb-AKH4AMCR.js +67 -0
  213. package/dist/on/index.js +9 -9
  214. package/dist/overlay-views/index.js +4 -4
  215. package/dist/periods/index.js +12 -12
  216. package/dist/pod/index.js +11 -11
  217. package/dist/policy-5POYLI26.js +41 -0
  218. package/dist/port/as/index.d.ts +26 -0
  219. package/dist/port/at/index.d.ts +18 -0
  220. package/dist/port/by/default-provider.d.ts +9 -0
  221. package/dist/port/by/index.d.ts +17 -0
  222. package/dist/port/by/types.d.ts +86 -0
  223. package/dist/port/in/index.d.ts +21 -0
  224. package/dist/port/on/index.d.ts +27 -0
  225. package/dist/port/to/index.d.ts +19 -0
  226. package/dist/port/ui/index.d.ts +21 -0
  227. package/dist/port/with/blob-strategy.d.ts +81 -0
  228. package/dist/port/with/broker-strategy.d.ts +84 -0
  229. package/dist/port/with/capabilities.d.ts +31 -0
  230. package/dist/port/with/classified-marker.d.ts +9 -0
  231. package/dist/port/with/classified-strategy.d.ts +62 -0
  232. package/dist/port/with/computed-strategy.d.ts +19 -0
  233. package/dist/port/with/i18n-strategy.d.ts +175 -0
  234. package/dist/port/with/index.d.ts +18 -0
  235. package/dist/port/with/lazy-strategy.d.ts +48 -0
  236. package/dist/port/with/lookup-strategy.d.ts +129 -0
  237. package/dist/port/with/service-bus.d.ts +156 -0
  238. package/dist/port/with/team-strategy.d.ts +36 -0
  239. package/dist/port/with/write-hooks.d.ts +34 -0
  240. package/dist/portability/index.js +8 -8
  241. package/dist/post-register-LB3P4XQU.js +60 -0
  242. package/dist/post-register-LB3P4XQU.js.map +1 -0
  243. package/dist/public-envelope-GOG4LUM7.js +32 -0
  244. package/dist/purge-scope-FGNNLWHD.js +24 -0
  245. package/dist/purge-scope-FGNNLWHD.js.map +1 -0
  246. package/dist/query/index.js +5 -5
  247. package/dist/register-ZI7YI7US.js +23 -0
  248. package/dist/registry-DZ2T4LL7.js +9 -0
  249. package/dist/registry-NVWEQ2GU.js +18 -0
  250. package/dist/registry-SEKL74ET.js +19 -0
  251. package/dist/request-withdrawal-ZP3JIRVS.js +31 -0
  252. package/dist/reveal-NPVROV4D.js +38 -0
  253. package/dist/revoke-VF6TAJK2.js +24 -0
  254. package/dist/satellites/index.js +1 -1
  255. package/dist/sealed-record/index.js +12 -12
  256. package/dist/seed-VI4FU7UH.js +231 -0
  257. package/dist/seed-VI4FU7UH.js.map +1 -0
  258. package/dist/session/index.js +9 -9
  259. package/dist/shadow/index.js +2 -2
  260. package/dist/signer-DRDDCCHW.js +25 -0
  261. package/dist/snapshots/index.js +10 -10
  262. package/dist/stale-TJXFQKOJ.js +14 -0
  263. package/dist/storage-GR7KZRH4.js +23 -0
  264. package/dist/store-coordination-provider-5KDS2RRP.js +142 -0
  265. package/dist/sync/index.js +9 -9
  266. package/dist/team/index.js +15 -15
  267. package/dist/tiers/index.js +10 -10
  268. package/dist/to/index.js +1 -1
  269. package/dist/tx/index.js +3 -3
  270. package/dist/util/index.js +1 -1
  271. package/dist/verify-QK76NJ4G.js +139 -0
  272. package/dist/via/blob/active.d.ts +34 -0
  273. package/dist/via/blob/binding.d.ts +86 -0
  274. package/dist/via/blob/index.d.ts +34 -0
  275. package/dist/via/classified/active.d.ts +3 -0
  276. package/dist/via/classified/binding.d.ts +83 -0
  277. package/dist/via/classified/config-drift.d.ts +34 -0
  278. package/dist/via/classified/descriptor.d.ts +66 -0
  279. package/dist/via/classified/errors.d.ts +19 -0
  280. package/dist/via/classified/guards.d.ts +23 -0
  281. package/dist/via/classified/index.d.ts +11 -0
  282. package/dist/via/classified/presets.d.ts +65 -0
  283. package/dist/via/classified/resolve.d.ts +9 -0
  284. package/dist/via/classified/strategy.d.ts +11 -0
  285. package/dist/via/classified/validators.d.ts +3 -0
  286. package/dist/via/classified/write.d.ts +4 -0
  287. package/dist/via/computed/binding.d.ts +34 -0
  288. package/dist/via/computed/descriptor.d.ts +35 -0
  289. package/dist/via/i18n/active.d.ts +28 -0
  290. package/dist/via/i18n/binding.d.ts +36 -0
  291. package/dist/via/i18n/core.d.ts +267 -0
  292. package/dist/via/i18n/densify.d.ts +24 -0
  293. package/dist/via/i18n/dictionary.d.ts +200 -0
  294. package/dist/via/i18n/index.d.ts +21 -0
  295. package/dist/via/i18n/policy.d.ts +44 -0
  296. package/dist/via/i18n/script.d.ts +26 -0
  297. package/dist/via/i18n/strategy.d.ts +13 -0
  298. package/dist/via/lookup/active.d.ts +19 -0
  299. package/dist/via/lookup/binding.d.ts +99 -0
  300. package/dist/via/lookup/descriptor.d.ts +123 -0
  301. package/dist/via/lookup/handle.d.ts +220 -0
  302. package/dist/via/lookup/index.d.ts +17 -0
  303. package/dist/via/lookup/registry.d.ts +228 -0
  304. package/dist/via/lookup/snapshot.d.ts +67 -0
  305. package/dist/via/money/arith.d.ts +68 -0
  306. package/dist/via/money/binding.d.ts +21 -0
  307. package/dist/via/money/branded.d.ts +61 -0
  308. package/dist/via/money/descriptor.d.ts +73 -0
  309. package/dist/via/money/fixed-point.d.ts +51 -0
  310. package/dist/via/money/index.d.ts +15 -0
  311. package/dist/via/money/iso4217.d.ts +6 -0
  312. package/dist/via/money/money-reducer.d.ts +33 -0
  313. package/dist/via/money/normalize.d.ts +105 -0
  314. package/dist/via/money/paths.d.ts +61 -0
  315. package/dist/via/money/where.d.ts +127 -0
  316. package/dist/walk-XQCBKSBW.js +241 -0
  317. package/dist/with/index.js +11 -11
  318. package/dist/with-audit/attestation/active.d.ts +10 -0
  319. package/dist/with-audit/attestation/index.d.ts +16 -0
  320. package/dist/with-audit/attestation/issue.d.ts +29 -0
  321. package/dist/with-audit/attestation/revoke.d.ts +15 -0
  322. package/dist/with-audit/attestation/signer.d.ts +33 -0
  323. package/dist/with-audit/attestation/strategy.d.ts +44 -0
  324. package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
  325. package/dist/with-audit/consent/active.d.ts +14 -0
  326. package/dist/with-audit/consent/consent.d.ts +114 -0
  327. package/dist/with-audit/consent/index.d.ts +14 -0
  328. package/dist/with-audit/consent/strategy.d.ts +36 -0
  329. package/dist/with-audit/forget/active.d.ts +31 -0
  330. package/dist/with-audit/forget/index.d.ts +28 -0
  331. package/dist/with-audit/forget/purge-scope.d.ts +54 -0
  332. package/dist/with-audit/forget/strategy.d.ts +177 -0
  333. package/dist/with-audit/forget/subject-index.d.ts +83 -0
  334. package/dist/with-audit/guards/executor.d.ts +26 -0
  335. package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
  336. package/dist/with-audit/guards/index.d.ts +10 -0
  337. package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
  338. package/dist/with-audit/guards/registry.d.ts +83 -0
  339. package/dist/with-audit/guards/transition-guard.d.ts +82 -0
  340. package/dist/with-audit/guards/types.d.ts +134 -0
  341. package/dist/with-audit/guards/with-guard.d.ts +15 -0
  342. package/dist/with-audit/periods/active.d.ts +11 -0
  343. package/dist/with-audit/periods/index.d.ts +18 -0
  344. package/dist/with-audit/periods/periods.d.ts +417 -0
  345. package/dist/with-audit/periods/strategy.d.ts +32 -0
  346. package/dist/with-audit/periods/vault-facade.d.ts +95 -0
  347. package/dist/with-audit/portability/active.d.ts +11 -0
  348. package/dist/with-audit/portability/export-accessible.d.ts +46 -0
  349. package/dist/with-audit/portability/index.d.ts +18 -0
  350. package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
  351. package/dist/with-audit/portability/strategy.d.ts +31 -0
  352. package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
  353. package/dist/with-audit/sealed-record/active.d.ts +9 -0
  354. package/dist/with-audit/sealed-record/index.d.ts +55 -0
  355. package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
  356. package/dist/with-audit/sealed-record/types.d.ts +27 -0
  357. package/dist/with-audit/tiers/active.d.ts +9 -0
  358. package/dist/with-audit/tiers/index.d.ts +122 -0
  359. package/dist/with-audit/tiers/strategy.d.ts +35 -0
  360. package/dist/with-cargo/active.d.ts +11 -0
  361. package/dist/with-cargo/adopt-partition.d.ts +81 -0
  362. package/dist/with-cargo/decrypt-partition.d.ts +19 -0
  363. package/dist/with-cargo/describe-extraction.d.ts +33 -0
  364. package/dist/with-cargo/extract-partition.d.ts +147 -0
  365. package/dist/with-cargo/index.d.ts +33 -0
  366. package/dist/with-cargo/strategy.d.ts +30 -0
  367. package/dist/with-cargo/vault-diff.d.ts +144 -0
  368. package/dist/with-cargo/walk-closure.d.ts +38 -0
  369. package/dist/with-commit/crdt/active.d.ts +25 -0
  370. package/dist/with-commit/crdt/crdt.d.ts +42 -0
  371. package/dist/with-commit/crdt/index.d.ts +16 -0
  372. package/dist/with-commit/crdt/strategy.d.ts +25 -0
  373. package/dist/with-commit/history/active.d.ts +40 -0
  374. package/dist/with-commit/history/diff.d.ts +23 -0
  375. package/dist/with-commit/history/history.d.ts +27 -0
  376. package/dist/with-commit/history/index.d.ts +30 -0
  377. package/dist/with-commit/history/ledger/constants.d.ts +37 -0
  378. package/dist/with-commit/history/ledger/entry.d.ts +195 -0
  379. package/dist/with-commit/history/ledger/hash.d.ts +30 -0
  380. package/dist/with-commit/history/ledger/index.d.ts +19 -0
  381. package/dist/with-commit/history/ledger/patch.d.ts +99 -0
  382. package/dist/with-commit/history/ledger/store.d.ts +335 -0
  383. package/dist/with-commit/history/strategy.d.ts +126 -0
  384. package/dist/with-commit/history/time-machine.d.ts +179 -0
  385. package/dist/with-commit/numbering/descriptor.d.ts +27 -0
  386. package/dist/with-commit/numbering/index.d.ts +69 -0
  387. package/dist/with-commit/sequence/active.d.ts +10 -0
  388. package/dist/with-commit/sequence/index.d.ts +150 -0
  389. package/dist/with-commit/sequence/strategy.d.ts +26 -0
  390. package/dist/with-commit/tx/active.d.ts +27 -0
  391. package/dist/with-commit/tx/dry-run.d.ts +29 -0
  392. package/dist/with-commit/tx/elevated-handle.d.ts +58 -0
  393. package/dist/with-commit/tx/index.d.ts +13 -0
  394. package/dist/with-commit/tx/invariants.d.ts +68 -0
  395. package/dist/with-commit/tx/strategy.d.ts +23 -0
  396. package/dist/with-commit/tx/transaction.d.ts +212 -0
  397. package/dist/with-fork/archive/engine.d.ts +71 -0
  398. package/dist/with-fork/archive/index.d.ts +23 -0
  399. package/dist/with-fork/shadow/active.d.ts +6 -0
  400. package/dist/with-fork/shadow/index.d.ts +14 -0
  401. package/dist/with-fork/shadow/strategy.d.ts +28 -0
  402. package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
  403. package/dist/with-fork/snapshots/active.d.ts +20 -0
  404. package/dist/with-fork/snapshots/engine.d.ts +36 -0
  405. package/dist/with-fork/snapshots/index.d.ts +5 -0
  406. package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
  407. package/dist/with-fork/snapshots/policy.d.ts +23 -0
  408. package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
  409. package/dist/with-fork/snapshots/strategy.d.ts +48 -0
  410. package/dist/with-formula/computed/index.d.ts +48 -0
  411. package/dist/with-formula/computed/lazy.d.ts +13 -0
  412. package/dist/with-formula/derivations/executor.d.ts +61 -0
  413. package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
  414. package/dist/with-formula/derivations/index.d.ts +6 -0
  415. package/dist/with-formula/derivations/registry.d.ts +67 -0
  416. package/dist/with-formula/derivations/stale.d.ts +39 -0
  417. package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
  418. package/dist/with-formula/derivations/types.d.ts +248 -0
  419. package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
  420. package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
  421. package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
  422. package/dist/with-formula/materialized-views/executor.d.ts +71 -0
  423. package/dist/with-formula/materialized-views/index.d.ts +11 -0
  424. package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
  425. package/dist/with-formula/materialized-views/registry.d.ts +99 -0
  426. package/dist/with-formula/materialized-views/stale.d.ts +62 -0
  427. package/dist/with-formula/materialized-views/types.d.ts +318 -0
  428. package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
  429. package/dist/with-formula/overlay-views/index.d.ts +5 -0
  430. package/dist/with-formula/overlay-views/registry.d.ts +42 -0
  431. package/dist/with-formula/overlay-views/types.d.ts +97 -0
  432. package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
  433. package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
  434. package/dist/with-lookup/aggregate/active.d.ts +33 -0
  435. package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
  436. package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
  437. package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
  438. package/dist/with-lookup/aggregate/index.d.ts +23 -0
  439. package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
  440. package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
  441. package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
  442. package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
  443. package/dist/with-lookup/embeddings/index.d.ts +3 -0
  444. package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
  445. package/dist/with-lookup/indexing/active.d.ts +30 -0
  446. package/dist/with-lookup/indexing/collection-facade.d.ts +120 -0
  447. package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
  448. package/dist/with-lookup/indexing/index.d.ts +27 -0
  449. package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
  450. package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
  451. package/dist/with-lookup/indexing/strategy.d.ts +56 -0
  452. package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
  453. package/dist/with-lookup/search/active.d.ts +10 -0
  454. package/dist/with-lookup/search/build-docs.d.ts +15 -0
  455. package/dist/with-lookup/search/collection-facade.d.ts +123 -0
  456. package/dist/with-lookup/search/fuse.d.ts +22 -0
  457. package/dist/with-lookup/search/index-store.d.ts +19 -0
  458. package/dist/with-lookup/search/index.d.ts +19 -0
  459. package/dist/with-lookup/search/inverted-index.d.ts +47 -0
  460. package/dist/with-lookup/search/persisted-index-store.d.ts +41 -0
  461. package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
  462. package/dist/with-lookup/search/scan.d.ts +28 -0
  463. package/dist/with-lookup/search/segment.d.ts +15 -0
  464. package/dist/with-lookup/search/serialize.d.ts +4 -0
  465. package/dist/with-lookup/search/snippet.d.ts +5 -0
  466. package/dist/with-lookup/search/strategy.d.ts +37 -0
  467. package/dist/with-lookup/search/tokenize.d.ts +12 -0
  468. package/dist/with-party/auth-introspection/index.d.ts +44 -0
  469. package/dist/with-party/broker/active.d.ts +23 -0
  470. package/dist/with-party/broker/index.d.ts +28 -0
  471. package/dist/with-party/broker/seed.d.ts +77 -0
  472. package/dist/with-party/custody/active.d.ts +10 -0
  473. package/dist/with-party/custody/index.d.ts +69 -0
  474. package/dist/with-party/custody/liberate.d.ts +64 -0
  475. package/dist/with-party/custody/strategy.d.ts +48 -0
  476. package/dist/with-party/directory/index.d.ts +11 -0
  477. package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
  478. package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
  479. package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
  480. package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
  481. package/dist/with-party/directory/storage.d.ts +33 -0
  482. package/dist/with-party/directory/types.d.ts +43 -0
  483. package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
  484. package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
  485. package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
  486. package/dist/with-party/directory/visibility.d.ts +47 -0
  487. package/dist/with-party/policy/engine.d.ts +60 -0
  488. package/dist/with-party/policy/index.d.ts +15 -0
  489. package/dist/with-party/policy/noydb-facade.d.ts +39 -0
  490. package/dist/with-party/policy/presets.d.ts +38 -0
  491. package/dist/with-party/policy/storage.d.ts +31 -0
  492. package/dist/with-party/session/active.d.ts +34 -0
  493. package/dist/with-party/session/dev-unlock.d.ts +128 -0
  494. package/dist/with-party/session/index.d.ts +23 -0
  495. package/dist/with-party/session/session-policy.d.ts +92 -0
  496. package/dist/with-party/session/session.d.ts +131 -0
  497. package/dist/with-party/session/strategy.d.ts +42 -0
  498. package/dist/with-party/session/unlock-state.d.ts +47 -0
  499. package/dist/with-party/sync/index.d.ts +31 -0
  500. package/dist/with-party/tab-coordination.d.ts +73 -0
  501. package/dist/with-party/tab-write-relay.d.ts +39 -0
  502. package/dist/with-party/team/active.d.ts +13 -0
  503. package/dist/with-party/team/authenticators.d.ts +95 -0
  504. package/dist/with-party/team/deed.d.ts +97 -0
  505. package/dist/with-party/team/delegation.d.ts +88 -0
  506. package/dist/with-party/team/index.d.ts +38 -0
  507. package/dist/with-party/team/keyring.d.ts +318 -0
  508. package/dist/with-party/team/magic-link-grant.d.ts +152 -0
  509. package/dist/with-party/team/managed-passphrase.d.ts +280 -0
  510. package/dist/with-party/team/noydb-facade.d.ts +484 -0
  511. package/dist/with-party/team/peer-recover.d.ts +81 -0
  512. package/dist/with-party/team/presence.d.ts +81 -0
  513. package/dist/with-party/team/recovery.d.ts +191 -0
  514. package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
  515. package/dist/with-party/team/rotate-recover.d.ts +275 -0
  516. package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
  517. package/dist/with-party/team/strategy.d.ts +9 -0
  518. package/dist/with-party/team/sync-active.d.ts +33 -0
  519. package/dist/with-party/team/sync-credentials.d.ts +113 -0
  520. package/dist/with-party/team/sync-strategy.d.ts +67 -0
  521. package/dist/with-party/team/sync-transaction.d.ts +39 -0
  522. package/dist/with-party/team/sync.d.ts +174 -0
  523. package/dist/with-party/team/tiers.d.ts +39 -0
  524. package/dist/with-party/team/wrapped-deks.d.ts +86 -0
  525. package/dist/with-pod/backup.d.ts +74 -0
  526. package/dist/with-pod/bundle.d.ts +414 -0
  527. package/dist/with-pod/format.d.ts +203 -0
  528. package/dist/with-pod/index.d.ts +20 -0
  529. package/dist/with-pod/pod-store.d.ts +54 -0
  530. package/dist/with-pod/ulid.d.ts +64 -0
  531. package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
  532. package/dist/with-shape/blobs/blob-set.d.ts +342 -0
  533. package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
  534. package/dist/with-shape/blobs/import-external.d.ts +50 -0
  535. package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
  536. package/dist/with-shape/blobs/object-projection.d.ts +70 -0
  537. package/dist/with-shape/introspection/describe.d.ts +237 -0
  538. package/dist/with-shape/introspection/field-meta.d.ts +61 -0
  539. package/dist/with-shape/introspection/fields.d.ts +14 -0
  540. package/dist/with-shape/introspection/index.d.ts +12 -0
  541. package/dist/with-shape/introspection/json-schema.d.ts +13 -0
  542. package/dist/with-shape/introspection/meta.d.ts +22 -0
  543. package/dist/with-shape/introspection/projection.d.ts +13 -0
  544. package/dist/with-shape/introspection/types.d.ts +154 -0
  545. package/dist/with-shape/introspection/walk.d.ts +50 -0
  546. package/dist/with-shape/links/lazy-handle.d.ts +36 -0
  547. package/dist/with-shape/links/link-set.d.ts +67 -0
  548. package/dist/with-shape/links/names.d.ts +65 -0
  549. package/dist/with-shape/links/vault-facade.d.ts +211 -0
  550. package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
  551. package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
  552. package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
  553. package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
  554. package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
  555. package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
  556. package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
  557. package/dist/with-shape/satellites/declare.d.ts +60 -0
  558. package/dist/with-shape/satellites/existence.d.ts +5 -0
  559. package/dist/with-shape/satellites/fanout.d.ts +38 -0
  560. package/dist/with-shape/satellites/forget.d.ts +47 -0
  561. package/dist/with-shape/satellites/index.d.ts +3 -0
  562. package/dist/with-shape/satellites/joined.d.ts +19 -0
  563. package/dist/with-shape/satellites/marker.d.ts +10 -0
  564. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  565. package/dist/with-shape/satellites/post-register.d.ts +6 -0
  566. package/dist/with-shape/satellites/proxy.d.ts +37 -0
  567. package/dist/with-shape/satellites/raw-target.d.ts +14 -0
  568. package/dist/with-shape/satellites/registry.d.ts +19 -0
  569. package/dist/with-shape/satellites/types.d.ts +37 -0
  570. package/dist/with-shape/satellites/validate.d.ts +17 -0
  571. package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
  572. package/dist/with-shape/schema-update/cutover.d.ts +5 -0
  573. package/dist/with-shape/schema-update/delta.d.ts +2 -0
  574. package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
  575. package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
  576. package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
  577. package/dist/with-shape/schema-update/fence.d.ts +15 -0
  578. package/dist/with-shape/schema-update/gate.d.ts +16 -0
  579. package/dist/with-shape/schema-update/index.d.ts +6 -0
  580. package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
  581. package/dist/with-shape/schema-update/strategies.d.ts +12 -0
  582. package/dist/with-shape/schema-update/types.d.ts +53 -0
  583. package/dist/with-store/index.d.ts +15 -0
  584. package/dist/with-store/lazy/active.d.ts +12 -0
  585. package/dist/with-store/lazy/index.d.ts +14 -0
  586. package/dist/with-store/lazy/strategy.d.ts +9 -0
  587. package/dist/with-store/route-store.d.ts +259 -0
  588. package/dist/with-store/store-middleware.d.ts +189 -0
  589. package/dist/withdraw-accessible-FMN4LPJZ.js +28 -0
  590. package/package.json +47 -43
  591. package/dist/aggregate/index.d.ts +0 -41
  592. package/dist/api-TX2EX2FX.js +0 -20
  593. package/dist/as/index.d.ts +0 -6
  594. package/dist/at/index.d.ts +0 -4
  595. package/dist/attestation/index.d.ts +0 -19
  596. package/dist/backup-R7NTDFKY.js +0 -225
  597. package/dist/blobs/index.d.ts +0 -43
  598. package/dist/bundle/index.d.ts +0 -121
  599. package/dist/bundle-D6GxiUfq.d.ts +0 -548
  600. package/dist/by/index.d.ts +0 -1
  601. package/dist/cargo/index.d.ts +0 -7
  602. package/dist/chunk-2OV5NVE7.js +0 -95
  603. package/dist/chunk-2OZXVKVP.js +0 -367
  604. package/dist/chunk-2REPHKET.js +0 -54
  605. package/dist/chunk-3JXPAHOZ.js +0 -686
  606. package/dist/chunk-3MATJ6O4.js +0 -367
  607. package/dist/chunk-3OPY6MK2.js +0 -404
  608. package/dist/chunk-3QSIU3UT.js +0 -291
  609. package/dist/chunk-4OMCIY6F.js +0 -99
  610. package/dist/chunk-5I35DOHK.js +0 -94
  611. package/dist/chunk-5VG4IJR7.js +0 -235
  612. package/dist/chunk-5YESYH2C.js +0 -155
  613. package/dist/chunk-6G5ORS5D.js +0 -202
  614. package/dist/chunk-6P5XCKSD.js +0 -71
  615. package/dist/chunk-6S7T6WC4.js +0 -111
  616. package/dist/chunk-6S7T6WC4.js.map +0 -1
  617. package/dist/chunk-7BWJHO2A.js +0 -34
  618. package/dist/chunk-7P2SDJG3.js +0 -279
  619. package/dist/chunk-7P2SDJG3.js.map +0 -1
  620. package/dist/chunk-ANB77BVV.js +0 -150
  621. package/dist/chunk-ANB77BVV.js.map +0 -1
  622. package/dist/chunk-BKARNZJN.js +0 -382
  623. package/dist/chunk-BQISD5ZV.js +0 -261
  624. package/dist/chunk-BUAQ7YI3.js +0 -1697
  625. package/dist/chunk-BUAQ7YI3.js.map +0 -1
  626. package/dist/chunk-CB7CWSKW.js +0 -430
  627. package/dist/chunk-CB7CWSKW.js.map +0 -1
  628. package/dist/chunk-DFVUTGT2.js +0 -515
  629. package/dist/chunk-DJ7KIPLV.js +0 -23
  630. package/dist/chunk-DSKDQP3G.js +0 -14066
  631. package/dist/chunk-DSKDQP3G.js.map +0 -1
  632. package/dist/chunk-DV4HUP5G.js +0 -99
  633. package/dist/chunk-EOXAAJTY.js +0 -621
  634. package/dist/chunk-ET67AY6B.js +0 -74
  635. package/dist/chunk-F4CEK5YM.js +0 -123
  636. package/dist/chunk-FORYWFN6.js +0 -130
  637. package/dist/chunk-FRP6D2DM.js +0 -91
  638. package/dist/chunk-FUOE7UUV.js +0 -341
  639. package/dist/chunk-FUOE7UUV.js.map +0 -1
  640. package/dist/chunk-G4JYND6L.js +0 -42
  641. package/dist/chunk-G6XV4H65.js +0 -59
  642. package/dist/chunk-GNMXXTMN.js +0 -85
  643. package/dist/chunk-HPWKV3YB.js +0 -21
  644. package/dist/chunk-HY3AUMFI.js +0 -41
  645. package/dist/chunk-HYR4WZZ3.js +0 -69
  646. package/dist/chunk-ICXIFFYZ.js +0 -355
  647. package/dist/chunk-ICXIFFYZ.js.map +0 -1
  648. package/dist/chunk-IVLTXX4W.js +0 -280
  649. package/dist/chunk-J4LPNIGK.js +0 -777
  650. package/dist/chunk-JJZ2LW6T.js +0 -36
  651. package/dist/chunk-KJ2BCBTL.js +0 -589
  652. package/dist/chunk-KNZB6JMR.js +0 -129
  653. package/dist/chunk-LEJIKBBB.js +0 -124
  654. package/dist/chunk-LL2NIVUR.js +0 -188
  655. package/dist/chunk-MCHVVJIA.js +0 -968
  656. package/dist/chunk-MCHVVJIA.js.map +0 -1
  657. package/dist/chunk-NUEQU36L.js +0 -392
  658. package/dist/chunk-O45M6LDB.js +0 -38
  659. package/dist/chunk-OBKWYKYC.js +0 -117
  660. package/dist/chunk-OHHKHSJP.js +0 -209
  661. package/dist/chunk-OT76OZL6.js +0 -45
  662. package/dist/chunk-OVYRLHPE.js +0 -150
  663. package/dist/chunk-OXCSVM3B.js +0 -155
  664. package/dist/chunk-P33LUIML.js +0 -205
  665. package/dist/chunk-PLS64NCS.js +0 -59
  666. package/dist/chunk-PS2NEWEX.js +0 -36
  667. package/dist/chunk-QA2KUPCP.js +0 -45
  668. package/dist/chunk-QOC3VYL2.js +0 -30
  669. package/dist/chunk-QSFOZUYL.js +0 -823
  670. package/dist/chunk-RHK32N73.js +0 -30
  671. package/dist/chunk-RW3Y22MW.js +0 -97
  672. package/dist/chunk-S7VFUQM2.js +0 -1484
  673. package/dist/chunk-S7VFUQM2.js.map +0 -1
  674. package/dist/chunk-T7WSLRAU.js +0 -49
  675. package/dist/chunk-TAKWLZZX.js +0 -944
  676. package/dist/chunk-TAKWLZZX.js.map +0 -1
  677. package/dist/chunk-TMBXVJKT.js +0 -75
  678. package/dist/chunk-TWKKOM55.js +0 -54
  679. package/dist/chunk-U3WZCU7E.js +0 -14
  680. package/dist/chunk-UF362QVH.js +0 -70
  681. package/dist/chunk-UN4FVIBH.js +0 -135
  682. package/dist/chunk-VEAVKDDB.js +0 -29
  683. package/dist/chunk-VEPTFUJY.js +0 -29
  684. package/dist/chunk-VJV7GKQK.js +0 -662
  685. package/dist/chunk-VQRAIPYF.js +0 -50
  686. package/dist/chunk-VRIYFLBA.js +0 -74
  687. package/dist/chunk-VWM3DAVB.js +0 -265
  688. package/dist/chunk-VWRRVE6D.js +0 -80
  689. package/dist/chunk-WBJIQSLL.js +0 -167
  690. package/dist/chunk-WBJIQSLL.js.map +0 -1
  691. package/dist/chunk-WIGQB62E.js +0 -164
  692. package/dist/chunk-WZSCE6RM.js +0 -466
  693. package/dist/chunk-WZSCE6RM.js.map +0 -1
  694. package/dist/chunk-XGDAPN6M.js +0 -255
  695. package/dist/chunk-XH7XP3OL.js +0 -1221
  696. package/dist/chunk-XREOISSI.js +0 -40
  697. package/dist/chunk-XUBPSPKD.js +0 -164
  698. package/dist/chunk-Y3A5CB5G.js +0 -247
  699. package/dist/chunk-YCXCR7VG.js +0 -230
  700. package/dist/chunk-YMVQD5Q5.js +0 -453
  701. package/dist/chunk-YN5IAHN6.js +0 -32
  702. package/dist/chunk-YN5IAHN6.js.map +0 -1
  703. package/dist/chunk-ZYJ55N7N.js +0 -86
  704. package/dist/classified/index.d.ts +0 -16
  705. package/dist/classified-marker-H6YSHYNK.js +0 -24
  706. package/dist/classified-marker-H6YSHYNK.js.map +0 -1
  707. package/dist/collection-facade-LVD22JLM.js +0 -39
  708. package/dist/computed-EXDMQODG.js +0 -11
  709. package/dist/consent/index.d.ts +0 -22
  710. package/dist/crdt/index.d.ts +0 -33
  711. package/dist/dead-filter-HQIE2YG7.js +0 -28
  712. package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
  713. package/dist/delegation-BJP73GAP.js +0 -25
  714. package/dist/derivations/index.d.ts +0 -69
  715. package/dist/derive-BME7HDWO.js +0 -21
  716. package/dist/dev-unlock-Bmm2pgJ0.d.ts +0 -263
  717. package/dist/discriminant-BN9REW3o.d.ts +0 -60
  718. package/dist/enclave-NHORSWSF.js +0 -125
  719. package/dist/executor-FE6X4LFX.js +0 -9
  720. package/dist/executor-KSHKRJXP.js +0 -25
  721. package/dist/executor-ZHTJJICG.js +0 -9
  722. package/dist/export-accessible-DACHM5VT.js +0 -23
  723. package/dist/extract-partition-RNENZZ4T.js +0 -36
  724. package/dist/fanout-sidecar-OFWN3NM7.js +0 -74
  725. package/dist/find-BNGBJNKP.js +0 -11
  726. package/dist/forget/index.d.ts +0 -36
  727. package/dist/guards/index.d.ts +0 -34
  728. package/dist/hash-DAJjMsCE.d.ts +0 -72
  729. package/dist/history/index.d.ts +0 -60
  730. package/dist/i18n/index.d.ts +0 -56
  731. package/dist/in/index.d.ts +0 -4
  732. package/dist/index-B9QdHytu.d.ts +0 -123
  733. package/dist/index-DjWbxsjb.d.ts +0 -23579
  734. package/dist/index-qwuNvO2B.d.ts +0 -144
  735. package/dist/indexing/index.d.ts +0 -38
  736. package/dist/issue-NDI4CVZU.js +0 -19
  737. package/dist/lazy/index.d.ts +0 -20
  738. package/dist/ledger-6NDS2EO4.js +0 -42
  739. package/dist/liberate-HN3RIGIP.js +0 -24
  740. package/dist/link-set-SJB2MVJV.js +0 -31
  741. package/dist/materialized-views/index.d.ts +0 -189
  742. package/dist/mime-magic-bBj5OgUC.d.ts +0 -103
  743. package/dist/noydb-BWF6EPIR.js +0 -66
  744. package/dist/on/index.d.ts +0 -4
  745. package/dist/overlay-views/index.d.ts +0 -97
  746. package/dist/periods/index.d.ts +0 -19
  747. package/dist/pod/index.d.ts +0 -62
  748. package/dist/policy-WGNAG5H6.js +0 -41
  749. package/dist/portability/index.d.ts +0 -19
  750. package/dist/post-register-CWKBQRC7.js +0 -55
  751. package/dist/post-register-CWKBQRC7.js.map +0 -1
  752. package/dist/public-envelope-EJLVIFX7.js +0 -32
  753. package/dist/query/index.d.ts +0 -4
  754. package/dist/register-SBIX7TVV.js +0 -23
  755. package/dist/registry-3EQG6OOE.js +0 -18
  756. package/dist/registry-CA327ACV.js +0 -9
  757. package/dist/registry-E7OXOTSV.js +0 -19
  758. package/dist/request-withdrawal-KAH2AAXC.js +0 -31
  759. package/dist/reveal-R3JLHMUF.js +0 -38
  760. package/dist/revoke-IXLOJ3IH.js +0 -24
  761. package/dist/satellites/index.d.ts +0 -4
  762. package/dist/sealed-record/index.d.ts +0 -68
  763. package/dist/session/index.d.ts +0 -43
  764. package/dist/shadow/index.d.ts +0 -14
  765. package/dist/signer-Y46N2GJ3.js +0 -25
  766. package/dist/snapshots/index.d.ts +0 -25
  767. package/dist/stale-Z7IW6RIL.js +0 -14
  768. package/dist/storage-ADNP2UWI.js +0 -23
  769. package/dist/store-coordination-provider-DTDMI6VL.js +0 -142
  770. package/dist/subject-index-CyOgGMJL.d.ts +0 -380
  771. package/dist/sync/index.d.ts +0 -40
  772. package/dist/team/index.d.ts +0 -154
  773. package/dist/tiers/index.d.ts +0 -4
  774. package/dist/to/index.d.ts +0 -4
  775. package/dist/transition-guard-DI-krBsZ.d.ts +0 -165
  776. package/dist/tx/index.d.ts +0 -34
  777. package/dist/ui/index.d.ts +0 -4
  778. package/dist/ulid-DRH25k3y.d.ts +0 -66
  779. package/dist/util/index.d.ts +0 -79
  780. package/dist/validators-BUcli5Nh.d.ts +0 -101
  781. package/dist/vault-diff-Z2DUayMe.d.ts +0 -147
  782. package/dist/verify-JPF2YR5E.js +0 -139
  783. package/dist/walk-XYA2O3LW.js +0 -241
  784. package/dist/with/index.d.ts +0 -37
  785. package/dist/with-materialized-view-BUmzlXue.d.ts +0 -27
  786. package/dist/with-overlayed-view-m4FaXXTO.d.ts +0 -12
  787. package/dist/with-rollup-DEKGI9vb.d.ts +0 -47
  788. package/dist/withdraw-accessible-WLV4MTEN.js +0 -28
  789. /package/dist/{api-TX2EX2FX.js.map → api-3TH2GOFQ.js.map} +0 -0
  790. /package/dist/{backup-R7NTDFKY.js.map → backup-2WVBIVXW.js.map} +0 -0
  791. /package/dist/{chunk-TMBXVJKT.js.map → chunk-2MTRJCBI.js.map} +0 -0
  792. /package/dist/{chunk-3OPY6MK2.js.map → chunk-37WOJQWY.js.map} +0 -0
  793. /package/dist/{chunk-KJ2BCBTL.js.map → chunk-3QSOFZQB.js.map} +0 -0
  794. /package/dist/{chunk-DV4HUP5G.js.map → chunk-44IL5G3W.js.map} +0 -0
  795. /package/dist/{chunk-HYR4WZZ3.js.map → chunk-45QPICLE.js.map} +0 -0
  796. /package/dist/{chunk-XUBPSPKD.js.map → chunk-4BQXMCE5.js.map} +0 -0
  797. /package/dist/{chunk-RHK32N73.js.map → chunk-5HNX4OD4.js.map} +0 -0
  798. /package/dist/{chunk-2REPHKET.js.map → chunk-65VLRG3I.js.map} +0 -0
  799. /package/dist/{chunk-G6XV4H65.js.map → chunk-6MA575R5.js.map} +0 -0
  800. /package/dist/{chunk-F4CEK5YM.js.map → chunk-7GAXFU2O.js.map} +0 -0
  801. /package/dist/{chunk-6G5ORS5D.js.map → chunk-7QLY64AD.js.map} +0 -0
  802. /package/dist/{chunk-5VG4IJR7.js.map → chunk-7ZOSHEVS.js.map} +0 -0
  803. /package/dist/{chunk-LEJIKBBB.js.map → chunk-APHLCXVC.js.map} +0 -0
  804. /package/dist/{chunk-KNZB6JMR.js.map → chunk-BDEMZD4F.js.map} +0 -0
  805. /package/dist/{chunk-VJV7GKQK.js.map → chunk-BDPAVYGJ.js.map} +0 -0
  806. /package/dist/{chunk-G4JYND6L.js.map → chunk-BLUT46UP.js.map} +0 -0
  807. /package/dist/{chunk-J4LPNIGK.js.map → chunk-CCIR2OJH.js.map} +0 -0
  808. /package/dist/{chunk-5YESYH2C.js.map → chunk-CXC3JLAQ.js.map} +0 -0
  809. /package/dist/{chunk-XH7XP3OL.js.map → chunk-CZMCOFEA.js.map} +0 -0
  810. /package/dist/{chunk-WIGQB62E.js.map → chunk-DIB2BOIH.js.map} +0 -0
  811. /package/dist/{chunk-UF362QVH.js.map → chunk-EIZ4YOG2.js.map} +0 -0
  812. /package/dist/{chunk-DFVUTGT2.js.map → chunk-EVHBK7BN.js.map} +0 -0
  813. /package/dist/{chunk-ET67AY6B.js.map → chunk-EXGDL2UQ.js.map} +0 -0
  814. /package/dist/{chunk-YMVQD5Q5.js.map → chunk-F3LGBRSV.js.map} +0 -0
  815. /package/dist/{chunk-NUEQU36L.js.map → chunk-F44XWXOA.js.map} +0 -0
  816. /package/dist/{chunk-YCXCR7VG.js.map → chunk-FF7S3XDW.js.map} +0 -0
  817. /package/dist/{chunk-OXCSVM3B.js.map → chunk-FJTWLQV3.js.map} +0 -0
  818. /package/dist/{chunk-PS2NEWEX.js.map → chunk-FYNE4WLC.js.map} +0 -0
  819. /package/dist/{chunk-FORYWFN6.js.map → chunk-GL3JV5EV.js.map} +0 -0
  820. /package/dist/{chunk-VEAVKDDB.js.map → chunk-GXLZXD2W.js.map} +0 -0
  821. /package/dist/{chunk-3JXPAHOZ.js.map → chunk-HBBZWEC5.js.map} +0 -0
  822. /package/dist/{chunk-LL2NIVUR.js.map → chunk-HG76BZ6G.js.map} +0 -0
  823. /package/dist/{chunk-O45M6LDB.js.map → chunk-HGAB325C.js.map} +0 -0
  824. /package/dist/{chunk-T7WSLRAU.js.map → chunk-HK4XTXO4.js.map} +0 -0
  825. /package/dist/{chunk-U3WZCU7E.js.map → chunk-HYG32HCM.js.map} +0 -0
  826. /package/dist/{chunk-UN4FVIBH.js.map → chunk-ILF5GARW.js.map} +0 -0
  827. /package/dist/{chunk-BKARNZJN.js.map → chunk-INBQ43DI.js.map} +0 -0
  828. /package/dist/{chunk-Y3A5CB5G.js.map → chunk-IQIVD7TP.js.map} +0 -0
  829. /package/dist/{chunk-QA2KUPCP.js.map → chunk-J3JIYFYL.js.map} +0 -0
  830. /package/dist/{chunk-OVYRLHPE.js.map → chunk-JGUZMC3I.js.map} +0 -0
  831. /package/dist/{chunk-VWRRVE6D.js.map → chunk-JRKE5MAZ.js.map} +0 -0
  832. /package/dist/{chunk-XGDAPN6M.js.map → chunk-K2DLLK34.js.map} +0 -0
  833. /package/dist/{chunk-7BWJHO2A.js.map → chunk-KKYEZCQG.js.map} +0 -0
  834. /package/dist/{chunk-TWKKOM55.js.map → chunk-NAR6IDKH.js.map} +0 -0
  835. /package/dist/{chunk-OBKWYKYC.js.map → chunk-NEYKOESM.js.map} +0 -0
  836. /package/dist/{chunk-VEPTFUJY.js.map → chunk-NM3IFKBL.js.map} +0 -0
  837. /package/dist/{chunk-4OMCIY6F.js.map → chunk-NRYNRSGV.js.map} +0 -0
  838. /package/dist/{chunk-PLS64NCS.js.map → chunk-NT2ZO4KI.js.map} +0 -0
  839. /package/dist/{chunk-5I35DOHK.js.map → chunk-P2LJI6JE.js.map} +0 -0
  840. /package/dist/{chunk-QSFOZUYL.js.map → chunk-PH7G7ZI7.js.map} +0 -0
  841. /package/dist/{chunk-OHHKHSJP.js.map → chunk-PN5332SU.js.map} +0 -0
  842. /package/dist/{chunk-OT76OZL6.js.map → chunk-QF5LGMSV.js.map} +0 -0
  843. /package/dist/{chunk-3MATJ6O4.js.map → chunk-QG5RQQBO.js.map} +0 -0
  844. /package/dist/{chunk-DJ7KIPLV.js.map → chunk-QYPDYN23.js.map} +0 -0
  845. /package/dist/{chunk-IVLTXX4W.js.map → chunk-RNXJ2VO6.js.map} +0 -0
  846. /package/dist/{chunk-RW3Y22MW.js.map → chunk-RXTMLYJS.js.map} +0 -0
  847. /package/dist/{chunk-QOC3VYL2.js.map → chunk-S2OWPVSO.js.map} +0 -0
  848. /package/dist/{chunk-P33LUIML.js.map → chunk-S7TAPIRS.js.map} +0 -0
  849. /package/dist/{chunk-XREOISSI.js.map → chunk-SAL5X5OK.js.map} +0 -0
  850. /package/dist/{chunk-GNMXXTMN.js.map → chunk-SGJGWBSC.js.map} +0 -0
  851. /package/dist/{chunk-VQRAIPYF.js.map → chunk-SIAIYP6G.js.map} +0 -0
  852. /package/dist/{chunk-BQISD5ZV.js.map → chunk-TBNF5DV5.js.map} +0 -0
  853. /package/dist/{chunk-HPWKV3YB.js.map → chunk-TVOHSPVK.js.map} +0 -0
  854. /package/dist/{chunk-HY3AUMFI.js.map → chunk-TVS6BUUR.js.map} +0 -0
  855. /package/dist/{chunk-ZYJ55N7N.js.map → chunk-UMC5QZTX.js.map} +0 -0
  856. /package/dist/{chunk-2OZXVKVP.js.map → chunk-US34HTOI.js.map} +0 -0
  857. /package/dist/{chunk-EOXAAJTY.js.map → chunk-VCUQR6ZL.js.map} +0 -0
  858. /package/dist/{chunk-6P5XCKSD.js.map → chunk-WEHIQYQH.js.map} +0 -0
  859. /package/dist/{chunk-VWM3DAVB.js.map → chunk-WHQHTNT7.js.map} +0 -0
  860. /package/dist/{chunk-VRIYFLBA.js.map → chunk-X6Y5MXTH.js.map} +0 -0
  861. /package/dist/{chunk-3QSIU3UT.js.map → chunk-XJ47GS53.js.map} +0 -0
  862. /package/dist/{chunk-2OV5NVE7.js.map → chunk-XS6DLN67.js.map} +0 -0
  863. /package/dist/{chunk-FRP6D2DM.js.map → chunk-Y5TWPBNW.js.map} +0 -0
  864. /package/dist/{chunk-JJZ2LW6T.js.map → chunk-ZHOJOT6S.js.map} +0 -0
  865. /package/dist/{collection-facade-LVD22JLM.js.map → collection-facade-DWA735G2.js.map} +0 -0
  866. /package/dist/{computed-EXDMQODG.js.map → computed-ORCGM5JE.js.map} +0 -0
  867. /package/dist/{dead-filter-HQIE2YG7.js.map → dead-filter-OV5FGKOG.js.map} +0 -0
  868. /package/dist/{delegation-BJP73GAP.js.map → delegation-YVSHMIZZ.js.map} +0 -0
  869. /package/dist/{derive-BME7HDWO.js.map → derive-BUO555L5.js.map} +0 -0
  870. /package/dist/{enclave-NHORSWSF.js.map → enclave-XXFUKJC6.js.map} +0 -0
  871. /package/dist/{executor-FE6X4LFX.js.map → executor-6OCCE5VM.js.map} +0 -0
  872. /package/dist/{executor-KSHKRJXP.js.map → executor-JFVAJY42.js.map} +0 -0
  873. /package/dist/{executor-ZHTJJICG.js.map → executor-UPSH5O3F.js.map} +0 -0
  874. /package/dist/{export-accessible-DACHM5VT.js.map → export-accessible-L4A2QZA5.js.map} +0 -0
  875. /package/dist/{extract-partition-RNENZZ4T.js.map → extract-partition-ZHQ4RGGM.js.map} +0 -0
  876. /package/dist/{fanout-sidecar-OFWN3NM7.js.map → fanout-sidecar-IO2KDUWV.js.map} +0 -0
  877. /package/dist/{find-BNGBJNKP.js.map → find-ZFZDZQ2U.js.map} +0 -0
  878. /package/dist/{issue-NDI4CVZU.js.map → issue-OG4V23SQ.js.map} +0 -0
  879. /package/dist/{ledger-6NDS2EO4.js.map → ledger-UAQKPWNM.js.map} +0 -0
  880. /package/dist/{liberate-HN3RIGIP.js.map → liberate-GFUQJRK5.js.map} +0 -0
  881. /package/dist/{link-set-SJB2MVJV.js.map → link-set-DGYUOFVD.js.map} +0 -0
  882. /package/dist/{noydb-BWF6EPIR.js.map → noydb-AKH4AMCR.js.map} +0 -0
  883. /package/dist/{policy-WGNAG5H6.js.map → policy-5POYLI26.js.map} +0 -0
  884. /package/dist/{public-envelope-EJLVIFX7.js.map → public-envelope-GOG4LUM7.js.map} +0 -0
  885. /package/dist/{register-SBIX7TVV.js.map → register-ZI7YI7US.js.map} +0 -0
  886. /package/dist/{registry-3EQG6OOE.js.map → registry-DZ2T4LL7.js.map} +0 -0
  887. /package/dist/{registry-CA327ACV.js.map → registry-NVWEQ2GU.js.map} +0 -0
  888. /package/dist/{registry-E7OXOTSV.js.map → registry-SEKL74ET.js.map} +0 -0
  889. /package/dist/{request-withdrawal-KAH2AAXC.js.map → request-withdrawal-ZP3JIRVS.js.map} +0 -0
  890. /package/dist/{reveal-R3JLHMUF.js.map → reveal-NPVROV4D.js.map} +0 -0
  891. /package/dist/{revoke-IXLOJ3IH.js.map → revoke-VF6TAJK2.js.map} +0 -0
  892. /package/dist/{signer-Y46N2GJ3.js.map → signer-DRDDCCHW.js.map} +0 -0
  893. /package/dist/{stale-Z7IW6RIL.js.map → stale-TJXFQKOJ.js.map} +0 -0
  894. /package/dist/{storage-ADNP2UWI.js.map → storage-GR7KZRH4.js.map} +0 -0
  895. /package/dist/{store-coordination-provider-DTDMI6VL.js.map → store-coordination-provider-5KDS2RRP.js.map} +0 -0
  896. /package/dist/{verify-JPF2YR5E.js.map → verify-QK76NJ4G.js.map} +0 -0
  897. /package/dist/{walk-XYA2O3LW.js.map → walk-XQCBKSBW.js.map} +0 -0
  898. /package/dist/{withdraw-accessible-WLV4MTEN.js.map → withdraw-accessible-FMN4LPJZ.js.map} +0 -0
@@ -0,0 +1,823 @@
1
+ import {
2
+ pickLocale
3
+ } from "./chunk-FJTWLQV3.js";
4
+ import {
5
+ sha256Hex
6
+ } from "./chunk-37WOJQWY.js";
7
+ import {
8
+ BundleIntegrityError,
9
+ BundleSealMismatchError,
10
+ ValidationError
11
+ } from "./chunk-FZCGIJEJ.js";
12
+
13
+ // src/with-pod/format.ts
14
+ var NOYDB_BUNDLE_MAGIC = new Uint8Array([78, 68, 66, 49]);
15
+ var NOYDB_BUNDLE_PREFIX_BYTES = 10;
16
+ var NOYDB_BUNDLE_FORMAT_VERSION = 1;
17
+ var FLAG_COMPRESSED = 1;
18
+ var FLAG_HAS_INTEGRITY_HASH = 2;
19
+ var COMPRESSION_NONE = 0;
20
+ var COMPRESSION_GZIP = 1;
21
+ var COMPRESSION_BROTLI = 2;
22
+ var ALLOWED_HEADER_KEYS = /* @__PURE__ */ new Set([
23
+ "formatVersion",
24
+ "handle",
25
+ "bodyBytes",
26
+ "bodySha256",
27
+ "publicEnvelope",
28
+ "autoUnlock",
29
+ "bundleKind",
30
+ "transferSeal"
31
+ ]);
32
+ function validateBundleHeader(parsed) {
33
+ if (parsed === null || typeof parsed !== "object") {
34
+ throw new Error(
35
+ `.noydb bundle header must be a JSON object, got ${parsed === null ? "null" : typeof parsed}`
36
+ );
37
+ }
38
+ for (const key of Object.keys(parsed)) {
39
+ if (!ALLOWED_HEADER_KEYS.has(key)) {
40
+ throw new Error(
41
+ `.noydb bundle header contains forbidden key "${key}". Only minimum-disclosure fields are allowed: ${[...ALLOWED_HEADER_KEYS].join(", ")}.`
42
+ );
43
+ }
44
+ }
45
+ const h = parsed;
46
+ if (typeof h["formatVersion"] !== "number" || h["formatVersion"] !== NOYDB_BUNDLE_FORMAT_VERSION) {
47
+ throw new Error(
48
+ `.noydb bundle header.formatVersion must be ${NOYDB_BUNDLE_FORMAT_VERSION}, got ${String(h["formatVersion"])}. The reader does not support forward-compat versions; upgrade the reader to handle newer bundles.`
49
+ );
50
+ }
51
+ if (typeof h["handle"] !== "string" || !/^[0-9A-HJKMNP-TV-Z]{26}$/.test(h["handle"])) {
52
+ throw new Error(
53
+ `.noydb bundle header.handle must be a 26-character Crockford base32 ULID, got ${typeof h["handle"] === "string" ? `"${h["handle"]}"` : String(h["handle"])}.`
54
+ );
55
+ }
56
+ if (typeof h["bodyBytes"] !== "number" || !Number.isInteger(h["bodyBytes"]) || h["bodyBytes"] < 0) {
57
+ throw new Error(
58
+ `.noydb bundle header.bodyBytes must be a non-negative integer, got ${String(h["bodyBytes"])}.`
59
+ );
60
+ }
61
+ if (typeof h["bodySha256"] !== "string" || !/^[0-9a-f]{64}$/.test(h["bodySha256"])) {
62
+ throw new Error(
63
+ `.noydb bundle header.bodySha256 must be a 64-character lowercase hex string, got ${typeof h["bodySha256"] === "string" ? `"${h["bodySha256"]}"` : String(h["bodySha256"])}.`
64
+ );
65
+ }
66
+ if (h["publicEnvelope"] !== void 0) {
67
+ const env = h["publicEnvelope"];
68
+ if (env === null || typeof env !== "object" || Array.isArray(env)) {
69
+ throw new Error(
70
+ `.noydb bundle header.publicEnvelope must be a JSON object when present, got ${typeof env}.`
71
+ );
72
+ }
73
+ const e = env;
74
+ if (e["_noydb_public"] !== 1) {
75
+ throw new Error(
76
+ `.noydb bundle header.publicEnvelope._noydb_public must be 1, got ${String(e["_noydb_public"])}.`
77
+ );
78
+ }
79
+ if (typeof e["version"] !== "number" || !Number.isInteger(e["version"]) || e["version"] < 1) {
80
+ throw new Error(
81
+ `.noydb bundle header.publicEnvelope.version must be a positive integer, got ${String(e["version"])}.`
82
+ );
83
+ }
84
+ }
85
+ if (h["autoUnlock"] !== void 0) {
86
+ if (h["autoUnlock"] !== "unsealed" && h["autoUnlock"] !== "sealed") {
87
+ const got = typeof h["autoUnlock"] === "string" ? `"${h["autoUnlock"]}"` : typeof h["autoUnlock"];
88
+ throw new Error(
89
+ `.noydb bundle header.autoUnlock must be 'unsealed' or 'sealed' when present, got ${got}.`
90
+ );
91
+ }
92
+ }
93
+ if (h["bundleKind"] !== void 0) {
94
+ if (h["bundleKind"] !== "snapshot" && h["bundleKind"] !== "extracted-partition") {
95
+ const got = typeof h["bundleKind"] === "string" ? `"${h["bundleKind"]}"` : typeof h["bundleKind"];
96
+ throw new Error(
97
+ `.noydb bundle header.bundleKind must be 'snapshot' or 'extracted-partition' when present, got ${got}.`
98
+ );
99
+ }
100
+ }
101
+ if (h["transferSeal"] !== void 0) {
102
+ const ts = h["transferSeal"];
103
+ if (ts === null || typeof ts !== "object" || Array.isArray(ts)) {
104
+ throw new Error(`.noydb bundle header.transferSeal must be a JSON object when present, got ${typeof ts}.`);
105
+ }
106
+ const t = ts;
107
+ if (t["v"] !== 1) {
108
+ throw new Error(`.noydb bundle header.transferSeal.v must be 1, got ${String(t["v"])}.`);
109
+ }
110
+ if (t["alg"] !== "aes-256-gcm-pre-shared") {
111
+ throw new Error(`.noydb bundle header.transferSeal.alg must be 'aes-256-gcm-pre-shared', got ${String(t["alg"])}.`);
112
+ }
113
+ if (typeof t["sealId"] !== "string" || t["sealId"].length === 0) {
114
+ throw new Error(`.noydb bundle header.transferSeal.sealId must be a non-empty string, got ${String(t["sealId"])}.`);
115
+ }
116
+ }
117
+ const isExtracted = h["bundleKind"] === "extracted-partition";
118
+ const hasSeal = h["transferSeal"] !== void 0;
119
+ if (hasSeal && !isExtracted) {
120
+ throw new Error(
121
+ `.noydb bundle header.transferSeal requires bundleKind === 'extracted-partition'.`
122
+ );
123
+ }
124
+ if (isExtracted && !hasSeal) {
125
+ throw new Error(
126
+ `.noydb bundle header with bundleKind === 'extracted-partition' must carry a transferSeal indicator.`
127
+ );
128
+ }
129
+ if (isExtracted && h["autoUnlock"] !== void 0) {
130
+ throw new Error(
131
+ `.noydb bundle header cannot carry both autoUnlock and bundleKind === 'extracted-partition' \u2014 an extracted partition is unlocked via its transfer seal, not an auto-credential.`
132
+ );
133
+ }
134
+ }
135
+ function encodeBundleHeader(header) {
136
+ validateBundleHeader(header);
137
+ const json = JSON.stringify({
138
+ formatVersion: header.formatVersion,
139
+ handle: header.handle,
140
+ bodyBytes: header.bodyBytes,
141
+ bodySha256: header.bodySha256,
142
+ ...header.publicEnvelope !== void 0 ? { publicEnvelope: header.publicEnvelope } : {},
143
+ ...header.autoUnlock !== void 0 ? { autoUnlock: header.autoUnlock } : {},
144
+ ...header.bundleKind !== void 0 ? { bundleKind: header.bundleKind } : {},
145
+ ...header.transferSeal !== void 0 ? { transferSeal: header.transferSeal } : {}
146
+ });
147
+ return new TextEncoder().encode(json);
148
+ }
149
+ function decodeBundleHeader(bytes) {
150
+ const json = new TextDecoder("utf-8", { fatal: true }).decode(bytes);
151
+ let parsed;
152
+ try {
153
+ parsed = JSON.parse(json);
154
+ } catch (err) {
155
+ throw new Error(
156
+ `.noydb bundle header is not valid JSON: ${err.message}`
157
+ );
158
+ }
159
+ validateBundleHeader(parsed);
160
+ return parsed;
161
+ }
162
+ function readUint32BE(bytes, offset) {
163
+ return (bytes[offset] << 24 >>> 0) + (bytes[offset + 1] << 16) + (bytes[offset + 2] << 8) + bytes[offset + 3];
164
+ }
165
+ function writeUint32BE(bytes, offset, value) {
166
+ bytes[offset] = value >>> 24 & 255;
167
+ bytes[offset + 1] = value >>> 16 & 255;
168
+ bytes[offset + 2] = value >>> 8 & 255;
169
+ bytes[offset + 3] = value & 255;
170
+ }
171
+ function hasNoydbBundleMagic(bytes) {
172
+ if (bytes.length < NOYDB_BUNDLE_MAGIC.length) return false;
173
+ for (let i = 0; i < NOYDB_BUNDLE_MAGIC.length; i++) {
174
+ if (bytes[i] !== NOYDB_BUNDLE_MAGIC[i]) return false;
175
+ }
176
+ return true;
177
+ }
178
+
179
+ // src/with-pod/bundle.ts
180
+ function toAutoCredentials(m) {
181
+ return Object.fromEntries(
182
+ Object.entries(m).map(([u, value]) => [u, { kind: "passphrase", value }])
183
+ );
184
+ }
185
+ function normalizeAutoUnlock(opts) {
186
+ const set = [
187
+ opts.autoCredentials,
188
+ opts.sealedCredentials,
189
+ opts.autoPassphrases,
190
+ opts.sealedPassphrases
191
+ ].filter((v) => v !== void 0).length;
192
+ if (set === 0) return null;
193
+ if (set > 1) {
194
+ throw new ValidationError(
195
+ "writePod: only one of autoCredentials / sealedCredentials / autoPassphrases / sealedPassphrases may be set."
196
+ );
197
+ }
198
+ if (opts.autoCredentials !== void 0) {
199
+ return { mode: "unsealed", perUser: opts.autoCredentials.perUser };
200
+ }
201
+ if (opts.autoPassphrases !== void 0) {
202
+ return { mode: "unsealed", perUser: toAutoCredentials(opts.autoPassphrases.perUser) };
203
+ }
204
+ if (opts.sealedCredentials !== void 0) {
205
+ if (opts.sealedCredentials.mode === "recipient-target") {
206
+ const perUser = {};
207
+ const hints = {};
208
+ for (const [userId, entry] of Object.entries(opts.sealedCredentials.perUser)) {
209
+ perUser[userId] = entry.credential;
210
+ hints[userId] = entry.hint;
211
+ }
212
+ return { mode: "sealed-recipient", provider: opts.sealedCredentials.provider, perUser, hints };
213
+ }
214
+ return { mode: "sealed-self", provider: opts.sealedCredentials.provider, perUser: opts.sealedCredentials.perUser };
215
+ }
216
+ return {
217
+ mode: "sealed-self",
218
+ provider: opts.sealedPassphrases.provider,
219
+ perUser: toAutoCredentials(opts.sealedPassphrases.perUser)
220
+ };
221
+ }
222
+ function validateAutoUnlockOptions(opts, normalized) {
223
+ if (normalized === null) return null;
224
+ const VALID_KINDS = /* @__PURE__ */ new Set(["passphrase", "password", "pin"]);
225
+ for (const [userId, cred] of Object.entries(normalized.perUser)) {
226
+ if (!VALID_KINDS.has(cred.kind)) {
227
+ throw new ValidationError(
228
+ `writePod: credential for user '${userId}' has unsupported kind '${cred.kind}'. auto-unlock supports passphrase/password/pin only; WebAuthn is hardware-bound and cannot be bundled.`
229
+ );
230
+ }
231
+ }
232
+ if (normalized.mode === "unsealed") {
233
+ const policy = opts.autoCredentials?.policy ?? opts.autoPassphrases?.policy;
234
+ if (policy !== "public-by-design") {
235
+ throw new ValidationError(
236
+ 'writePod: `autoCredentials` (or `autoPassphrases`) requires `policy: "public-by-design"`. This is an explicit opt-in marker \u2014 bundling plaintext credentials is safe only when those credentials are intended to be public (demo data, sample vaults). For production credentials, use `sealedCredentials` instead.'
237
+ );
238
+ }
239
+ const userCount2 = Object.keys(normalized.perUser).length;
240
+ if (userCount2 === 0) {
241
+ throw new ValidationError(
242
+ "writePod: `autoCredentials.perUser` (or `autoPassphrases.perUser`) must have at least one entry."
243
+ );
244
+ }
245
+ return "unsealed";
246
+ }
247
+ if (normalized.mode === "sealed-recipient") {
248
+ const provider = normalized.provider;
249
+ if (provider === void 0 || typeof provider.publishRecipientHint !== "function" || typeof provider.sealForRecipient !== "function") {
250
+ throw new ValidationError(
251
+ "writePod: `sealedCredentials.provider` for mode 'recipient-target' must be a RecipientSealer (publishRecipientHint + sealForRecipient). Self-only providers (MemorySealingKeyProvider, at-macos-keychain, etc.) do not satisfy this contract."
252
+ );
253
+ }
254
+ const hints = normalized.hints;
255
+ if (hints === void 0) {
256
+ throw new Error("unreachable \u2014 sealed-recipient normalization must populate hints");
257
+ }
258
+ for (const userId of Object.keys(normalized.perUser)) {
259
+ const hint = hints[userId];
260
+ if (hint === void 0) {
261
+ throw new ValidationError(
262
+ `writePod: \`sealedCredentials.perUser['${userId}']\` missing required \`hint\` for mode 'recipient-target'.`
263
+ );
264
+ }
265
+ if (hint.v !== 1) {
266
+ throw new ValidationError(
267
+ `writePod: \`sealedCredentials.perUser['${userId}'].hint.v\` must be 1 (got ${String(hint.v)}).`
268
+ );
269
+ }
270
+ if (typeof hint.pid !== "string" || hint.pid.length === 0) {
271
+ throw new ValidationError(
272
+ `writePod: \`sealedCredentials.perUser['${userId}'].hint.pid\` must be a non-empty string identifying the recipient.`
273
+ );
274
+ }
275
+ if (hint.alg !== "rsa-oaep-sha256") {
276
+ throw new ValidationError(
277
+ `writePod: \`sealedCredentials.perUser['${userId}'].hint.alg\` must be 'rsa-oaep-sha256' in slice 1 (got '${String(hint.alg)}').`
278
+ );
279
+ }
280
+ }
281
+ const userCount2 = Object.keys(normalized.perUser).length;
282
+ if (userCount2 === 0) {
283
+ throw new ValidationError(
284
+ "writePod: `sealedCredentials.perUser` must have at least one entry."
285
+ );
286
+ }
287
+ return "sealed";
288
+ }
289
+ const selfTargetMode = opts.sealedCredentials?.mode ?? opts.sealedPassphrases?.mode;
290
+ if (selfTargetMode !== "self-target") {
291
+ throw new ValidationError(
292
+ `writePod: \`sealedCredentials.mode\` (or \`sealedPassphrases.mode\`) must be 'self-target' or 'recipient-target' (got '${String(selfTargetMode)}').`
293
+ );
294
+ }
295
+ if (normalized.provider === void 0) {
296
+ throw new ValidationError(
297
+ "writePod: `sealedCredentials.provider` (or `sealedPassphrases.provider`) is required (a `SealingKeyProvider`)."
298
+ );
299
+ }
300
+ const userCount = Object.keys(normalized.perUser).length;
301
+ if (userCount === 0) {
302
+ throw new ValidationError(
303
+ "writePod: `sealedCredentials.perUser` (or `sealedPassphrases.perUser`) must have at least one entry."
304
+ );
305
+ }
306
+ return "sealed";
307
+ }
308
+ async function buildAutoUnlockWrapper(dumpJson, normalized) {
309
+ if (normalized.mode === "unsealed") {
310
+ return {
311
+ _noydb_bundle_body: 1,
312
+ dump: dumpJson,
313
+ _autoUnlock: {
314
+ kind: "unsealed",
315
+ perUser: { ...normalized.perUser }
316
+ }
317
+ };
318
+ }
319
+ const provider = normalized.provider;
320
+ if (provider === void 0) {
321
+ throw new Error("unreachable \u2014 validation should have caught this");
322
+ }
323
+ const sealedPerUser = {};
324
+ const encoder = new TextEncoder();
325
+ if (normalized.mode === "sealed-recipient") {
326
+ const recipientSealer = provider;
327
+ const hints = normalized.hints;
328
+ if (hints === void 0) {
329
+ throw new Error("unreachable \u2014 sealed-recipient normalization must populate hints");
330
+ }
331
+ for (const [userId, cred] of Object.entries(normalized.perUser)) {
332
+ const hint = hints[userId];
333
+ const sealed = await recipientSealer.sealForRecipient(encoder.encode(cred.value), hint);
334
+ sealedPerUser[userId] = {
335
+ pid: hint.pid,
336
+ // use the recipient's pid, not the sender's
337
+ sealed: bytesToBase64(sealed),
338
+ alg: "aes-256-gcm",
339
+ kind: cred.kind,
340
+ hint
341
+ };
342
+ }
343
+ } else {
344
+ const selfSealer = provider;
345
+ for (const [userId, cred] of Object.entries(normalized.perUser)) {
346
+ const sealed = await selfSealer.seal(encoder.encode(cred.value));
347
+ sealedPerUser[userId] = {
348
+ pid: selfSealer.id,
349
+ sealed: bytesToBase64(sealed),
350
+ alg: "aes-256-gcm",
351
+ kind: cred.kind
352
+ };
353
+ }
354
+ }
355
+ return {
356
+ _noydb_bundle_body: 1,
357
+ dump: dumpJson,
358
+ _autoUnlock: { kind: "sealed", perUser: sealedPerUser }
359
+ };
360
+ }
361
+ function parseAutoUnlockBody(bodyString) {
362
+ let parsed;
363
+ try {
364
+ parsed = JSON.parse(bodyString);
365
+ } catch (err) {
366
+ throw new BundleIntegrityError(
367
+ "header declared autoUnlock but body could not be parsed as JSON wrapper: " + (err instanceof Error ? err.message : String(err))
368
+ );
369
+ }
370
+ if (typeof parsed !== "object" || parsed === null) {
371
+ throw new BundleIntegrityError("autoUnlock body is not a JSON object");
372
+ }
373
+ const obj = parsed;
374
+ if (obj["_noydb_bundle_body"] !== 1) {
375
+ throw new BundleIntegrityError(
376
+ "autoUnlock body missing `_noydb_bundle_body: 1` discriminator"
377
+ );
378
+ }
379
+ if (typeof obj["dump"] !== "string") {
380
+ throw new BundleIntegrityError("autoUnlock body must carry a string `dump` field");
381
+ }
382
+ const blob = obj["_autoUnlock"];
383
+ if (typeof blob !== "object" || blob === null) {
384
+ throw new BundleIntegrityError("autoUnlock body missing `_autoUnlock` blob");
385
+ }
386
+ const blobObj = blob;
387
+ const kind = blobObj["kind"];
388
+ if (kind !== "unsealed" && kind !== "sealed") {
389
+ throw new BundleIntegrityError(
390
+ `autoUnlock blob has invalid kind ${String(kind)}; expected 'unsealed' or 'sealed'`
391
+ );
392
+ }
393
+ return {
394
+ dump: obj["dump"],
395
+ blob
396
+ };
397
+ }
398
+ function buildExtractedPartitionWrapper(dumpJson, seal) {
399
+ return { _noydb_bundle_body: 1, dump: dumpJson, _transferSeal: seal };
400
+ }
401
+ function parseExtractedPartitionBody(bodyString) {
402
+ let parsed;
403
+ try {
404
+ parsed = JSON.parse(bodyString);
405
+ } catch (err) {
406
+ throw new BundleIntegrityError(
407
+ "header declared extracted-partition but body could not be parsed as JSON wrapper: " + (err instanceof Error ? err.message : String(err))
408
+ );
409
+ }
410
+ if (typeof parsed !== "object" || parsed === null) {
411
+ throw new BundleIntegrityError("extracted-partition body is not a JSON object");
412
+ }
413
+ const obj = parsed;
414
+ if (obj["_noydb_bundle_body"] !== 1) {
415
+ throw new BundleIntegrityError(
416
+ "extracted-partition body missing `_noydb_bundle_body: 1` discriminator"
417
+ );
418
+ }
419
+ if (typeof obj["dump"] !== "string") {
420
+ throw new BundleIntegrityError("extracted-partition body must carry a string `dump` field");
421
+ }
422
+ const seal = obj["_transferSeal"];
423
+ if (typeof seal !== "object" || seal === null) {
424
+ throw new BundleIntegrityError("extracted-partition body missing `_transferSeal` blob");
425
+ }
426
+ const s = seal;
427
+ if (s["v"] !== 1 || s["alg"] !== "aes-256-gcm-pre-shared" || typeof s["sealId"] !== "string" || typeof s["payload"] !== "string") {
428
+ throw new BundleIntegrityError("extracted-partition `_transferSeal` blob is malformed");
429
+ }
430
+ return { dump: obj["dump"], seal };
431
+ }
432
+ function coerceUnsealed(entry) {
433
+ if (typeof entry === "string") return { kind: "passphrase", value: entry };
434
+ return entry;
435
+ }
436
+ async function resolveAutoUnlock(blob, opts) {
437
+ if (blob.kind === "unsealed") {
438
+ const resolved = {};
439
+ for (const [userId, entry] of Object.entries(blob.perUser)) {
440
+ resolved[userId] = coerceUnsealed(entry);
441
+ }
442
+ return { kind: "unsealed", perUser: resolved };
443
+ }
444
+ if (opts.sealingProviders === void 0 || opts.sealingProviders.length === 0) {
445
+ const passthrough = {};
446
+ for (const [userId, entry] of Object.entries(blob.perUser)) {
447
+ passthrough[userId] = { kind: entry.kind ?? "passphrase", value: entry.sealed };
448
+ }
449
+ return { kind: "sealed", perUser: passthrough };
450
+ }
451
+ const providersByPid = /* @__PURE__ */ new Map();
452
+ for (const p of opts.sealingProviders) providersByPid.set(p.id, p);
453
+ const decoder = new TextDecoder();
454
+ const unsealedMap = {};
455
+ for (const [userId, entry] of Object.entries(blob.perUser)) {
456
+ const credKind = entry.kind ?? "passphrase";
457
+ const provider = providersByPid.get(entry.pid);
458
+ if (provider === void 0) {
459
+ if (opts.attemptUnsealAcrossProviders === true) {
460
+ let opened = null;
461
+ for (const candidate of opts.sealingProviders) {
462
+ try {
463
+ const plaintextBytes2 = await candidate.unseal(base64ToBytes(entry.sealed));
464
+ opened = decoder.decode(plaintextBytes2);
465
+ break;
466
+ } catch {
467
+ }
468
+ }
469
+ if (opened === null) {
470
+ if (entry.hint !== void 0) {
471
+ unsealedMap[userId] = { kind: credKind, value: entry.sealed };
472
+ continue;
473
+ }
474
+ throw new BundleSealMismatchError(userId, entry.pid);
475
+ }
476
+ unsealedMap[userId] = { kind: credKind, value: opened };
477
+ continue;
478
+ }
479
+ if (entry.hint !== void 0) {
480
+ unsealedMap[userId] = { kind: credKind, value: entry.sealed };
481
+ continue;
482
+ }
483
+ throw new BundleSealMismatchError(userId, entry.pid);
484
+ }
485
+ const plaintextBytes = await provider.unseal(base64ToBytes(entry.sealed));
486
+ unsealedMap[userId] = { kind: credKind, value: decoder.decode(plaintextBytes) };
487
+ }
488
+ return { kind: "sealed", perUser: unsealedMap };
489
+ }
490
+ function bytesToBase64(bytes) {
491
+ let binary = "";
492
+ for (let i = 0; i < bytes.length; i++) binary += String.fromCharCode(bytes[i]);
493
+ return btoa(binary);
494
+ }
495
+ function base64ToBytes(b64) {
496
+ const binary = atob(b64);
497
+ const out = new Uint8Array(binary.length);
498
+ for (let i = 0; i < binary.length; i++) out[i] = binary.charCodeAt(i);
499
+ return out;
500
+ }
501
+ var cachedBrotliSupport = null;
502
+ function supportsBrotliCompression() {
503
+ if (cachedBrotliSupport !== null) return cachedBrotliSupport;
504
+ try {
505
+ new CompressionStream("br");
506
+ cachedBrotliSupport = true;
507
+ } catch {
508
+ cachedBrotliSupport = false;
509
+ }
510
+ return cachedBrotliSupport;
511
+ }
512
+ function resetBrotliSupportCache() {
513
+ cachedBrotliSupport = null;
514
+ }
515
+ function selectCompression(option) {
516
+ const choice = option ?? "auto";
517
+ if (choice === "none") return { format: COMPRESSION_NONE, streamFormat: null };
518
+ if (choice === "gzip") return { format: COMPRESSION_GZIP, streamFormat: "gzip" };
519
+ if (choice === "brotli") {
520
+ if (!supportsBrotliCompression()) {
521
+ throw new Error(
522
+ `writePod({ compression: 'brotli' }) is not supported on this runtime. Brotli requires Node 22+, Chrome 124+, or Firefox 122+. Use { compression: 'auto' } to fall back to gzip silently, or { compression: 'gzip' } to be explicit.`
523
+ );
524
+ }
525
+ return { format: COMPRESSION_BROTLI, streamFormat: "br" };
526
+ }
527
+ if (supportsBrotliCompression()) {
528
+ return { format: COMPRESSION_BROTLI, streamFormat: "br" };
529
+ }
530
+ return { format: COMPRESSION_GZIP, streamFormat: "gzip" };
531
+ }
532
+ async function pumpThroughStream(input, stream) {
533
+ const readable = new Blob([input]).stream().pipeThrough(stream);
534
+ const reader = readable.getReader();
535
+ const chunks = [];
536
+ let total = 0;
537
+ for (; ; ) {
538
+ const { value, done } = await reader.read();
539
+ if (done) break;
540
+ if (value) {
541
+ chunks.push(value);
542
+ total += value.length;
543
+ }
544
+ }
545
+ const out = new Uint8Array(total);
546
+ let offset = 0;
547
+ for (const chunk of chunks) {
548
+ out.set(chunk, offset);
549
+ offset += chunk.length;
550
+ }
551
+ return out;
552
+ }
553
+ async function sha256Hex2(bytes) {
554
+ const copy = new Uint8Array(bytes.length);
555
+ copy.set(bytes);
556
+ return sha256Hex(copy);
557
+ }
558
+ function concatBytes(parts) {
559
+ let total = 0;
560
+ for (const p of parts) total += p.length;
561
+ const out = new Uint8Array(total);
562
+ let offset = 0;
563
+ for (const p of parts) {
564
+ out.set(p, offset);
565
+ offset += p.length;
566
+ }
567
+ return out;
568
+ }
569
+ async function applyRecipientRewrap(vault, dumpJson, opts) {
570
+ if (opts.exportPassphrase === void 0 && opts.recipients === void 0) {
571
+ return dumpJson;
572
+ }
573
+ const recipients = opts.recipients ?? [
574
+ {
575
+ id: vault.userId,
576
+ passphrase: opts.exportPassphrase,
577
+ role: vault.role
578
+ }
579
+ ];
580
+ const recipientKeyrings = await vault.buildBundleRecipientKeyrings(recipients);
581
+ const backup = JSON.parse(dumpJson);
582
+ backup.keyrings = recipientKeyrings;
583
+ return JSON.stringify(backup);
584
+ }
585
+ function applySliceFilters(dumpJson, opts) {
586
+ const collectionsFilter = opts.collections ? new Set(opts.collections) : null;
587
+ const sinceMs = opts.since !== void 0 ? new Date(opts.since).getTime() : null;
588
+ if (collectionsFilter === null && sinceMs === null) return dumpJson;
589
+ const backup = JSON.parse(dumpJson);
590
+ if (backup.collections && typeof backup.collections === "object") {
591
+ const next = {};
592
+ for (const [name, records] of Object.entries(backup.collections)) {
593
+ if (collectionsFilter && !collectionsFilter.has(name)) continue;
594
+ if (sinceMs === null) {
595
+ next[name] = records;
596
+ continue;
597
+ }
598
+ const kept = {};
599
+ for (const [id, env] of Object.entries(records)) {
600
+ const envTs = env._ts ? new Date(env._ts).getTime() : NaN;
601
+ if (Number.isFinite(envTs) && envTs >= sinceMs) {
602
+ kept[id] = env;
603
+ }
604
+ }
605
+ next[name] = kept;
606
+ }
607
+ backup.collections = next;
608
+ }
609
+ return JSON.stringify(backup);
610
+ }
611
+ async function applySatelliteLivenessFilter(vault, dumpJson) {
612
+ const backup = JSON.parse(dumpJson);
613
+ if (!backup.collections || typeof backup.collections !== "object") return dumpJson;
614
+ if (typeof vault._introspectState !== "function") return dumpJson;
615
+ const { adapter, name, getDEK } = vault._introspectState();
616
+ const { liveBaseIdSetsForBundle } = await import("./dead-filter-OV5FGKOG.js");
617
+ const satLive = await liveBaseIdSetsForBundle(adapter, name, Object.keys(backup.collections), getDEK);
618
+ if (satLive.size === 0) return dumpJson;
619
+ const next = {};
620
+ for (const [collName, records] of Object.entries(backup.collections)) {
621
+ const live = satLive.get(collName);
622
+ if (!live) {
623
+ next[collName] = records;
624
+ continue;
625
+ }
626
+ const kept = {};
627
+ for (const [id, env] of Object.entries(records)) {
628
+ if (live.has(id)) kept[id] = env;
629
+ }
630
+ next[collName] = kept;
631
+ }
632
+ backup.collections = next;
633
+ return JSON.stringify(backup);
634
+ }
635
+ async function applyPlaintextFilters(vault, dumpJson, opts) {
636
+ if (opts.where === void 0 && opts.tierAtMost === void 0) {
637
+ return dumpJson;
638
+ }
639
+ const backup = JSON.parse(dumpJson);
640
+ if (!backup.collections || typeof backup.collections !== "object") {
641
+ return dumpJson;
642
+ }
643
+ const tierCeiling = opts.tierAtMost;
644
+ const where = opts.where;
645
+ const next = {};
646
+ for (const [collName, records] of Object.entries(backup.collections)) {
647
+ const kept = {};
648
+ for (const [id, env] of Object.entries(records)) {
649
+ if (tierCeiling !== void 0) {
650
+ const tier = env._tier ?? 0;
651
+ if (tier > tierCeiling) continue;
652
+ }
653
+ if (where !== void 0) {
654
+ const record = await vault._decryptEnvelopeForBundleFilter(
655
+ env,
656
+ collName
657
+ );
658
+ const ok = await where(record, { collection: collName, id });
659
+ if (!ok) continue;
660
+ }
661
+ kept[id] = env;
662
+ }
663
+ next[collName] = kept;
664
+ }
665
+ backup.collections = next;
666
+ return JSON.stringify(backup);
667
+ }
668
+ async function assembleBundleContainer(opts) {
669
+ const dumpBytes = new TextEncoder().encode(opts.bodyJsonStr);
670
+ const { format, streamFormat } = selectCompression(opts.compression);
671
+ const body = streamFormat === null ? dumpBytes : await pumpThroughStream(dumpBytes, new CompressionStream(streamFormat));
672
+ const bodySha256 = await sha256Hex2(body);
673
+ const header = {
674
+ formatVersion: NOYDB_BUNDLE_FORMAT_VERSION,
675
+ handle: opts.handle,
676
+ bodyBytes: body.length,
677
+ bodySha256,
678
+ ...opts.headerExtras?.publicEnvelope !== void 0 ? { publicEnvelope: opts.headerExtras.publicEnvelope } : {},
679
+ ...opts.headerExtras?.autoUnlock !== void 0 ? { autoUnlock: opts.headerExtras.autoUnlock } : {},
680
+ ...opts.headerExtras?.bundleKind !== void 0 ? { bundleKind: opts.headerExtras.bundleKind } : {},
681
+ ...opts.headerExtras?.transferSeal !== void 0 ? { transferSeal: opts.headerExtras.transferSeal } : {}
682
+ };
683
+ const headerBytes = encodeBundleHeader(header);
684
+ const prefix = new Uint8Array(NOYDB_BUNDLE_PREFIX_BYTES);
685
+ prefix.set(NOYDB_BUNDLE_MAGIC, 0);
686
+ prefix[4] = (streamFormat === null ? 0 : FLAG_COMPRESSED) | FLAG_HAS_INTEGRITY_HASH;
687
+ prefix[5] = format;
688
+ writeUint32BE(prefix, 6, headerBytes.length);
689
+ return concatBytes([prefix, headerBytes, body]);
690
+ }
691
+ async function writePod(vault, opts = {}) {
692
+ if (opts.exportPassphrase !== void 0 && opts.recipients !== void 0) {
693
+ throw new Error(
694
+ "writePod: pass either exportPassphrase or recipients, not both"
695
+ );
696
+ }
697
+ const normalizedAutoUnlock = normalizeAutoUnlock(opts);
698
+ const autoUnlockMode = validateAutoUnlockOptions(opts, normalizedAutoUnlock);
699
+ const handle = await vault.getBundleHandle();
700
+ const dumpJson = await vault.dump();
701
+ const satelliteFiltered = await applySatelliteLivenessFilter(vault, dumpJson);
702
+ const rekeyed = await applyRecipientRewrap(vault, satelliteFiltered, opts);
703
+ const plainFiltered = await applyPlaintextFilters(vault, rekeyed, opts);
704
+ const filtered = applySliceFilters(plainFiltered, opts);
705
+ const bodyJsonStr = normalizedAutoUnlock === null ? filtered : JSON.stringify(await buildAutoUnlockWrapper(filtered, normalizedAutoUnlock));
706
+ const publicEnvelope = await vault.getPublicEnvelope();
707
+ return assembleBundleContainer({
708
+ handle,
709
+ bodyJsonStr,
710
+ compression: opts.compression,
711
+ headerExtras: {
712
+ ...publicEnvelope !== void 0 ? { publicEnvelope } : {},
713
+ ...autoUnlockMode !== null ? { autoUnlock: autoUnlockMode } : {}
714
+ }
715
+ });
716
+ }
717
+ var writeNoydbBundle = writePod;
718
+ function parsePrefixAndHeader(bytes) {
719
+ if (!hasNoydbBundleMagic(bytes)) {
720
+ throw new Error(
721
+ `Not a .noydb bundle: missing 'NDB1' magic prefix. The first 4 bytes are ${[...bytes.slice(0, 4)].map((b) => b.toString(16).padStart(2, "0")).join(" ")}.`
722
+ );
723
+ }
724
+ if (bytes.length < NOYDB_BUNDLE_PREFIX_BYTES) {
725
+ throw new Error(
726
+ `Truncated .noydb bundle: file is only ${bytes.length} bytes, which is less than the ${NOYDB_BUNDLE_PREFIX_BYTES}-byte fixed prefix.`
727
+ );
728
+ }
729
+ const flags = bytes[4];
730
+ const algo = bytes[5];
731
+ if (algo !== COMPRESSION_NONE && algo !== COMPRESSION_GZIP && algo !== COMPRESSION_BROTLI) {
732
+ throw new Error(
733
+ `.noydb bundle declares unknown compression algorithm ${algo}. Known values: 0 (none), 1 (gzip), 2 (brotli).`
734
+ );
735
+ }
736
+ const headerLength = readUint32BE(bytes, 6);
737
+ const bodyOffset = NOYDB_BUNDLE_PREFIX_BYTES + headerLength;
738
+ if (bodyOffset > bytes.length) {
739
+ throw new Error(
740
+ `Truncated .noydb bundle: declared header length ${headerLength} would extend past end of file (${bytes.length} bytes).`
741
+ );
742
+ }
743
+ const headerBytes = bytes.slice(NOYDB_BUNDLE_PREFIX_BYTES, bodyOffset);
744
+ const header = decodeBundleHeader(headerBytes);
745
+ return { header, bodyOffset, algo, flags };
746
+ }
747
+ function readPodHeader(bytes) {
748
+ return parsePrefixAndHeader(bytes).header;
749
+ }
750
+ var readNoydbBundleHeader = readPodHeader;
751
+ function readNoydbBundlePublicEnvelope(bytes, opts = {}) {
752
+ const header = parsePrefixAndHeader(bytes).header;
753
+ const env = header.publicEnvelope;
754
+ if (!env) return void 0;
755
+ if (opts.locale === void 0) return env;
756
+ return {
757
+ ...env,
758
+ ...env.name !== void 0 ? { name: pickLocale(env.name, opts.locale, env.defaultLocale) } : {},
759
+ ...env.description !== void 0 ? { description: pickLocale(env.description, opts.locale, env.defaultLocale) } : {}
760
+ };
761
+ }
762
+ async function readPod(bytes, opts = {}) {
763
+ const { header, bodyOffset, algo } = parsePrefixAndHeader(bytes);
764
+ const body = bytes.slice(bodyOffset);
765
+ if (body.length !== header.bodyBytes) {
766
+ throw new BundleIntegrityError(
767
+ `body length ${body.length} does not match header.bodyBytes ${header.bodyBytes}. The bundle was truncated or padded between write and read.`
768
+ );
769
+ }
770
+ const actualSha = await sha256Hex2(body);
771
+ if (actualSha !== header.bodySha256) {
772
+ throw new BundleIntegrityError(
773
+ `body sha256 ${actualSha} does not match header.bodySha256 ${header.bodySha256}. The bundle bytes were modified between write and read \u2014 refuse to decompress.`
774
+ );
775
+ }
776
+ let dumpBytes;
777
+ if (algo === COMPRESSION_NONE) {
778
+ dumpBytes = body;
779
+ } else {
780
+ const streamFormat = algo === COMPRESSION_BROTLI ? "br" : "gzip";
781
+ try {
782
+ dumpBytes = await pumpThroughStream(body, new DecompressionStream(streamFormat));
783
+ } catch (err) {
784
+ throw new BundleIntegrityError(
785
+ `decompression failed: ${err.message}. The bundle passed the integrity hash but the body is not valid ${streamFormat} data \u2014 likely a producer bug.`
786
+ );
787
+ }
788
+ }
789
+ const bodyString = new TextDecoder("utf-8", { fatal: true }).decode(dumpBytes);
790
+ if (header.autoUnlock === void 0) {
791
+ return { header, dumpJson: bodyString };
792
+ }
793
+ const { dump, blob } = parseAutoUnlockBody(bodyString);
794
+ const autoUnlock = await resolveAutoUnlock(blob, opts);
795
+ return { header, dumpJson: dump, autoUnlock };
796
+ }
797
+ var readNoydbBundle = readPod;
798
+
799
+ export {
800
+ NOYDB_BUNDLE_MAGIC,
801
+ NOYDB_BUNDLE_PREFIX_BYTES,
802
+ NOYDB_BUNDLE_FORMAT_VERSION,
803
+ FLAG_COMPRESSED,
804
+ FLAG_HAS_INTEGRITY_HASH,
805
+ COMPRESSION_NONE,
806
+ COMPRESSION_GZIP,
807
+ COMPRESSION_BROTLI,
808
+ validateBundleHeader,
809
+ encodeBundleHeader,
810
+ hasNoydbBundleMagic,
811
+ buildExtractedPartitionWrapper,
812
+ parseExtractedPartitionBody,
813
+ resetBrotliSupportCache,
814
+ assembleBundleContainer,
815
+ writePod,
816
+ writeNoydbBundle,
817
+ readPodHeader,
818
+ readNoydbBundleHeader,
819
+ readNoydbBundlePublicEnvelope,
820
+ readPod,
821
+ readNoydbBundle
822
+ };
823
+ //# sourceMappingURL=chunk-PH7G7ZI7.js.map