@noy-db/hub 0.4.0-pre.4 → 0.4.0-pre.6

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 (470) hide show
  1. package/README.md +2 -2
  2. package/dist/api-5QVQX4HG.js +20 -0
  3. package/dist/attestation/index.js +18 -18
  4. package/dist/{backup-JL2GOTYQ.js → backup-USYSNCYM.js} +11 -11
  5. package/dist/blobs/index.js +15 -12
  6. package/dist/blobs/index.js.map +1 -1
  7. package/dist/broker/index.js +12 -12
  8. package/dist/cargo/index.js +34 -36
  9. package/dist/{chunk-JLHKBAFY.js → chunk-2BVW754E.js} +3 -3
  10. package/dist/{chunk-T7S4V52L.js → chunk-2PDBYF2O.js} +4 -4
  11. package/dist/{chunk-YGBIBOCR.js → chunk-2ZSC454H.js} +7 -7
  12. package/dist/{chunk-IGAIOGCN.js → chunk-32467U5J.js} +4 -4
  13. package/dist/{chunk-JA5O7UEZ.js → chunk-3GXDB3NQ.js} +6 -6
  14. package/dist/chunk-3GXDB3NQ.js.map +1 -0
  15. package/dist/{chunk-U73LHVPF.js → chunk-3S2YNMUS.js} +54 -6
  16. package/dist/chunk-3S2YNMUS.js.map +1 -0
  17. package/dist/{chunk-JW3XCZA2.js → chunk-3TZUC4WS.js} +11 -11
  18. package/dist/{chunk-JA5B3SLH.js → chunk-44Y3P5U6.js} +2 -2
  19. package/dist/{chunk-25G7U6RD.js → chunk-4B3DL75F.js} +2 -2
  20. package/dist/{chunk-L4OA7G5T.js → chunk-522MBPE5.js} +2 -2
  21. package/dist/chunk-5ABOFAHN.js +81 -0
  22. package/dist/chunk-5ABOFAHN.js.map +1 -0
  23. package/dist/chunk-5D2ALSM5.js +19 -0
  24. package/dist/chunk-5D2ALSM5.js.map +1 -0
  25. package/dist/{chunk-M25ZIEB2.js → chunk-5HSSTOOG.js} +2 -2
  26. package/dist/{chunk-LLVW4V7R.js → chunk-5WLDZZ6S.js} +3 -3
  27. package/dist/{chunk-BCOKZC4B.js → chunk-6SSWOUUS.js} +19 -19
  28. package/dist/chunk-6SSWOUUS.js.map +1 -0
  29. package/dist/{chunk-IGM563N5.js → chunk-6SYOHUHM.js} +6 -6
  30. package/dist/chunk-6SYOHUHM.js.map +1 -0
  31. package/dist/{chunk-7B4GPCX7.js → chunk-7IQWHYL2.js} +5 -5
  32. package/dist/{chunk-J3VW4J4E.js → chunk-7LP7FFJ2.js} +2 -2
  33. package/dist/chunk-7LP7FFJ2.js.map +1 -0
  34. package/dist/{chunk-5P5AAXYA.js → chunk-7U6AB7DZ.js} +7 -7
  35. package/dist/chunk-7U6AB7DZ.js.map +1 -0
  36. package/dist/chunk-AFHQATY4.js +47 -0
  37. package/dist/chunk-AFHQATY4.js.map +1 -0
  38. package/dist/{chunk-OWE4BNTM.js → chunk-AZXEOEQK.js} +4 -4
  39. package/dist/{chunk-GBEXTC6Z.js → chunk-BAAUFCJK.js} +3 -3
  40. package/dist/chunk-BAAUFCJK.js.map +1 -0
  41. package/dist/{chunk-BZEPJJOK.js → chunk-C2V7AJO2.js} +4 -4
  42. package/dist/chunk-CADUYBQD.js +151 -0
  43. package/dist/chunk-CADUYBQD.js.map +1 -0
  44. package/dist/{chunk-2JZ763FV.js → chunk-D4LAJ737.js} +2 -2
  45. package/dist/{chunk-5BHNQNBI.js → chunk-DOZFU7OZ.js} +1 -1
  46. package/dist/chunk-DOZFU7OZ.js.map +1 -0
  47. package/dist/{chunk-MEKAMERX.js → chunk-E7FSBI6I.js} +29 -29
  48. package/dist/chunk-E7FSBI6I.js.map +1 -0
  49. package/dist/{chunk-N4FZ6ITM.js → chunk-EGU4PWQW.js} +2 -2
  50. package/dist/chunk-EP5L47XV.js +22 -0
  51. package/dist/chunk-EP5L47XV.js.map +1 -0
  52. package/dist/{chunk-EW4HFWGJ.js → chunk-EPME33Y4.js} +6 -6
  53. package/dist/{chunk-W7TCXZWU.js → chunk-EWPS35AR.js} +794 -1045
  54. package/dist/chunk-EWPS35AR.js.map +1 -0
  55. package/dist/{chunk-JKWNG3TM.js → chunk-FHHYCBBP.js} +2 -2
  56. package/dist/{chunk-5BB3N4KU.js → chunk-G4MFQXYX.js} +2 -2
  57. package/dist/{chunk-KVHWEPT2.js → chunk-GHEMAVTN.js} +2 -2
  58. package/dist/{chunk-CGPO3ZYB.js → chunk-GQT6J4FJ.js} +15 -2
  59. package/dist/chunk-GQT6J4FJ.js.map +1 -0
  60. package/dist/{chunk-XW7NWO4A.js → chunk-GTNRMJYH.js} +2 -2
  61. package/dist/{chunk-YG2EG6CB.js → chunk-H5GMROCB.js} +4 -4
  62. package/dist/{chunk-JIMEB4C6.js → chunk-HA7P3BTB.js} +26 -177
  63. package/dist/chunk-HA7P3BTB.js.map +1 -0
  64. package/dist/{chunk-5KI3REO3.js → chunk-HDF5R2K6.js} +7 -7
  65. package/dist/{chunk-V3YB7RGR.js → chunk-HVPW6PCX.js} +3 -3
  66. package/dist/{chunk-2VUISNGP.js → chunk-HXVRRJBD.js} +5 -5
  67. package/dist/{chunk-ZJGZDOQO.js → chunk-ICYC5YNI.js} +6 -6
  68. package/dist/{chunk-KR5EGWI4.js → chunk-IUATR5UE.js} +27 -5
  69. package/dist/chunk-IUATR5UE.js.map +1 -0
  70. package/dist/{chunk-AFBJHD55.js → chunk-JGOKAZNB.js} +5 -5
  71. package/dist/{chunk-XGVDLQJE.js → chunk-JOCMXSR2.js} +3 -3
  72. package/dist/{chunk-XGVDLQJE.js.map → chunk-JOCMXSR2.js.map} +1 -1
  73. package/dist/{chunk-HGVFJL63.js → chunk-JTIPVW4J.js} +15 -5
  74. package/dist/{chunk-HGVFJL63.js.map → chunk-JTIPVW4J.js.map} +1 -1
  75. package/dist/{chunk-QXPOEAKR.js → chunk-KCZAFDP5.js} +2 -2
  76. package/dist/{chunk-MSO2C3KG.js → chunk-LC7DSMHR.js} +2 -2
  77. package/dist/{chunk-OVFCAS7U.js → chunk-LG2GUYRX.js} +9 -9
  78. package/dist/{chunk-2KL6NDD4.js → chunk-LN3MQFUE.js} +56 -4
  79. package/dist/chunk-LN3MQFUE.js.map +1 -0
  80. package/dist/{chunk-QUIG6BZT.js → chunk-M4GO4ZJK.js} +226 -36
  81. package/dist/chunk-M4GO4ZJK.js.map +1 -0
  82. package/dist/{chunk-QDNVHA2F.js → chunk-M7W2KYTL.js} +2 -2
  83. package/dist/{chunk-XULHFSHO.js → chunk-MLCTPWSO.js} +5 -5
  84. package/dist/chunk-MLCTPWSO.js.map +1 -0
  85. package/dist/{chunk-PEY6ZTCF.js → chunk-MMVQ3SUO.js} +9 -9
  86. package/dist/{chunk-PEY6ZTCF.js.map → chunk-MMVQ3SUO.js.map} +1 -1
  87. package/dist/{chunk-4X6DJZHY.js → chunk-MPPWL64H.js} +26 -43
  88. package/dist/chunk-MPPWL64H.js.map +1 -0
  89. package/dist/{chunk-QYJIOWKN.js → chunk-MQBFT2OT.js} +11 -9
  90. package/dist/chunk-MQBFT2OT.js.map +1 -0
  91. package/dist/{chunk-IUIVDVXM.js → chunk-MUPZ6IZX.js} +2 -2
  92. package/dist/{chunk-GZ2GKOF6.js → chunk-NA374QG7.js} +3 -3
  93. package/dist/chunk-NIKO2BBZ.js +23 -0
  94. package/dist/chunk-NIKO2BBZ.js.map +1 -0
  95. package/dist/{chunk-2U7Y7BNJ.js → chunk-ONB627HU.js} +2 -2
  96. package/dist/{chunk-GYB2QK5H.js → chunk-OWLZONGX.js} +2 -2
  97. package/dist/{chunk-YHPUDB7Q.js → chunk-OWOT7CFC.js} +2 -2
  98. package/dist/{chunk-VEX6G3YL.js → chunk-P4NUJVWL.js} +2 -2
  99. package/dist/chunk-PEOZ34EM.js +13 -0
  100. package/dist/chunk-PEOZ34EM.js.map +1 -0
  101. package/dist/{chunk-NM4LVUXH.js → chunk-PTT2NB46.js} +2 -2
  102. package/dist/chunk-PVEWA2DU.js +23 -0
  103. package/dist/chunk-PVEWA2DU.js.map +1 -0
  104. package/dist/{chunk-2ITLQZV5.js → chunk-PWWWMRT7.js} +2 -2
  105. package/dist/{chunk-FLHOTGOO.js → chunk-QVGEVZ5F.js} +3 -3
  106. package/dist/{chunk-HKR25MGX.js → chunk-QVIZDLAR.js} +10 -10
  107. package/dist/chunk-QVIZDLAR.js.map +1 -0
  108. package/dist/{chunk-OOTTXUNV.js → chunk-RM5EXCFF.js} +2 -2
  109. package/dist/{chunk-OOTTXUNV.js.map → chunk-RM5EXCFF.js.map} +1 -1
  110. package/dist/{chunk-OGFPMCSP.js → chunk-SBOHNJUD.js} +2 -2
  111. package/dist/{chunk-EDC6MLXV.js → chunk-SEU6QHH4.js} +2 -2
  112. package/dist/chunk-SMY5X46Z.js +14 -0
  113. package/dist/chunk-SMY5X46Z.js.map +1 -0
  114. package/dist/{chunk-F4COUZLL.js → chunk-TMR64XPL.js} +2 -2
  115. package/dist/{chunk-5OZCCLNC.js → chunk-TSNRZSRC.js} +2 -2
  116. package/dist/{chunk-2RMDVWGB.js → chunk-UNREYBZO.js} +2 -2
  117. package/dist/{chunk-BLB7P7LS.js → chunk-V2R2VWER.js} +176 -17
  118. package/dist/chunk-V2R2VWER.js.map +1 -0
  119. package/dist/{chunk-3XVOLB75.js → chunk-VDTWFN2P.js} +7 -5
  120. package/dist/chunk-VDTWFN2P.js.map +1 -0
  121. package/dist/chunk-VKQCVU2Z.js +21 -0
  122. package/dist/chunk-VKQCVU2Z.js.map +1 -0
  123. package/dist/{chunk-QCUH2G77.js → chunk-VNJMLOQS.js} +6 -6
  124. package/dist/{chunk-UEO5CHOP.js → chunk-WCJJQV2D.js} +13 -13
  125. package/dist/chunk-WCJJQV2D.js.map +1 -0
  126. package/dist/{chunk-25ZDB25Z.js → chunk-WWBC4KLB.js} +3 -3
  127. package/dist/chunk-WWBC4KLB.js.map +1 -0
  128. package/dist/{chunk-V7RGFJ3Z.js → chunk-XG7OZDOS.js} +6 -6
  129. package/dist/{chunk-GS3Q2KOZ.js → chunk-XONZGK6J.js} +2 -2
  130. package/dist/{chunk-5SZ24DL5.js → chunk-XSOGLHGY.js} +6 -6
  131. package/dist/{chunk-CCT4WZI6.js → chunk-XY6MNSAF.js} +5 -5
  132. package/dist/chunk-XY6MNSAF.js.map +1 -0
  133. package/dist/chunk-XZHEOSQ2.js +16 -0
  134. package/dist/chunk-XZHEOSQ2.js.map +1 -0
  135. package/dist/{chunk-NOT7XA7Q.js → chunk-YGMREQAK.js} +5 -5
  136. package/dist/{chunk-H4SMS4O2.js → chunk-YJ3TREAC.js} +2 -2
  137. package/dist/chunk-YMUFFJCO.js +23 -0
  138. package/dist/chunk-YMUFFJCO.js.map +1 -0
  139. package/dist/{chunk-E2R5NRZD.js → chunk-Z4D3YGAB.js} +2 -2
  140. package/dist/{chunk-WJDYZP3U.js → chunk-ZDFU34XY.js} +42 -39
  141. package/dist/chunk-ZDFU34XY.js.map +1 -0
  142. package/dist/{chunk-BZK6JEX4.js → chunk-ZF572E2M.js} +5 -5
  143. package/dist/{chunk-DEQ2JTBR.js → chunk-ZGEFBDPR.js} +4 -4
  144. package/dist/chunk-ZGEFBDPR.js.map +1 -0
  145. package/dist/{chunk-QAFWRGVD.js → chunk-ZHMUFYZF.js} +7 -7
  146. package/dist/{chunk-BVZGNMVM.js → chunk-ZHZ4PET5.js} +3 -3
  147. package/dist/{chunk-IZX3WZBF.js → chunk-ZM72UO3Y.js} +4 -4
  148. package/dist/{chunk-STR7WBOB.js → chunk-ZUDAK436.js} +2 -2
  149. package/dist/{chunk-ITI3SJRB.js → chunk-ZX5FNWH7.js} +2 -2
  150. package/dist/classified/index.js +5 -5
  151. package/dist/{classified-marker-7S5IEP6Q.js → classified-marker-SVDRXLD3.js} +3 -3
  152. package/dist/collection-facade-S5PPKZD5.js +44 -0
  153. package/dist/{computed-WZNKRLCY.js → computed-33DRJDOC.js} +3 -3
  154. package/dist/consent/index.js +13 -9
  155. package/dist/consent/index.js.map +1 -1
  156. package/dist/{cover-B5MY43CK.js → cover-ADBCTIKN.js} +4 -4
  157. package/dist/crdt/index.js +4 -0
  158. package/dist/crdt/index.js.map +1 -1
  159. package/dist/{dead-filter-KRRD57MR.js → dead-filter-HKDMTMVY.js} +2 -2
  160. package/dist/delegation-EV7LKJPH.js +25 -0
  161. package/dist/derivations/index.js +12 -12
  162. package/dist/derive-5LDJW76F.js +21 -0
  163. package/dist/dispatch-SPMYNXNW.js +194 -0
  164. package/dist/dispatch-SPMYNXNW.js.map +1 -0
  165. package/dist/dispatch-V5MSMQYX.js +72 -0
  166. package/dist/dispatch-V5MSMQYX.js.map +1 -0
  167. package/dist/{enclave-YFKA3GJT.js → enclave-ZA7C3H2L.js} +11 -11
  168. package/dist/executor-FCJEH3FU.js +9 -0
  169. package/dist/executor-OHET7TF7.js +9 -0
  170. package/dist/executor-SVHAJZ4A.js +28 -0
  171. package/dist/export-accessible-S35YKIBL.js +23 -0
  172. package/dist/extract-partition-UVHAM5WZ.js +38 -0
  173. package/dist/{fanout-sidecar-HJV3A7PM.js → fanout-sidecar-HRMHC34B.js} +9 -9
  174. package/dist/find-LEBUXVL7.js +11 -0
  175. package/dist/forget/index.js +9 -9
  176. package/dist/guards/index.js +3 -3
  177. package/dist/history/index.js +16 -12
  178. package/dist/history/index.js.map +1 -1
  179. package/dist/i18n/index.js +16 -14
  180. package/dist/i18n/index.js.map +1 -1
  181. package/dist/index.d.ts +17 -16
  182. package/dist/index.js +155 -211
  183. package/dist/index.js.map +1 -1
  184. package/dist/indexing/index.js +4 -2
  185. package/dist/indexing/index.js.map +1 -1
  186. package/dist/issue-5X3SMCF4.js +19 -0
  187. package/dist/kernel/collection.d.ts +0 -1
  188. package/dist/kernel/enclave/crypto.d.ts +8 -8
  189. package/dist/kernel/enclave/index.d.ts +2 -2
  190. package/dist/kernel/errors.d.ts +20 -20
  191. package/dist/kernel/lazy.d.ts +30 -0
  192. package/dist/kernel/noydb.d.ts +53 -101
  193. package/dist/kernel/query/builder.d.ts +10 -10
  194. package/dist/kernel/query/index.d.ts +0 -6
  195. package/dist/kernel/query/scan-builder.d.ts +4 -4
  196. package/dist/kernel/types.d.ts +87 -46
  197. package/dist/kernel/validation.d.ts +33 -33
  198. package/dist/kernel/vault.d.ts +12 -149
  199. package/dist/kernel/via/dispatch.d.ts +7 -0
  200. package/dist/{ledger-SW6QQOAV.js → ledger-K6JBFL3Z.js} +11 -11
  201. package/dist/liberate-NHTCKBU4.js +24 -0
  202. package/dist/{link-set-GNGGCFI4.js → link-set-XVZY2ODC.js} +11 -11
  203. package/dist/materialized-views/index.js +22 -19
  204. package/dist/noydb-TI3RFU6M.js +78 -0
  205. package/dist/overlay-views/index.js +4 -4
  206. package/dist/periods/index.js +15 -13
  207. package/dist/pod/index.js +11 -12
  208. package/dist/{policy-EAXSJNOT.js → policy-QWGJB7P7.js} +5 -5
  209. package/dist/port/with/collection-options.d.ts +171 -0
  210. package/dist/port/with/collection-registries.d.ts +62 -0
  211. package/dist/port/with/strategies.d.ts +2 -2
  212. package/dist/port/with/team-strategy.d.ts +3 -2
  213. package/dist/portability/index.js +8 -8
  214. package/dist/{post-register-A7HCFBP5.js → post-register-5VHHVFJY.js} +6 -6
  215. package/dist/query/index.js +6 -46
  216. package/dist/{aggregate → reduce}/index.js +24 -17
  217. package/dist/reduce/index.js.map +1 -0
  218. package/dist/register-CEX7R7NE.js +23 -0
  219. package/dist/registry-7CZWF3EQ.js +9 -0
  220. package/dist/registry-DIKMRXUC.js +19 -0
  221. package/dist/registry-EWIB5NTI.js +18 -0
  222. package/dist/request-withdrawal-AAG57QO4.js +31 -0
  223. package/dist/{reveal-PB3YG544.js → reveal-7OOT5XPD.js} +6 -6
  224. package/dist/revoke-U5LCIJMF.js +24 -0
  225. package/dist/satellites/index.js +1 -1
  226. package/dist/sealed-record/index.js +12 -12
  227. package/dist/{seed-EKF4DIBB.js → seed-GVOI6QP6.js} +12 -12
  228. package/dist/seed-GVOI6QP6.js.map +1 -0
  229. package/dist/session/index.js +13 -9
  230. package/dist/session/index.js.map +1 -1
  231. package/dist/shadow/index.js +6 -2
  232. package/dist/shadow/index.js.map +1 -1
  233. package/dist/signer-NAA2OX7H.js +25 -0
  234. package/dist/snapshots/index.js +14 -10
  235. package/dist/snapshots/index.js.map +1 -1
  236. package/dist/{stale-4UNPHWOU.js → stale-BJO2WIN7.js} +11 -10
  237. package/dist/storage-FL7XXZTN.js +23 -0
  238. package/dist/{store-coordination-provider-3AELCZ4Y.js → store-coordination-provider-DX5HECK3.js} +3 -3
  239. package/dist/sync/index.js +14 -10
  240. package/dist/sync/index.js.map +1 -1
  241. package/dist/team/index.js +26 -28
  242. package/dist/tiers/index.js +10 -10
  243. package/dist/to/index.js +1 -1
  244. package/dist/tx/index.js +7 -3
  245. package/dist/tx/index.js.map +1 -1
  246. package/dist/util/index.js +1 -1
  247. package/dist/{verify-MXN66IIH.js → verify-5X37OXRY.js} +5 -5
  248. package/dist/via/blob/index.d.ts +2 -0
  249. package/dist/via/i18n/core.d.ts +1 -1
  250. package/dist/via/i18n/index.d.ts +2 -0
  251. package/dist/via/money/money-reducer.d.ts +2 -2
  252. package/dist/{walk-H4YE52S2.js → walk-JXMWKKQW.js} +11 -11
  253. package/dist/with-audit/consent/index.d.ts +2 -0
  254. package/dist/with-audit/periods/index.d.ts +2 -0
  255. package/dist/with-audit/portability/export-accessible.d.ts +4 -4
  256. package/dist/with-audit/portability/request-withdrawal.d.ts +3 -3
  257. package/dist/with-audit/portability/withdraw-accessible.d.ts +2 -2
  258. package/dist/with-audit/sealed-record/strategy.d.ts +1 -1
  259. package/dist/with-cargo/adopt-partition.d.ts +7 -7
  260. package/dist/with-cargo/floor.d.ts +3 -3
  261. package/dist/with-cargo/index.d.ts +1 -1
  262. package/dist/with-commit/crdt/index.d.ts +2 -0
  263. package/dist/with-commit/history/index.d.ts +2 -0
  264. package/dist/with-commit/history/time-machine.d.ts +2 -2
  265. package/dist/with-fork/shadow/index.d.ts +2 -0
  266. package/dist/with-fork/snapshots/index.d.ts +2 -0
  267. package/dist/with-formula/derivations/dispatch.d.ts +98 -0
  268. package/dist/with-formula/materialized-views/dispatch.d.ts +75 -0
  269. package/dist/with-formula/materialized-views/types.d.ts +7 -7
  270. package/dist/with-lookup/indexing/index.d.ts +2 -0
  271. package/dist/with-lookup/{aggregate → reduce}/active.d.ts +8 -8
  272. package/dist/with-lookup/{aggregate → reduce}/groupby.d.ts +21 -21
  273. package/dist/with-lookup/reduce/index.d.ts +34 -0
  274. package/dist/with-lookup/{aggregate → reduce}/reducers.d.ts +10 -10
  275. package/dist/with-lookup/{aggregate/aggregation.d.ts → reduce/reduction.d.ts} +21 -21
  276. package/dist/with-lookup/{aggregate → reduce}/strategy.d.ts +15 -15
  277. package/dist/with-party/custody/liberate.d.ts +3 -3
  278. package/dist/with-party/session/dev-unlock.d.ts +2 -2
  279. package/dist/with-party/session/index.d.ts +2 -0
  280. package/dist/with-party/session/session.d.ts +2 -2
  281. package/dist/with-party/sync/index.d.ts +2 -0
  282. package/dist/with-party/team/deed.d.ts +8 -8
  283. package/dist/with-party/team/index.d.ts +2 -2
  284. package/dist/with-party/team/keyring.d.ts +39 -20
  285. package/dist/with-party/team/{managed-passphrase.d.ts → managed-secret.d.ts} +27 -27
  286. package/dist/with-party/team/noydb-facade.d.ts +43 -42
  287. package/dist/with-party/team/peer-recover.d.ts +13 -13
  288. package/dist/with-party/team/recovery.d.ts +5 -5
  289. package/dist/with-party/team/rotate-recover.d.ts +30 -30
  290. package/dist/with-pod/bundle.d.ts +30 -30
  291. package/dist/with-pod/format.d.ts +2 -2
  292. package/dist/withdraw-accessible-GO6KQJVM.js +28 -0
  293. package/package.json +6 -34
  294. package/dist/aggregate/index.js.map +0 -1
  295. package/dist/api-UPAT2O3M.js +0 -20
  296. package/dist/as/index.js +0 -30
  297. package/dist/at/index.js +0 -1
  298. package/dist/by/index.js +0 -11
  299. package/dist/chunk-25ZDB25Z.js.map +0 -1
  300. package/dist/chunk-2KL6NDD4.js.map +0 -1
  301. package/dist/chunk-2YELV6TV.js +0 -1
  302. package/dist/chunk-3O62PVDW.js +0 -205
  303. package/dist/chunk-3O62PVDW.js.map +0 -1
  304. package/dist/chunk-3XVOLB75.js.map +0 -1
  305. package/dist/chunk-4X6DJZHY.js.map +0 -1
  306. package/dist/chunk-5BHNQNBI.js.map +0 -1
  307. package/dist/chunk-5P5AAXYA.js.map +0 -1
  308. package/dist/chunk-BCOKZC4B.js.map +0 -1
  309. package/dist/chunk-BLB7P7LS.js.map +0 -1
  310. package/dist/chunk-CCT4WZI6.js.map +0 -1
  311. package/dist/chunk-CGPO3ZYB.js.map +0 -1
  312. package/dist/chunk-DEQ2JTBR.js.map +0 -1
  313. package/dist/chunk-GBEXTC6Z.js.map +0 -1
  314. package/dist/chunk-HKR25MGX.js.map +0 -1
  315. package/dist/chunk-IGM563N5.js.map +0 -1
  316. package/dist/chunk-J3VW4J4E.js.map +0 -1
  317. package/dist/chunk-JA5O7UEZ.js.map +0 -1
  318. package/dist/chunk-JIMEB4C6.js.map +0 -1
  319. package/dist/chunk-KMONEHDJ.js +0 -54
  320. package/dist/chunk-KMONEHDJ.js.map +0 -1
  321. package/dist/chunk-KR5EGWI4.js.map +0 -1
  322. package/dist/chunk-LB7FD65R.js +0 -163
  323. package/dist/chunk-LB7FD65R.js.map +0 -1
  324. package/dist/chunk-MEKAMERX.js.map +0 -1
  325. package/dist/chunk-QUIG6BZT.js.map +0 -1
  326. package/dist/chunk-QYJIOWKN.js.map +0 -1
  327. package/dist/chunk-U73LHVPF.js.map +0 -1
  328. package/dist/chunk-UEO5CHOP.js.map +0 -1
  329. package/dist/chunk-W7TCXZWU.js.map +0 -1
  330. package/dist/chunk-WEC3JGBA.js +0 -255
  331. package/dist/chunk-WEC3JGBA.js.map +0 -1
  332. package/dist/chunk-WJDYZP3U.js.map +0 -1
  333. package/dist/chunk-XULHFSHO.js.map +0 -1
  334. package/dist/collection-facade-CMZGQ6IS.js +0 -44
  335. package/dist/delegation-UT76AQIG.js +0 -25
  336. package/dist/derive-SGRCCKVP.js +0 -21
  337. package/dist/executor-TEZYRDN3.js +0 -9
  338. package/dist/executor-WQQRU6DO.js +0 -9
  339. package/dist/executor-YORMIBWV.js +0 -26
  340. package/dist/export-accessible-HXMKW5LJ.js +0 -23
  341. package/dist/extract-partition-QGQ2R42J.js +0 -38
  342. package/dist/find-VV6PBIHK.js +0 -11
  343. package/dist/in/index.js +0 -1
  344. package/dist/issue-7JJ4Z7E2.js +0 -19
  345. package/dist/liberate-FK7JI2QX.js +0 -24
  346. package/dist/noydb-N5IW6OFZ.js +0 -70
  347. package/dist/on/index.js +0 -17
  348. package/dist/port/as/index.d.ts +0 -26
  349. package/dist/port/at/index.d.ts +0 -18
  350. package/dist/port/in/index.d.ts +0 -21
  351. package/dist/port/on/index.d.ts +0 -27
  352. package/dist/port/ui/index.d.ts +0 -21
  353. package/dist/port/with/index.d.ts +0 -18
  354. package/dist/register-YBMRLZLO.js +0 -23
  355. package/dist/registry-3LXKNXWI.js +0 -9
  356. package/dist/registry-4V4YQCXJ.js +0 -19
  357. package/dist/registry-ZULMLCJK.js +0 -18
  358. package/dist/request-withdrawal-SEVUEUDG.js +0 -31
  359. package/dist/request-withdrawal-SEVUEUDG.js.map +0 -1
  360. package/dist/revoke-5QULL5GT.js +0 -24
  361. package/dist/revoke-5QULL5GT.js.map +0 -1
  362. package/dist/seed-EKF4DIBB.js.map +0 -1
  363. package/dist/signer-ZMH35FT4.js +0 -25
  364. package/dist/signer-ZMH35FT4.js.map +0 -1
  365. package/dist/stale-4UNPHWOU.js.map +0 -1
  366. package/dist/storage-QOZKQMID.js +0 -23
  367. package/dist/storage-QOZKQMID.js.map +0 -1
  368. package/dist/ui/index.js +0 -1
  369. package/dist/ui/index.js.map +0 -1
  370. package/dist/with/index.js +0 -31
  371. package/dist/with/index.js.map +0 -1
  372. package/dist/with-lookup/aggregate/index.d.ts +0 -23
  373. package/dist/withdraw-accessible-HPOVNG2G.js +0 -28
  374. package/dist/withdraw-accessible-HPOVNG2G.js.map +0 -1
  375. /package/dist/{api-UPAT2O3M.js.map → api-5QVQX4HG.js.map} +0 -0
  376. /package/dist/{backup-JL2GOTYQ.js.map → backup-USYSNCYM.js.map} +0 -0
  377. /package/dist/{chunk-JLHKBAFY.js.map → chunk-2BVW754E.js.map} +0 -0
  378. /package/dist/{chunk-T7S4V52L.js.map → chunk-2PDBYF2O.js.map} +0 -0
  379. /package/dist/{chunk-YGBIBOCR.js.map → chunk-2ZSC454H.js.map} +0 -0
  380. /package/dist/{chunk-IGAIOGCN.js.map → chunk-32467U5J.js.map} +0 -0
  381. /package/dist/{chunk-JW3XCZA2.js.map → chunk-3TZUC4WS.js.map} +0 -0
  382. /package/dist/{chunk-JA5B3SLH.js.map → chunk-44Y3P5U6.js.map} +0 -0
  383. /package/dist/{chunk-25G7U6RD.js.map → chunk-4B3DL75F.js.map} +0 -0
  384. /package/dist/{chunk-L4OA7G5T.js.map → chunk-522MBPE5.js.map} +0 -0
  385. /package/dist/{chunk-M25ZIEB2.js.map → chunk-5HSSTOOG.js.map} +0 -0
  386. /package/dist/{chunk-LLVW4V7R.js.map → chunk-5WLDZZ6S.js.map} +0 -0
  387. /package/dist/{chunk-7B4GPCX7.js.map → chunk-7IQWHYL2.js.map} +0 -0
  388. /package/dist/{chunk-OWE4BNTM.js.map → chunk-AZXEOEQK.js.map} +0 -0
  389. /package/dist/{chunk-BZEPJJOK.js.map → chunk-C2V7AJO2.js.map} +0 -0
  390. /package/dist/{chunk-2JZ763FV.js.map → chunk-D4LAJ737.js.map} +0 -0
  391. /package/dist/{chunk-N4FZ6ITM.js.map → chunk-EGU4PWQW.js.map} +0 -0
  392. /package/dist/{chunk-EW4HFWGJ.js.map → chunk-EPME33Y4.js.map} +0 -0
  393. /package/dist/{chunk-JKWNG3TM.js.map → chunk-FHHYCBBP.js.map} +0 -0
  394. /package/dist/{chunk-5BB3N4KU.js.map → chunk-G4MFQXYX.js.map} +0 -0
  395. /package/dist/{chunk-KVHWEPT2.js.map → chunk-GHEMAVTN.js.map} +0 -0
  396. /package/dist/{chunk-XW7NWO4A.js.map → chunk-GTNRMJYH.js.map} +0 -0
  397. /package/dist/{chunk-YG2EG6CB.js.map → chunk-H5GMROCB.js.map} +0 -0
  398. /package/dist/{chunk-5KI3REO3.js.map → chunk-HDF5R2K6.js.map} +0 -0
  399. /package/dist/{chunk-V3YB7RGR.js.map → chunk-HVPW6PCX.js.map} +0 -0
  400. /package/dist/{chunk-2VUISNGP.js.map → chunk-HXVRRJBD.js.map} +0 -0
  401. /package/dist/{chunk-ZJGZDOQO.js.map → chunk-ICYC5YNI.js.map} +0 -0
  402. /package/dist/{chunk-AFBJHD55.js.map → chunk-JGOKAZNB.js.map} +0 -0
  403. /package/dist/{chunk-QXPOEAKR.js.map → chunk-KCZAFDP5.js.map} +0 -0
  404. /package/dist/{chunk-MSO2C3KG.js.map → chunk-LC7DSMHR.js.map} +0 -0
  405. /package/dist/{chunk-OVFCAS7U.js.map → chunk-LG2GUYRX.js.map} +0 -0
  406. /package/dist/{chunk-QDNVHA2F.js.map → chunk-M7W2KYTL.js.map} +0 -0
  407. /package/dist/{chunk-IUIVDVXM.js.map → chunk-MUPZ6IZX.js.map} +0 -0
  408. /package/dist/{chunk-GZ2GKOF6.js.map → chunk-NA374QG7.js.map} +0 -0
  409. /package/dist/{chunk-2U7Y7BNJ.js.map → chunk-ONB627HU.js.map} +0 -0
  410. /package/dist/{chunk-GYB2QK5H.js.map → chunk-OWLZONGX.js.map} +0 -0
  411. /package/dist/{chunk-YHPUDB7Q.js.map → chunk-OWOT7CFC.js.map} +0 -0
  412. /package/dist/{chunk-VEX6G3YL.js.map → chunk-P4NUJVWL.js.map} +0 -0
  413. /package/dist/{chunk-NM4LVUXH.js.map → chunk-PTT2NB46.js.map} +0 -0
  414. /package/dist/{chunk-2ITLQZV5.js.map → chunk-PWWWMRT7.js.map} +0 -0
  415. /package/dist/{chunk-FLHOTGOO.js.map → chunk-QVGEVZ5F.js.map} +0 -0
  416. /package/dist/{chunk-OGFPMCSP.js.map → chunk-SBOHNJUD.js.map} +0 -0
  417. /package/dist/{chunk-EDC6MLXV.js.map → chunk-SEU6QHH4.js.map} +0 -0
  418. /package/dist/{chunk-F4COUZLL.js.map → chunk-TMR64XPL.js.map} +0 -0
  419. /package/dist/{chunk-5OZCCLNC.js.map → chunk-TSNRZSRC.js.map} +0 -0
  420. /package/dist/{chunk-2RMDVWGB.js.map → chunk-UNREYBZO.js.map} +0 -0
  421. /package/dist/{chunk-QCUH2G77.js.map → chunk-VNJMLOQS.js.map} +0 -0
  422. /package/dist/{chunk-V7RGFJ3Z.js.map → chunk-XG7OZDOS.js.map} +0 -0
  423. /package/dist/{chunk-GS3Q2KOZ.js.map → chunk-XONZGK6J.js.map} +0 -0
  424. /package/dist/{chunk-5SZ24DL5.js.map → chunk-XSOGLHGY.js.map} +0 -0
  425. /package/dist/{chunk-NOT7XA7Q.js.map → chunk-YGMREQAK.js.map} +0 -0
  426. /package/dist/{chunk-H4SMS4O2.js.map → chunk-YJ3TREAC.js.map} +0 -0
  427. /package/dist/{chunk-E2R5NRZD.js.map → chunk-Z4D3YGAB.js.map} +0 -0
  428. /package/dist/{chunk-BZK6JEX4.js.map → chunk-ZF572E2M.js.map} +0 -0
  429. /package/dist/{chunk-QAFWRGVD.js.map → chunk-ZHMUFYZF.js.map} +0 -0
  430. /package/dist/{chunk-BVZGNMVM.js.map → chunk-ZHZ4PET5.js.map} +0 -0
  431. /package/dist/{chunk-IZX3WZBF.js.map → chunk-ZM72UO3Y.js.map} +0 -0
  432. /package/dist/{chunk-STR7WBOB.js.map → chunk-ZUDAK436.js.map} +0 -0
  433. /package/dist/{chunk-ITI3SJRB.js.map → chunk-ZX5FNWH7.js.map} +0 -0
  434. /package/dist/{classified-marker-7S5IEP6Q.js.map → classified-marker-SVDRXLD3.js.map} +0 -0
  435. /package/dist/{as/index.js.map → collection-facade-S5PPKZD5.js.map} +0 -0
  436. /package/dist/{at/index.js.map → computed-33DRJDOC.js.map} +0 -0
  437. /package/dist/{by/index.js.map → cover-ADBCTIKN.js.map} +0 -0
  438. /package/dist/{dead-filter-KRRD57MR.js.map → dead-filter-HKDMTMVY.js.map} +0 -0
  439. /package/dist/{chunk-2YELV6TV.js.map → delegation-EV7LKJPH.js.map} +0 -0
  440. /package/dist/{collection-facade-CMZGQ6IS.js.map → derive-5LDJW76F.js.map} +0 -0
  441. /package/dist/{computed-WZNKRLCY.js.map → enclave-ZA7C3H2L.js.map} +0 -0
  442. /package/dist/{cover-B5MY43CK.js.map → executor-FCJEH3FU.js.map} +0 -0
  443. /package/dist/{delegation-UT76AQIG.js.map → executor-OHET7TF7.js.map} +0 -0
  444. /package/dist/{derive-SGRCCKVP.js.map → executor-SVHAJZ4A.js.map} +0 -0
  445. /package/dist/{enclave-YFKA3GJT.js.map → export-accessible-S35YKIBL.js.map} +0 -0
  446. /package/dist/{executor-TEZYRDN3.js.map → extract-partition-UVHAM5WZ.js.map} +0 -0
  447. /package/dist/{fanout-sidecar-HJV3A7PM.js.map → fanout-sidecar-HRMHC34B.js.map} +0 -0
  448. /package/dist/{executor-WQQRU6DO.js.map → find-LEBUXVL7.js.map} +0 -0
  449. /package/dist/{executor-YORMIBWV.js.map → issue-5X3SMCF4.js.map} +0 -0
  450. /package/dist/{export-accessible-HXMKW5LJ.js.map → ledger-K6JBFL3Z.js.map} +0 -0
  451. /package/dist/{extract-partition-QGQ2R42J.js.map → liberate-NHTCKBU4.js.map} +0 -0
  452. /package/dist/{find-VV6PBIHK.js.map → link-set-XVZY2ODC.js.map} +0 -0
  453. /package/dist/{in/index.js.map → noydb-TI3RFU6M.js.map} +0 -0
  454. /package/dist/{issue-7JJ4Z7E2.js.map → policy-QWGJB7P7.js.map} +0 -0
  455. /package/dist/{post-register-A7HCFBP5.js.map → post-register-5VHHVFJY.js.map} +0 -0
  456. /package/dist/{ledger-SW6QQOAV.js.map → register-CEX7R7NE.js.map} +0 -0
  457. /package/dist/{liberate-FK7JI2QX.js.map → registry-7CZWF3EQ.js.map} +0 -0
  458. /package/dist/{link-set-GNGGCFI4.js.map → registry-DIKMRXUC.js.map} +0 -0
  459. /package/dist/{noydb-N5IW6OFZ.js.map → registry-EWIB5NTI.js.map} +0 -0
  460. /package/dist/{on/index.js.map → request-withdrawal-AAG57QO4.js.map} +0 -0
  461. /package/dist/{reveal-PB3YG544.js.map → reveal-7OOT5XPD.js.map} +0 -0
  462. /package/dist/{policy-EAXSJNOT.js.map → revoke-U5LCIJMF.js.map} +0 -0
  463. /package/dist/{register-YBMRLZLO.js.map → signer-NAA2OX7H.js.map} +0 -0
  464. /package/dist/{registry-3LXKNXWI.js.map → stale-BJO2WIN7.js.map} +0 -0
  465. /package/dist/{registry-4V4YQCXJ.js.map → storage-FL7XXZTN.js.map} +0 -0
  466. /package/dist/{store-coordination-provider-3AELCZ4Y.js.map → store-coordination-provider-DX5HECK3.js.map} +0 -0
  467. /package/dist/{verify-MXN66IIH.js.map → verify-5X37OXRY.js.map} +0 -0
  468. /package/dist/{walk-H4YE52S2.js.map → walk-JXMWKKQW.js.map} +0 -0
  469. /package/dist/with-lookup/{aggregate → reduce}/canonical-key.d.ts +0 -0
  470. /package/dist/{registry-ZULMLCJK.js.map → withdraw-accessible-GO6KQJVM.js.map} +0 -0
@@ -58,9 +58,9 @@
58
58
  * - `scan().join(...)` — tracked under (streaming join)
59
59
  */
60
60
  import type { QueryField } from '../types.js';
61
- import type { ReducerBuilder } from '../../with-lookup/aggregate/reducers.js';
61
+ import type { ReducerBuilder } from '../../with-lookup/reduce/reducers.js';
62
62
  import type { Clause, Operator } from './predicate.js';
63
- import type { AggregateSpec, AggregateResult } from '../../with-lookup/aggregate/aggregation.js';
63
+ import type { ReduceSpec, ReduceResult } from '../../with-lookup/reduce/reduction.js';
64
64
  import type { JoinContext, JoinLeg } from './join.js';
65
65
  import type { ViaPipeline } from '../via/pipeline.js';
66
66
  /**
@@ -321,8 +321,8 @@ export declare class ScanBuilder<T, S extends keyof T = never, M extends keyof T
321
321
  * method has never run and must not start running as a side effect of
322
322
  * this gate).
323
323
  */
324
- aggregate<Spec extends AggregateSpec>(spec: Spec): Promise<AggregateResult<Spec>>;
325
- aggregate<Spec extends AggregateSpec>(build: (b: ReducerBuilder<T, S, M>) => Spec): Promise<AggregateResult<Spec>>;
324
+ aggregate<Spec extends ReduceSpec>(spec: Spec): Promise<ReduceResult<Spec>>;
325
+ aggregate<Spec extends ReduceSpec>(build: (b: ReducerBuilder<T, S, M>) => Spec): Promise<ReduceResult<Spec>>;
326
326
  /**
327
327
  * Evaluate the clause list against a single record. Linear in
328
328
  * the clause count; short-circuits on first false. Clauses on a
@@ -28,7 +28,7 @@ import type { SyncPolicy } from './sync-policy.js';
28
28
  import type { BlobStrategy } from '../port/with/blob-strategy.js';
29
29
  import type { ArchiveStrategy } from '../with-fork/archive/index.js';
30
30
  import type { IndexStrategy } from '../with-lookup/indexing/strategy.js';
31
- import type { AggregateStrategy } from '../with-lookup/aggregate/strategy.js';
31
+ import type { ReduceStrategy } from '../with-lookup/reduce/strategy.js';
32
32
  import type { ConsentStrategy } from '../with-audit/consent/strategy.js';
33
33
  import type { PeriodsStrategy } from '../with-audit/periods/strategy.js';
34
34
  import type { ShadowStrategy } from '../with-fork/shadow/strategy.js';
@@ -55,11 +55,11 @@ import type { SyncStrategy } from '../with-party/team/sync-strategy.js';
55
55
  import type { GuardStrategyHandleAny } from '../with-audit/guards/types.js';
56
56
  import type { DerivationStrategyHandle } from '../with-formula/derivations/types.js';
57
57
  import type { UnlockedKeyring } from '../with-party/team/keyring.js';
58
- import type { PassphrasePolicy } from './validation.js';
58
+ import type { SecretPolicy } from './validation.js';
59
59
  import type { CoverSchema } from '../with-party/directory/cover/types.js';
60
60
  import type { MaterializedViewStrategyHandle } from '../with-formula/materialized-views/types.js';
61
61
  import type { OverlayedViewStrategyHandle } from '../with-formula/overlay-views/types.js';
62
- import type { SealingKeyProvider, RecipientHint } from '../with-party/team/managed-passphrase.js';
62
+ import type { SealingKeyProvider, RecipientHint } from '../with-party/team/managed-secret.js';
63
63
  import type { ShamirRecoveryProvider } from '../with-party/team/shamir-recovery-provider.js';
64
64
  import type { ObjectProjection } from '../with-shape/blobs/object-projection.js';
65
65
  import type { CoordinationProvider } from '../port/by/types.js';
@@ -755,7 +755,7 @@ export type VaultPolicyOnDisk = Record<string, unknown>;
755
755
  * - `paper` — `on-recovery` codes (the standard end-to-end profile).
756
756
  * - `shamir` / `multi-channel` / `admin-mediated` — API surface ships;
757
757
  * per-profile dispatch lands in follow-up issues. Calling
758
- * `db.recoverPassphrase` against these throws
758
+ * `db.recoverSecret` against these throws
759
759
  * {@link RecoveryProfileNotImplementedError}.
760
760
  */
761
761
  export type RecoveryEnrollment = {
@@ -837,7 +837,7 @@ export interface KeyringAuthenticatorWrappingKEK extends KeyringAuthenticatorBas
837
837
  *
838
838
  * Trade-off: a slot of this kind reconstructs `UnlockedKeyring` with
839
839
  * `kek: null` after unlock. That is semantically correct for tier-2
840
- * (sensitive ops like `enrollAuthenticator` / `rotatePassphrase`
840
+ * (sensitive ops like `enrollAuthenticator` / `rotateSecret`
841
841
  * require a tier-1 unlock anyway) and matches how `@noy-db/on-pin`
842
842
  * already behaves at tier 3.
843
843
  *
@@ -877,12 +877,12 @@ export interface KeyringFile {
877
877
  readonly created_at: string;
878
878
  readonly granted_by: string;
879
879
  /**
880
- * Passphrase canary — base64 AES-KW-wrapped form of a known constant
880
+ * Secret canary — base64 AES-KW-wrapped form of a known constant
881
881
  * 256-bit value, wrapped under the keyring's KEK.
882
882
  *
883
883
  * Optional: older keyrings load with no canary and fall back to
884
884
  * the multi-DEK corruption heuristic. Newer keyrings
885
- * carry one and let `loadKeyring` distinguish wrong-passphrase
885
+ * carry one and let `loadKeyring` distinguish wrong-secret
886
886
  * from corruption even when ALL DEKs (including a single-DEK keyring's
887
887
  * sole DEK) are corrupted.
888
888
  *
@@ -1395,7 +1395,7 @@ export interface GrantOptions {
1395
1395
  readonly userId: string;
1396
1396
  readonly displayName: string;
1397
1397
  readonly role: Role;
1398
- readonly passphrase: string;
1398
+ readonly secret: string;
1399
1399
  readonly permissions?: Permissions;
1400
1400
  /**
1401
1401
  * Optional `@noy-db/as-*` export capability. Omit or
@@ -1412,9 +1412,9 @@ export interface GrantOptions {
1412
1412
  /**
1413
1413
  * Skip phrase-format strength validation (issue #7). Defaults to
1414
1414
  * false — `grant()` rejects phrases that don't meet the configured
1415
- * `PassphrasePolicy`. Test fixtures and CLI scripts pass `true`.
1415
+ * `SecretPolicy`. Test fixtures and CLI scripts pass `true`.
1416
1416
  */
1417
- readonly allowWeakPassphrase?: boolean;
1417
+ readonly allowWeakSecret?: boolean;
1418
1418
  /**
1419
1419
  * Initial user-envelope payload for the new principal. Sealed under
1420
1420
  * the same vault DEK (the reserved `_users` collection's DEK) and
@@ -1612,7 +1612,7 @@ export interface SessionPolicy {
1612
1612
  readonly absoluteTimeoutMs?: number;
1613
1613
  /**
1614
1614
  * Operations that require the user to re-authenticate (re-enter their
1615
- * passphrase or perform a fresh WebAuthn assertion) before proceeding,
1615
+ * secret or perform a fresh WebAuthn assertion) before proceeding,
1616
1616
  * even if the session is still alive.
1617
1617
  *
1618
1618
  * Common pattern: `requireReAuthFor: ['export', 'grant']` — allow
@@ -2200,16 +2200,16 @@ export interface NoydbOptions {
2200
2200
  readonly indexStrategy?: IndexStrategy;
2201
2201
  /**
2202
2202
  * tree-shake seam — optional aggregate strategy. Pass
2203
- * `withAggregate()` from `@noy-db/hub/aggregate` to enable
2203
+ * `withReduce()` from `@noy-db/hub/reduce` to enable
2204
2204
  * `.aggregate()` and `.groupBy()` on Query. When omitted, those
2205
2205
  * methods throw with a pointer at the subpath; the ~886 LOC of
2206
- * Aggregation + GroupedQuery machinery never reaches the bundle.
2206
+ * Reduction + GroupedQuery machinery never reaches the bundle.
2207
2207
  * Streaming `scan().aggregate()` works independently of this
2208
- * strategy — it doesn't use the `Aggregation` class.
2208
+ * strategy — it doesn't use the `Reduction` class.
2209
2209
  *
2210
2210
  * @internal
2211
2211
  */
2212
- readonly aggregateStrategy?: AggregateStrategy;
2212
+ readonly reduceStrategy?: ReduceStrategy;
2213
2213
  /**
2214
2214
  * tree-shake seam — optional CRDT strategy. Required when
2215
2215
  * any collection is declared with `crdt: 'lww-map' | 'rga' | 'yjs'`;
@@ -2400,7 +2400,7 @@ export interface NoydbOptions {
2400
2400
  * throw `TeamNotEnabledError` and the keyring grant/revoke/rotate engines
2401
2401
  * are reached only via opt-in — the always-on floor is single-user.
2402
2402
  * Single-user primitives (owner keyring, unlock, `listUsers`,
2403
- * `updateUser`, passphrase rotate/recover) stay ungated, as does the
2403
+ * `updateUser`, secret rotate/recover) stay ungated, as does the
2404
2404
  * `createDeedOwner` free function (no createNoydb instance to gate
2405
2405
  * against).
2406
2406
  */
@@ -2484,12 +2484,12 @@ export interface NoydbOptions {
2484
2484
  readonly sync?: NoydbStore | SyncTarget | SyncTarget[];
2485
2485
  /** User identifier. */
2486
2486
  readonly user: string;
2487
- /** Passphrase for key derivation. Required unless encrypt is false or `getKeyring` is provided. */
2487
+ /** Secret for key derivation. Required unless encrypt is false or `getKeyring` is provided. */
2488
2488
  readonly secret?: string;
2489
2489
  /**
2490
2490
  * Optional callback that returns an unlocked keyring for a given vault.
2491
2491
  * Use this to plug in WebAuthn / OIDC / Shamir / any unlock path that
2492
- * produces an `UnlockedKeyring` outside the passphrase model.
2492
+ * produces an `UnlockedKeyring` outside the secret model.
2493
2493
  *
2494
2494
  * When set, `secret` MUST NOT also be set — `createNoydb` throws if both
2495
2495
  * are supplied. When neither is set (and `encrypt !== false`), `createNoydb`
@@ -2517,32 +2517,32 @@ export interface NoydbOptions {
2517
2517
  * ```
2518
2518
  *
2519
2519
  * Note: this callback is responsible for both the "open existing vault"
2520
- * and the "create new vault" cases. Unlike the passphrase path, there is
2520
+ * and the "create new vault" cases. Unlike the secret path, there is
2521
2521
  * no automatic `NoAccessError` → `createOwnerKeyring` fallback, because
2522
2522
  * the callback owner has the UI context to decide which path to run.
2523
- * For first-time bootstrap, use a passphrase or recovery code, enroll
2523
+ * For first-time bootstrap, use a secret or recovery code, enroll
2524
2524
  * WebAuthn from the unlocked keyring, then swap to `getKeyring` on
2525
2525
  * subsequent sessions.
2526
2526
  */
2527
2527
  readonly getKeyring?: (vault: string) => Promise<UnlockedKeyring>;
2528
2528
  /**
2529
- * Passphrase mode. Default `'standard'`.
2529
+ * Secret mode. Default `'standard'`.
2530
2530
  *
2531
2531
  * - `'standard'` — the legacy flow. `secret` supplies the
2532
- * plaintext passphrase, the user knows it, and the policy gate
2533
- * `rotate-passphrase` is enabled.
2532
+ * plaintext secret, the user knows it, and the policy gate
2533
+ * `rotate-secret` is enabled.
2534
2534
  * - `'managed'` — rubber-hose-resistant mode. Hub generates a
2535
- * 256-bit random passphrase at first open and seals it under
2535
+ * 256-bit random secret at first open and seals it under
2536
2536
  * the provided `sealingKey`. The user never sees or types the
2537
- * passphrase, defeating the $5-wrench attack. Mutually
2537
+ * secret, defeating the $5-wrench attack. Mutually
2538
2538
  * exclusive with `secret` and `getKeyring`.
2539
2539
  *
2540
- * @see https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/session-tiers.md → Managed-passphrase mode
2540
+ * @see https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/session-tiers.md → Managed-secret mode
2541
2541
  */
2542
- readonly passphraseMode?: 'standard' | 'managed';
2542
+ readonly secretMode?: 'standard' | 'managed';
2543
2543
  /**
2544
2544
  * Provider that seals/unseals the auto-generated managed-mode
2545
- * passphrase. Required when `passphraseMode === 'managed'`; ignored
2545
+ * secret. Required when `secretMode === 'managed'`; ignored
2546
2546
  * otherwise. Implementations live in per-platform packages
2547
2547
  * (`@noy-db/seal-macos-keychain`, `@noy-db/seal-wincred`,
2548
2548
  * `@noy-db/seal-libsecret`, `@noy-db/seal-aws-kms`, …).
@@ -2591,17 +2591,17 @@ export interface NoydbOptions {
2591
2591
  */
2592
2592
  readonly sessionPolicy?: SessionPolicy;
2593
2593
  /**
2594
- * Validate passphrase strength against the phrase format
2594
+ * Validate secret strength against the phrase format
2595
2595
  * on first-time keyring creation. When
2596
- * `true`, weak phrases throw {@link WeakPassphraseError} from
2597
- * `createNoydb()` / `db.rotatePassphrase()`. Default: `false` for
2596
+ * `true`, weak phrases throw {@link WeakSecretError} from
2597
+ * `createNoydb()` / `db.team.rotateSecret()`. Default: `false` for
2598
2598
  * back-compat; planned to flip to `true` in a future major release.
2599
2599
  */
2600
- readonly validatePassphrase?: boolean;
2600
+ readonly validateSecret?: boolean;
2601
2601
  /**
2602
2602
  * Vault-level policy gate document. When present, the hub
2603
2603
  * persists the merged policy at `_meta/policy` on first-time vault
2604
- * creation and gates sensitive operations (`db.rotatePassphrase`,
2604
+ * creation and gates sensitive operations (`db.rotateSecret`,
2605
2605
  * `db.export*`, …) against it. Omitted ⇒ the engine uses
2606
2606
  * {@link PERSONAL_POLICY}. Use {@link STRICT_POLICY} for regulated
2607
2607
  * deployments.
@@ -2616,11 +2616,11 @@ export interface NoydbOptions {
2616
2616
  readonly policy?: VaultPolicy;
2617
2617
  /**
2618
2618
  * Mandatory recovery profile enrollment. Vaults with
2619
- * `recover-passphrase` enabled MUST register at least one profile
2619
+ * `recover-secret` enabled MUST register at least one profile
2620
2620
  * before being production-ready, otherwise `createNoydb()` throws
2621
2621
  * {@link RecoveryNotEnrolledError}. Set
2622
- * `policy.gates['recover-passphrase'].enabled = false` to
2623
- * deliberately opt out of recovery (passphrase loss = data loss).
2622
+ * `policy.gates['recover-secret'].enabled = false` to
2623
+ * deliberately opt out of recovery (secret loss = data loss).
2624
2624
  *
2625
2625
  * The `'paper'` profile is supported end-to-end. Other
2626
2626
  * profiles ship the API shape and throw
@@ -2647,7 +2647,7 @@ export interface NoydbOptions {
2647
2647
  * data records but not the keyring row, or a WebAuthn credential was rotated).
2648
2648
  * **All previously encrypted data is unrecoverable after a reset.**
2649
2649
  *
2650
- * Only applies to the passphrase (`secret`) path. When `getKeyring` is used,
2650
+ * Only applies to the secret (`secret`) path. When `getKeyring` is used,
2651
2651
  * the callback is responsible for handling stale-keyring detection itself.
2652
2652
  */
2653
2653
  readonly onInvalidKey?: 'error' | 'reset';
@@ -3037,7 +3037,7 @@ export interface WarningRules {
3037
3037
  }
3038
3038
  /**
3039
3039
  * Policy applied to one named gate. `enabled: false` disables the
3040
- * action entirely (useful in managed-passphrase mode where rotation is
3040
+ * action entirely (useful in managed-secret mode where rotation is
3041
3041
  * impossible by construction).
3042
3042
  */
3043
3043
  export interface GatePolicy {
@@ -3053,11 +3053,11 @@ export interface GatePolicy {
3053
3053
  * and use the same engine; the engine treats unknown names with no
3054
3054
  * configured policy as "no gate" (no-op).
3055
3055
  */
3056
- export type BuiltInGateName = 'rotate-passphrase' | 'recover-passphrase' | 'enroll-authenticator' | 'remove-authenticator'
3056
+ export type BuiltInGateName = 'rotate-secret' | 'recover-secret' | 'enroll-authenticator' | 'remove-authenticator'
3057
3057
  /**
3058
3058
  * Authorize a deliberate paper-recovery-code regeneration —
3059
- * `db.rotateRecovery`. Symmetric to `rotate-passphrase` for
3060
- * the case where the user remembers their passphrase but wants a
3059
+ * `db.rotateRecovery`. Symmetric to `rotate-secret` for
3060
+ * the case where the user remembers their secret but wants a
3061
3061
  * fresh sheet (lost the printout, suspect compromise of the off-site
3062
3062
  * copy). PERSONAL allows tier-1; STRICT requires an off-device
3063
3063
  * factor so a stolen unlocked laptop cannot silently mint a new
@@ -3080,7 +3080,7 @@ export type BuiltInGateName = 'rotate-passphrase' | 'recover-passphrase' | 'enro
3080
3080
  /**
3081
3081
  * Authorize an atomic peer-recovery — `db.recoverUser`.
3082
3082
  * Distinct from `revoke-user` because peer-recovery is intentional
3083
- * re-issuance of someone's keyring under a temp passphrase, NOT
3083
+ * re-issuance of someone's keyring under a temp secret, NOT
3084
3084
  * removal. Allows owner→owner natively (matches the threat model:
3085
3085
  * a co-owner explicitly recovering another co-owner). Ships with a
3086
3086
  * factor-proof default in `STRICT_POLICY` so the issuer must
@@ -3139,12 +3139,12 @@ export type BuiltInGateName = 'rotate-passphrase' | 'recover-passphrase' | 'enro
3139
3139
  export type GateName = BuiltInGateName | `app:${string}`;
3140
3140
  /**
3141
3141
  * Top-level policy object. Persisted at `_meta/policy` once at vault
3142
- * creation. The `passphrase` block configures the strength rules
3143
- * applied at every passphrase ingress; `gates` configures
3142
+ * creation. The `secret` block configures the strength rules
3143
+ * applied at every secret ingress; `gates` configures
3144
3144
  * the action-level requirements.
3145
3145
  */
3146
3146
  export interface VaultPolicy {
3147
- readonly passphrase?: PassphrasePolicy;
3147
+ readonly secret?: SecretPolicy;
3148
3148
  readonly gates: Partial<Record<GateName, GatePolicy>>;
3149
3149
  }
3150
3150
  /** Concrete proof an actor presents to {@link checkGate}. */
@@ -3160,7 +3160,7 @@ export interface FactorProof {
3160
3160
  * Noydb method. Used as the optional last parameter of every method
3161
3161
  * that runs through `checkGate`: `db.grant`, `db.revoke`, `db.updateUser`,
3162
3162
  * `db.enrollAuthenticator`, `db.removeAuthenticator`, `db.updateAuthenticator`,
3163
- * `db.enrollWebAuthn`, `db.rotatePassphrase`, `db.recoverPassphrase`,
3163
+ * `db.enrollWebAuthn`, `db.rotateSecret`, `db.recoverSecret`,
3164
3164
  * `db.recoverUser`, `db.enrollUnlock`, `db.describeUserAuth`,
3165
3165
  * `db.describeAllUsersAuth`.
3166
3166
  *
@@ -3286,4 +3286,45 @@ export interface NoydbPolicyDeps {
3286
3286
  * synchronously — mirrors {@link UserApiFactory}.
3287
3287
  */
3288
3288
  export type NoydbPolicyFactory = (deps: NoydbPolicyDeps) => NoydbPolicyApi;
3289
+ /**
3290
+ * Named field-set declarations for a collection's type-level shape (#839).
3291
+ *
3292
+ * Replaces the positional `Collection<T, S, Q, M>` tail at every surface a
3293
+ * consumer touches. The positional form was unreadable and unsafe: `Q` and `M`
3294
+ * are both `keyof T & string`, so swapping them type-checked silently, and
3295
+ * reaching `M` meant writing placeholders —
3296
+ * `collection<Sale, never, never, 'amount' | 'tax'>`.
3297
+ *
3298
+ * ```ts
3299
+ * vault.collection<Sale, { money: 'amount' | 'tax' }>('sales')
3300
+ * vault.collection<Invoice, { sensitive: 'ssn'; indexed: 'clientId' }>('invoices')
3301
+ * ```
3302
+ *
3303
+ * Every member is optional; omitting one keeps that axis permissive, which is
3304
+ * what the `[X] extends [never]` guards in {@link QueryField} /
3305
+ * {@link IndexFieldName} encode. Those guards are NOT removable — they are the
3306
+ * difference between "no indexes declared, so `where()` accepts any field" and
3307
+ * "indexes declared, so `where()` is restricted to them" — so they are
3308
+ * re-expressed against this shape rather than dropped.
3309
+ */
3310
+ export interface CollectionShape<T> {
3311
+ /** Fields sealed at rest; reads return {@link Sealed} handles. */
3312
+ readonly sensitive?: keyof T & string;
3313
+ /** Fields carrying a declared secondary index; narrows `where()` / `orderBy()`. */
3314
+ readonly indexed?: keyof T & string;
3315
+ /** Fields carrying a money descriptor. */
3316
+ readonly money?: keyof T & string;
3317
+ }
3318
+ /** The `sensitive` field set of a {@link CollectionShape}, or `never` if unset. */
3319
+ export type SensitiveOf<T, O> = O extends {
3320
+ sensitive: infer S;
3321
+ } ? (S & keyof T & string) : never;
3322
+ /** The `indexed` field set of a {@link CollectionShape}, or `never` if unset. */
3323
+ export type IndexedOf<T, O> = O extends {
3324
+ indexed: infer Q;
3325
+ } ? (Q & keyof T & string) : never;
3326
+ /** The `money` field set of a {@link CollectionShape}, or `never` if unset. */
3327
+ export type MoneyOf<T, O> = O extends {
3328
+ money: infer M;
3329
+ } ? (M & keyof T & string) : never;
3289
3330
  export {};
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Passphrase validation — phrase format (per the three-tier session-tiers
2
+ * Secret validation — phrase format (per the three-tier session-tiers
3
3
  * design, locked 2026-05-04).
4
4
  *
5
- * Passphrases are **phrases**: multiple simple words, easy to remember,
5
+ * Secrets are **phrases**: multiple simple words, easy to remember,
6
6
  * structurally constrained so a weak choice cannot silently collapse the
7
7
  * security floor. The format is intentionally narrow: lowercase letters
8
8
  * and single spaces only, no punctuation, no symbols, no digits.
@@ -12,17 +12,17 @@
12
12
  * - Per-word minimum: 3 characters (excludes "a", "is", "of").
13
13
  * - Adjacent repeats rejected ("the the").
14
14
  *
15
- * The hub runs validation default-on at every passphrase ingress
16
- * (`createOwnerKeyring`, `grant`, `rotatePassphrase`); test fixtures and
17
- * CLI scripts override via `{ allowWeakPassphrase: true }`.
15
+ * The hub runs validation default-on at every secret ingress
16
+ * (`createOwnerKeyring`, `grant`, `rotateSecret`); test fixtures and
17
+ * CLI scripts override via `{ allowWeakSecret: true }`.
18
18
  *
19
19
  * @module
20
20
  */
21
21
  import { NoydbError } from './errors.js';
22
22
  /** All reasons a phrase can be rejected. */
23
- export type WeakPassphraseReason = 'empty' | 'invalid-chars' | 'leading-or-trailing-space' | 'double-space' | 'too-few-words' | 'word-too-short' | 'repeated-adjacent';
24
- /** Per-vault knobs. Aligns with `VaultPolicy.passphrase`. */
25
- export interface PassphrasePolicy {
23
+ export type WeakSecretReason = 'empty' | 'invalid-chars' | 'leading-or-trailing-space' | 'double-space' | 'too-few-words' | 'word-too-short' | 'repeated-adjacent';
24
+ /** Per-vault knobs. Aligns with `VaultPolicy.secret`. */
25
+ export interface SecretPolicy {
26
26
  /** Minimum number of words. Default 6. Strict policy uses 8. */
27
27
  readonly minWords?: number;
28
28
  /** Minimum characters per word. Default 3. */
@@ -42,7 +42,7 @@ export interface PassphrasePolicy {
42
42
  * // Thai + English mix with digits permitted
43
43
  * pattern: /^[\p{L}0-9 ]+( [\p{L}0-9 ]+)*$/u
44
44
  *
45
- * // Allow uppercase + hyphens (passphrase-with-hyphens style)
45
+ * // Allow uppercase + hyphens (secret-with-hyphens style)
46
46
  * pattern: /^[A-Za-z]+([- ][A-Za-z]+)*$/
47
47
  * ```
48
48
  *
@@ -55,7 +55,7 @@ export interface PassphrasePolicy {
55
55
  readonly pattern?: RegExp;
56
56
  /**
57
57
  * Replace ALL validation entirely with a custom function. When set,
58
- * none of the other PassphrasePolicy fields apply — the consumer
58
+ * none of the other SecretPolicy fields apply — the consumer
59
59
  * owns every rule (word splitting, character classes, entropy
60
60
  * thresholds, allowlist/denylist). Use sparingly; this is the
61
61
  * escape hatch for domain-specific phrase formats:
@@ -64,50 +64,50 @@ export interface PassphrasePolicy {
64
64
  * - BIP-39 seed phrases (24 words, fixed wordlist, etc.)
65
65
  * - Organization-specific HR password policies
66
66
  *
67
- * The returned `PassphraseValidationResult` is what
68
- * {@link assertStrongPassphrase} dispatches on — `ok: true` accepts;
69
- * `ok: false` throws `WeakPassphraseError` with the supplied reason.
67
+ * The returned `SecretValidationResult` is what
68
+ * {@link assertStrongSecret} dispatches on — `ok: true` accepts;
69
+ * `ok: false` throws `WeakSecretError` with the supplied reason.
70
70
  *
71
71
  */
72
- readonly customValidator?: (phrase: string) => PassphraseValidationResult;
72
+ readonly customValidator?: (phrase: string) => SecretValidationResult;
73
73
  }
74
74
  /** Result of a check. Discriminated union — compile-time exhaustive. */
75
- export type PassphraseValidationResult = {
75
+ export type SecretValidationResult = {
76
76
  readonly ok: true;
77
77
  readonly words: number;
78
78
  } | {
79
79
  readonly ok: false;
80
- readonly reason: WeakPassphraseReason;
80
+ readonly reason: WeakSecretReason;
81
81
  readonly minimum?: number;
82
82
  readonly got?: number;
83
83
  };
84
84
  /**
85
- * Thrown by `assertStrongPassphrase()` and by every hub ingress
86
- * point (`createOwnerKeyring`, `grant`, `rotatePassphrase`) when a
85
+ * Thrown by `assertStrongSecret()` and by every hub ingress
86
+ * point (`createOwnerKeyring`, `grant`, `rotateSecret`) when a
87
87
  * supplied phrase fails the structural rules above.
88
88
  */
89
- export declare class WeakPassphraseError extends NoydbError {
90
- readonly reason: WeakPassphraseReason;
89
+ export declare class WeakSecretError extends NoydbError {
90
+ readonly reason: WeakSecretReason;
91
91
  readonly suggestion: string;
92
- constructor(reason: WeakPassphraseReason, suggestion: string);
92
+ constructor(reason: WeakSecretReason, suggestion: string);
93
93
  }
94
94
  /**
95
95
  * Inspect a phrase against the format rules and return a structured
96
96
  * verdict. Never throws — callers either branch on `ok` or pass the
97
- * result to {@link assertStrongPassphrase} for the throwing flavour.
97
+ * result to {@link assertStrongSecret} for the throwing flavour.
98
98
  */
99
- export declare function validatePassphrase(s: string, opts?: PassphrasePolicy): PassphraseValidationResult;
99
+ export declare function validateSecret(s: string, opts?: SecretPolicy): SecretValidationResult;
100
100
  /**
101
- * Throw {@link WeakPassphraseError} when the phrase fails. Used by
102
- * `createOwnerKeyring`, `grant`, and `rotatePassphrase` at ingress.
101
+ * Throw {@link WeakSecretError} when the phrase fails. Used by
102
+ * `createOwnerKeyring`, `grant`, and `rotateSecret` at ingress.
103
103
  *
104
- * Pass `{ allowWeakPassphrase: true }` to bypass — intended for test
104
+ * Pass `{ allowWeakSecret: true }` to bypass — intended for test
105
105
  * fixtures, CLI scripts, and dev environments. The override never
106
106
  * loosens the cryptographic key derivation; it only relaxes the
107
107
  * structural-strength gate.
108
108
  */
109
- export declare function assertStrongPassphrase(s: string, opts?: PassphrasePolicy & {
110
- allowWeakPassphrase?: boolean;
109
+ export declare function assertStrongSecret(s: string, opts?: SecretPolicy & {
110
+ allowWeakSecret?: boolean;
111
111
  }): void;
112
112
  /**
113
113
  * Estimate the entropy of a phrase, given the EFF 7,776-word list as
@@ -117,14 +117,14 @@ export declare function assertStrongPassphrase(s: string, opts?: PassphrasePolic
117
117
  * estimates aren't comparable to phrase entropy, and surfacing 0 makes
118
118
  * weak inputs visible in any UI that displays an entropy meter.
119
119
  */
120
- export declare function estimateEntropy(passphrase: string): number;
120
+ export declare function estimateEntropy(secret: string): number;
121
121
  /**
122
122
  * Internal compatibility shim. Older code paths used the throwing
123
- * `validatePassphrase(s)` directly; some still do via re-exports. Routes
124
- * to the new `assertStrongPassphrase` so the contract holds for both
123
+ * `validateSecret(s)` directly; some still do via re-exports. Routes
124
+ * to the new `assertStrongSecret` so the contract holds for both
125
125
  * shapes during the transition. New code should call
126
- * {@link assertStrongPassphrase} directly.
126
+ * {@link assertStrongSecret} directly.
127
127
  *
128
128
  * @internal
129
129
  */
130
- export declare function legacyAssertPassphrase(s: string): void;
130
+ export declare function legacyAssertSecret(s: string): void;