@noy-db/hub 0.2.0-pre.2 → 0.2.0-pre.3

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 (246) hide show
  1. package/dist/aggregate/index.cjs.map +1 -1
  2. package/dist/aggregate/index.js +2 -2
  3. package/dist/attestation/index.cjs.map +1 -1
  4. package/dist/attestation/index.d.cts +2 -2
  5. package/dist/attestation/index.d.ts +2 -2
  6. package/dist/attestation/index.js +6 -6
  7. package/dist/blobs/index.cjs.map +1 -1
  8. package/dist/blobs/index.d.cts +3 -3
  9. package/dist/blobs/index.d.ts +3 -3
  10. package/dist/blobs/index.js +5 -5
  11. package/dist/bundle/index.cjs +1245 -6
  12. package/dist/bundle/index.cjs.map +1 -1
  13. package/dist/bundle/index.d.cts +4 -4
  14. package/dist/bundle/index.d.ts +4 -4
  15. package/dist/bundle/index.js +10 -10
  16. package/dist/{chunk-EUYOGYGV.js → chunk-2EYC3WDT.js} +6 -6
  17. package/dist/{chunk-MUWOSVEP.js → chunk-2XLVPKXG.js} +2 -2
  18. package/dist/{chunk-NWZ3I6R6.js → chunk-4OQWR46B.js} +5 -5
  19. package/dist/{chunk-J4KLMEUL.js → chunk-4UBOTYP5.js} +2 -2
  20. package/dist/{chunk-UND4XIB6.js → chunk-4X2S7PBF.js} +3 -3
  21. package/dist/{chunk-VE6YVP32.js → chunk-5YHWBPOT.js} +2 -2
  22. package/dist/{chunk-7BUTTVMR.js → chunk-6S3LLAQ5.js} +2 -2
  23. package/dist/{chunk-7Z23ZFLV.js → chunk-74JEQFMT.js} +5 -5
  24. package/dist/{chunk-AHPFONIL.js → chunk-75QDHSE4.js} +5 -5
  25. package/dist/{chunk-3XHOCQK4.js → chunk-A6SWRXUQ.js} +2 -2
  26. package/dist/{chunk-PLI5TV7N.js → chunk-BFI3RS42.js} +2 -2
  27. package/dist/{chunk-CXSCDO5T.js → chunk-EMEX37ZN.js} +2 -2
  28. package/dist/{chunk-PEULZC6M.js → chunk-EPK6A3WJ.js} +8 -1
  29. package/dist/chunk-EPK6A3WJ.js.map +1 -0
  30. package/dist/{chunk-JYQTXEIO.js → chunk-FBMXWVGP.js} +5 -5
  31. package/dist/{chunk-QXQRKXCU.js → chunk-FCDO7UAO.js} +2 -2
  32. package/dist/{chunk-243PNUA6.js → chunk-FS7A4XNF.js} +3 -3
  33. package/dist/{chunk-YS3POABP.js → chunk-FXQYZNOW.js} +1 -1
  34. package/dist/chunk-FXQYZNOW.js.map +1 -0
  35. package/dist/{chunk-Y2RKOPNC.js → chunk-G7PAZ3TD.js} +4 -4
  36. package/dist/{chunk-QPEXPHJR.js → chunk-GAUBWHAF.js} +4 -4
  37. package/dist/{chunk-GIV6DWBG.js → chunk-GD3BGKAR.js} +2 -2
  38. package/dist/{chunk-TBKOGSYR.js → chunk-GDTCGIPX.js} +2 -2
  39. package/dist/{chunk-3Z2TPHC4.js → chunk-GVXBHCZ2.js} +8 -3
  40. package/dist/chunk-GVXBHCZ2.js.map +1 -0
  41. package/dist/{chunk-OVZDFEOR.js → chunk-HGZ7DC5H.js} +2 -2
  42. package/dist/{chunk-VPSUZLOJ.js → chunk-IS5HWQO7.js} +4 -4
  43. package/dist/{chunk-VPSUZLOJ.js.map → chunk-IS5HWQO7.js.map} +1 -1
  44. package/dist/{chunk-VK5EER6C.js → chunk-K5PVGKE4.js} +2 -2
  45. package/dist/{chunk-LRAZDV5X.js → chunk-KMI2NBBF.js} +6 -6
  46. package/dist/{chunk-VRBCTEKQ.js → chunk-KYKMKLJ6.js} +2 -2
  47. package/dist/{chunk-PFSNOPBQ.js → chunk-LOL725S4.js} +3 -3
  48. package/dist/{chunk-3Y53S2SA.js → chunk-LS3JLEIB.js} +4 -4
  49. package/dist/{chunk-XG3PTSCD.js → chunk-NCO2JGKK.js} +1 -1
  50. package/dist/chunk-NCO2JGKK.js.map +1 -0
  51. package/dist/{chunk-YTXSFG3C.js → chunk-NGSPBLLE.js} +2 -2
  52. package/dist/{chunk-FAQVNJD4.js → chunk-NSLTPGEN.js} +2 -2
  53. package/dist/{chunk-VCGTOS2A.js → chunk-P6256WTJ.js} +3 -3
  54. package/dist/{chunk-7Q5PLD5C.js → chunk-QAU5HM6Q.js} +3 -3
  55. package/dist/{chunk-HXJXPZRE.js → chunk-SAVQ6E2O.js} +2 -2
  56. package/dist/{chunk-E535SAN4.js → chunk-T6HQMVML.js} +1177 -51
  57. package/dist/chunk-T6HQMVML.js.map +1 -0
  58. package/dist/{chunk-Q6W2CMEJ.js → chunk-TLFUDXVV.js} +4 -4
  59. package/dist/{chunk-2PAQNPE3.js → chunk-UOF74WQY.js} +2 -2
  60. package/dist/{chunk-3QAKZ37R.js → chunk-UVPGJXVO.js} +5 -5
  61. package/dist/{chunk-7BRE6EUA.js → chunk-WRLHNG6H.js} +2 -2
  62. package/dist/{chunk-W3XXT26A.js → chunk-YDLAFP36.js} +43 -1
  63. package/dist/chunk-YDLAFP36.js.map +1 -0
  64. package/dist/{chunk-G6FRSBKK.js → chunk-YK72A4IT.js} +4 -4
  65. package/dist/{chunk-3S4BJX25.js → chunk-YL2DR3HY.js} +2 -2
  66. package/dist/{chunk-RTZVQAJ7.js → chunk-ZC2AAE6J.js} +2 -2
  67. package/dist/{chunk-4HIL6AHQ.js → chunk-ZUMGGHRB.js} +4 -4
  68. package/dist/consent/index.cjs.map +1 -1
  69. package/dist/consent/index.d.cts +3 -3
  70. package/dist/consent/index.d.ts +3 -3
  71. package/dist/consent/index.js +3 -3
  72. package/dist/{crypto-5ZDIY3NG.js → crypto-H2Y3DDFW.js} +3 -3
  73. package/dist/{delegation-QYXZW25W.js → delegation-QSC7G5QC.js} +5 -5
  74. package/dist/derivations/index.cjs.map +1 -1
  75. package/dist/derivations/index.d.cts +4 -4
  76. package/dist/derivations/index.d.ts +4 -4
  77. package/dist/derivations/index.js +4 -4
  78. package/dist/{dev-unlock-utkybTKb.d.ts → dev-unlock-Cf2B7Kih.d.ts} +1 -1
  79. package/dist/{dev-unlock-DQCNDfFp.d.cts → dev-unlock-De3mjQWv.d.cts} +1 -1
  80. package/dist/executor-BZKFZVRC.js +8 -0
  81. package/dist/executor-GFZFDQXV.js +8 -0
  82. package/dist/executor-KT2IOZVP.js +11 -0
  83. package/dist/{fanout-sidecar-VJ52RIEY.js → fanout-sidecar-NRBWSLRK.js} +2 -2
  84. package/dist/guards/index.cjs +7 -0
  85. package/dist/guards/index.cjs.map +1 -1
  86. package/dist/guards/index.d.cts +4 -4
  87. package/dist/guards/index.d.ts +4 -4
  88. package/dist/guards/index.js +4 -4
  89. package/dist/{hash-DcoYWfJ_.d.ts → hash-gVn_uKhp.d.ts} +1 -1
  90. package/dist/{hash-jDowCrK2.d.cts → hash-vBCB0-Ps.d.cts} +1 -1
  91. package/dist/history/index.cjs +1 -1
  92. package/dist/history/index.cjs.map +1 -1
  93. package/dist/history/index.d.cts +4 -4
  94. package/dist/history/index.d.ts +4 -4
  95. package/dist/history/index.js +6 -6
  96. package/dist/i18n/index.cjs.map +1 -1
  97. package/dist/i18n/index.d.cts +3 -3
  98. package/dist/i18n/index.d.ts +3 -3
  99. package/dist/i18n/index.js +7 -7
  100. package/dist/{index-BCKdioeh.d.ts → index-BF1B2HB9.d.ts} +25 -1
  101. package/dist/{index-BMjrzNZr.d.cts → index-DVkvrgpm.d.cts} +25 -1
  102. package/dist/index.cjs +1273 -27
  103. package/dist/index.cjs.map +1 -1
  104. package/dist/index.d.cts +33 -12
  105. package/dist/index.d.ts +33 -12
  106. package/dist/index.js +109 -42
  107. package/dist/index.js.map +1 -1
  108. package/dist/indexing/index.cjs.map +1 -1
  109. package/dist/indexing/index.js +2 -2
  110. package/dist/issue-BAJ7ZB4S.js +12 -0
  111. package/dist/{ledger-3IU5GMXA.js → ledger-WOEJUYTP.js} +6 -6
  112. package/dist/materialized-views/index.cjs.map +1 -1
  113. package/dist/materialized-views/index.d.cts +5 -5
  114. package/dist/materialized-views/index.d.ts +5 -5
  115. package/dist/materialized-views/index.js +6 -6
  116. package/dist/noydb-XNQSKXGO.js +34 -0
  117. package/dist/overlay-views/index.cjs.map +1 -1
  118. package/dist/overlay-views/index.d.cts +4 -4
  119. package/dist/overlay-views/index.d.ts +4 -4
  120. package/dist/overlay-views/index.js +4 -4
  121. package/dist/periods/index.cjs.map +1 -1
  122. package/dist/periods/index.d.cts +3 -3
  123. package/dist/periods/index.d.ts +3 -3
  124. package/dist/periods/index.js +6 -6
  125. package/dist/{public-envelope-U3CMEOMV.js → public-envelope-OHQ5UZFM.js} +4 -4
  126. package/dist/query/index.cjs.map +1 -1
  127. package/dist/query/index.d.cts +1 -1
  128. package/dist/query/index.d.ts +1 -1
  129. package/dist/query/index.js +3 -3
  130. package/dist/registry-2IEARCGT.js +7 -0
  131. package/dist/{registry-3ALP62P6.js → registry-CDHASH73.js} +3 -3
  132. package/dist/registry-EMGLZGR6.js +8 -0
  133. package/dist/registry-NQALYR77.js +8 -0
  134. package/dist/{revoke-KY2GB4KP.js → revoke-7JOVLZFD.js} +6 -6
  135. package/dist/session/index.cjs.map +1 -1
  136. package/dist/session/index.d.cts +4 -4
  137. package/dist/session/index.d.ts +4 -4
  138. package/dist/session/index.js +3 -3
  139. package/dist/shadow/index.cjs.map +1 -1
  140. package/dist/shadow/index.d.cts +3 -3
  141. package/dist/shadow/index.d.ts +3 -3
  142. package/dist/shadow/index.js +2 -2
  143. package/dist/{signer-GRI5TZKH.js → signer-M4K5HBLD.js} +5 -5
  144. package/dist/{stale-OTOF3FH7.js → stale-PAGCS4K5.js} +2 -2
  145. package/dist/store/index.cjs.map +1 -1
  146. package/dist/store/index.d.cts +3 -3
  147. package/dist/store/index.d.ts +3 -3
  148. package/dist/store/index.js +2 -2
  149. package/dist/sync/index.cjs.map +1 -1
  150. package/dist/sync/index.d.cts +2 -2
  151. package/dist/sync/index.d.ts +2 -2
  152. package/dist/sync/index.js +4 -4
  153. package/dist/team/index.cjs.map +1 -1
  154. package/dist/team/index.d.cts +3 -3
  155. package/dist/team/index.d.ts +3 -3
  156. package/dist/team/index.js +8 -8
  157. package/dist/tx/index.cjs +81 -1
  158. package/dist/tx/index.cjs.map +1 -1
  159. package/dist/tx/index.d.cts +4 -4
  160. package/dist/tx/index.d.ts +4 -4
  161. package/dist/tx/index.js +56 -3
  162. package/dist/tx/index.js.map +1 -1
  163. package/dist/{types-DJG8HG6F.d.cts → types-CSLcfytP.d.cts} +528 -5
  164. package/dist/{types-BoFFiskX.d.ts → types-D9eB0Rvh.d.ts} +528 -5
  165. package/dist/{ulid-C7ms9oli.d.cts → ulid-CG2YvAbg.d.cts} +1 -1
  166. package/dist/{ulid-BmBgooGm.d.ts → ulid-CiM2OAeM.d.ts} +1 -1
  167. package/dist/util/index.cjs.map +1 -1
  168. package/dist/util/index.js +1 -1
  169. package/dist/{with-derivation-BKXXa8Vt.d.ts → with-derivation-Bzpj6UTv.d.ts} +1 -1
  170. package/dist/{with-derivation-BjQ7q4NE.d.cts → with-derivation-DWajFh4K.d.cts} +1 -1
  171. package/dist/{with-guard-DQme5DKE.d.cts → with-guard-DF_Ul3DT.d.cts} +1 -1
  172. package/dist/{with-guard-C25yNjzd.d.ts → with-guard-DR7U-l4v.d.ts} +1 -1
  173. package/dist/{with-materialized-view-BbEPFIIJ.d.cts → with-materialized-view-_piodoIz.d.cts} +1 -1
  174. package/dist/{with-materialized-view-CqnRwI2S.d.ts → with-materialized-view-qtoJ3xKJ.d.ts} +1 -1
  175. package/dist/{with-overlayed-view-Ct1fSJt-.d.ts → with-overlayed-view-DFaRfgMr.d.ts} +1 -1
  176. package/dist/{with-overlayed-view-bwlmmFjx.d.cts → with-overlayed-view-DwzCKxn2.d.cts} +1 -1
  177. package/package.json +3 -3
  178. package/dist/chunk-3Z2TPHC4.js.map +0 -1
  179. package/dist/chunk-E535SAN4.js.map +0 -1
  180. package/dist/chunk-PEULZC6M.js.map +0 -1
  181. package/dist/chunk-W3XXT26A.js.map +0 -1
  182. package/dist/chunk-XG3PTSCD.js.map +0 -1
  183. package/dist/chunk-YS3POABP.js.map +0 -1
  184. package/dist/executor-AS2IDHKZ.js +0 -11
  185. package/dist/executor-HLXFXNFM.js +0 -8
  186. package/dist/executor-HN6YBHZ5.js +0 -8
  187. package/dist/issue-ORP37MVW.js +0 -12
  188. package/dist/noydb-5H3C24GG.js +0 -34
  189. package/dist/registry-7HE6VJGC.js +0 -8
  190. package/dist/registry-PSIPG2QR.js +0 -8
  191. package/dist/registry-RFGGMVNJ.js +0 -7
  192. /package/dist/{chunk-EUYOGYGV.js.map → chunk-2EYC3WDT.js.map} +0 -0
  193. /package/dist/{chunk-MUWOSVEP.js.map → chunk-2XLVPKXG.js.map} +0 -0
  194. /package/dist/{chunk-NWZ3I6R6.js.map → chunk-4OQWR46B.js.map} +0 -0
  195. /package/dist/{chunk-J4KLMEUL.js.map → chunk-4UBOTYP5.js.map} +0 -0
  196. /package/dist/{chunk-UND4XIB6.js.map → chunk-4X2S7PBF.js.map} +0 -0
  197. /package/dist/{chunk-VE6YVP32.js.map → chunk-5YHWBPOT.js.map} +0 -0
  198. /package/dist/{chunk-7BUTTVMR.js.map → chunk-6S3LLAQ5.js.map} +0 -0
  199. /package/dist/{chunk-7Z23ZFLV.js.map → chunk-74JEQFMT.js.map} +0 -0
  200. /package/dist/{chunk-AHPFONIL.js.map → chunk-75QDHSE4.js.map} +0 -0
  201. /package/dist/{chunk-3XHOCQK4.js.map → chunk-A6SWRXUQ.js.map} +0 -0
  202. /package/dist/{chunk-PLI5TV7N.js.map → chunk-BFI3RS42.js.map} +0 -0
  203. /package/dist/{chunk-CXSCDO5T.js.map → chunk-EMEX37ZN.js.map} +0 -0
  204. /package/dist/{chunk-JYQTXEIO.js.map → chunk-FBMXWVGP.js.map} +0 -0
  205. /package/dist/{chunk-QXQRKXCU.js.map → chunk-FCDO7UAO.js.map} +0 -0
  206. /package/dist/{chunk-243PNUA6.js.map → chunk-FS7A4XNF.js.map} +0 -0
  207. /package/dist/{chunk-Y2RKOPNC.js.map → chunk-G7PAZ3TD.js.map} +0 -0
  208. /package/dist/{chunk-QPEXPHJR.js.map → chunk-GAUBWHAF.js.map} +0 -0
  209. /package/dist/{chunk-GIV6DWBG.js.map → chunk-GD3BGKAR.js.map} +0 -0
  210. /package/dist/{chunk-TBKOGSYR.js.map → chunk-GDTCGIPX.js.map} +0 -0
  211. /package/dist/{chunk-OVZDFEOR.js.map → chunk-HGZ7DC5H.js.map} +0 -0
  212. /package/dist/{chunk-VK5EER6C.js.map → chunk-K5PVGKE4.js.map} +0 -0
  213. /package/dist/{chunk-LRAZDV5X.js.map → chunk-KMI2NBBF.js.map} +0 -0
  214. /package/dist/{chunk-VRBCTEKQ.js.map → chunk-KYKMKLJ6.js.map} +0 -0
  215. /package/dist/{chunk-PFSNOPBQ.js.map → chunk-LOL725S4.js.map} +0 -0
  216. /package/dist/{chunk-3Y53S2SA.js.map → chunk-LS3JLEIB.js.map} +0 -0
  217. /package/dist/{chunk-YTXSFG3C.js.map → chunk-NGSPBLLE.js.map} +0 -0
  218. /package/dist/{chunk-FAQVNJD4.js.map → chunk-NSLTPGEN.js.map} +0 -0
  219. /package/dist/{chunk-VCGTOS2A.js.map → chunk-P6256WTJ.js.map} +0 -0
  220. /package/dist/{chunk-7Q5PLD5C.js.map → chunk-QAU5HM6Q.js.map} +0 -0
  221. /package/dist/{chunk-HXJXPZRE.js.map → chunk-SAVQ6E2O.js.map} +0 -0
  222. /package/dist/{chunk-Q6W2CMEJ.js.map → chunk-TLFUDXVV.js.map} +0 -0
  223. /package/dist/{chunk-2PAQNPE3.js.map → chunk-UOF74WQY.js.map} +0 -0
  224. /package/dist/{chunk-3QAKZ37R.js.map → chunk-UVPGJXVO.js.map} +0 -0
  225. /package/dist/{chunk-7BRE6EUA.js.map → chunk-WRLHNG6H.js.map} +0 -0
  226. /package/dist/{chunk-G6FRSBKK.js.map → chunk-YK72A4IT.js.map} +0 -0
  227. /package/dist/{chunk-3S4BJX25.js.map → chunk-YL2DR3HY.js.map} +0 -0
  228. /package/dist/{chunk-RTZVQAJ7.js.map → chunk-ZC2AAE6J.js.map} +0 -0
  229. /package/dist/{chunk-4HIL6AHQ.js.map → chunk-ZUMGGHRB.js.map} +0 -0
  230. /package/dist/{crypto-5ZDIY3NG.js.map → crypto-H2Y3DDFW.js.map} +0 -0
  231. /package/dist/{delegation-QYXZW25W.js.map → delegation-QSC7G5QC.js.map} +0 -0
  232. /package/dist/{executor-AS2IDHKZ.js.map → executor-BZKFZVRC.js.map} +0 -0
  233. /package/dist/{executor-HLXFXNFM.js.map → executor-GFZFDQXV.js.map} +0 -0
  234. /package/dist/{executor-HN6YBHZ5.js.map → executor-KT2IOZVP.js.map} +0 -0
  235. /package/dist/{fanout-sidecar-VJ52RIEY.js.map → fanout-sidecar-NRBWSLRK.js.map} +0 -0
  236. /package/dist/{issue-ORP37MVW.js.map → issue-BAJ7ZB4S.js.map} +0 -0
  237. /package/dist/{ledger-3IU5GMXA.js.map → ledger-WOEJUYTP.js.map} +0 -0
  238. /package/dist/{noydb-5H3C24GG.js.map → noydb-XNQSKXGO.js.map} +0 -0
  239. /package/dist/{public-envelope-U3CMEOMV.js.map → public-envelope-OHQ5UZFM.js.map} +0 -0
  240. /package/dist/{registry-3ALP62P6.js.map → registry-2IEARCGT.js.map} +0 -0
  241. /package/dist/{registry-7HE6VJGC.js.map → registry-CDHASH73.js.map} +0 -0
  242. /package/dist/{registry-PSIPG2QR.js.map → registry-EMGLZGR6.js.map} +0 -0
  243. /package/dist/{registry-RFGGMVNJ.js.map → registry-NQALYR77.js.map} +0 -0
  244. /package/dist/{revoke-KY2GB4KP.js.map → revoke-7JOVLZFD.js.map} +0 -0
  245. /package/dist/{signer-GRI5TZKH.js.map → signer-M4K5HBLD.js.map} +0 -0
  246. /package/dist/{stale-OTOF3FH7.js.map → stale-PAGCS4K5.js.map} +0 -0
package/dist/index.d.cts CHANGED
@@ -1,20 +1,20 @@
1
- import { aO as NoydbStore, bo as UserEnvelope, ba as PublicEnvelope, bp as GateName, bq as GatePolicy, br as VaultPolicy, bs as ActiveTier, bt as FactorProof, bu as PersistedSchemaEnvelope, bv as DirectoryConfig, bw as UserVisibility, aM as UnlockedKeyring, bf as Vault, aV as DiffEntry } from './types-DJG8HG6F.cjs';
2
- export { bx as AccessibleVault, aS as AppendInput, ay as ArrayOutputSpec, p as BLOB_CHUNKS_COLLECTION, q as BLOB_COLLECTION, t as BLOB_INDEX_COLLECTION, u as BLOB_SLOTS_PREFIX, w as BLOB_VERSIONS_PREFIX, by as BUNDLE_STORE_POLICY, A as BlobObject, C as BlobPutOptions, E as BlobResponseOptions, F as BlobSet, bz as BuiltInGateName, bc as BundleRecipient, _ as CONSENT_AUDIT_COLLECTION, bA as CacheOptions, bB as CacheStats, bC as ChangeEvent, aT as ChangeType, a7 as ClosePeriodOptions, aH as Collection, bD as CollectionChangeEvent, bE as CollectionConflictResolver, bF as CollectionDescriptor, ao as CollectionFrame, aU as CollectionInstant, bG as CollectionStats, bH as Conflict, bI as ConflictPolicy, bJ as ConflictStrategy, $ as ConsentAuditEntry, a0 as ConsentAuditFilter, a1 as ConsentContext, a2 as ConsentOp, bK as CrossTierAccessEvent, L as DEFAULT_CHUNK_SIZE, bL as DEFAULT_PUBLIC_ENVELOPE_SCHEMA, bM as DELEGATIONS_COLLECTION, D as DICT_COLLECTION_PREFIX, bN as DeepPartial, bO as DeepPartialOrNull, bP as DelegationToken, bQ as DeleteManyResult, bR as DerivationDescriptor, aw as DerivationStrategy, aA as DerivationStrategyHandle, aB as DerivedFromMeta, a as DictEntry, b as DictKeyDescriptor, c as DictionaryHandle, d as DictionaryOptions, bS as DirtyEntry, bT as DumpSchemaOptions, bU as ELEVATION_AUDIT_COLLECTION, bV as ElevatedHandle, aQ as EncryptedEnvelope, bW as EnrollAuthenticatorOptions, bX as EnrollAuthenticatorWrappingDEKsOptions, bY as EnrollAuthenticatorWrappingKEKOptions, bZ as EnrollRecoveryResult, b_ as ExportCapability, b$ as ExportChunk, c0 as ExportFormat, c1 as ExportStreamOptions, c2 as FactorKind, c3 as FactorProofBundle, c4 as FactorRequirement, c5 as FieldDescriptor, c6 as FieldSource, c7 as GhostRecord, c8 as GrantOptions, ai as GuardChange, aj as GuardContext, ah as GuardStrategy, al as GuardStrategyHandle, c9 as HistoryConfig, ca as HistoryEntry, aP as HistoryOptions, e as I18nTextDescriptor, f as I18nTextOptions, cb as INDEXED_STORE_POLICY, cc as ImportCapability, cd as InferOutput, ce as InternalCollectionStats, cf as IssueDelegationOptions, cg as IssueMagicLinkGrantOptions, aW as JsonPatch, aX as JsonPatchOp, ch as KeyringAuthenticator, ci as KeyringAuthenticatorWrappingDEKs, cj as KeyringAuthenticatorWrappingKEK, ck as KeyringFile, aY as LedgerEntry, aZ as LedgerStore, cl as ListAccessibleVaultsOptions, cm as ListPageResult, cn as ListUsersOptions, co as LiveUserEnvelope, cp as LocaleReadOptions, cq as Lru, cr as LruOptions, cs as LruStats, ct as MAGIC_LINK_CONTENT_INFO_PREFIX, cu as MAGIC_LINK_GRANTS_COLLECTION, cv as MAGIC_LINK_KEK_INFO_PREFIX, cw as MagicLinkGrantPayload, cx as MagicLinkGrantRecord, bl as MaterializedFromMeta, cy as MaterializedViewDescriptor, bm as MaterializedViewOutput, aE as MaterializedViewStrategy, aF as MaterializedViewStrategyHandle, cz as MemoryRecipientSealer, cA as MemorySealingKeyProvider, cB as NOYDB_BACKUP_VERSION, cC as NOYDB_FORMAT_VERSION, cD as NOYDB_KEYRING_VERSION, cE as NOYDB_SYNC_VERSION, cF as Noydb, cG as NoydbBundleStore, cH as NoydbEventMap, cI as NoydbOptions, a8 as OpenPeriodOptions, aC as OutputSpec, cJ as OverlayViewDescriptor, aG as OverlayedViewStrategy, aJ as OverlayedViewStrategyHandle, a9 as PERIODS_COLLECTION, cK as PUBLIC_ENVELOPE_FIELDS, cL as PaperRecoveryDoc, cM as PaperRecoveryEntry, cN as PassphrasePolicy, cO as PassphraseValidationResult, aa as PeriodRecord, cP as Permission, cQ as Permissions, cR as PersistedSchemaKind, cS as PlaintextTranslatorContext, cT as PlaintextTranslatorFn, P as PolicyEnforcer, cU as PresenceHandle, cV as PresencePeer, aR as PruneOptions, cW as PublicEnvelopeField, cX as PublicEnvelopeSchema, cY as PublicEnvelopeText, cZ as PullMode, c_ as PullOptions, c$ as PullPolicy, d0 as PullResult, d1 as PushMode, d2 as PushOptions, d3 as PushPolicy, d4 as PushResult, d5 as PutManyItemOptions, d6 as PutManyOptions, d7 as PutManyResult, d8 as QueryAcrossOptions, d9 as QueryAcrossResult, da as QuickUnlockState, db as QuickUnlockStore, dc as ReAuthOperation, be as RecipientHint, bd as RecipientSealer, aD as RecordOutputSpec, dd as RecoverPassphraseInput, de as RecoverPassphraseResult, df as RecoverUserOptions, dg as RecoveryProof, dh as ResolvedPublicEnvelopeSchema, di as RevokeOptions, aL as Role, dj as RotatePassphraseInput, dk as RotateRecoveryOptions, dl as RotateRecoveryResult, dm as SEALED_PASSPHRASE_RECORD_ID, dn as SealedEnvelope, dp as SealedPassphrase, bb as SealingKeyProvider, dq as SessionPolicy, dr as SetPublicEnvelopeInput, ds as ShamirRecoveryDoc, dt as ShamirRecoveryEntry, bh as ShamirRecoveryProvider, U as SlotInfo, V as SlotRecord, du as SlotRewrapCeremony, dv as SlotRewrapContext, dw as StandardSchemaV1, dx as StandardSchemaV1Issue, dy as StandardSchemaV1SyncResult, dz as StoreAuth, dA as StoreAuthKind, dB as StoreCapabilities, dC as SyncEngine, dD as SyncMetadata, dE as SyncPolicy, dF as SyncScheduler, dG as SyncSchedulerStatus, dH as SyncStatus, dI as SyncTarget, dJ as SyncTargetRole, dK as SyncTransaction, dL as SyncTransactionResult, dM as TierMode, dN as TranslatorAuditEntry, as as TxCollection, at as TxContext, dO as TxOp, au as TxVault, dP as USER_ENVELOPE_COLLECTION, dQ as USER_ENVELOPE_MAX_BYTES, bn as UnionSource, dR as Unsubscribe, dS as UpdateAuthenticatorOptions, dT as UpdateUserOptions, dU as UserApi, dV as UserEnvelopeCheckGate, dW as UserEnvelopeOversizedError, dX as UserEnvelopePresented, dY as UserInfo, dZ as VaultBackup, a_ as VaultEngine, ap as VaultFrame, a$ as VaultInstant, d_ as VaultPolicyOnDisk, d$ as VaultSchemaSnapshot, e0 as VaultSnapshot, b0 as VerifyResult, W as VersionRecord, e1 as WarningRules, e2 as WeakPassphraseError, e3 as WeakPassphraseReason, e4 as WrappedDeksBlob, g as applyI18nLocale, b1 as applyPatch, e5 as assertStrongPassphrase, e6 as buildRecipientKeyringFile, e7 as burnPaperRecoveryEntry, b2 as canonicalJson, b3 as computePatch, n as createEnforcer, e8 as createNoydb, e9 as createStore, ea as deriveMagicLinkContentKey, h as dictCollectionName, i as dictKey, b4 as diff, eb as enrollAuthenticator, ec as estimateEntropy, ed as evaluateExportCapability, ee as evaluateImportCapability, ef as findAuthenticator, b5 as formatDiff, eg as hasExportCapability, eh as hasImportCapability, ei as hasRecoveryEnrolled, b6 as hashEntry, j as i18nText, k as isDictCollectionName, l as isDictKeyDescriptor, m as isI18nTextDescriptor, ej as isMagicLinkGrantExpired, ek as isPublicEnvelope, el as issueDelegation, em as keyringRecoverPassphrase, en as keyringRotatePassphrase, eo as listMagicLinkGrants, ep as listUsers, eq as listUsersWithEnvelopes, er as loadActiveDelegations, es as loadPaperRecoveryEntries, et as loadSealedPassphrase, eu as loadShamirRecoveryEntries, ev as magicLinkGrantRecordId, ew as mintPaperRecoveryEntry, ex as mintShamirRecoveryEntry, ey as mintWrappedDeksBlob, b7 as paddedIndex, b8 as parseIndex, ez as parseSealedEnvelope, eA as readMagicLinkGrantRecord, eB as recoverUser, eC as removeAuthenticator, r as resolveI18nText, eD as resolvePublicEnvelopeSchema, eE as revokeDelegation, eF as revokeMagicLinkGrant, av as runTransaction, eG as savePaperRecoveryEntries, eH as saveSealedPassphrase, eI as saveShamirRecoveryEntries, b9 as sha256Hex, eJ as unwrapDeksFromBlob, eK as unwrapDeksFromPaperEntry, eL as unwrapDeksFromShamirEntry, eM as unwrapMagicLinkGrant, v as validateI18nTextValue, eN as validatePassphrase, eO as validatePublicEnvelopeInput, eP as validateSchemaInput, eQ as validateSchemaOutput, o as validateSessionPolicy, eR as writeMagicLinkGrant } from './types-DJG8HG6F.cjs';
1
+ import { aO as NoydbStore, bo as UserEnvelope, ba as PublicEnvelope, bp as GateName, bq as GatePolicy, br as VaultPolicy, bs as ActiveTier, bt as FactorProof, bu as SchemaUpdateStrategy, bv as TransformFn, bw as PersistedSchemaEnvelope, bx as UpdateDecision, by as DirectoryConfig, bz as UserVisibility, aM as UnlockedKeyring, bf as Vault, aV as DiffEntry } from './types-CSLcfytP.cjs';
2
+ export { bA as AccessibleVault, bB as AffectedDocument, aS as AppendInput, ay as ArrayOutputSpec, p as BLOB_CHUNKS_COLLECTION, q as BLOB_COLLECTION, t as BLOB_INDEX_COLLECTION, u as BLOB_SLOTS_PREFIX, w as BLOB_VERSIONS_PREFIX, bC as BUNDLE_STORE_POLICY, A as BlobObject, C as BlobPutOptions, E as BlobResponseOptions, F as BlobSet, bD as BuiltInGateName, bc as BundleRecipient, _ as CONSENT_AUDIT_COLLECTION, bE as CacheOptions, bF as CacheStats, bG as ChangeEvent, aT as ChangeType, a7 as ClosePeriodOptions, aH as Collection, bH as CollectionChangeEvent, bI as CollectionConflictResolver, bJ as CollectionDescriptor, ao as CollectionFrame, aU as CollectionInstant, bK as CollectionStats, bL as Conflict, bM as ConflictPolicy, bN as ConflictStrategy, $ as ConsentAuditEntry, a0 as ConsentAuditFilter, a1 as ConsentContext, a2 as ConsentOp, bO as CrossTierAccessEvent, L as DEFAULT_CHUNK_SIZE, bP as DEFAULT_PUBLIC_ENVELOPE_SCHEMA, bQ as DELEGATIONS_COLLECTION, D as DICT_COLLECTION_PREFIX, bR as DeepPartial, bS as DeepPartialOrNull, bT as DelegationToken, bU as DeleteManyResult, bV as DerivationDescriptor, aw as DerivationStrategy, aA as DerivationStrategyHandle, aB as DerivedFromMeta, a as DictEntry, b as DictKeyDescriptor, c as DictionaryHandle, d as DictionaryOptions, bW as DirtyEntry, bX as DryRunResult, bY as DumpSchemaOptions, bZ as ELEVATION_AUDIT_COLLECTION, b_ as ElevatedHandle, aQ as EncryptedEnvelope, b$ as EnrollAuthenticatorOptions, c0 as EnrollAuthenticatorWrappingDEKsOptions, c1 as EnrollAuthenticatorWrappingKEKOptions, c2 as EnrollRecoveryResult, c3 as ExportCapability, c4 as ExportChunk, c5 as ExportFormat, c6 as ExportStreamOptions, c7 as FactorKind, c8 as FactorProofBundle, c9 as FactorRequirement, ca as FenceDoc, cb as FenceState, cc as FieldChange, cd as FieldDescriptor, ce as FieldSource, cf as GhostRecord, cg as GrantOptions, ai as GuardChange, aj as GuardContext, ah as GuardStrategy, al as GuardStrategyHandle, ch as GuardViolation, ci as HistoryConfig, cj as HistoryEntry, aP as HistoryOptions, e as I18nTextDescriptor, f as I18nTextOptions, ck as INDEXED_STORE_POLICY, cl as ImportCapability, cm as InferOutput, cn as InternalCollectionStats, co as IssueDelegationOptions, cp as IssueMagicLinkGrantOptions, aW as JsonPatch, aX as JsonPatchOp, cq as KeyringAuthenticator, cr as KeyringAuthenticatorWrappingDEKs, cs as KeyringAuthenticatorWrappingKEK, ct as KeyringFile, aY as LedgerEntry, aZ as LedgerStore, cu as ListAccessibleVaultsOptions, cv as ListPageResult, cw as ListUsersOptions, cx as LiveUserEnvelope, cy as LocaleReadOptions, cz as Lru, cA as LruOptions, cB as LruStats, cC as MAGIC_LINK_CONTENT_INFO_PREFIX, cD as MAGIC_LINK_GRANTS_COLLECTION, cE as MAGIC_LINK_KEK_INFO_PREFIX, cF as MagicLinkGrantPayload, cG as MagicLinkGrantRecord, bl as MaterializedFromMeta, cH as MaterializedViewDescriptor, bm as MaterializedViewOutput, aE as MaterializedViewStrategy, aF as MaterializedViewStrategyHandle, cI as MemoryRecipientSealer, cJ as MemorySealingKeyProvider, cK as NOYDB_BACKUP_VERSION, cL as NOYDB_FORMAT_VERSION, cM as NOYDB_KEYRING_VERSION, cN as NOYDB_SYNC_VERSION, cO as Noydb, cP as NoydbBundleStore, cQ as NoydbEventMap, cR as NoydbOptions, a8 as OpenPeriodOptions, aC as OutputSpec, cS as OverlayViewDescriptor, aG as OverlayedViewStrategy, aJ as OverlayedViewStrategyHandle, a9 as PERIODS_COLLECTION, cT as PUBLIC_ENVELOPE_FIELDS, cU as PaperRecoveryDoc, cV as PaperRecoveryEntry, cW as PassphrasePolicy, cX as PassphraseValidationResult, aa as PeriodRecord, cY as Permission, cZ as Permissions, c_ as PersistedSchemaKind, c$ as PlaintextTranslatorContext, d0 as PlaintextTranslatorFn, P as PolicyEnforcer, d1 as PresenceHandle, d2 as PresencePeer, aR as PruneOptions, d3 as PublicEnvelopeField, d4 as PublicEnvelopeSchema, d5 as PublicEnvelopeText, d6 as PullMode, d7 as PullOptions, d8 as PullPolicy, d9 as PullResult, da as PushMode, db as PushOptions, dc as PushPolicy, dd as PushResult, de as PutManyItemOptions, df as PutManyOptions, dg as PutManyResult, dh as QueryAcrossOptions, di as QueryAcrossResult, dj as QuickUnlockState, dk as QuickUnlockStore, dl as ReAuthOperation, be as RecipientHint, bd as RecipientSealer, aD as RecordOutputSpec, dm as RecoverPassphraseInput, dn as RecoverPassphraseResult, dp as RecoverUserOptions, dq as RecoveryProof, dr as ResolvedPublicEnvelopeSchema, ds as RevokeOptions, aL as Role, dt as RotatePassphraseInput, du as RotateRecoveryOptions, dv as RotateRecoveryResult, dw as SEALED_PASSPHRASE_RECORD_ID, dx as SchemaDelta, dy as SchemaIntrospection, dz as SealedEnvelope, dA as SealedPassphrase, bb as SealingKeyProvider, dB as SessionPolicy, dC as SetPublicEnvelopeInput, dD as ShamirRecoveryDoc, dE as ShamirRecoveryEntry, bh as ShamirRecoveryProvider, U as SlotInfo, V as SlotRecord, dF as SlotRewrapCeremony, dG as SlotRewrapContext, dH as StandardSchemaV1, dI as StandardSchemaV1Issue, dJ as StandardSchemaV1SyncResult, dK as StoreAuth, dL as StoreAuthKind, dM as StoreCapabilities, dN as SyncEngine, dO as SyncMetadata, dP as SyncPolicy, dQ as SyncScheduler, dR as SyncSchedulerStatus, dS as SyncStatus, dT as SyncTarget, dU as SyncTargetRole, dV as SyncTransaction, dW as SyncTransactionResult, dX as TabChannel, dY as TabCoordinationOptions, dZ as TabLockManager, d_ as TabPresence, d$ as TabRole, e0 as TierMode, e1 as TranslatorAuditEntry, as as TxCollection, at as TxContext, e2 as TxOp, au as TxVault, e3 as USER_ENVELOPE_COLLECTION, e4 as USER_ENVELOPE_MAX_BYTES, bn as UnionSource, e5 as Unsubscribe, e6 as UpdateAuthenticatorOptions, e7 as UpdateContext, e8 as UpdateUserOptions, e9 as UserApi, ea as UserEnvelopeCheckGate, eb as UserEnvelopeOversizedError, ec as UserEnvelopePresented, ed as UserInfo, ee as VaultBackup, a_ as VaultEngine, ap as VaultFrame, a$ as VaultInstant, ef as VaultPolicyOnDisk, eg as VaultSchemaSnapshot, eh as VaultSnapshot, b0 as VerifyResult, W as VersionRecord, ei as WarningRules, ej as WeakPassphraseError, ek as WeakPassphraseReason, el as WrappedDeksBlob, em as WriteConflict, en as WriteEvent, eo as WriteHook, ep as WriteQueue, g as applyI18nLocale, b1 as applyPatch, eq as assertStrongPassphrase, er as buildRecipientKeyringFile, es as burnPaperRecoveryEntry, b2 as canonicalJson, b3 as computePatch, n as createEnforcer, et as createNoydb, eu as createStore, ev as deriveMagicLinkContentKey, h as dictCollectionName, i as dictKey, b4 as diff, ew as enrollAuthenticator, ex as estimateEntropy, ey as evaluateExportCapability, ez as evaluateImportCapability, eA as findAuthenticator, b5 as formatDiff, eB as hasExportCapability, eC as hasImportCapability, eD as hasRecoveryEnrolled, b6 as hashEntry, j as i18nText, k as isDictCollectionName, l as isDictKeyDescriptor, m as isI18nTextDescriptor, eE as isMagicLinkGrantExpired, eF as isPublicEnvelope, eG as issueDelegation, eH as keyringRecoverPassphrase, eI as keyringRotatePassphrase, eJ as listMagicLinkGrants, eK as listUsers, eL as listUsersWithEnvelopes, eM as loadActiveDelegations, eN as loadPaperRecoveryEntries, eO as loadSealedPassphrase, eP as loadShamirRecoveryEntries, eQ as magicLinkGrantRecordId, eR as mintPaperRecoveryEntry, eS as mintShamirRecoveryEntry, eT as mintWrappedDeksBlob, b7 as paddedIndex, b8 as parseIndex, eU as parseSealedEnvelope, eV as readMagicLinkGrantRecord, eW as recoverUser, eX as removeAuthenticator, r as resolveI18nText, eY as resolvePublicEnvelopeSchema, eZ as revokeDelegation, e_ as revokeMagicLinkGrant, av as runTransaction, e$ as savePaperRecoveryEntries, f0 as saveSealedPassphrase, f1 as saveShamirRecoveryEntries, b9 as sha256Hex, f2 as unwrapDeksFromBlob, f3 as unwrapDeksFromPaperEntry, f4 as unwrapDeksFromShamirEntry, f5 as unwrapMagicLinkGrant, v as validateI18nTextValue, f6 as validatePassphrase, f7 as validatePublicEnvelopeInput, f8 as validateSchemaInput, f9 as validateSchemaOutput, o as validateSessionPolicy, fa as writeMagicLinkGrant } from './types-CSLcfytP.cjs';
3
3
  export { d as detectMagic, a as detectMimeType, i as isPreCompressed } from './mime-magic-CBBSOkjm.cjs';
4
4
  export { AgeRoute, BlobLifecyclePolicy, BlobStoreRoute, CircuitBreakerOptions, HealthCheckOptions, LogLevel, LoggingOptions, MetricsOptions, OverrideOptions, OverrideTarget, RetryOptions, RouteStatus, RouteStoreOptions, RoutedNoydbStore, StoreCacheOptions, StoreMiddleware, StoreOperation, SuspendOptions, WrapBundleStoreOptions, WrappedBundleNoydbStore, createBundleStore, routeStore, withCache, withCircuitBreaker, withHealthCheck, withLogging, withMetrics, withRetry, wrapBundleStore, wrapStore } from './store/index.cjs';
5
- import { N as NoydbError } from './index-BMjrzNZr.cjs';
6
- export { x as AlreadyElevatedError, A as AmendmentForbiddenError, m as AttestationError, B as BackupCorruptedError, o as BackupLedgerError, p as BundleIntegrityError, q as BundleSealMismatchError, r as BundleVersionConflictError, C as ConflictError, y as DEFAULT_JOIN_MAX_ROWS, z as DanglingReferenceError, E as DecryptionError, G as DelegationTargetMissingError, e as DerivationCapExceededError, f as DerivationCycleError, g as DerivationDepthError, h as DerivationOutputShapeError, i as DerivationOutputUnknownError, D as DictKeyInUseError, a as DictKeyMissingError, H as DirectoryDisabledError, J as ElevationExpiredError, K as ExportCapabilityError, F as FieldFrozenError, U as FilenameSanitizationError, V as GroupCardinalityError, W as ImportCapabilityError, X as IndexRequiredError, Y as IndexWriteFailureError, Z as InvalidKeyError, I as InvariantError, _ as JoinContext, $ as JoinLeg, a0 as JoinStrategy, a1 as JoinTooLargeError, a2 as JoinableSource, a3 as KeyringCorruptError, a4 as KeyringExpiredError, a5 as LedgerContentionError, a6 as LiveQuery, a7 as LiveUpstream, L as LocaleNotSpecifiedError, t as MaterializedViewConfigError, u as MaterializedViewCycleError, v as MaterializedViewSourceUnknownError, w as MaterializedViewTooLargeError, M as MissingTranslationError, a8 as NetworkError, a9 as NoAccessError, aa as NotFoundError, ab as OrderBy, O as OverlayBaseIsVirtualError, j as OverlayCollectionUnavailableError, k as OverlayIdMismatchError, l as OverlayNameCollisionError, ac as PathEscapeError, ad as PeriodClosedError, ae as PermissionDeniedError, af as PrivilegeEscalationError, Q as Query, ag as QueryPlan, ah as QuerySource, ai as ReadOnlyAtInstantError, aj as ReadOnlyError, ak as ReadOnlyFrameError, d as RecordLockedError, al as RefDescriptor, am as RefIntegrityError, an as RefMode, ao as RefRegistry, ap as RefScopeError, aq as RefViolation, R as ReservedCollectionNameError, ar as ScanBuilder, as as ScanPageProvider, at as SchemaValidationError, S as SessionExpiredError, b as SessionNotFoundError, c as SessionPolicyError, au as StoreCapabilityError, av as TamperedError, aw as TierDemoteDeniedError, ax as TierNotGrantedError, T as TranslatorNotConfiguredError, ay as ValidationError, az as applyJoins, aA as buildLiveQuery, aB as executePlan, aC as ref, aD as resetJoinWarnings } from './index-BMjrzNZr.cjs';
7
- export { A as AutoCredential, n as AutoCredentialKind, c as CompressionAlgo, N as NOYDB_BUNDLE_FORMAT_VERSION, e as NOYDB_BUNDLE_MAGIC, f as NOYDB_BUNDLE_PREFIX_BYTES, g as NoydbBundleHeader, h as NoydbBundleReadResult, R as ReadNoydbBundleOptions, W as WriteNoydbBundleOptions, j as generateULID, o as hasNoydbBundleMagic, k as isULID, r as readNoydbBundle, l as readNoydbBundleHeader, p as readNoydbBundlePublicEnvelope, m as resetBrotliSupportCache, w as writeNoydbBundle } from './ulid-C7ms9oli.cjs';
5
+ import { N as NoydbError } from './index-DVkvrgpm.cjs';
6
+ export { x as AlreadyElevatedError, A as AmendmentForbiddenError, m as AttestationError, B as BackupCorruptedError, o as BackupLedgerError, p as BundleIntegrityError, q as BundleSealMismatchError, r as BundleVersionConflictError, C as ConflictError, y as DEFAULT_JOIN_MAX_ROWS, z as DanglingReferenceError, E as DecryptionError, G as DelegationTargetMissingError, e as DerivationCapExceededError, f as DerivationCycleError, g as DerivationDepthError, h as DerivationOutputShapeError, i as DerivationOutputUnknownError, D as DictKeyInUseError, a as DictKeyMissingError, H as DirectoryDisabledError, J as ElevationExpiredError, K as ExportCapabilityError, F as FieldFrozenError, U as FilenameSanitizationError, V as GroupCardinalityError, W as ImportCapabilityError, X as IndexRequiredError, Y as IndexWriteFailureError, Z as InvalidKeyError, I as InvariantError, _ as JoinContext, $ as JoinLeg, a0 as JoinStrategy, a1 as JoinTooLargeError, a2 as JoinableSource, a3 as KeyringCorruptError, a4 as KeyringExpiredError, a5 as LedgerContentionError, a6 as LiveQuery, a7 as LiveUpstream, L as LocaleNotSpecifiedError, t as MaterializedViewConfigError, u as MaterializedViewCycleError, v as MaterializedViewSourceUnknownError, w as MaterializedViewTooLargeError, a8 as MigrationRequiredError, M as MissingTranslationError, a9 as NetworkError, aa as NoAccessError, ab as NonAdditiveSchemaChangeError, ac as NotFoundError, ad as OrderBy, O as OverlayBaseIsVirtualError, j as OverlayCollectionUnavailableError, k as OverlayIdMismatchError, l as OverlayNameCollisionError, ae as PathEscapeError, af as PeriodClosedError, ag as PermissionDeniedError, ah as PrivilegeEscalationError, Q as Query, ai as QueryPlan, aj as QuerySource, ak as QuiesceTimeoutError, al as ReadOnlyAtInstantError, am as ReadOnlyError, an as ReadOnlyFrameError, d as RecordLockedError, ao as RefDescriptor, ap as RefIntegrityError, aq as RefMode, ar as RefRegistry, as as RefScopeError, at as RefViolation, R as ReservedCollectionNameError, au as ScanBuilder, av as ScanPageProvider, aw as SchemaFenceError, ax as SchemaLockedError, ay as SchemaUpdateError, az as SchemaValidationError, S as SessionExpiredError, b as SessionNotFoundError, c as SessionPolicyError, aA as StoreCapabilityError, aB as TamperedError, aC as TierDemoteDeniedError, aD as TierNotGrantedError, T as TranslatorNotConfiguredError, aE as ValidationError, aF as applyJoins, aG as buildLiveQuery, aH as executePlan, aI as ref, aJ as resetJoinWarnings } from './index-DVkvrgpm.cjs';
7
+ export { A as AutoCredential, n as AutoCredentialKind, c as CompressionAlgo, N as NOYDB_BUNDLE_FORMAT_VERSION, e as NOYDB_BUNDLE_MAGIC, f as NOYDB_BUNDLE_PREFIX_BYTES, g as NoydbBundleHeader, h as NoydbBundleReadResult, R as ReadNoydbBundleOptions, W as WriteNoydbBundleOptions, j as generateULID, o as hasNoydbBundleMagic, k as isULID, r as readNoydbBundle, l as readNoydbBundleHeader, p as readNoydbBundlePublicEnvelope, m as resetBrotliSupportCache, w as writeNoydbBundle } from './ulid-CG2YvAbg.cjs';
8
8
  export { a as CrdtMode, b as CrdtState, L as LwwMapState, R as RgaState, Y as YjsState, m as mergeCrdtStates, r as resolveCrdtSnapshot } from './strategy-BSxFXGzb.cjs';
9
- export { w as withGuard } from './with-guard-DQme5DKE.cjs';
10
- export { w as withDerivation } from './with-derivation-BjQ7q4NE.cjs';
11
- export { w as withMaterializedView } from './with-materialized-view-BbEPFIIJ.cjs';
9
+ export { w as withGuard } from './with-guard-DF_Ul3DT.cjs';
10
+ export { w as withDerivation } from './with-derivation-DWajFh4K.cjs';
11
+ export { w as withMaterializedView } from './with-materialized-view-_piodoIz.cjs';
12
12
  export { a as Clause, C as CollectionIndexes, F as FieldClause, b as FilterClause, G as GroupClause, H as HashIndex, I as IndexDef, O as Operator, e as evaluateClause, c as evaluateFieldClause, r as readPath } from './predicate-Dnu81tsS.cjs';
13
- export { w as withOverlayedView } from './with-overlayed-view-bwlmmFjx.cjs';
13
+ export { w as withOverlayedView } from './with-overlayed-view-DwzCKxn2.cjs';
14
14
  export { SYNC_CREDENTIALS_COLLECTION, SyncCredential, credentialStatus, deleteCredential, getCredential, listCredentials, putCredential } from './team/index.cjs';
15
- export { C as CreateSessionOptions, a as CreateSessionResult, D as DevUnlockOptions, S as SessionToken, b as activeSessionCount, c as clearDevUnlock, d as createSession, e as enableDevUnlock, i as isDevUnlockActive, f as isSessionAlive, l as loadDevUnlock, r as resolveSession, g as revokeAllSessions, h as revokeSession } from './dev-unlock-DQCNDfFp.cjs';
15
+ export { C as CreateSessionOptions, a as CreateSessionResult, D as DevUnlockOptions, S as SessionToken, b as activeSessionCount, c as clearDevUnlock, d as createSession, e as enableDevUnlock, i as isDevUnlockActive, f as isSessionAlive, l as loadDevUnlock, r as resolveSession, g as revokeAllSessions, h as revokeSession } from './dev-unlock-De3mjQWv.cjs';
16
16
  export { a as AggregateResult, b as AggregateSpec, c as Aggregation, d as AggregationUpstream, G as GROUPBY_MAX_CARDINALITY, e as GROUPBY_WARN_CARDINALITY, f as GroupedAggregation, g as GroupedQuery, h as GroupedQueryN, i as GroupedRow, j as GroupedRowN, L as LiveAggregation, R as Reducer, k as ReducerOptions, l as avg, n as count, o as groupAndReduce, p as max, q as min, r as reduceRecords, t as sum } from './strategy-DSTrsZ8t.cjs';
17
- export { L as LEDGER_COLLECTION, a as LEDGER_DELTAS_COLLECTION, e as envelopePayloadHash } from './hash-jDowCrK2.cjs';
17
+ export { L as LEDGER_COLLECTION, a as LEDGER_DELTAS_COLLECTION, e as envelopePayloadHash } from './hash-vBCB0-Ps.cjs';
18
18
  import './lazy-builder-C-rPfWG0.cjs';
19
19
  import '@noy-db/attestation';
20
20
 
@@ -339,6 +339,24 @@ declare function loadVaultPolicy(store: NoydbStore, vault: string): Promise<Vaul
339
339
  */
340
340
  declare function saveVaultPolicy(store: NoydbStore, vault: string, policy: VaultPolicy): Promise<void>;
341
341
 
342
+ /** Allow any schema change. Explicit blind / back-compat. */
343
+ declare function blindUpdate(): SchemaUpdateStrategy;
344
+ /** Allow additive changes; reject non-additive ones. The safety backstop. */
345
+ declare function additiveOnly(): SchemaUpdateStrategy;
346
+ /**
347
+ * Reject schema changes. With `fields`, reject only when one of those
348
+ * fields is added/removed/changed; otherwise reject any non-`none` delta.
349
+ */
350
+ declare function lockSchema(opts?: {
351
+ readonly fields?: readonly string[];
352
+ }): SchemaUpdateStrategy;
353
+
354
+ /** The coordinatedCutover update strategy (#232, single-step — no from/to). */
355
+
356
+ declare function coordinatedCutover(opts: {
357
+ readonly transform: TransformFn;
358
+ }): SchemaUpdateStrategy;
359
+
342
360
  /**
343
361
  * Derive a {@link PersistedSchemaEnvelope} from a Standard Schema v1
344
362
  * validator. v0 supports Zod via `zod-to-json-schema` (optional peer-dep);
@@ -413,6 +431,8 @@ interface PersistSchemaResult {
413
431
  readonly skipped: boolean;
414
432
  /** The envelope that was either written or matched. */
415
433
  readonly envelope: PersistedSchemaEnvelope;
434
+ /** The update-strategy decision, present when strategies ran (#245). */
435
+ readonly decision?: UpdateDecision;
416
436
  }
417
437
  declare function persistSchemaIfNeeded(opts: {
418
438
  readonly store: NoydbStore;
@@ -420,6 +440,7 @@ declare function persistSchemaIfNeeded(opts: {
420
440
  readonly collectionName: string;
421
441
  readonly validator: unknown;
422
442
  readonly dek: CryptoKey;
443
+ readonly strategies?: readonly SchemaUpdateStrategy[];
423
444
  }): Promise<PersistSchemaResult>;
424
445
 
425
446
  /**
@@ -754,4 +775,4 @@ type DiffCandidate<T = unknown> = Vault | Record<string, readonly T[]> | string;
754
775
  */
755
776
  declare function diffVault<T = unknown>(vault: Vault, candidate: DiffCandidate<T>, options?: DiffOptions): Promise<VaultDiff<T>>;
756
777
 
757
- export { ActiveTier, type CheckGateContext, DEFAULT_FRESHNESS_MS, DIRECTORY_RECORD_ID, type DiffCandidate, DiffEntry, type DiffOptions, DirectoryConfig, FactorProof, GateName, GatePolicy, META_COLLECTION, ManagedRecoveryNotEnrolledError, NoydbError, NoydbStore, PERSONAL_POLICY, POLICY_RECORD_ID, PUBLIC_ENVELOPE_RECORD_ID, type PersistSchemaResult, PersistedSchemaEnvelope, PolicyDeniedError, type PolicyDenyReason, PublicEnvelope, RecoveryNotEnrolledError, RecoveryProfileNotImplementedError, SCHEMAS_COLLECTION, STRICT_POLICY, UnlockedKeyring, UserEnvelope, UserVisibility, VISIBILITY_RECORD_PREFIX, Vault, type VaultDiff, type VaultDiffEntry, type VaultDiffModifiedEntry, VaultPolicy, assertTierAccess, base64ToBuffer, bufferToBase64, checkGate, decryptBytes, decryptDeterministic, dekKey, deleteUserEnvelope, deleteUserVisibility, derivePersistedSchema, derivePresenceKey, describeAllUsersAuth, describeAuthConfig, describeGate, describeUserAuth, diagramAuthConfig, diffVault, effectiveClearance, encryptBytes, encryptDeterministic, estimateRecordBytes, isZodSchema, listUserEnvelopeIds, loadPersistedSchema, loadPublicEnvelope, loadUserEnvelope, loadVaultPolicy, mergePolicy, parseBytes, persistDirectoryConfig, persistSchemaIfNeeded, persistUserVisibility, readDirectoryConfig, readPublicEnvelope, readUserVisibility, savePersistedSchema, savePublicEnvelope, saveUserEnvelope, saveVaultPolicy, visibilityRecordId };
778
+ export { ActiveTier, type CheckGateContext, DEFAULT_FRESHNESS_MS, DIRECTORY_RECORD_ID, type DiffCandidate, DiffEntry, type DiffOptions, DirectoryConfig, FactorProof, GateName, GatePolicy, META_COLLECTION, ManagedRecoveryNotEnrolledError, NoydbError, NoydbStore, PERSONAL_POLICY, POLICY_RECORD_ID, PUBLIC_ENVELOPE_RECORD_ID, type PersistSchemaResult, PersistedSchemaEnvelope, PolicyDeniedError, type PolicyDenyReason, PublicEnvelope, RecoveryNotEnrolledError, RecoveryProfileNotImplementedError, SCHEMAS_COLLECTION, STRICT_POLICY, SchemaUpdateStrategy, UnlockedKeyring, UpdateDecision, UserEnvelope, UserVisibility, VISIBILITY_RECORD_PREFIX, Vault, type VaultDiff, type VaultDiffEntry, type VaultDiffModifiedEntry, VaultPolicy, additiveOnly, assertTierAccess, base64ToBuffer, blindUpdate, bufferToBase64, checkGate, coordinatedCutover, decryptBytes, decryptDeterministic, dekKey, deleteUserEnvelope, deleteUserVisibility, derivePersistedSchema, derivePresenceKey, describeAllUsersAuth, describeAuthConfig, describeGate, describeUserAuth, diagramAuthConfig, diffVault, effectiveClearance, encryptBytes, encryptDeterministic, estimateRecordBytes, isZodSchema, listUserEnvelopeIds, loadPersistedSchema, loadPublicEnvelope, loadUserEnvelope, loadVaultPolicy, lockSchema, mergePolicy, parseBytes, persistDirectoryConfig, persistSchemaIfNeeded, persistUserVisibility, readDirectoryConfig, readPublicEnvelope, readUserVisibility, savePersistedSchema, savePublicEnvelope, saveUserEnvelope, saveVaultPolicy, visibilityRecordId };
package/dist/index.d.ts CHANGED
@@ -1,20 +1,20 @@
1
- import { aO as NoydbStore, bo as UserEnvelope, ba as PublicEnvelope, bp as GateName, bq as GatePolicy, br as VaultPolicy, bs as ActiveTier, bt as FactorProof, bu as PersistedSchemaEnvelope, bv as DirectoryConfig, bw as UserVisibility, aM as UnlockedKeyring, bf as Vault, aV as DiffEntry } from './types-BoFFiskX.js';
2
- export { bx as AccessibleVault, aS as AppendInput, ay as ArrayOutputSpec, p as BLOB_CHUNKS_COLLECTION, q as BLOB_COLLECTION, t as BLOB_INDEX_COLLECTION, u as BLOB_SLOTS_PREFIX, w as BLOB_VERSIONS_PREFIX, by as BUNDLE_STORE_POLICY, A as BlobObject, C as BlobPutOptions, E as BlobResponseOptions, F as BlobSet, bz as BuiltInGateName, bc as BundleRecipient, _ as CONSENT_AUDIT_COLLECTION, bA as CacheOptions, bB as CacheStats, bC as ChangeEvent, aT as ChangeType, a7 as ClosePeriodOptions, aH as Collection, bD as CollectionChangeEvent, bE as CollectionConflictResolver, bF as CollectionDescriptor, ao as CollectionFrame, aU as CollectionInstant, bG as CollectionStats, bH as Conflict, bI as ConflictPolicy, bJ as ConflictStrategy, $ as ConsentAuditEntry, a0 as ConsentAuditFilter, a1 as ConsentContext, a2 as ConsentOp, bK as CrossTierAccessEvent, L as DEFAULT_CHUNK_SIZE, bL as DEFAULT_PUBLIC_ENVELOPE_SCHEMA, bM as DELEGATIONS_COLLECTION, D as DICT_COLLECTION_PREFIX, bN as DeepPartial, bO as DeepPartialOrNull, bP as DelegationToken, bQ as DeleteManyResult, bR as DerivationDescriptor, aw as DerivationStrategy, aA as DerivationStrategyHandle, aB as DerivedFromMeta, a as DictEntry, b as DictKeyDescriptor, c as DictionaryHandle, d as DictionaryOptions, bS as DirtyEntry, bT as DumpSchemaOptions, bU as ELEVATION_AUDIT_COLLECTION, bV as ElevatedHandle, aQ as EncryptedEnvelope, bW as EnrollAuthenticatorOptions, bX as EnrollAuthenticatorWrappingDEKsOptions, bY as EnrollAuthenticatorWrappingKEKOptions, bZ as EnrollRecoveryResult, b_ as ExportCapability, b$ as ExportChunk, c0 as ExportFormat, c1 as ExportStreamOptions, c2 as FactorKind, c3 as FactorProofBundle, c4 as FactorRequirement, c5 as FieldDescriptor, c6 as FieldSource, c7 as GhostRecord, c8 as GrantOptions, ai as GuardChange, aj as GuardContext, ah as GuardStrategy, al as GuardStrategyHandle, c9 as HistoryConfig, ca as HistoryEntry, aP as HistoryOptions, e as I18nTextDescriptor, f as I18nTextOptions, cb as INDEXED_STORE_POLICY, cc as ImportCapability, cd as InferOutput, ce as InternalCollectionStats, cf as IssueDelegationOptions, cg as IssueMagicLinkGrantOptions, aW as JsonPatch, aX as JsonPatchOp, ch as KeyringAuthenticator, ci as KeyringAuthenticatorWrappingDEKs, cj as KeyringAuthenticatorWrappingKEK, ck as KeyringFile, aY as LedgerEntry, aZ as LedgerStore, cl as ListAccessibleVaultsOptions, cm as ListPageResult, cn as ListUsersOptions, co as LiveUserEnvelope, cp as LocaleReadOptions, cq as Lru, cr as LruOptions, cs as LruStats, ct as MAGIC_LINK_CONTENT_INFO_PREFIX, cu as MAGIC_LINK_GRANTS_COLLECTION, cv as MAGIC_LINK_KEK_INFO_PREFIX, cw as MagicLinkGrantPayload, cx as MagicLinkGrantRecord, bl as MaterializedFromMeta, cy as MaterializedViewDescriptor, bm as MaterializedViewOutput, aE as MaterializedViewStrategy, aF as MaterializedViewStrategyHandle, cz as MemoryRecipientSealer, cA as MemorySealingKeyProvider, cB as NOYDB_BACKUP_VERSION, cC as NOYDB_FORMAT_VERSION, cD as NOYDB_KEYRING_VERSION, cE as NOYDB_SYNC_VERSION, cF as Noydb, cG as NoydbBundleStore, cH as NoydbEventMap, cI as NoydbOptions, a8 as OpenPeriodOptions, aC as OutputSpec, cJ as OverlayViewDescriptor, aG as OverlayedViewStrategy, aJ as OverlayedViewStrategyHandle, a9 as PERIODS_COLLECTION, cK as PUBLIC_ENVELOPE_FIELDS, cL as PaperRecoveryDoc, cM as PaperRecoveryEntry, cN as PassphrasePolicy, cO as PassphraseValidationResult, aa as PeriodRecord, cP as Permission, cQ as Permissions, cR as PersistedSchemaKind, cS as PlaintextTranslatorContext, cT as PlaintextTranslatorFn, P as PolicyEnforcer, cU as PresenceHandle, cV as PresencePeer, aR as PruneOptions, cW as PublicEnvelopeField, cX as PublicEnvelopeSchema, cY as PublicEnvelopeText, cZ as PullMode, c_ as PullOptions, c$ as PullPolicy, d0 as PullResult, d1 as PushMode, d2 as PushOptions, d3 as PushPolicy, d4 as PushResult, d5 as PutManyItemOptions, d6 as PutManyOptions, d7 as PutManyResult, d8 as QueryAcrossOptions, d9 as QueryAcrossResult, da as QuickUnlockState, db as QuickUnlockStore, dc as ReAuthOperation, be as RecipientHint, bd as RecipientSealer, aD as RecordOutputSpec, dd as RecoverPassphraseInput, de as RecoverPassphraseResult, df as RecoverUserOptions, dg as RecoveryProof, dh as ResolvedPublicEnvelopeSchema, di as RevokeOptions, aL as Role, dj as RotatePassphraseInput, dk as RotateRecoveryOptions, dl as RotateRecoveryResult, dm as SEALED_PASSPHRASE_RECORD_ID, dn as SealedEnvelope, dp as SealedPassphrase, bb as SealingKeyProvider, dq as SessionPolicy, dr as SetPublicEnvelopeInput, ds as ShamirRecoveryDoc, dt as ShamirRecoveryEntry, bh as ShamirRecoveryProvider, U as SlotInfo, V as SlotRecord, du as SlotRewrapCeremony, dv as SlotRewrapContext, dw as StandardSchemaV1, dx as StandardSchemaV1Issue, dy as StandardSchemaV1SyncResult, dz as StoreAuth, dA as StoreAuthKind, dB as StoreCapabilities, dC as SyncEngine, dD as SyncMetadata, dE as SyncPolicy, dF as SyncScheduler, dG as SyncSchedulerStatus, dH as SyncStatus, dI as SyncTarget, dJ as SyncTargetRole, dK as SyncTransaction, dL as SyncTransactionResult, dM as TierMode, dN as TranslatorAuditEntry, as as TxCollection, at as TxContext, dO as TxOp, au as TxVault, dP as USER_ENVELOPE_COLLECTION, dQ as USER_ENVELOPE_MAX_BYTES, bn as UnionSource, dR as Unsubscribe, dS as UpdateAuthenticatorOptions, dT as UpdateUserOptions, dU as UserApi, dV as UserEnvelopeCheckGate, dW as UserEnvelopeOversizedError, dX as UserEnvelopePresented, dY as UserInfo, dZ as VaultBackup, a_ as VaultEngine, ap as VaultFrame, a$ as VaultInstant, d_ as VaultPolicyOnDisk, d$ as VaultSchemaSnapshot, e0 as VaultSnapshot, b0 as VerifyResult, W as VersionRecord, e1 as WarningRules, e2 as WeakPassphraseError, e3 as WeakPassphraseReason, e4 as WrappedDeksBlob, g as applyI18nLocale, b1 as applyPatch, e5 as assertStrongPassphrase, e6 as buildRecipientKeyringFile, e7 as burnPaperRecoveryEntry, b2 as canonicalJson, b3 as computePatch, n as createEnforcer, e8 as createNoydb, e9 as createStore, ea as deriveMagicLinkContentKey, h as dictCollectionName, i as dictKey, b4 as diff, eb as enrollAuthenticator, ec as estimateEntropy, ed as evaluateExportCapability, ee as evaluateImportCapability, ef as findAuthenticator, b5 as formatDiff, eg as hasExportCapability, eh as hasImportCapability, ei as hasRecoveryEnrolled, b6 as hashEntry, j as i18nText, k as isDictCollectionName, l as isDictKeyDescriptor, m as isI18nTextDescriptor, ej as isMagicLinkGrantExpired, ek as isPublicEnvelope, el as issueDelegation, em as keyringRecoverPassphrase, en as keyringRotatePassphrase, eo as listMagicLinkGrants, ep as listUsers, eq as listUsersWithEnvelopes, er as loadActiveDelegations, es as loadPaperRecoveryEntries, et as loadSealedPassphrase, eu as loadShamirRecoveryEntries, ev as magicLinkGrantRecordId, ew as mintPaperRecoveryEntry, ex as mintShamirRecoveryEntry, ey as mintWrappedDeksBlob, b7 as paddedIndex, b8 as parseIndex, ez as parseSealedEnvelope, eA as readMagicLinkGrantRecord, eB as recoverUser, eC as removeAuthenticator, r as resolveI18nText, eD as resolvePublicEnvelopeSchema, eE as revokeDelegation, eF as revokeMagicLinkGrant, av as runTransaction, eG as savePaperRecoveryEntries, eH as saveSealedPassphrase, eI as saveShamirRecoveryEntries, b9 as sha256Hex, eJ as unwrapDeksFromBlob, eK as unwrapDeksFromPaperEntry, eL as unwrapDeksFromShamirEntry, eM as unwrapMagicLinkGrant, v as validateI18nTextValue, eN as validatePassphrase, eO as validatePublicEnvelopeInput, eP as validateSchemaInput, eQ as validateSchemaOutput, o as validateSessionPolicy, eR as writeMagicLinkGrant } from './types-BoFFiskX.js';
1
+ import { aO as NoydbStore, bo as UserEnvelope, ba as PublicEnvelope, bp as GateName, bq as GatePolicy, br as VaultPolicy, bs as ActiveTier, bt as FactorProof, bu as SchemaUpdateStrategy, bv as TransformFn, bw as PersistedSchemaEnvelope, bx as UpdateDecision, by as DirectoryConfig, bz as UserVisibility, aM as UnlockedKeyring, bf as Vault, aV as DiffEntry } from './types-D9eB0Rvh.js';
2
+ export { bA as AccessibleVault, bB as AffectedDocument, aS as AppendInput, ay as ArrayOutputSpec, p as BLOB_CHUNKS_COLLECTION, q as BLOB_COLLECTION, t as BLOB_INDEX_COLLECTION, u as BLOB_SLOTS_PREFIX, w as BLOB_VERSIONS_PREFIX, bC as BUNDLE_STORE_POLICY, A as BlobObject, C as BlobPutOptions, E as BlobResponseOptions, F as BlobSet, bD as BuiltInGateName, bc as BundleRecipient, _ as CONSENT_AUDIT_COLLECTION, bE as CacheOptions, bF as CacheStats, bG as ChangeEvent, aT as ChangeType, a7 as ClosePeriodOptions, aH as Collection, bH as CollectionChangeEvent, bI as CollectionConflictResolver, bJ as CollectionDescriptor, ao as CollectionFrame, aU as CollectionInstant, bK as CollectionStats, bL as Conflict, bM as ConflictPolicy, bN as ConflictStrategy, $ as ConsentAuditEntry, a0 as ConsentAuditFilter, a1 as ConsentContext, a2 as ConsentOp, bO as CrossTierAccessEvent, L as DEFAULT_CHUNK_SIZE, bP as DEFAULT_PUBLIC_ENVELOPE_SCHEMA, bQ as DELEGATIONS_COLLECTION, D as DICT_COLLECTION_PREFIX, bR as DeepPartial, bS as DeepPartialOrNull, bT as DelegationToken, bU as DeleteManyResult, bV as DerivationDescriptor, aw as DerivationStrategy, aA as DerivationStrategyHandle, aB as DerivedFromMeta, a as DictEntry, b as DictKeyDescriptor, c as DictionaryHandle, d as DictionaryOptions, bW as DirtyEntry, bX as DryRunResult, bY as DumpSchemaOptions, bZ as ELEVATION_AUDIT_COLLECTION, b_ as ElevatedHandle, aQ as EncryptedEnvelope, b$ as EnrollAuthenticatorOptions, c0 as EnrollAuthenticatorWrappingDEKsOptions, c1 as EnrollAuthenticatorWrappingKEKOptions, c2 as EnrollRecoveryResult, c3 as ExportCapability, c4 as ExportChunk, c5 as ExportFormat, c6 as ExportStreamOptions, c7 as FactorKind, c8 as FactorProofBundle, c9 as FactorRequirement, ca as FenceDoc, cb as FenceState, cc as FieldChange, cd as FieldDescriptor, ce as FieldSource, cf as GhostRecord, cg as GrantOptions, ai as GuardChange, aj as GuardContext, ah as GuardStrategy, al as GuardStrategyHandle, ch as GuardViolation, ci as HistoryConfig, cj as HistoryEntry, aP as HistoryOptions, e as I18nTextDescriptor, f as I18nTextOptions, ck as INDEXED_STORE_POLICY, cl as ImportCapability, cm as InferOutput, cn as InternalCollectionStats, co as IssueDelegationOptions, cp as IssueMagicLinkGrantOptions, aW as JsonPatch, aX as JsonPatchOp, cq as KeyringAuthenticator, cr as KeyringAuthenticatorWrappingDEKs, cs as KeyringAuthenticatorWrappingKEK, ct as KeyringFile, aY as LedgerEntry, aZ as LedgerStore, cu as ListAccessibleVaultsOptions, cv as ListPageResult, cw as ListUsersOptions, cx as LiveUserEnvelope, cy as LocaleReadOptions, cz as Lru, cA as LruOptions, cB as LruStats, cC as MAGIC_LINK_CONTENT_INFO_PREFIX, cD as MAGIC_LINK_GRANTS_COLLECTION, cE as MAGIC_LINK_KEK_INFO_PREFIX, cF as MagicLinkGrantPayload, cG as MagicLinkGrantRecord, bl as MaterializedFromMeta, cH as MaterializedViewDescriptor, bm as MaterializedViewOutput, aE as MaterializedViewStrategy, aF as MaterializedViewStrategyHandle, cI as MemoryRecipientSealer, cJ as MemorySealingKeyProvider, cK as NOYDB_BACKUP_VERSION, cL as NOYDB_FORMAT_VERSION, cM as NOYDB_KEYRING_VERSION, cN as NOYDB_SYNC_VERSION, cO as Noydb, cP as NoydbBundleStore, cQ as NoydbEventMap, cR as NoydbOptions, a8 as OpenPeriodOptions, aC as OutputSpec, cS as OverlayViewDescriptor, aG as OverlayedViewStrategy, aJ as OverlayedViewStrategyHandle, a9 as PERIODS_COLLECTION, cT as PUBLIC_ENVELOPE_FIELDS, cU as PaperRecoveryDoc, cV as PaperRecoveryEntry, cW as PassphrasePolicy, cX as PassphraseValidationResult, aa as PeriodRecord, cY as Permission, cZ as Permissions, c_ as PersistedSchemaKind, c$ as PlaintextTranslatorContext, d0 as PlaintextTranslatorFn, P as PolicyEnforcer, d1 as PresenceHandle, d2 as PresencePeer, aR as PruneOptions, d3 as PublicEnvelopeField, d4 as PublicEnvelopeSchema, d5 as PublicEnvelopeText, d6 as PullMode, d7 as PullOptions, d8 as PullPolicy, d9 as PullResult, da as PushMode, db as PushOptions, dc as PushPolicy, dd as PushResult, de as PutManyItemOptions, df as PutManyOptions, dg as PutManyResult, dh as QueryAcrossOptions, di as QueryAcrossResult, dj as QuickUnlockState, dk as QuickUnlockStore, dl as ReAuthOperation, be as RecipientHint, bd as RecipientSealer, aD as RecordOutputSpec, dm as RecoverPassphraseInput, dn as RecoverPassphraseResult, dp as RecoverUserOptions, dq as RecoveryProof, dr as ResolvedPublicEnvelopeSchema, ds as RevokeOptions, aL as Role, dt as RotatePassphraseInput, du as RotateRecoveryOptions, dv as RotateRecoveryResult, dw as SEALED_PASSPHRASE_RECORD_ID, dx as SchemaDelta, dy as SchemaIntrospection, dz as SealedEnvelope, dA as SealedPassphrase, bb as SealingKeyProvider, dB as SessionPolicy, dC as SetPublicEnvelopeInput, dD as ShamirRecoveryDoc, dE as ShamirRecoveryEntry, bh as ShamirRecoveryProvider, U as SlotInfo, V as SlotRecord, dF as SlotRewrapCeremony, dG as SlotRewrapContext, dH as StandardSchemaV1, dI as StandardSchemaV1Issue, dJ as StandardSchemaV1SyncResult, dK as StoreAuth, dL as StoreAuthKind, dM as StoreCapabilities, dN as SyncEngine, dO as SyncMetadata, dP as SyncPolicy, dQ as SyncScheduler, dR as SyncSchedulerStatus, dS as SyncStatus, dT as SyncTarget, dU as SyncTargetRole, dV as SyncTransaction, dW as SyncTransactionResult, dX as TabChannel, dY as TabCoordinationOptions, dZ as TabLockManager, d_ as TabPresence, d$ as TabRole, e0 as TierMode, e1 as TranslatorAuditEntry, as as TxCollection, at as TxContext, e2 as TxOp, au as TxVault, e3 as USER_ENVELOPE_COLLECTION, e4 as USER_ENVELOPE_MAX_BYTES, bn as UnionSource, e5 as Unsubscribe, e6 as UpdateAuthenticatorOptions, e7 as UpdateContext, e8 as UpdateUserOptions, e9 as UserApi, ea as UserEnvelopeCheckGate, eb as UserEnvelopeOversizedError, ec as UserEnvelopePresented, ed as UserInfo, ee as VaultBackup, a_ as VaultEngine, ap as VaultFrame, a$ as VaultInstant, ef as VaultPolicyOnDisk, eg as VaultSchemaSnapshot, eh as VaultSnapshot, b0 as VerifyResult, W as VersionRecord, ei as WarningRules, ej as WeakPassphraseError, ek as WeakPassphraseReason, el as WrappedDeksBlob, em as WriteConflict, en as WriteEvent, eo as WriteHook, ep as WriteQueue, g as applyI18nLocale, b1 as applyPatch, eq as assertStrongPassphrase, er as buildRecipientKeyringFile, es as burnPaperRecoveryEntry, b2 as canonicalJson, b3 as computePatch, n as createEnforcer, et as createNoydb, eu as createStore, ev as deriveMagicLinkContentKey, h as dictCollectionName, i as dictKey, b4 as diff, ew as enrollAuthenticator, ex as estimateEntropy, ey as evaluateExportCapability, ez as evaluateImportCapability, eA as findAuthenticator, b5 as formatDiff, eB as hasExportCapability, eC as hasImportCapability, eD as hasRecoveryEnrolled, b6 as hashEntry, j as i18nText, k as isDictCollectionName, l as isDictKeyDescriptor, m as isI18nTextDescriptor, eE as isMagicLinkGrantExpired, eF as isPublicEnvelope, eG as issueDelegation, eH as keyringRecoverPassphrase, eI as keyringRotatePassphrase, eJ as listMagicLinkGrants, eK as listUsers, eL as listUsersWithEnvelopes, eM as loadActiveDelegations, eN as loadPaperRecoveryEntries, eO as loadSealedPassphrase, eP as loadShamirRecoveryEntries, eQ as magicLinkGrantRecordId, eR as mintPaperRecoveryEntry, eS as mintShamirRecoveryEntry, eT as mintWrappedDeksBlob, b7 as paddedIndex, b8 as parseIndex, eU as parseSealedEnvelope, eV as readMagicLinkGrantRecord, eW as recoverUser, eX as removeAuthenticator, r as resolveI18nText, eY as resolvePublicEnvelopeSchema, eZ as revokeDelegation, e_ as revokeMagicLinkGrant, av as runTransaction, e$ as savePaperRecoveryEntries, f0 as saveSealedPassphrase, f1 as saveShamirRecoveryEntries, b9 as sha256Hex, f2 as unwrapDeksFromBlob, f3 as unwrapDeksFromPaperEntry, f4 as unwrapDeksFromShamirEntry, f5 as unwrapMagicLinkGrant, v as validateI18nTextValue, f6 as validatePassphrase, f7 as validatePublicEnvelopeInput, f8 as validateSchemaInput, f9 as validateSchemaOutput, o as validateSessionPolicy, fa as writeMagicLinkGrant } from './types-D9eB0Rvh.js';
3
3
  export { d as detectMagic, a as detectMimeType, i as isPreCompressed } from './mime-magic-CBBSOkjm.js';
4
4
  export { AgeRoute, BlobLifecyclePolicy, BlobStoreRoute, CircuitBreakerOptions, HealthCheckOptions, LogLevel, LoggingOptions, MetricsOptions, OverrideOptions, OverrideTarget, RetryOptions, RouteStatus, RouteStoreOptions, RoutedNoydbStore, StoreCacheOptions, StoreMiddleware, StoreOperation, SuspendOptions, WrapBundleStoreOptions, WrappedBundleNoydbStore, createBundleStore, routeStore, withCache, withCircuitBreaker, withHealthCheck, withLogging, withMetrics, withRetry, wrapBundleStore, wrapStore } from './store/index.js';
5
- import { N as NoydbError } from './index-BCKdioeh.js';
6
- export { x as AlreadyElevatedError, A as AmendmentForbiddenError, m as AttestationError, B as BackupCorruptedError, o as BackupLedgerError, p as BundleIntegrityError, q as BundleSealMismatchError, r as BundleVersionConflictError, C as ConflictError, y as DEFAULT_JOIN_MAX_ROWS, z as DanglingReferenceError, E as DecryptionError, G as DelegationTargetMissingError, e as DerivationCapExceededError, f as DerivationCycleError, g as DerivationDepthError, h as DerivationOutputShapeError, i as DerivationOutputUnknownError, D as DictKeyInUseError, a as DictKeyMissingError, H as DirectoryDisabledError, J as ElevationExpiredError, K as ExportCapabilityError, F as FieldFrozenError, U as FilenameSanitizationError, V as GroupCardinalityError, W as ImportCapabilityError, X as IndexRequiredError, Y as IndexWriteFailureError, Z as InvalidKeyError, I as InvariantError, _ as JoinContext, $ as JoinLeg, a0 as JoinStrategy, a1 as JoinTooLargeError, a2 as JoinableSource, a3 as KeyringCorruptError, a4 as KeyringExpiredError, a5 as LedgerContentionError, a6 as LiveQuery, a7 as LiveUpstream, L as LocaleNotSpecifiedError, t as MaterializedViewConfigError, u as MaterializedViewCycleError, v as MaterializedViewSourceUnknownError, w as MaterializedViewTooLargeError, M as MissingTranslationError, a8 as NetworkError, a9 as NoAccessError, aa as NotFoundError, ab as OrderBy, O as OverlayBaseIsVirtualError, j as OverlayCollectionUnavailableError, k as OverlayIdMismatchError, l as OverlayNameCollisionError, ac as PathEscapeError, ad as PeriodClosedError, ae as PermissionDeniedError, af as PrivilegeEscalationError, Q as Query, ag as QueryPlan, ah as QuerySource, ai as ReadOnlyAtInstantError, aj as ReadOnlyError, ak as ReadOnlyFrameError, d as RecordLockedError, al as RefDescriptor, am as RefIntegrityError, an as RefMode, ao as RefRegistry, ap as RefScopeError, aq as RefViolation, R as ReservedCollectionNameError, ar as ScanBuilder, as as ScanPageProvider, at as SchemaValidationError, S as SessionExpiredError, b as SessionNotFoundError, c as SessionPolicyError, au as StoreCapabilityError, av as TamperedError, aw as TierDemoteDeniedError, ax as TierNotGrantedError, T as TranslatorNotConfiguredError, ay as ValidationError, az as applyJoins, aA as buildLiveQuery, aB as executePlan, aC as ref, aD as resetJoinWarnings } from './index-BCKdioeh.js';
7
- export { A as AutoCredential, n as AutoCredentialKind, c as CompressionAlgo, N as NOYDB_BUNDLE_FORMAT_VERSION, e as NOYDB_BUNDLE_MAGIC, f as NOYDB_BUNDLE_PREFIX_BYTES, g as NoydbBundleHeader, h as NoydbBundleReadResult, R as ReadNoydbBundleOptions, W as WriteNoydbBundleOptions, j as generateULID, o as hasNoydbBundleMagic, k as isULID, r as readNoydbBundle, l as readNoydbBundleHeader, p as readNoydbBundlePublicEnvelope, m as resetBrotliSupportCache, w as writeNoydbBundle } from './ulid-BmBgooGm.js';
5
+ import { N as NoydbError } from './index-BF1B2HB9.js';
6
+ export { x as AlreadyElevatedError, A as AmendmentForbiddenError, m as AttestationError, B as BackupCorruptedError, o as BackupLedgerError, p as BundleIntegrityError, q as BundleSealMismatchError, r as BundleVersionConflictError, C as ConflictError, y as DEFAULT_JOIN_MAX_ROWS, z as DanglingReferenceError, E as DecryptionError, G as DelegationTargetMissingError, e as DerivationCapExceededError, f as DerivationCycleError, g as DerivationDepthError, h as DerivationOutputShapeError, i as DerivationOutputUnknownError, D as DictKeyInUseError, a as DictKeyMissingError, H as DirectoryDisabledError, J as ElevationExpiredError, K as ExportCapabilityError, F as FieldFrozenError, U as FilenameSanitizationError, V as GroupCardinalityError, W as ImportCapabilityError, X as IndexRequiredError, Y as IndexWriteFailureError, Z as InvalidKeyError, I as InvariantError, _ as JoinContext, $ as JoinLeg, a0 as JoinStrategy, a1 as JoinTooLargeError, a2 as JoinableSource, a3 as KeyringCorruptError, a4 as KeyringExpiredError, a5 as LedgerContentionError, a6 as LiveQuery, a7 as LiveUpstream, L as LocaleNotSpecifiedError, t as MaterializedViewConfigError, u as MaterializedViewCycleError, v as MaterializedViewSourceUnknownError, w as MaterializedViewTooLargeError, a8 as MigrationRequiredError, M as MissingTranslationError, a9 as NetworkError, aa as NoAccessError, ab as NonAdditiveSchemaChangeError, ac as NotFoundError, ad as OrderBy, O as OverlayBaseIsVirtualError, j as OverlayCollectionUnavailableError, k as OverlayIdMismatchError, l as OverlayNameCollisionError, ae as PathEscapeError, af as PeriodClosedError, ag as PermissionDeniedError, ah as PrivilegeEscalationError, Q as Query, ai as QueryPlan, aj as QuerySource, ak as QuiesceTimeoutError, al as ReadOnlyAtInstantError, am as ReadOnlyError, an as ReadOnlyFrameError, d as RecordLockedError, ao as RefDescriptor, ap as RefIntegrityError, aq as RefMode, ar as RefRegistry, as as RefScopeError, at as RefViolation, R as ReservedCollectionNameError, au as ScanBuilder, av as ScanPageProvider, aw as SchemaFenceError, ax as SchemaLockedError, ay as SchemaUpdateError, az as SchemaValidationError, S as SessionExpiredError, b as SessionNotFoundError, c as SessionPolicyError, aA as StoreCapabilityError, aB as TamperedError, aC as TierDemoteDeniedError, aD as TierNotGrantedError, T as TranslatorNotConfiguredError, aE as ValidationError, aF as applyJoins, aG as buildLiveQuery, aH as executePlan, aI as ref, aJ as resetJoinWarnings } from './index-BF1B2HB9.js';
7
+ export { A as AutoCredential, n as AutoCredentialKind, c as CompressionAlgo, N as NOYDB_BUNDLE_FORMAT_VERSION, e as NOYDB_BUNDLE_MAGIC, f as NOYDB_BUNDLE_PREFIX_BYTES, g as NoydbBundleHeader, h as NoydbBundleReadResult, R as ReadNoydbBundleOptions, W as WriteNoydbBundleOptions, j as generateULID, o as hasNoydbBundleMagic, k as isULID, r as readNoydbBundle, l as readNoydbBundleHeader, p as readNoydbBundlePublicEnvelope, m as resetBrotliSupportCache, w as writeNoydbBundle } from './ulid-CiM2OAeM.js';
8
8
  export { a as CrdtMode, b as CrdtState, L as LwwMapState, R as RgaState, Y as YjsState, m as mergeCrdtStates, r as resolveCrdtSnapshot } from './strategy-BSxFXGzb.js';
9
- export { w as withGuard } from './with-guard-C25yNjzd.js';
10
- export { w as withDerivation } from './with-derivation-BKXXa8Vt.js';
11
- export { w as withMaterializedView } from './with-materialized-view-CqnRwI2S.js';
9
+ export { w as withGuard } from './with-guard-DR7U-l4v.js';
10
+ export { w as withDerivation } from './with-derivation-Bzpj6UTv.js';
11
+ export { w as withMaterializedView } from './with-materialized-view-qtoJ3xKJ.js';
12
12
  export { a as Clause, C as CollectionIndexes, F as FieldClause, b as FilterClause, G as GroupClause, H as HashIndex, I as IndexDef, O as Operator, e as evaluateClause, c as evaluateFieldClause, r as readPath } from './predicate-Dnu81tsS.js';
13
- export { w as withOverlayedView } from './with-overlayed-view-Ct1fSJt-.js';
13
+ export { w as withOverlayedView } from './with-overlayed-view-DFaRfgMr.js';
14
14
  export { SYNC_CREDENTIALS_COLLECTION, SyncCredential, credentialStatus, deleteCredential, getCredential, listCredentials, putCredential } from './team/index.js';
15
- export { C as CreateSessionOptions, a as CreateSessionResult, D as DevUnlockOptions, S as SessionToken, b as activeSessionCount, c as clearDevUnlock, d as createSession, e as enableDevUnlock, i as isDevUnlockActive, f as isSessionAlive, l as loadDevUnlock, r as resolveSession, g as revokeAllSessions, h as revokeSession } from './dev-unlock-utkybTKb.js';
15
+ export { C as CreateSessionOptions, a as CreateSessionResult, D as DevUnlockOptions, S as SessionToken, b as activeSessionCount, c as clearDevUnlock, d as createSession, e as enableDevUnlock, i as isDevUnlockActive, f as isSessionAlive, l as loadDevUnlock, r as resolveSession, g as revokeAllSessions, h as revokeSession } from './dev-unlock-Cf2B7Kih.js';
16
16
  export { a as AggregateResult, b as AggregateSpec, c as Aggregation, d as AggregationUpstream, G as GROUPBY_MAX_CARDINALITY, e as GROUPBY_WARN_CARDINALITY, f as GroupedAggregation, g as GroupedQuery, h as GroupedQueryN, i as GroupedRow, j as GroupedRowN, L as LiveAggregation, R as Reducer, k as ReducerOptions, l as avg, n as count, o as groupAndReduce, p as max, q as min, r as reduceRecords, t as sum } from './strategy-DSTrsZ8t.js';
17
- export { L as LEDGER_COLLECTION, a as LEDGER_DELTAS_COLLECTION, e as envelopePayloadHash } from './hash-DcoYWfJ_.js';
17
+ export { L as LEDGER_COLLECTION, a as LEDGER_DELTAS_COLLECTION, e as envelopePayloadHash } from './hash-gVn_uKhp.js';
18
18
  import './lazy-builder-Rpd-V3jP.js';
19
19
  import '@noy-db/attestation';
20
20
 
@@ -339,6 +339,24 @@ declare function loadVaultPolicy(store: NoydbStore, vault: string): Promise<Vaul
339
339
  */
340
340
  declare function saveVaultPolicy(store: NoydbStore, vault: string, policy: VaultPolicy): Promise<void>;
341
341
 
342
+ /** Allow any schema change. Explicit blind / back-compat. */
343
+ declare function blindUpdate(): SchemaUpdateStrategy;
344
+ /** Allow additive changes; reject non-additive ones. The safety backstop. */
345
+ declare function additiveOnly(): SchemaUpdateStrategy;
346
+ /**
347
+ * Reject schema changes. With `fields`, reject only when one of those
348
+ * fields is added/removed/changed; otherwise reject any non-`none` delta.
349
+ */
350
+ declare function lockSchema(opts?: {
351
+ readonly fields?: readonly string[];
352
+ }): SchemaUpdateStrategy;
353
+
354
+ /** The coordinatedCutover update strategy (#232, single-step — no from/to). */
355
+
356
+ declare function coordinatedCutover(opts: {
357
+ readonly transform: TransformFn;
358
+ }): SchemaUpdateStrategy;
359
+
342
360
  /**
343
361
  * Derive a {@link PersistedSchemaEnvelope} from a Standard Schema v1
344
362
  * validator. v0 supports Zod via `zod-to-json-schema` (optional peer-dep);
@@ -413,6 +431,8 @@ interface PersistSchemaResult {
413
431
  readonly skipped: boolean;
414
432
  /** The envelope that was either written or matched. */
415
433
  readonly envelope: PersistedSchemaEnvelope;
434
+ /** The update-strategy decision, present when strategies ran (#245). */
435
+ readonly decision?: UpdateDecision;
416
436
  }
417
437
  declare function persistSchemaIfNeeded(opts: {
418
438
  readonly store: NoydbStore;
@@ -420,6 +440,7 @@ declare function persistSchemaIfNeeded(opts: {
420
440
  readonly collectionName: string;
421
441
  readonly validator: unknown;
422
442
  readonly dek: CryptoKey;
443
+ readonly strategies?: readonly SchemaUpdateStrategy[];
423
444
  }): Promise<PersistSchemaResult>;
424
445
 
425
446
  /**
@@ -754,4 +775,4 @@ type DiffCandidate<T = unknown> = Vault | Record<string, readonly T[]> | string;
754
775
  */
755
776
  declare function diffVault<T = unknown>(vault: Vault, candidate: DiffCandidate<T>, options?: DiffOptions): Promise<VaultDiff<T>>;
756
777
 
757
- export { ActiveTier, type CheckGateContext, DEFAULT_FRESHNESS_MS, DIRECTORY_RECORD_ID, type DiffCandidate, DiffEntry, type DiffOptions, DirectoryConfig, FactorProof, GateName, GatePolicy, META_COLLECTION, ManagedRecoveryNotEnrolledError, NoydbError, NoydbStore, PERSONAL_POLICY, POLICY_RECORD_ID, PUBLIC_ENVELOPE_RECORD_ID, type PersistSchemaResult, PersistedSchemaEnvelope, PolicyDeniedError, type PolicyDenyReason, PublicEnvelope, RecoveryNotEnrolledError, RecoveryProfileNotImplementedError, SCHEMAS_COLLECTION, STRICT_POLICY, UnlockedKeyring, UserEnvelope, UserVisibility, VISIBILITY_RECORD_PREFIX, Vault, type VaultDiff, type VaultDiffEntry, type VaultDiffModifiedEntry, VaultPolicy, assertTierAccess, base64ToBuffer, bufferToBase64, checkGate, decryptBytes, decryptDeterministic, dekKey, deleteUserEnvelope, deleteUserVisibility, derivePersistedSchema, derivePresenceKey, describeAllUsersAuth, describeAuthConfig, describeGate, describeUserAuth, diagramAuthConfig, diffVault, effectiveClearance, encryptBytes, encryptDeterministic, estimateRecordBytes, isZodSchema, listUserEnvelopeIds, loadPersistedSchema, loadPublicEnvelope, loadUserEnvelope, loadVaultPolicy, mergePolicy, parseBytes, persistDirectoryConfig, persistSchemaIfNeeded, persistUserVisibility, readDirectoryConfig, readPublicEnvelope, readUserVisibility, savePersistedSchema, savePublicEnvelope, saveUserEnvelope, saveVaultPolicy, visibilityRecordId };
778
+ export { ActiveTier, type CheckGateContext, DEFAULT_FRESHNESS_MS, DIRECTORY_RECORD_ID, type DiffCandidate, DiffEntry, type DiffOptions, DirectoryConfig, FactorProof, GateName, GatePolicy, META_COLLECTION, ManagedRecoveryNotEnrolledError, NoydbError, NoydbStore, PERSONAL_POLICY, POLICY_RECORD_ID, PUBLIC_ENVELOPE_RECORD_ID, type PersistSchemaResult, PersistedSchemaEnvelope, PolicyDeniedError, type PolicyDenyReason, PublicEnvelope, RecoveryNotEnrolledError, RecoveryProfileNotImplementedError, SCHEMAS_COLLECTION, STRICT_POLICY, SchemaUpdateStrategy, UnlockedKeyring, UpdateDecision, UserEnvelope, UserVisibility, VISIBILITY_RECORD_PREFIX, Vault, type VaultDiff, type VaultDiffEntry, type VaultDiffModifiedEntry, VaultPolicy, additiveOnly, assertTierAccess, base64ToBuffer, blindUpdate, bufferToBase64, checkGate, coordinatedCutover, decryptBytes, decryptDeterministic, dekKey, deleteUserEnvelope, deleteUserVisibility, derivePersistedSchema, derivePresenceKey, describeAllUsersAuth, describeAuthConfig, describeGate, describeUserAuth, diagramAuthConfig, diffVault, effectiveClearance, encryptBytes, encryptDeterministic, estimateRecordBytes, isZodSchema, listUserEnvelopeIds, loadPersistedSchema, loadPublicEnvelope, loadUserEnvelope, loadVaultPolicy, lockSchema, mergePolicy, parseBytes, persistDirectoryConfig, persistSchemaIfNeeded, persistUserVisibility, readDirectoryConfig, readPublicEnvelope, readUserVisibility, savePersistedSchema, savePublicEnvelope, saveUserEnvelope, saveVaultPolicy, visibilityRecordId };