@noy-db/hub 0.3.0-pre.9 → 0.4.0-pre.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (968) hide show
  1. package/dist/aggregate/index.js +5 -5
  2. package/dist/api-3A3S4SHH.js +20 -0
  3. package/dist/as/index.js +11 -11
  4. package/dist/attestation/index.js +18 -18
  5. package/dist/backup-YPUEKIJC.js +242 -0
  6. package/dist/backup-YPUEKIJC.js.map +1 -0
  7. package/dist/blobs/index.js +13 -11
  8. package/dist/blobs/index.js.map +1 -1
  9. package/dist/broker/index.js +92 -0
  10. package/dist/broker/index.js.map +1 -0
  11. package/dist/bundle/index.js +25 -22
  12. package/dist/bundle/index.js.map +1 -1
  13. package/dist/by/index.js +2 -2
  14. package/dist/cargo/index.js +31 -32
  15. package/dist/chunk-2PCAVW2I.js +50 -0
  16. package/dist/chunk-3ELCWU56.js +344 -0
  17. package/dist/chunk-3ELCWU56.js.map +1 -0
  18. package/dist/chunk-4GPE63GU.js +111 -0
  19. package/dist/chunk-4GPE63GU.js.map +1 -0
  20. package/dist/chunk-554KLAAN.js +778 -0
  21. package/dist/chunk-5PFOMHTB.js +135 -0
  22. package/dist/chunk-5WZXVULX.js +209 -0
  23. package/dist/chunk-6HPG2YNX.js +38 -0
  24. package/dist/chunk-6HY2X62D.js +69 -0
  25. package/dist/chunk-6NQMXTYC.js +123 -0
  26. package/dist/chunk-6XE5TMPR.js +367 -0
  27. package/dist/chunk-A4FXFAKF.js +45 -0
  28. package/dist/chunk-A5BDDEXK.js +1537 -0
  29. package/dist/chunk-A5BDDEXK.js.map +1 -0
  30. package/dist/chunk-ANATMTOA.js +205 -0
  31. package/dist/chunk-BOKIKJJB.js +94 -0
  32. package/dist/chunk-CJ5KKU6X.js +49 -0
  33. package/dist/chunk-CZTLE22N.js +381 -0
  34. package/dist/chunk-CZTLE22N.js.map +1 -0
  35. package/dist/chunk-DDHM2TLX.js +164 -0
  36. package/dist/chunk-DDHM2TLX.js.map +1 -0
  37. package/dist/chunk-DRWBEDYO.js +37 -0
  38. package/dist/chunk-DRWBEDYO.js.map +1 -0
  39. package/dist/chunk-DSBQODMZ.js +202 -0
  40. package/dist/chunk-EO43ANYJ.js +382 -0
  41. package/dist/chunk-EWPOHMN2.js +255 -0
  42. package/dist/chunk-FH52K7EG.js +50 -0
  43. package/dist/chunk-FH52K7EG.js.map +1 -0
  44. package/dist/chunk-FXZDAV62.js +826 -0
  45. package/dist/chunk-FXZDAV62.js.map +1 -0
  46. package/dist/chunk-GDG5VVYG.js +167 -0
  47. package/dist/chunk-GDG5VVYG.js.map +1 -0
  48. package/dist/chunk-GULTLPFB.js +621 -0
  49. package/dist/chunk-GULTLPFB.js.map +1 -0
  50. package/dist/chunk-GWKAVKHI.js +71 -0
  51. package/dist/chunk-H2KSZMIX.js +164 -0
  52. package/dist/chunk-HOONYZY2.js +404 -0
  53. package/dist/chunk-HQBM64EE.js +957 -0
  54. package/dist/chunk-HQBM64EE.js.map +1 -0
  55. package/dist/chunk-IAO54J4R.js +333 -0
  56. package/dist/chunk-IAO54J4R.js.map +1 -0
  57. package/dist/chunk-IFJTPAQQ.js +150 -0
  58. package/dist/chunk-IFJTPAQQ.js.map +1 -0
  59. package/dist/chunk-IGJCYUT5.js +99 -0
  60. package/dist/chunk-IGJCYUT5.js.map +1 -0
  61. package/dist/chunk-IK43HLDQ.js +739 -0
  62. package/dist/chunk-IK43HLDQ.js.map +1 -0
  63. package/dist/chunk-ISMV2QVG.js +54 -0
  64. package/dist/chunk-IY23KFNZ.js +95 -0
  65. package/dist/chunk-JBBSYJHP.js +129 -0
  66. package/dist/chunk-JFCV5QIK.js +117 -0
  67. package/dist/chunk-JK733I5V.js +23 -0
  68. package/dist/chunk-JK733I5V.js.map +1 -0
  69. package/dist/chunk-JRBNCUNT.js +371 -0
  70. package/dist/chunk-JRBNCUNT.js.map +1 -0
  71. package/dist/chunk-JVBO4SZL.js +29 -0
  72. package/dist/chunk-JVBO4SZL.js.map +1 -0
  73. package/dist/chunk-KPZS5QAQ.js +151 -0
  74. package/dist/chunk-KPZS5QAQ.js.map +1 -0
  75. package/dist/chunk-KS6SAVCZ.js +247 -0
  76. package/dist/chunk-KS6SAVCZ.js.map +1 -0
  77. package/dist/chunk-LVGTA624.js +480 -0
  78. package/dist/chunk-LVGTA624.js.map +1 -0
  79. package/dist/chunk-M75ZZHSR.js +30 -0
  80. package/dist/chunk-MT62YSPZ.js +392 -0
  81. package/dist/chunk-MT62YSPZ.js.map +1 -0
  82. package/dist/chunk-N6WF5PKC.js +29 -0
  83. package/dist/chunk-NCCBLYEB.js +150 -0
  84. package/dist/chunk-OCVM6KDH.js +99 -0
  85. package/dist/chunk-ONTBCHCP.js +80 -0
  86. package/dist/chunk-PK6JIDQ4.js +14425 -0
  87. package/dist/chunk-PK6JIDQ4.js.map +1 -0
  88. package/dist/chunk-QDPZWTN2.js +74 -0
  89. package/dist/chunk-QDPZWTN2.js.map +1 -0
  90. package/dist/chunk-R3BLCFD2.js +130 -0
  91. package/dist/chunk-RA5VTXXG.js +173 -0
  92. package/dist/chunk-RA5VTXXG.js.map +1 -0
  93. package/dist/chunk-RDXW3OBQ.js +21 -0
  94. package/dist/chunk-RFI7GGFO.js +230 -0
  95. package/dist/chunk-RJ6K6K5M.js +36 -0
  96. package/dist/chunk-RJ6K6K5M.js.map +1 -0
  97. package/dist/chunk-RNG4VRP4.js +75 -0
  98. package/dist/chunk-RTEK4C4I.js +41 -0
  99. package/dist/chunk-S3BFKGET.js +369 -0
  100. package/dist/chunk-S3BFKGET.js.map +1 -0
  101. package/dist/chunk-S6Q37VGE.js +30 -0
  102. package/dist/chunk-SMIRGMS7.js +30 -0
  103. package/dist/chunk-SMIRGMS7.js.map +1 -0
  104. package/dist/chunk-SV6EAJEP.js +86 -0
  105. package/dist/chunk-T36RFODW.js +180 -0
  106. package/dist/chunk-T36RFODW.js.map +1 -0
  107. package/dist/chunk-T3GY65MA.js +367 -0
  108. package/dist/chunk-TAGR72IR.js +515 -0
  109. package/dist/chunk-TAGR72IR.js.map +1 -0
  110. package/dist/chunk-THVIPWRF.js +495 -0
  111. package/dist/chunk-THVIPWRF.js.map +1 -0
  112. package/dist/chunk-TIGPQDYP.js +14 -0
  113. package/dist/chunk-U6JMEH2P.js +261 -0
  114. package/dist/chunk-UC2ETWF3.js +34 -0
  115. package/dist/chunk-UDSR4X4L.js +235 -0
  116. package/dist/chunk-UHNGNKLV.js +2782 -0
  117. package/dist/chunk-UHNGNKLV.js.map +1 -0
  118. package/dist/chunk-VAIS3SOM.js +74 -0
  119. package/dist/chunk-VCBHAE4R.js +124 -0
  120. package/dist/chunk-VCTXU4AT.js +32 -0
  121. package/dist/chunk-VCTXU4AT.js.map +1 -0
  122. package/dist/chunk-VEALDPHW.js +524 -0
  123. package/dist/chunk-VEALDPHW.js.map +1 -0
  124. package/dist/chunk-VKCADNMR.js +589 -0
  125. package/dist/chunk-VRBTNCM4.js +720 -0
  126. package/dist/chunk-VRBTNCM4.js.map +1 -0
  127. package/dist/chunk-VYYM3MEN.js +98 -0
  128. package/dist/chunk-VYYM3MEN.js.map +1 -0
  129. package/dist/chunk-W2OG6JOL.js +1554 -0
  130. package/dist/chunk-W2OG6JOL.js.map +1 -0
  131. package/dist/chunk-W4TCUGQR.js +1128 -0
  132. package/dist/chunk-W4TCUGQR.js.map +1 -0
  133. package/dist/chunk-WG4QBZDN.js +283 -0
  134. package/dist/chunk-WG4QBZDN.js.map +1 -0
  135. package/dist/chunk-WHXXI3W5.js +135 -0
  136. package/dist/chunk-WHXXI3W5.js.map +1 -0
  137. package/dist/chunk-WKGF2TJR.js +45 -0
  138. package/dist/chunk-WNGGJWF7.js +36 -0
  139. package/dist/chunk-WOM2HTML.js +59 -0
  140. package/dist/chunk-WQIYTNJV.js +70 -0
  141. package/dist/chunk-WZSHL6DQ.js +59 -0
  142. package/dist/chunk-XDIAFPUM.js +42 -0
  143. package/dist/chunk-XJMBYYQK.js +40 -0
  144. package/dist/chunk-XTHCN77N.js +91 -0
  145. package/dist/chunk-XUW3PXHU.js +248 -0
  146. package/dist/chunk-XUW3PXHU.js.map +1 -0
  147. package/dist/chunk-YCH5GBN6.js +99 -0
  148. package/dist/chunk-YTGDPCPW.js +155 -0
  149. package/dist/chunk-YZQOGE2L.js +23 -0
  150. package/dist/chunk-Z4PD65VQ.js +265 -0
  151. package/dist/chunk-Z4PD65VQ.js.map +1 -0
  152. package/dist/chunk-ZXEZCY6F.js +85 -0
  153. package/dist/classified/index.js +5 -5
  154. package/dist/classified-marker-QWMASIT7.js +28 -0
  155. package/dist/classified-marker-QWMASIT7.js.map +1 -0
  156. package/dist/collection-facade-KMBWNCYP.js +44 -0
  157. package/dist/computed-DSMPXG2Y.js +11 -0
  158. package/dist/consent/index.js +9 -9
  159. package/dist/cover-QJRXINN5.js +52 -0
  160. package/dist/crdt/index.js +1 -1
  161. package/dist/dead-filter-66VGI6JV.js +28 -0
  162. package/dist/delegation-SU6CV3W7.js +25 -0
  163. package/dist/derivations/index.js +12 -12
  164. package/dist/derive-6RWU4EOA.js +21 -0
  165. package/dist/enclave-TKPN2G2U.js +141 -0
  166. package/dist/executor-KGNLJD6M.js +9 -0
  167. package/dist/executor-UX4FASYZ.js +26 -0
  168. package/dist/executor-XGIS6CR7.js +9 -0
  169. package/dist/export-accessible-LKW3QV22.js +23 -0
  170. package/dist/extract-partition-UP2ARO75.js +38 -0
  171. package/dist/fanout-sidecar-B5LVUMQX.js +74 -0
  172. package/dist/find-YS6XWB46.js +11 -0
  173. package/dist/forget/index.js +10 -10
  174. package/dist/forget/index.js.map +1 -1
  175. package/dist/guards/index.js +6 -6
  176. package/dist/history/index.js +14 -11
  177. package/dist/history/index.js.map +1 -1
  178. package/dist/i18n/index.js +21 -19
  179. package/dist/i18n/index.js.map +1 -1
  180. package/dist/index.d.ts +310 -1493
  181. package/dist/index.js +331 -191
  182. package/dist/index.js.map +1 -1
  183. package/dist/indexing/index.js +7 -7
  184. package/dist/indexing/index.js.map +1 -1
  185. package/dist/issue-3ACYX7LO.js +19 -0
  186. package/dist/kernel/best-effort-revert.d.ts +52 -0
  187. package/dist/kernel/cache/index.d.ts +10 -0
  188. package/dist/kernel/cache/lru.d.ts +97 -0
  189. package/dist/kernel/cache/policy.d.ts +32 -0
  190. package/dist/kernel/collection-config.d.ts +809 -0
  191. package/dist/kernel/collection.d.ts +1522 -0
  192. package/dist/kernel/constants.d.ts +18 -0
  193. package/dist/kernel/debug.d.ts +25 -0
  194. package/dist/kernel/enclave/broker/proof.d.ts +154 -0
  195. package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
  196. package/dist/kernel/enclave/classify/compare.d.ts +10 -0
  197. package/dist/kernel/enclave/classify/digest.d.ts +8 -0
  198. package/dist/kernel/enclave/classify/find.d.ts +36 -0
  199. package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
  200. package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
  201. package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
  202. package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
  203. package/dist/kernel/enclave/classify/verify.d.ts +36 -0
  204. package/dist/kernel/enclave/classify/write.d.ts +8 -0
  205. package/dist/kernel/enclave/crypto.d.ts +263 -0
  206. package/dist/kernel/enclave/index.d.ts +79 -0
  207. package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
  208. package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
  209. package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
  210. package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
  211. package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
  212. package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
  213. package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
  214. package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
  215. package/dist/kernel/env-check.d.ts +1 -0
  216. package/dist/kernel/errors.d.ts +1927 -0
  217. package/dist/kernel/events.d.ts +11 -0
  218. package/dist/kernel/lazy-count.d.ts +13 -0
  219. package/dist/kernel/memory-store.d.ts +17 -0
  220. package/dist/kernel/mutation.d.ts +14 -0
  221. package/dist/kernel/noydb.d.ts +836 -0
  222. package/dist/kernel/paths.d.ts +25 -0
  223. package/dist/kernel/query/builder.d.ts +520 -0
  224. package/dist/kernel/query/index.d.ts +31 -0
  225. package/dist/kernel/query/join.d.ts +205 -0
  226. package/dist/kernel/query/live.d.ts +111 -0
  227. package/dist/kernel/query/predicate.d.ts +139 -0
  228. package/dist/kernel/query/scan-builder.d.ts +334 -0
  229. package/dist/kernel/refs.d.ts +205 -0
  230. package/dist/kernel/schema.d.ts +134 -0
  231. package/dist/kernel/sync-policy.d.ts +188 -0
  232. package/dist/kernel/tier-visibility.d.ts +54 -0
  233. package/dist/kernel/types.d.ts +3245 -0
  234. package/dist/kernel/util/discriminant.d.ts +58 -0
  235. package/dist/kernel/util/index.d.ts +14 -0
  236. package/dist/kernel/util/sanitize-filename.d.ts +75 -0
  237. package/dist/kernel/validation.d.ts +130 -0
  238. package/dist/kernel/vault.d.ts +1744 -0
  239. package/dist/kernel/via/compose.d.ts +144 -0
  240. package/dist/kernel/via/dispatch.d.ts +195 -0
  241. package/dist/kernel/via/graph-wiring.d.ts +145 -0
  242. package/dist/kernel/via/graph.d.ts +166 -0
  243. package/dist/kernel/via/index.d.ts +200 -0
  244. package/dist/kernel/via/pipeline.d.ts +266 -0
  245. package/dist/kernel/via/reconcile.d.ts +153 -0
  246. package/dist/kernel/via/taint-binding.d.ts +66 -0
  247. package/dist/kernel/write-queue.d.ts +46 -0
  248. package/dist/ledger-PTK7XZYT.js +42 -0
  249. package/dist/legacy/bundle.d.ts +30 -0
  250. package/dist/legacy/kernel.d.ts +33 -0
  251. package/dist/liberate-MQQXBUCY.js +24 -0
  252. package/dist/link-set-SLJHDNRB.js +31 -0
  253. package/dist/materialized-views/index.js +20 -17
  254. package/dist/noydb-ANIW5FLE.js +69 -0
  255. package/dist/on/index.js +9 -9
  256. package/dist/overlay-views/index.js +4 -4
  257. package/dist/periods/index.js +12 -12
  258. package/dist/pod/index.js +13 -11
  259. package/dist/policy-YDLCOX4P.js +41 -0
  260. package/dist/port/as/index.d.ts +26 -0
  261. package/dist/port/at/index.d.ts +18 -0
  262. package/dist/port/by/default-provider.d.ts +9 -0
  263. package/dist/port/by/index.d.ts +17 -0
  264. package/dist/port/by/types.d.ts +86 -0
  265. package/dist/port/in/index.d.ts +21 -0
  266. package/dist/port/on/index.d.ts +27 -0
  267. package/dist/port/to/index.d.ts +19 -0
  268. package/dist/port/ui/index.d.ts +21 -0
  269. package/dist/port/with/blob-strategy.d.ts +98 -0
  270. package/dist/port/with/broker-strategy.d.ts +84 -0
  271. package/dist/port/with/capabilities.d.ts +31 -0
  272. package/dist/port/with/classified-marker.d.ts +9 -0
  273. package/dist/port/with/classified-strategy.d.ts +62 -0
  274. package/dist/port/with/computed-strategy.d.ts +19 -0
  275. package/dist/port/with/i18n-strategy.d.ts +175 -0
  276. package/dist/port/with/index.d.ts +18 -0
  277. package/dist/port/with/lazy-strategy.d.ts +48 -0
  278. package/dist/port/with/lookup-strategy.d.ts +129 -0
  279. package/dist/port/with/service-bus.d.ts +156 -0
  280. package/dist/port/with/team-strategy.d.ts +36 -0
  281. package/dist/port/with/write-hooks.d.ts +34 -0
  282. package/dist/portability/index.js +8 -8
  283. package/dist/post-register-2YHSADFI.js +60 -0
  284. package/dist/post-register-2YHSADFI.js.map +1 -0
  285. package/dist/purge-scope-FGNNLWHD.js +24 -0
  286. package/dist/purge-scope-FGNNLWHD.js.map +1 -0
  287. package/dist/query/index.js +12 -10
  288. package/dist/read-only-facade-CHCKSEPD.js +8 -0
  289. package/dist/register-PAM3ASRZ.js +23 -0
  290. package/dist/registry-4S2U2TR4.js +19 -0
  291. package/dist/registry-NPOWJHC4.js +9 -0
  292. package/dist/registry-VZ3CCI2R.js +18 -0
  293. package/dist/request-withdrawal-DI3H5WUI.js +31 -0
  294. package/dist/reveal-HWO4YMTJ.js +38 -0
  295. package/dist/reveal-HWO4YMTJ.js.map +1 -0
  296. package/dist/revoke-R5CZSVUT.js +24 -0
  297. package/dist/satellites/index.js +1 -1
  298. package/dist/sealed-record/index.js +12 -12
  299. package/dist/seed-3ZMF5EQA.js +231 -0
  300. package/dist/seed-3ZMF5EQA.js.map +1 -0
  301. package/dist/session/index.js +9 -9
  302. package/dist/shadow/index.js +2 -2
  303. package/dist/signer-MBVHW4WE.js +25 -0
  304. package/dist/snapshots/index.js +10 -10
  305. package/dist/stale-VZL4OGUB.js +29 -0
  306. package/dist/storage-3MEJUENZ.js +23 -0
  307. package/dist/store-coordination-provider-FKX3F6TQ.js +142 -0
  308. package/dist/sync/index.js +9 -9
  309. package/dist/team/index.js +15 -15
  310. package/dist/tiers/index.js +14 -10
  311. package/dist/to/index.js +1 -2
  312. package/dist/tx/index.js +3 -3
  313. package/dist/util/index.js +1 -1
  314. package/dist/verify-26Y5GNMK.js +140 -0
  315. package/dist/verify-26Y5GNMK.js.map +1 -0
  316. package/dist/via/blob/active.d.ts +34 -0
  317. package/dist/via/blob/binding.d.ts +86 -0
  318. package/dist/via/blob/index.d.ts +34 -0
  319. package/dist/via/classified/active.d.ts +3 -0
  320. package/dist/via/classified/binding.d.ts +83 -0
  321. package/dist/via/classified/config-drift.d.ts +34 -0
  322. package/dist/via/classified/descriptor.d.ts +66 -0
  323. package/dist/via/classified/errors.d.ts +19 -0
  324. package/dist/via/classified/guards.d.ts +23 -0
  325. package/dist/via/classified/index.d.ts +11 -0
  326. package/dist/via/classified/presets.d.ts +65 -0
  327. package/dist/via/classified/resolve.d.ts +9 -0
  328. package/dist/via/classified/strategy.d.ts +11 -0
  329. package/dist/via/classified/validators.d.ts +3 -0
  330. package/dist/via/classified/write.d.ts +4 -0
  331. package/dist/via/computed/binding.d.ts +34 -0
  332. package/dist/via/computed/descriptor.d.ts +35 -0
  333. package/dist/via/i18n/active.d.ts +28 -0
  334. package/dist/via/i18n/binding.d.ts +36 -0
  335. package/dist/via/i18n/core.d.ts +267 -0
  336. package/dist/via/i18n/densify.d.ts +24 -0
  337. package/dist/via/i18n/dictionary.d.ts +200 -0
  338. package/dist/via/i18n/index.d.ts +21 -0
  339. package/dist/via/i18n/policy.d.ts +44 -0
  340. package/dist/via/i18n/script.d.ts +26 -0
  341. package/dist/via/i18n/strategy.d.ts +13 -0
  342. package/dist/via/lookup/active.d.ts +19 -0
  343. package/dist/via/lookup/binding.d.ts +99 -0
  344. package/dist/via/lookup/descriptor.d.ts +123 -0
  345. package/dist/via/lookup/handle.d.ts +220 -0
  346. package/dist/via/lookup/index.d.ts +17 -0
  347. package/dist/via/lookup/registry.d.ts +228 -0
  348. package/dist/via/lookup/snapshot.d.ts +67 -0
  349. package/dist/via/money/arith.d.ts +68 -0
  350. package/dist/via/money/binding.d.ts +21 -0
  351. package/dist/via/money/branded.d.ts +61 -0
  352. package/dist/via/money/descriptor.d.ts +73 -0
  353. package/dist/via/money/fixed-point.d.ts +51 -0
  354. package/dist/via/money/index.d.ts +15 -0
  355. package/dist/via/money/iso4217.d.ts +6 -0
  356. package/dist/via/money/money-reducer.d.ts +33 -0
  357. package/dist/via/money/normalize.d.ts +105 -0
  358. package/dist/via/money/paths.d.ts +61 -0
  359. package/dist/via/money/where.d.ts +127 -0
  360. package/dist/walk-IPLXE36W.js +241 -0
  361. package/dist/with/index.js +11 -11
  362. package/dist/with-audit/attestation/active.d.ts +10 -0
  363. package/dist/with-audit/attestation/index.d.ts +16 -0
  364. package/dist/with-audit/attestation/issue.d.ts +29 -0
  365. package/dist/with-audit/attestation/revoke.d.ts +15 -0
  366. package/dist/with-audit/attestation/signer.d.ts +33 -0
  367. package/dist/with-audit/attestation/strategy.d.ts +44 -0
  368. package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
  369. package/dist/with-audit/consent/active.d.ts +14 -0
  370. package/dist/with-audit/consent/consent.d.ts +114 -0
  371. package/dist/with-audit/consent/index.d.ts +14 -0
  372. package/dist/with-audit/consent/strategy.d.ts +36 -0
  373. package/dist/with-audit/forget/active.d.ts +31 -0
  374. package/dist/with-audit/forget/index.d.ts +28 -0
  375. package/dist/with-audit/forget/purge-scope.d.ts +54 -0
  376. package/dist/with-audit/forget/strategy.d.ts +199 -0
  377. package/dist/with-audit/forget/subject-index.d.ts +83 -0
  378. package/dist/with-audit/guards/executor.d.ts +26 -0
  379. package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
  380. package/dist/with-audit/guards/index.d.ts +10 -0
  381. package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
  382. package/dist/with-audit/guards/registry.d.ts +83 -0
  383. package/dist/with-audit/guards/transition-guard.d.ts +82 -0
  384. package/dist/with-audit/guards/types.d.ts +134 -0
  385. package/dist/with-audit/guards/with-guard.d.ts +15 -0
  386. package/dist/with-audit/periods/active.d.ts +11 -0
  387. package/dist/with-audit/periods/index.d.ts +18 -0
  388. package/dist/with-audit/periods/periods.d.ts +417 -0
  389. package/dist/with-audit/periods/strategy.d.ts +32 -0
  390. package/dist/with-audit/periods/vault-facade.d.ts +95 -0
  391. package/dist/with-audit/portability/active.d.ts +11 -0
  392. package/dist/with-audit/portability/export-accessible.d.ts +46 -0
  393. package/dist/with-audit/portability/index.d.ts +18 -0
  394. package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
  395. package/dist/with-audit/portability/strategy.d.ts +31 -0
  396. package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
  397. package/dist/with-audit/sealed-record/active.d.ts +9 -0
  398. package/dist/with-audit/sealed-record/index.d.ts +55 -0
  399. package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
  400. package/dist/with-audit/sealed-record/types.d.ts +27 -0
  401. package/dist/with-audit/tiers/active.d.ts +9 -0
  402. package/dist/with-audit/tiers/index.d.ts +394 -0
  403. package/dist/with-audit/tiers/strategy.d.ts +36 -0
  404. package/dist/with-cargo/active.d.ts +11 -0
  405. package/dist/with-cargo/adopt-partition.d.ts +81 -0
  406. package/dist/with-cargo/decrypt-partition.d.ts +19 -0
  407. package/dist/with-cargo/describe-extraction.d.ts +41 -0
  408. package/dist/with-cargo/extract-partition.d.ts +155 -0
  409. package/dist/with-cargo/index.d.ts +33 -0
  410. package/dist/with-cargo/strategy.d.ts +30 -0
  411. package/dist/with-cargo/vault-diff.d.ts +144 -0
  412. package/dist/with-cargo/walk-closure.d.ts +67 -0
  413. package/dist/with-commit/crdt/active.d.ts +25 -0
  414. package/dist/with-commit/crdt/crdt.d.ts +42 -0
  415. package/dist/with-commit/crdt/index.d.ts +16 -0
  416. package/dist/with-commit/crdt/strategy.d.ts +25 -0
  417. package/dist/with-commit/history/active.d.ts +40 -0
  418. package/dist/with-commit/history/diff.d.ts +23 -0
  419. package/dist/with-commit/history/history.d.ts +73 -0
  420. package/dist/with-commit/history/index.d.ts +30 -0
  421. package/dist/with-commit/history/ledger/constants.d.ts +37 -0
  422. package/dist/with-commit/history/ledger/entry.d.ts +195 -0
  423. package/dist/with-commit/history/ledger/hash.d.ts +30 -0
  424. package/dist/with-commit/history/ledger/index.d.ts +19 -0
  425. package/dist/with-commit/history/ledger/patch.d.ts +99 -0
  426. package/dist/with-commit/history/ledger/store.d.ts +356 -0
  427. package/dist/with-commit/history/strategy.d.ts +136 -0
  428. package/dist/with-commit/history/time-machine.d.ts +202 -0
  429. package/dist/with-commit/numbering/descriptor.d.ts +27 -0
  430. package/dist/with-commit/numbering/index.d.ts +69 -0
  431. package/dist/with-commit/sequence/active.d.ts +10 -0
  432. package/dist/with-commit/sequence/index.d.ts +150 -0
  433. package/dist/with-commit/sequence/strategy.d.ts +26 -0
  434. package/dist/with-commit/tx/active.d.ts +27 -0
  435. package/dist/with-commit/tx/dry-run.d.ts +29 -0
  436. package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
  437. package/dist/with-commit/tx/index.d.ts +13 -0
  438. package/dist/with-commit/tx/invariants.d.ts +68 -0
  439. package/dist/with-commit/tx/strategy.d.ts +23 -0
  440. package/dist/with-commit/tx/transaction.d.ts +212 -0
  441. package/dist/with-fork/archive/engine.d.ts +71 -0
  442. package/dist/with-fork/archive/index.d.ts +23 -0
  443. package/dist/with-fork/shadow/active.d.ts +6 -0
  444. package/dist/with-fork/shadow/index.d.ts +14 -0
  445. package/dist/with-fork/shadow/strategy.d.ts +28 -0
  446. package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
  447. package/dist/with-fork/snapshots/active.d.ts +20 -0
  448. package/dist/with-fork/snapshots/engine.d.ts +36 -0
  449. package/dist/with-fork/snapshots/index.d.ts +5 -0
  450. package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
  451. package/dist/with-fork/snapshots/policy.d.ts +23 -0
  452. package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
  453. package/dist/with-fork/snapshots/strategy.d.ts +48 -0
  454. package/dist/with-formula/computed/index.d.ts +48 -0
  455. package/dist/with-formula/computed/lazy.d.ts +13 -0
  456. package/dist/with-formula/derivations/executor.d.ts +61 -0
  457. package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
  458. package/dist/with-formula/derivations/index.d.ts +6 -0
  459. package/dist/with-formula/derivations/registry.d.ts +67 -0
  460. package/dist/with-formula/derivations/stale.d.ts +39 -0
  461. package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
  462. package/dist/with-formula/derivations/types.d.ts +248 -0
  463. package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
  464. package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
  465. package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +73 -0
  466. package/dist/with-formula/materialized-views/executor.d.ts +80 -0
  467. package/dist/with-formula/materialized-views/index.d.ts +11 -0
  468. package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
  469. package/dist/with-formula/materialized-views/registry.d.ts +128 -0
  470. package/dist/with-formula/materialized-views/stale.d.ts +113 -0
  471. package/dist/with-formula/materialized-views/types.d.ts +399 -0
  472. package/dist/with-formula/materialized-views/with-materialized-view.d.ts +28 -0
  473. package/dist/with-formula/overlay-views/index.d.ts +5 -0
  474. package/dist/with-formula/overlay-views/registry.d.ts +42 -0
  475. package/dist/with-formula/overlay-views/types.d.ts +97 -0
  476. package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
  477. package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
  478. package/dist/with-lookup/aggregate/active.d.ts +33 -0
  479. package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
  480. package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
  481. package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
  482. package/dist/with-lookup/aggregate/index.d.ts +23 -0
  483. package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
  484. package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
  485. package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
  486. package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
  487. package/dist/with-lookup/embeddings/index.d.ts +4 -0
  488. package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
  489. package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
  490. package/dist/with-lookup/indexing/active.d.ts +30 -0
  491. package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
  492. package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
  493. package/dist/with-lookup/indexing/index.d.ts +27 -0
  494. package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
  495. package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
  496. package/dist/with-lookup/indexing/strategy.d.ts +56 -0
  497. package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
  498. package/dist/with-lookup/search/active.d.ts +10 -0
  499. package/dist/with-lookup/search/build-docs.d.ts +15 -0
  500. package/dist/with-lookup/search/collection-facade.d.ts +163 -0
  501. package/dist/with-lookup/search/fuse.d.ts +22 -0
  502. package/dist/with-lookup/search/index-store.d.ts +19 -0
  503. package/dist/with-lookup/search/index.d.ts +19 -0
  504. package/dist/with-lookup/search/inverted-index.d.ts +47 -0
  505. package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
  506. package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
  507. package/dist/with-lookup/search/scan.d.ts +28 -0
  508. package/dist/with-lookup/search/segment.d.ts +15 -0
  509. package/dist/with-lookup/search/serialize.d.ts +4 -0
  510. package/dist/with-lookup/search/snippet.d.ts +5 -0
  511. package/dist/with-lookup/search/strategy.d.ts +41 -0
  512. package/dist/with-lookup/search/tokenize.d.ts +12 -0
  513. package/dist/with-party/auth-introspection/index.d.ts +44 -0
  514. package/dist/with-party/broker/active.d.ts +23 -0
  515. package/dist/with-party/broker/index.d.ts +28 -0
  516. package/dist/with-party/broker/seed.d.ts +77 -0
  517. package/dist/with-party/custody/active.d.ts +10 -0
  518. package/dist/with-party/custody/index.d.ts +69 -0
  519. package/dist/with-party/custody/liberate.d.ts +64 -0
  520. package/dist/with-party/custody/strategy.d.ts +48 -0
  521. package/dist/with-party/directory/cover/custom.d.ts +34 -0
  522. package/dist/with-party/directory/cover/index.d.ts +19 -0
  523. package/dist/with-party/directory/cover/schema.d.ts +39 -0
  524. package/dist/with-party/directory/cover/storage.d.ts +71 -0
  525. package/dist/with-party/directory/cover/types.d.ts +149 -0
  526. package/dist/with-party/directory/index.d.ts +11 -0
  527. package/dist/with-party/directory/storage.d.ts +33 -0
  528. package/dist/with-party/directory/types.d.ts +43 -0
  529. package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
  530. package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
  531. package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
  532. package/dist/with-party/directory/visibility.d.ts +47 -0
  533. package/dist/with-party/policy/engine.d.ts +60 -0
  534. package/dist/with-party/policy/index.d.ts +15 -0
  535. package/dist/with-party/policy/noydb-facade.d.ts +39 -0
  536. package/dist/with-party/policy/presets.d.ts +38 -0
  537. package/dist/with-party/policy/storage.d.ts +31 -0
  538. package/dist/with-party/session/active.d.ts +34 -0
  539. package/dist/with-party/session/dev-unlock.d.ts +128 -0
  540. package/dist/with-party/session/index.d.ts +23 -0
  541. package/dist/with-party/session/session-policy.d.ts +92 -0
  542. package/dist/with-party/session/session.d.ts +131 -0
  543. package/dist/with-party/session/strategy.d.ts +42 -0
  544. package/dist/with-party/session/unlock-state.d.ts +47 -0
  545. package/dist/with-party/sync/index.d.ts +31 -0
  546. package/dist/with-party/tab-coordination.d.ts +73 -0
  547. package/dist/with-party/tab-write-relay.d.ts +39 -0
  548. package/dist/with-party/team/active.d.ts +13 -0
  549. package/dist/with-party/team/authenticators.d.ts +95 -0
  550. package/dist/with-party/team/deed.d.ts +97 -0
  551. package/dist/with-party/team/delegation.d.ts +88 -0
  552. package/dist/with-party/team/index.d.ts +38 -0
  553. package/dist/with-party/team/keyring.d.ts +318 -0
  554. package/dist/with-party/team/magic-link-grant.d.ts +152 -0
  555. package/dist/with-party/team/managed-passphrase.d.ts +280 -0
  556. package/dist/with-party/team/noydb-facade.d.ts +484 -0
  557. package/dist/with-party/team/peer-recover.d.ts +81 -0
  558. package/dist/with-party/team/presence.d.ts +81 -0
  559. package/dist/with-party/team/recovery.d.ts +191 -0
  560. package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
  561. package/dist/with-party/team/rotate-recover.d.ts +275 -0
  562. package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
  563. package/dist/with-party/team/strategy.d.ts +9 -0
  564. package/dist/with-party/team/sync-active.d.ts +33 -0
  565. package/dist/with-party/team/sync-credentials.d.ts +113 -0
  566. package/dist/with-party/team/sync-strategy.d.ts +67 -0
  567. package/dist/with-party/team/sync-transaction.d.ts +39 -0
  568. package/dist/with-party/team/sync.d.ts +174 -0
  569. package/dist/with-party/team/tiers.d.ts +39 -0
  570. package/dist/with-party/team/wrapped-deks.d.ts +86 -0
  571. package/dist/with-pod/backup.d.ts +74 -0
  572. package/dist/with-pod/bundle.d.ts +416 -0
  573. package/dist/with-pod/format.d.ts +207 -0
  574. package/dist/with-pod/index.d.ts +21 -0
  575. package/dist/with-pod/pod-store.d.ts +54 -0
  576. package/dist/with-pod/ulid.d.ts +64 -0
  577. package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
  578. package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
  579. package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
  580. package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
  581. package/dist/with-shape/blobs/import-external.d.ts +50 -0
  582. package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
  583. package/dist/with-shape/blobs/object-projection.d.ts +70 -0
  584. package/dist/with-shape/introspection/describe.d.ts +237 -0
  585. package/dist/with-shape/introspection/field-meta.d.ts +61 -0
  586. package/dist/with-shape/introspection/fields.d.ts +14 -0
  587. package/dist/with-shape/introspection/index.d.ts +12 -0
  588. package/dist/with-shape/introspection/json-schema.d.ts +13 -0
  589. package/dist/with-shape/introspection/meta.d.ts +22 -0
  590. package/dist/with-shape/introspection/projection.d.ts +13 -0
  591. package/dist/with-shape/introspection/types.d.ts +154 -0
  592. package/dist/with-shape/introspection/walk.d.ts +50 -0
  593. package/dist/with-shape/links/lazy-handle.d.ts +36 -0
  594. package/dist/with-shape/links/link-set.d.ts +67 -0
  595. package/dist/with-shape/links/names.d.ts +65 -0
  596. package/dist/with-shape/links/vault-facade.d.ts +211 -0
  597. package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
  598. package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
  599. package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
  600. package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
  601. package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
  602. package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
  603. package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
  604. package/dist/with-shape/satellites/declare.d.ts +60 -0
  605. package/dist/with-shape/satellites/existence.d.ts +5 -0
  606. package/dist/with-shape/satellites/fanout.d.ts +38 -0
  607. package/dist/with-shape/satellites/forget.d.ts +47 -0
  608. package/dist/with-shape/satellites/index.d.ts +3 -0
  609. package/dist/with-shape/satellites/joined.d.ts +19 -0
  610. package/dist/with-shape/satellites/marker.d.ts +10 -0
  611. package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
  612. package/dist/with-shape/satellites/post-register.d.ts +6 -0
  613. package/dist/with-shape/satellites/proxy.d.ts +37 -0
  614. package/dist/with-shape/satellites/raw-target.d.ts +14 -0
  615. package/dist/with-shape/satellites/registry.d.ts +19 -0
  616. package/dist/with-shape/satellites/types.d.ts +37 -0
  617. package/dist/with-shape/satellites/validate.d.ts +17 -0
  618. package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
  619. package/dist/with-shape/schema-update/cutover.d.ts +5 -0
  620. package/dist/with-shape/schema-update/delta.d.ts +2 -0
  621. package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
  622. package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
  623. package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
  624. package/dist/with-shape/schema-update/fence.d.ts +15 -0
  625. package/dist/with-shape/schema-update/gate.d.ts +16 -0
  626. package/dist/with-shape/schema-update/index.d.ts +6 -0
  627. package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
  628. package/dist/with-shape/schema-update/strategies.d.ts +12 -0
  629. package/dist/with-shape/schema-update/types.d.ts +53 -0
  630. package/dist/with-store/index.d.ts +15 -0
  631. package/dist/with-store/lazy/active.d.ts +12 -0
  632. package/dist/with-store/lazy/index.d.ts +14 -0
  633. package/dist/with-store/lazy/strategy.d.ts +9 -0
  634. package/dist/with-store/route-store.d.ts +259 -0
  635. package/dist/with-store/store-middleware.d.ts +189 -0
  636. package/dist/withdraw-accessible-TZDATQVR.js +28 -0
  637. package/package.json +47 -55
  638. package/dist/adapter/index.d.ts +0 -4
  639. package/dist/adapter/index.js +0 -15
  640. package/dist/aggregate/index.d.ts +0 -41
  641. package/dist/api-HV4PDUWF.js +0 -20
  642. package/dist/as/index.d.ts +0 -6
  643. package/dist/at/index.d.ts +0 -4
  644. package/dist/attestation/index.d.ts +0 -19
  645. package/dist/backup-ODXO7OGA.js +0 -225
  646. package/dist/backup-ODXO7OGA.js.map +0 -1
  647. package/dist/blobs/index.d.ts +0 -43
  648. package/dist/bundle/index.d.ts +0 -121
  649. package/dist/bundle-DlSxo31R.d.ts +0 -548
  650. package/dist/by/index.d.ts +0 -1
  651. package/dist/cargo/index.d.ts +0 -8
  652. package/dist/chunk-2644KEGW.js +0 -247
  653. package/dist/chunk-2644KEGW.js.map +0 -1
  654. package/dist/chunk-2HVUKRNE.js +0 -21
  655. package/dist/chunk-2KOSJTMU.js +0 -69
  656. package/dist/chunk-2UQ4RMHV.js +0 -167
  657. package/dist/chunk-2UQ4RMHV.js.map +0 -1
  658. package/dist/chunk-2XE6LIXT.js +0 -515
  659. package/dist/chunk-2XE6LIXT.js.map +0 -1
  660. package/dist/chunk-34RRRIC3.js +0 -71
  661. package/dist/chunk-3C5CKXFI.js +0 -621
  662. package/dist/chunk-3C5CKXFI.js.map +0 -1
  663. package/dist/chunk-3I4KYWNP.js +0 -30
  664. package/dist/chunk-42KVY3OC.js +0 -86
  665. package/dist/chunk-4C4WBS4V.js +0 -13822
  666. package/dist/chunk-4C4WBS4V.js.map +0 -1
  667. package/dist/chunk-4G3IT7J7.js +0 -280
  668. package/dist/chunk-4G3IT7J7.js.map +0 -1
  669. package/dist/chunk-4RQ62VSR.js +0 -53
  670. package/dist/chunk-4RQ62VSR.js.map +0 -1
  671. package/dist/chunk-4ZSGSRBI.js +0 -1221
  672. package/dist/chunk-4ZSGSRBI.js.map +0 -1
  673. package/dist/chunk-5GAX2QOH.js +0 -132
  674. package/dist/chunk-5GAX2QOH.js.map +0 -1
  675. package/dist/chunk-5SAZMBW7.js +0 -202
  676. package/dist/chunk-5TZZUL5X.js +0 -30
  677. package/dist/chunk-6CU3FN74.js +0 -777
  678. package/dist/chunk-6G2SCQYS.js +0 -29
  679. package/dist/chunk-6G2SCQYS.js.map +0 -1
  680. package/dist/chunk-6MWUANRF.js +0 -29
  681. package/dist/chunk-6S7T6WC4.js +0 -111
  682. package/dist/chunk-6S7T6WC4.js.map +0 -1
  683. package/dist/chunk-6ULCYCMU.js +0 -74
  684. package/dist/chunk-7HAPHVRJ.js +0 -1695
  685. package/dist/chunk-7HAPHVRJ.js.map +0 -1
  686. package/dist/chunk-7IZQTCTR.js +0 -382
  687. package/dist/chunk-7ZANJ6JZ.js +0 -265
  688. package/dist/chunk-7ZANJ6JZ.js.map +0 -1
  689. package/dist/chunk-A2APWS32.js +0 -150
  690. package/dist/chunk-A2APWS32.js.map +0 -1
  691. package/dist/chunk-A4MAD6PO.js +0 -99
  692. package/dist/chunk-ANDBBA2P.js +0 -36
  693. package/dist/chunk-ANDBBA2P.js.map +0 -1
  694. package/dist/chunk-AUR7MRHA.js +0 -404
  695. package/dist/chunk-AYGZMQP5.js +0 -75
  696. package/dist/chunk-BGIZAFY7.js +0 -1
  697. package/dist/chunk-CJEMA2Z6.js +0 -230
  698. package/dist/chunk-CTSFKDGA.js +0 -40
  699. package/dist/chunk-CU62BBRB.js +0 -1465
  700. package/dist/chunk-CU62BBRB.js.map +0 -1
  701. package/dist/chunk-CWCCYH34.js +0 -23
  702. package/dist/chunk-DEYAO3N6.js +0 -589
  703. package/dist/chunk-DFIBOSOQ.js +0 -85
  704. package/dist/chunk-E5AHO65E.js +0 -150
  705. package/dist/chunk-FC3XK5JT.js +0 -99
  706. package/dist/chunk-FGOGS7CE.js +0 -662
  707. package/dist/chunk-FGOGS7CE.js.map +0 -1
  708. package/dist/chunk-GX2BYNCT.js +0 -117
  709. package/dist/chunk-GZ2MOPVX.js +0 -291
  710. package/dist/chunk-GZ2MOPVX.js.map +0 -1
  711. package/dist/chunk-H57P2SJB.js +0 -126
  712. package/dist/chunk-H57P2SJB.js.map +0 -1
  713. package/dist/chunk-HBTT7YQX.js +0 -94
  714. package/dist/chunk-HOCEGVGQ.js +0 -36
  715. package/dist/chunk-ICV32FPK.js +0 -50
  716. package/dist/chunk-IIP5WFVT.js +0 -462
  717. package/dist/chunk-IIP5WFVT.js.map +0 -1
  718. package/dist/chunk-IUKGIB2Q.js +0 -91
  719. package/dist/chunk-IWTYFS3D.js +0 -129
  720. package/dist/chunk-JC5R7P44.js +0 -355
  721. package/dist/chunk-JC5R7P44.js.map +0 -1
  722. package/dist/chunk-K2WCO3NX.js +0 -1
  723. package/dist/chunk-KBBWY46Y.js +0 -14
  724. package/dist/chunk-KBF5GSGX.js +0 -367
  725. package/dist/chunk-KCG3BHFG.js +0 -99
  726. package/dist/chunk-KCG3BHFG.js.map +0 -1
  727. package/dist/chunk-KNXN47MO.js +0 -155
  728. package/dist/chunk-KNXN47MO.js.map +0 -1
  729. package/dist/chunk-KWLD2D75.js +0 -38
  730. package/dist/chunk-KXKLKJW4.js +0 -49
  731. package/dist/chunk-KYC4LIEU.js +0 -123
  732. package/dist/chunk-LEOXZY36.js +0 -130
  733. package/dist/chunk-M5I354EE.js +0 -235
  734. package/dist/chunk-MK2BSS44.js +0 -34
  735. package/dist/chunk-MSVY7ULZ.js +0 -70
  736. package/dist/chunk-NNWK3PSY.js +0 -135
  737. package/dist/chunk-NSZ6J5DF.js +0 -59
  738. package/dist/chunk-NUEFXLZU.js +0 -59
  739. package/dist/chunk-NYVQCZ54.js +0 -261
  740. package/dist/chunk-OQAODTYR.js +0 -45
  741. package/dist/chunk-OV4CMJGR.js +0 -164
  742. package/dist/chunk-PEDZFFKW.js +0 -41
  743. package/dist/chunk-PF3FQCCF.js +0 -164
  744. package/dist/chunk-PF3FQCCF.js.map +0 -1
  745. package/dist/chunk-Q2KVKTC2.js +0 -823
  746. package/dist/chunk-Q2KVKTC2.js.map +0 -1
  747. package/dist/chunk-QJR3W3MF.js +0 -23
  748. package/dist/chunk-QJR3W3MF.js.map +0 -1
  749. package/dist/chunk-QTXQ6RNZ.js +0 -255
  750. package/dist/chunk-RJ5522XX.js +0 -453
  751. package/dist/chunk-RJ5522XX.js.map +0 -1
  752. package/dist/chunk-RMUXPHIH.js +0 -930
  753. package/dist/chunk-RMUXPHIH.js.map +0 -1
  754. package/dist/chunk-S6AQXDN4.js +0 -155
  755. package/dist/chunk-SSFC3IYA.js +0 -275
  756. package/dist/chunk-SSFC3IYA.js.map +0 -1
  757. package/dist/chunk-SZCHEDML.js +0 -209
  758. package/dist/chunk-TDPEJINP.js +0 -188
  759. package/dist/chunk-TDPEJINP.js.map +0 -1
  760. package/dist/chunk-TQ3REHVF.js +0 -95
  761. package/dist/chunk-TQ3REHVF.js.map +0 -1
  762. package/dist/chunk-UNJU345Q.js +0 -32
  763. package/dist/chunk-UNJU345Q.js.map +0 -1
  764. package/dist/chunk-V7RNIND6.js +0 -265
  765. package/dist/chunk-V7RNIND6.js.map +0 -1
  766. package/dist/chunk-VJ3NQK4K.js +0 -205
  767. package/dist/chunk-WNA6T3MA.js +0 -686
  768. package/dist/chunk-WNA6T3MA.js.map +0 -1
  769. package/dist/chunk-WVCQ75OK.js +0 -124
  770. package/dist/chunk-WXSYDNBT.js +0 -39
  771. package/dist/chunk-WXSYDNBT.js.map +0 -1
  772. package/dist/chunk-X66MXMR5.js +0 -42
  773. package/dist/chunk-XHD3L3JO.js +0 -930
  774. package/dist/chunk-XHD3L3JO.js.map +0 -1
  775. package/dist/chunk-XJK2WIYN.js +0 -430
  776. package/dist/chunk-XJK2WIYN.js.map +0 -1
  777. package/dist/chunk-XQ7UYPVN.js +0 -95
  778. package/dist/chunk-Y2OCKFZ3.js +0 -80
  779. package/dist/chunk-YBFOBRTO.js +0 -367
  780. package/dist/chunk-YLN33ADH.js +0 -97
  781. package/dist/chunk-YLN33ADH.js.map +0 -1
  782. package/dist/chunk-Z5YFRMG5.js +0 -45
  783. package/dist/chunk-ZWQFOXBR.js +0 -54
  784. package/dist/classified/index.d.ts +0 -16
  785. package/dist/classified-marker-IO5EBW7Q.js +0 -24
  786. package/dist/classified-marker-IO5EBW7Q.js.map +0 -1
  787. package/dist/collection-facade-3RAXG2OU.js +0 -38
  788. package/dist/computed-R62HGCO4.js +0 -11
  789. package/dist/consent/index.d.ts +0 -22
  790. package/dist/crdt/index.d.ts +0 -33
  791. package/dist/dead-filter-VNA4M3GP.js +0 -28
  792. package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
  793. package/dist/delegation-ZKII5UBI.js +0 -25
  794. package/dist/derivations/index.d.ts +0 -69
  795. package/dist/derive-5D2C3WG4.js +0 -21
  796. package/dist/describe/index.d.ts +0 -4
  797. package/dist/describe/index.js +0 -1
  798. package/dist/dev-unlock-DDTafVO6.d.ts +0 -263
  799. package/dist/discriminant-BN9REW3o.d.ts +0 -60
  800. package/dist/enclave-EUBEJGPG.js +0 -125
  801. package/dist/executor-IL7SRNUZ.js +0 -23
  802. package/dist/executor-OUA2Y6YC.js +0 -9
  803. package/dist/executor-WAEI6PDV.js +0 -9
  804. package/dist/export-accessible-O55RKAGC.js +0 -23
  805. package/dist/extract-partition-VBGCBA6Q.js +0 -36
  806. package/dist/fanout-sidecar-CI5BCMQM.js +0 -74
  807. package/dist/find-FISGUWSK.js +0 -11
  808. package/dist/forget/index.d.ts +0 -36
  809. package/dist/guards/index.d.ts +0 -34
  810. package/dist/hash-DBkZfIBW.d.ts +0 -72
  811. package/dist/history/index.d.ts +0 -60
  812. package/dist/i18n/index.d.ts +0 -56
  813. package/dist/in/index.d.ts +0 -4
  814. package/dist/index-B9QdHytu.d.ts +0 -123
  815. package/dist/index-CyclmyDr.d.ts +0 -122
  816. package/dist/index-DzhNI2vE.d.ts +0 -23260
  817. package/dist/indexing/index.d.ts +0 -38
  818. package/dist/issue-EQAWIYFQ.js +0 -19
  819. package/dist/kernel/index.d.ts +0 -31
  820. package/dist/kernel/index.js +0 -60
  821. package/dist/lazy/index.d.ts +0 -20
  822. package/dist/ledger-AJA2SR3C.js +0 -42
  823. package/dist/liberate-SEGR4JLY.js +0 -24
  824. package/dist/link-set-YBAC2DQT.js +0 -31
  825. package/dist/materialized-views/index.d.ts +0 -182
  826. package/dist/mime-magic-CbV1quyp.d.ts +0 -103
  827. package/dist/noydb-AMEOU456.js +0 -65
  828. package/dist/on/index.d.ts +0 -4
  829. package/dist/overlay-views/index.d.ts +0 -97
  830. package/dist/periods/index.d.ts +0 -19
  831. package/dist/pod/index.d.ts +0 -62
  832. package/dist/policy-SDGRWVIL.js +0 -41
  833. package/dist/portability/index.d.ts +0 -19
  834. package/dist/post-register-MROIUA5O.js +0 -55
  835. package/dist/post-register-MROIUA5O.js.map +0 -1
  836. package/dist/public-envelope-J5PLQOW2.js +0 -32
  837. package/dist/query/index.d.ts +0 -4
  838. package/dist/read-only-facade-UCYNRE56.js +0 -8
  839. package/dist/register-OVJKW7BS.js +0 -23
  840. package/dist/registry-5RJSK5AJ.js +0 -9
  841. package/dist/registry-DQRNTWRL.js +0 -18
  842. package/dist/registry-LTGLERS7.js +0 -19
  843. package/dist/request-withdrawal-27O77D2V.js +0 -31
  844. package/dist/reveal-LT3I2K4P.js +0 -38
  845. package/dist/reveal-LT3I2K4P.js.map +0 -1
  846. package/dist/revoke-4N45G7D2.js +0 -24
  847. package/dist/revoke-4N45G7D2.js.map +0 -1
  848. package/dist/satellites/index.d.ts +0 -4
  849. package/dist/sealed-record/index.d.ts +0 -68
  850. package/dist/session/index.d.ts +0 -43
  851. package/dist/shadow/index.d.ts +0 -14
  852. package/dist/signer-XJCOV7JD.js +0 -25
  853. package/dist/signer-XJCOV7JD.js.map +0 -1
  854. package/dist/snapshots/index.d.ts +0 -25
  855. package/dist/stale-IYYXEH3U.js +0 -14
  856. package/dist/stale-IYYXEH3U.js.map +0 -1
  857. package/dist/storage-Y44CAPE6.js +0 -23
  858. package/dist/storage-Y44CAPE6.js.map +0 -1
  859. package/dist/store-coordination-provider-WKGAE2WI.js +0 -142
  860. package/dist/subject-index-CyOgGMJL.d.ts +0 -380
  861. package/dist/sync/index.d.ts +0 -40
  862. package/dist/team/index.d.ts +0 -154
  863. package/dist/tiers/index.d.ts +0 -4
  864. package/dist/to/index.d.ts +0 -4
  865. package/dist/transition-guard-BOUkzQU4.d.ts +0 -165
  866. package/dist/tx/index.d.ts +0 -34
  867. package/dist/ui/index.d.ts +0 -4
  868. package/dist/ulid-DRH25k3y.d.ts +0 -66
  869. package/dist/util/index.d.ts +0 -79
  870. package/dist/validators-B3SalxlJ.d.ts +0 -101
  871. package/dist/vault-diff-Dt9NkLzw.d.ts +0 -147
  872. package/dist/verify-GH6CWVSW.js +0 -139
  873. package/dist/verify-GH6CWVSW.js.map +0 -1
  874. package/dist/walk-76UCFXYV.js +0 -241
  875. package/dist/with/index.d.ts +0 -37
  876. package/dist/with-materialized-view-BP33v1Z6.d.ts +0 -27
  877. package/dist/with-overlayed-view-DntFpOKN.d.ts +0 -12
  878. package/dist/with-rollup-ClCHO6-4.d.ts +0 -47
  879. package/dist/withdraw-accessible-6J2UH3IN.js +0 -28
  880. package/dist/withdraw-accessible-6J2UH3IN.js.map +0 -1
  881. /package/dist/{adapter/index.js.map → api-3A3S4SHH.js.map} +0 -0
  882. /package/dist/{chunk-ICV32FPK.js.map → chunk-2PCAVW2I.js.map} +0 -0
  883. /package/dist/{chunk-6CU3FN74.js.map → chunk-554KLAAN.js.map} +0 -0
  884. /package/dist/{chunk-NNWK3PSY.js.map → chunk-5PFOMHTB.js.map} +0 -0
  885. /package/dist/{chunk-SZCHEDML.js.map → chunk-5WZXVULX.js.map} +0 -0
  886. /package/dist/{chunk-KWLD2D75.js.map → chunk-6HPG2YNX.js.map} +0 -0
  887. /package/dist/{chunk-2KOSJTMU.js.map → chunk-6HY2X62D.js.map} +0 -0
  888. /package/dist/{chunk-KYC4LIEU.js.map → chunk-6NQMXTYC.js.map} +0 -0
  889. /package/dist/{chunk-KBF5GSGX.js.map → chunk-6XE5TMPR.js.map} +0 -0
  890. /package/dist/{chunk-Z5YFRMG5.js.map → chunk-A4FXFAKF.js.map} +0 -0
  891. /package/dist/{chunk-VJ3NQK4K.js.map → chunk-ANATMTOA.js.map} +0 -0
  892. /package/dist/{chunk-HBTT7YQX.js.map → chunk-BOKIKJJB.js.map} +0 -0
  893. /package/dist/{chunk-KXKLKJW4.js.map → chunk-CJ5KKU6X.js.map} +0 -0
  894. /package/dist/{chunk-5SAZMBW7.js.map → chunk-DSBQODMZ.js.map} +0 -0
  895. /package/dist/{chunk-7IZQTCTR.js.map → chunk-EO43ANYJ.js.map} +0 -0
  896. /package/dist/{chunk-QTXQ6RNZ.js.map → chunk-EWPOHMN2.js.map} +0 -0
  897. /package/dist/{chunk-34RRRIC3.js.map → chunk-GWKAVKHI.js.map} +0 -0
  898. /package/dist/{chunk-OV4CMJGR.js.map → chunk-H2KSZMIX.js.map} +0 -0
  899. /package/dist/{chunk-AUR7MRHA.js.map → chunk-HOONYZY2.js.map} +0 -0
  900. /package/dist/{chunk-ZWQFOXBR.js.map → chunk-ISMV2QVG.js.map} +0 -0
  901. /package/dist/{chunk-XQ7UYPVN.js.map → chunk-IY23KFNZ.js.map} +0 -0
  902. /package/dist/{chunk-IWTYFS3D.js.map → chunk-JBBSYJHP.js.map} +0 -0
  903. /package/dist/{chunk-GX2BYNCT.js.map → chunk-JFCV5QIK.js.map} +0 -0
  904. /package/dist/{chunk-5TZZUL5X.js.map → chunk-M75ZZHSR.js.map} +0 -0
  905. /package/dist/{chunk-6MWUANRF.js.map → chunk-N6WF5PKC.js.map} +0 -0
  906. /package/dist/{chunk-E5AHO65E.js.map → chunk-NCCBLYEB.js.map} +0 -0
  907. /package/dist/{chunk-A4MAD6PO.js.map → chunk-OCVM6KDH.js.map} +0 -0
  908. /package/dist/{chunk-Y2OCKFZ3.js.map → chunk-ONTBCHCP.js.map} +0 -0
  909. /package/dist/{chunk-LEOXZY36.js.map → chunk-R3BLCFD2.js.map} +0 -0
  910. /package/dist/{chunk-2HVUKRNE.js.map → chunk-RDXW3OBQ.js.map} +0 -0
  911. /package/dist/{chunk-CJEMA2Z6.js.map → chunk-RFI7GGFO.js.map} +0 -0
  912. /package/dist/{chunk-AYGZMQP5.js.map → chunk-RNG4VRP4.js.map} +0 -0
  913. /package/dist/{chunk-PEDZFFKW.js.map → chunk-RTEK4C4I.js.map} +0 -0
  914. /package/dist/{chunk-3I4KYWNP.js.map → chunk-S6Q37VGE.js.map} +0 -0
  915. /package/dist/{chunk-42KVY3OC.js.map → chunk-SV6EAJEP.js.map} +0 -0
  916. /package/dist/{chunk-YBFOBRTO.js.map → chunk-T3GY65MA.js.map} +0 -0
  917. /package/dist/{chunk-KBBWY46Y.js.map → chunk-TIGPQDYP.js.map} +0 -0
  918. /package/dist/{chunk-NYVQCZ54.js.map → chunk-U6JMEH2P.js.map} +0 -0
  919. /package/dist/{chunk-MK2BSS44.js.map → chunk-UC2ETWF3.js.map} +0 -0
  920. /package/dist/{chunk-M5I354EE.js.map → chunk-UDSR4X4L.js.map} +0 -0
  921. /package/dist/{chunk-6ULCYCMU.js.map → chunk-VAIS3SOM.js.map} +0 -0
  922. /package/dist/{chunk-WVCQ75OK.js.map → chunk-VCBHAE4R.js.map} +0 -0
  923. /package/dist/{chunk-DEYAO3N6.js.map → chunk-VKCADNMR.js.map} +0 -0
  924. /package/dist/{chunk-OQAODTYR.js.map → chunk-WKGF2TJR.js.map} +0 -0
  925. /package/dist/{chunk-HOCEGVGQ.js.map → chunk-WNGGJWF7.js.map} +0 -0
  926. /package/dist/{chunk-NSZ6J5DF.js.map → chunk-WOM2HTML.js.map} +0 -0
  927. /package/dist/{chunk-MSVY7ULZ.js.map → chunk-WQIYTNJV.js.map} +0 -0
  928. /package/dist/{chunk-NUEFXLZU.js.map → chunk-WZSHL6DQ.js.map} +0 -0
  929. /package/dist/{chunk-X66MXMR5.js.map → chunk-XDIAFPUM.js.map} +0 -0
  930. /package/dist/{chunk-CTSFKDGA.js.map → chunk-XJMBYYQK.js.map} +0 -0
  931. /package/dist/{chunk-IUKGIB2Q.js.map → chunk-XTHCN77N.js.map} +0 -0
  932. /package/dist/{chunk-FC3XK5JT.js.map → chunk-YCH5GBN6.js.map} +0 -0
  933. /package/dist/{chunk-S6AQXDN4.js.map → chunk-YTGDPCPW.js.map} +0 -0
  934. /package/dist/{chunk-CWCCYH34.js.map → chunk-YZQOGE2L.js.map} +0 -0
  935. /package/dist/{chunk-DFIBOSOQ.js.map → chunk-ZXEZCY6F.js.map} +0 -0
  936. /package/dist/{api-HV4PDUWF.js.map → collection-facade-KMBWNCYP.js.map} +0 -0
  937. /package/dist/{chunk-BGIZAFY7.js.map → computed-DSMPXG2Y.js.map} +0 -0
  938. /package/dist/{chunk-K2WCO3NX.js.map → cover-QJRXINN5.js.map} +0 -0
  939. /package/dist/{dead-filter-VNA4M3GP.js.map → dead-filter-66VGI6JV.js.map} +0 -0
  940. /package/dist/{collection-facade-3RAXG2OU.js.map → delegation-SU6CV3W7.js.map} +0 -0
  941. /package/dist/{computed-R62HGCO4.js.map → derive-6RWU4EOA.js.map} +0 -0
  942. /package/dist/{delegation-ZKII5UBI.js.map → enclave-TKPN2G2U.js.map} +0 -0
  943. /package/dist/{derive-5D2C3WG4.js.map → executor-KGNLJD6M.js.map} +0 -0
  944. /package/dist/{describe/index.js.map → executor-UX4FASYZ.js.map} +0 -0
  945. /package/dist/{enclave-EUBEJGPG.js.map → executor-XGIS6CR7.js.map} +0 -0
  946. /package/dist/{executor-IL7SRNUZ.js.map → export-accessible-LKW3QV22.js.map} +0 -0
  947. /package/dist/{executor-OUA2Y6YC.js.map → extract-partition-UP2ARO75.js.map} +0 -0
  948. /package/dist/{fanout-sidecar-CI5BCMQM.js.map → fanout-sidecar-B5LVUMQX.js.map} +0 -0
  949. /package/dist/{executor-WAEI6PDV.js.map → find-YS6XWB46.js.map} +0 -0
  950. /package/dist/{export-accessible-O55RKAGC.js.map → issue-3ACYX7LO.js.map} +0 -0
  951. /package/dist/{extract-partition-VBGCBA6Q.js.map → ledger-PTK7XZYT.js.map} +0 -0
  952. /package/dist/{find-FISGUWSK.js.map → liberate-MQQXBUCY.js.map} +0 -0
  953. /package/dist/{issue-EQAWIYFQ.js.map → link-set-SLJHDNRB.js.map} +0 -0
  954. /package/dist/{kernel/index.js.map → noydb-ANIW5FLE.js.map} +0 -0
  955. /package/dist/{ledger-AJA2SR3C.js.map → policy-YDLCOX4P.js.map} +0 -0
  956. /package/dist/{liberate-SEGR4JLY.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
  957. /package/dist/{link-set-YBAC2DQT.js.map → register-PAM3ASRZ.js.map} +0 -0
  958. /package/dist/{noydb-AMEOU456.js.map → registry-4S2U2TR4.js.map} +0 -0
  959. /package/dist/{policy-SDGRWVIL.js.map → registry-NPOWJHC4.js.map} +0 -0
  960. /package/dist/{public-envelope-J5PLQOW2.js.map → registry-VZ3CCI2R.js.map} +0 -0
  961. /package/dist/{read-only-facade-UCYNRE56.js.map → request-withdrawal-DI3H5WUI.js.map} +0 -0
  962. /package/dist/{register-OVJKW7BS.js.map → revoke-R5CZSVUT.js.map} +0 -0
  963. /package/dist/{registry-5RJSK5AJ.js.map → signer-MBVHW4WE.js.map} +0 -0
  964. /package/dist/{registry-DQRNTWRL.js.map → stale-VZL4OGUB.js.map} +0 -0
  965. /package/dist/{registry-LTGLERS7.js.map → storage-3MEJUENZ.js.map} +0 -0
  966. /package/dist/{store-coordination-provider-WKGAE2WI.js.map → store-coordination-provider-FKX3F6TQ.js.map} +0 -0
  967. /package/dist/{walk-76UCFXYV.js.map → walk-IPLXE36W.js.map} +0 -0
  968. /package/dist/{request-withdrawal-27O77D2V.js.map → withdraw-accessible-TZDATQVR.js.map} +0 -0
@@ -0,0 +1,229 @@
1
+ /**
2
+ * Persistent, encrypted secondary indexes for lazy-mode collections.
3
+ *
4
+ * Parallel to the in-memory `CollectionIndexes` used by eager mode (see
5
+ * `packages/hub/src/query/indexes.ts`): same logical surface, but entries
6
+ * are materialised as encrypted side-car records (`_idx/<field>/<recordId>`)
7
+ * and bulk-loaded into an in-memory mirror on first query.
8
+ *
9
+ * This module only owns the id-namespace convention, the in-memory mirror,
10
+ * and the typed errors. Write-path integration (PR 2 / ), query-planner
11
+ * dispatch (PR 3 / , PR 4 / ), and the rebuild/reconcile utilities
12
+ * (PR 5 / ) live in other files.
13
+ *
14
+ * See the design spec for the full architecture + threat model.
15
+ */
16
+ /**
17
+ * Reserved id prefix for encrypted index side-car records.
18
+ * Matches the existing `_keyring`, `_ledger_deltas/…`, `_meta/handle`
19
+ * conventions inside a collection's id namespace.
20
+ */
21
+ export declare const IDX_PREFIX: "_idx/";
22
+ /**
23
+ * Encode the side-car record id for a (field, recordId) pair.
24
+ *
25
+ * Format: `_idx/<field>/<recordId>` — no escaping. Field names may contain
26
+ * dots (for dotted-path access consistent with eager-mode `readPath`);
27
+ * record ids may contain slashes. The first two slash-separated segments
28
+ * are `_idx` and the field; everything after the *second* slash is the
29
+ * record id verbatim.
30
+ */
31
+ export declare function encodeIdxId(field: string, recordId: string): string;
32
+ /**
33
+ * Decode a side-car id back into `{ field, recordId }`, or `null` if the
34
+ * input is not a well-formed idx id. A well-formed id is:
35
+ * - prefixed with `_idx/`
36
+ * - contains a field segment (non-empty, no slashes)
37
+ * - contains a record-id segment (non-empty, may contain slashes)
38
+ */
39
+ export declare function decodeIdxId(id: string): {
40
+ field: string;
41
+ recordId: string;
42
+ } | null;
43
+ /**
44
+ * Fast-path predicate for discriminating side-car ids from regular record
45
+ * ids and other reserved namespaces. Used by the hub to filter `list()`
46
+ * results during bulk-load of the in-memory mirror.
47
+ */
48
+ export declare function isIdxId(id: string): boolean;
49
+ /**
50
+ * Sorted-value entry returned by `orderedBy()`. Mirrors the body shape
51
+ * used by the write path — but `orderedBy` emits them already sorted by
52
+ * `value` in the requested direction. Consumers (PR 4 / ) treat the
53
+ * array as immutable and paginate via a numeric offset.
54
+ *
55
+ * **Note on `value`:** as of, this is the ORIGINAL TYPED
56
+ * value (number, Date, boolean, etc.), not the stringified bucket key.
57
+ * That's what lets range predicates and `orderedBy` compare numerically
58
+ * instead of stumbling into `'10' < '2'` on `String(n)`.
59
+ */
60
+ export interface OrderedEntry {
61
+ readonly recordId: string;
62
+ readonly value: unknown;
63
+ }
64
+ /**
65
+ * Bulk-load row shape accepted by `ingest()`. The `value` field is the
66
+ * decrypted index body's `value` field verbatim.
67
+ */
68
+ export interface IngestRow {
69
+ readonly recordId: string;
70
+ readonly value: unknown;
71
+ }
72
+ /**
73
+ * Structured index definition. Single-field indexes carry just a field
74
+ * name; composite indexes carry the ordered list of fields and
75
+ * the synthetic `key` (= fields joined by `COMPOSITE_DELIMITER`) used
76
+ * as the bucket-map key and side-car envelope id segment.
77
+ */
78
+ export type PersistedIndexDef = {
79
+ readonly kind: 'single';
80
+ readonly field: string;
81
+ readonly key: string;
82
+ } | {
83
+ readonly kind: 'composite';
84
+ readonly fields: readonly string[];
85
+ readonly key: string;
86
+ };
87
+ /**
88
+ * Delimiter used to synthesize a composite-index key from an ordered
89
+ * field list. Intentionally a character that is extremely unusual in
90
+ * JavaScript object keys (`|`) so collision with a literal field name
91
+ * is vanishingly rare in practice. Composite declarations whose field
92
+ * names contain `|` are rejected at declare-time with an explicit
93
+ * error.
94
+ */
95
+ export declare const COMPOSITE_DELIMITER = "|";
96
+ export declare function compositeKey(fields: readonly string[]): string;
97
+ export declare class PersistedCollectionIndex {
98
+ private readonly indexes;
99
+ private readonly defs;
100
+ /**
101
+ * Per-field bucket-key canonicalizer (#677 — lazy twin of #672's
102
+ * `CollectionIndexes.setCanonicalizer`), registered ONCE via
103
+ * {@link setCanonicalizer} when the collection wires indexing up
104
+ * (money-aware via `ViaPipeline.canonicalizeIndexKey`). Consulted by
105
+ * EVERY bucket-mutation site — `ingest`/`upsert`/`remove` — so bucket
106
+ * membership is symmetric: a legacy non-canonical stored value (e.g.
107
+ * `'0100'`) and a canonical one (`'100'`) land in the SAME bucket,
108
+ * mirroring `eager-indexes.ts`'s `addToIndex`/`removeFromIndex`.
109
+ */
110
+ private canonicalize?;
111
+ /**
112
+ * Register the bucket-key canonicalizer. Called once, where the
113
+ * collection constructs its indexing state — safe to call again (the
114
+ * closure is simply replaced) but there is normally only one caller.
115
+ */
116
+ setCanonicalizer(fn: (field: string, value: unknown) => string | undefined): void;
117
+ /**
118
+ * Declare a single-field index. Subsequent `upsert` / `ingest` calls
119
+ * populate the in-memory mirror; calls before `declare` are no-ops
120
+ * (tolerant bulk-load ordering). Idempotent.
121
+ */
122
+ declare(field: string): void;
123
+ /**
124
+ * Declare a composite (multi-field) index. The synthetic
125
+ * key is `fields.join('|')`; it doubles as the in-memory map key and
126
+ * the `_idx/<key>/<recordId>` side-car field segment. Callers upsert
127
+ * and lookup via the same `key` as single-field indexes, just with a
128
+ * tuple value (JSON-stringified for bucketing).
129
+ */
130
+ declareComposite(fields: readonly string[]): void;
131
+ /**
132
+ * Every declared index's structured definition. Collection walks this
133
+ * when materialising side-cars on put/delete so it can extract a
134
+ * single-field value or a composite tuple appropriately.
135
+ */
136
+ definitions(): PersistedIndexDef[];
137
+ /** True if `field` has been declared as indexable on this mirror. */
138
+ has(field: string): boolean;
139
+ /** All declared field names, in declaration order. */
140
+ fields(): string[];
141
+ /**
142
+ * Bulk-load the mirror from decrypted index bodies. Intended to be
143
+ * called once per field after reading the collection's `_idx/<field>/*`
144
+ * side-cars. Safe to call twice with the same rows — bucket Sets
145
+ * deduplicate recordIds. If `field` is not declared, this is a no-op
146
+ * (tolerates the case where bulk-load runs before `declare()` lands).
147
+ */
148
+ ingest(field: string, rows: readonly IngestRow[]): void;
149
+ /**
150
+ * Incrementally update a record's index entry for one field. Called by
151
+ * `Collection.put()` after the main write succeeds. If
152
+ * `previousValue` is non-null, the record is removed from the old
153
+ * bucket first — this is the update path. Pass `null` for fresh adds.
154
+ * No-op if the field is not declared.
155
+ */
156
+ upsert(recordId: string, field: string, newValue: unknown, previousValue: unknown): void;
157
+ /**
158
+ * Remove a record from the index for one field. Called by
159
+ * `Collection.delete()`. No-op if the field is not declared or
160
+ * the record isn't in the bucket. Empty buckets are dropped to keep
161
+ * the Map clean.
162
+ */
163
+ remove(recordId: string, field: string, value: unknown): void;
164
+ /**
165
+ * Drop all bucket data while preserving field declarations. Called on
166
+ * invalidation (incoming sync changes, keyring rotation) — the next
167
+ * query re-populates via `ingest`.
168
+ */
169
+ clear(): void;
170
+ /**
171
+ * Equality lookup — return the set of record ids whose `field` matches
172
+ * `value`. Returns `null` if the field is not declared (caller falls
173
+ * back to scan or throws `IndexRequiredError`). Returns a shared empty
174
+ * set if the field is declared but no record matches — that set MUST
175
+ * NOT be mutated by the caller.
176
+ *
177
+ * `value` is bucketed via the plain {@link stringifyKey} — it is NOT
178
+ * canonicalized here. Callers on a Via-covered field (money) canonicalize
179
+ * `value` themselves BEFORE calling (see `lazy-builder.ts`'s
180
+ * `resolveCandidateIds()`, #677) — the SAME caller-canonicalizes split
181
+ * `eager-indexes.ts`'s `lookupEqual`/`lookupIn` use (see `kernel/query/
182
+ * builder.ts`'s `candidateRecords()`), so probing here twice never
183
+ * double-canonicalizes.
184
+ */
185
+ lookupEqual(field: string, value: unknown): ReadonlySet<string> | null;
186
+ /**
187
+ * Set lookup — return the union of record ids whose `field` matches any
188
+ * of `values`. Returns `null` if the field is not declared. Returns a
189
+ * fresh (non-shared) Set — safe for the caller to mutate. Same
190
+ * caller-canonicalizes contract as {@link lookupEqual} (#677).
191
+ */
192
+ lookupIn(field: string, values: readonly unknown[]): ReadonlySet<string> | null;
193
+ /**
194
+ * Range lookup. Return record ids whose indexed value
195
+ * satisfies the predicate. Comparison happens on the ORIGINAL TYPED
196
+ * value carried in `state.values` — so numeric `<` sorts numerically,
197
+ * not lexicographically on `String(n)`. Returns `null` if the field
198
+ * is not declared.
199
+ *
200
+ * Supported ops: `'<'`, `'<='`, `'>'`, `'>='`, `'between'`. For
201
+ * `'between'`, `value` is `[lo, hi]` and both bounds are inclusive
202
+ * (matches the eager-mode operator contract in `predicate.ts`).
203
+ *
204
+ * NOT canonicalized (#677): this method compares `value` against the
205
+ * ORIGINAL TYPED `state.values`, not a stringified bucket key, so a
206
+ * `canonicalizeIndexKey`-shaped (`string | undefined`) result would not
207
+ * even type-check as a bound here. This does NOT mirror eager mode the
208
+ * way `lookupEqual`/`lookupIn` do: `moneyIndexProbe` (`via/money/
209
+ * where.ts`) never emits a range probe, so EAGER mode's `candidateRecords`
210
+ * never calls an index for a range clause and always scans.
211
+ *
212
+ * LAZY mode's `resolveCandidateIds()` (`lazy-builder.ts`) no longer
213
+ * dispatches a Via-covered (e.g. money) range clause through THIS method
214
+ * at all (#684) — it enumerates the field's indexed ids via `orderedBy()`
215
+ * instead and leaves the raw/typed comparison here for the (now
216
+ * Via-aware) post-filter to redo correctly in scaled-int space. A
217
+ * NON-via range clause still dispatches through this method exactly as
218
+ * before — the raw/typed comparison here is correct and sufficient for
219
+ * fields with no decode-transforming Via binding.
220
+ */
221
+ lookupRange(field: string, op: '<' | '<=' | '>' | '>=' | 'between', value: unknown): ReadonlySet<string> | null;
222
+ /**
223
+ * Sorted iteration — return every entry on `field` as an
224
+ * `OrderedEntry[]`, sorted by the ORIGINAL TYPED value (no more
225
+ * `'10' < '2'` surprises on numeric fields). Consumers paginate with
226
+ * a numeric offset. `OrderedEntry.value` is the typed value.
227
+ */
228
+ orderedBy(field: string, dir: 'asc' | 'desc'): readonly OrderedEntry[] | null;
229
+ }
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Strategy seam between core Collection and the optional indexing
3
+ * service. Core imports `IndexStrategy` and `IndexState` as
4
+ * TYPE-ONLY symbols and `NO_INDEXING` as a tiny runtime stub.
5
+ *
6
+ * The heavy classes — `CollectionIndexes`, `PersistedCollectionIndex`,
7
+ * `LazyQuery` — are only instantiated inside the `withIndexing()`
8
+ * factory under `./active.ts`, which in turn is only reachable through
9
+ * the `@noy-db/hub/indexing` subpath export. A consumer that never
10
+ * imports the subpath ships none of those classes in their bundle
11
+ * (ESM tree-shaking + hub's `"sideEffects": false`).
12
+ *
13
+ * @internal
14
+ */
15
+ import type { CollectionIndexes, IndexDef } from './eager-indexes.js';
16
+ import type { PersistedCollectionIndex } from './persisted-indexes.js';
17
+ /**
18
+ * Per-collection container for whatever mirrors the active strategy
19
+ * decided to materialize. Both accessors may return `null` — they do
20
+ * for `NO_INDEXING`, and `getEagerIndexes` returns null in a
21
+ * lazy-mode collection even when indexing is active (lazy uses the
22
+ * persisted mirror instead).
23
+ *
24
+ * `isEnabled` is a cheap guard so collection code can short-circuit
25
+ * the full indexing path without inspecting either mirror.
26
+ *
27
+ * @internal
28
+ */
29
+ export interface IndexState {
30
+ readonly isEnabled: boolean;
31
+ getEagerIndexes(): CollectionIndexes | null;
32
+ getPersistedIndexes(): PersistedCollectionIndex | null;
33
+ }
34
+ /**
35
+ * Factory that builds one `IndexState` per Collection. Called exactly
36
+ * once inside each Collection constructor with the declared
37
+ * `IndexDef[]` and the lazy-mode flag (so lazy collections get the
38
+ * persisted mirror and eager collections get the in-memory one).
39
+ *
40
+ * @internal
41
+ */
42
+ export interface IndexStrategy {
43
+ createState(args: {
44
+ readonly defs: readonly IndexDef[];
45
+ readonly lazy: boolean;
46
+ }): IndexState;
47
+ }
48
+ /**
49
+ * No-indexing stub. Every Collection defaults to this; it returns a
50
+ * cheap `IndexState` whose mirrors are both `null`. Collection code
51
+ * null-checks both accessors and short-circuits, so no indexing code
52
+ * path runs and the heavy classes never arrive in the bundle.
53
+ *
54
+ * @internal
55
+ */
56
+ export declare const NO_INDEXING: IndexStrategy;
@@ -0,0 +1,74 @@
1
+ /**
2
+ * In-memory unique-constraint enforcement for eager-mode collections.
3
+ *
4
+ * Each `UniqueConstraintSet` holds one or more constraints, each covering
5
+ * an ordered tuple of field names. On every `put()` the caller invokes
6
+ * `check()` BEFORE the store write; on success it calls `upsert()` to
7
+ * update the maps. `remove()` is called on `delete()`.
8
+ *
9
+ * Null-distinct semantics: if ANY constrained field is `null` or
10
+ * `undefined` in the record, that record is exempt from the constraint —
11
+ * `keyFor` returns `null` and the record is silently skipped.
12
+ * This matches standard SQL NULL-distinct behavior.
13
+ *
14
+ * Only used in eager mode (`prefetch !== false`). Lazy-mode collections
15
+ * throw at registration instead (see Collection constructor).
16
+ */
17
+ import type { IndexDef } from './eager-indexes.js';
18
+ export declare class UniqueConstraintSet {
19
+ private readonly collectionName;
20
+ private readonly constraints;
21
+ constructor(collectionName: string, uniqueDefs: readonly (readonly string[])[]);
22
+ get size(): number;
23
+ /**
24
+ * Compute the canonical key for a record under a given constraint.
25
+ * Returns `null` if any constrained field is `null` or `undefined`
26
+ * (the record is exempt — no constraint is checked).
27
+ */
28
+ private keyFor;
29
+ /**
30
+ * Throw `UniqueConstraintError` if writing `id` with `record` would
31
+ * collide with a DIFFERENT existing record. Call BEFORE the store write.
32
+ */
33
+ check(id: string, record: unknown): void;
34
+ /**
35
+ * Update the constraint maps after a successful write.
36
+ * Pass `previous` when updating an existing record (so the old key
37
+ * is removed first). Pass `null` or `undefined` for a fresh insert.
38
+ */
39
+ upsert(id: string, record: unknown, previous?: unknown): void;
40
+ /**
41
+ * Remove a record from all constraint maps.
42
+ * Called by `Collection.delete()`.
43
+ */
44
+ remove(id: string, record: unknown): void;
45
+ /**
46
+ * Rebuild all constraint maps from a full snapshot.
47
+ * Called after hydration (ensureHydrated / hydrateFromSnapshot).
48
+ *
49
+ * **Last-writer-wins**: this method does NOT validate pre-existing data
50
+ * for duplicates. If the store already contains two records sharing a
51
+ * constrained value (written before the unique index was declared), the
52
+ * last one processed wins the map slot and the duplicate is silently
53
+ * displaced — no error is thrown, and the earlier holder is evicted from
54
+ * the map. Callers retrofitting a unique index onto populated data should
55
+ * run a one-time uniqueness scan before relying on enforcement.
56
+ */
57
+ build(entries: Iterable<readonly [string, unknown]>): void;
58
+ }
59
+ /**
60
+ * Build the `UniqueConstraintSet` for a collection from its `IndexDef[]`,
61
+ * or return `null` when no `unique: true` index is declared.
62
+ *
63
+ * Unique enforcement is **eager-mode only**. If any `unique` index is
64
+ * declared on a lazy (`prefetch:false`), CRDT, or tiered collection, this
65
+ * throws `UnsupportedIndexOptionError` at registration rather than letting
66
+ * those write paths (which bypass `check()`/`upsert()`) silently skip
67
+ * enforcement. Kept out of the Collection constructor to keep that
68
+ * always-on kernel file lean (kernel-surface invariant).
69
+ */
70
+ export declare function buildUniqueConstraintSet(collectionName: string, indexes: readonly IndexDef[] | undefined, mode: {
71
+ readonly lazy: boolean;
72
+ readonly crdt: boolean;
73
+ readonly tiered: boolean;
74
+ }): UniqueConstraintSet | null;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Enable the search / retrieval capability.
3
+ * Pass to `createNoydb({ searchStrategy: withSearch() })` to make a collection's
4
+ * `search` / `retrieve` / `similarTo` / `warmIndex` / `flushIndex` methods live,
5
+ * and to enable the put()-time embedding-vector compute for collections that
6
+ * declare an `embeddings` config. The search/retrieval engine is dynamically
7
+ * imported here, so it stays out of the floor bundle until opted in.
8
+ */
9
+ import type { SearchStrategy } from './strategy.js';
10
+ export declare function withSearch(): SearchStrategy;
@@ -0,0 +1,15 @@
1
+ import type { I18nTextDescriptor } from '../../via/i18n/core.js';
2
+ import type { DictKeyDescriptor, StaticDictDescriptor } from '../../via/i18n/dictionary.js';
3
+ import type { IndexDoc } from './inverted-index.js';
4
+ type FieldEntry = IndexDoc['fields'][number];
5
+ export declare function buildStringFieldEntries(record: Record<string, unknown>, textIndexes: readonly string[], only?: readonly string[]): FieldEntry[];
6
+ export declare function buildI18nFieldEntries(record: Record<string, unknown>, i18nFields: Record<string, I18nTextDescriptor>, textIndexes: readonly string[], only?: readonly string[]): FieldEntry[];
7
+ /** label map: field -> (key -> { locale -> label }). Precomputed in the collection (async for dynamic dicts). */
8
+ export declare function buildDictKeyFieldEntries(record: Record<string, unknown>, dictKeyFields: Record<string, DictKeyDescriptor | StaticDictDescriptor>, labelMaps: Map<string, Map<string, Record<string, string>>>, textIndexes: readonly string[], only?: readonly string[]): FieldEntry[];
9
+ /**
10
+ * Blob filenames precomputed in the collection (`field -> filenames[]`, from one
11
+ * async `listSlots()` per record — the heaviest source, see {@link buildBlobFieldEntries}'s
12
+ * caller). Bytes are never tokenized; only the slot `filename` is indexed.
13
+ */
14
+ export declare function buildBlobFieldEntries(filenamesByField: Map<string, string[]>): FieldEntry[];
15
+ export {};
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Collection-level search / retrieval (`search` / `retrieve` / `similarTo` +
3
+ * the lexical-index build/flush/warm machinery).
4
+ *
5
+ * This is the retrieval surface: a pure client-side lexical scan
6
+ * (`search`), the persisted-or-in-memory inverted-index lifecycle
7
+ * (`flushIndex` / `warmIndex` / `buildRetrievalDocs` + the dict-label / blob-
8
+ * filename resolvers that feed it), and the lexical / semantic / hybrid
9
+ * `retrieve` fan-out plus raw-vector kNN (`similarTo`). None of it touches the
10
+ * write path — it reads the live eager cache and the encrypted `_vec` / `_ftindex`
11
+ * side-cars.
12
+ *
13
+ * Every function takes a small {@link SearchContext} instead of `this`,
14
+ * mirroring the `record-keys/` siblings.
15
+ *
16
+ * The `cache` is the SAME `Map` reference `Collection` owns (passed by
17
+ * reference, never copied) so the index always builds over the live working
18
+ * set. {@link buildPersistedIndexCallbacks} is special: it is invoked from the
19
+ * `Collection` constructor *before* `this.codec` exists, so it takes a context
20
+ * THUNK and resolves the context lazily at each callback invocation.
21
+ *
22
+ * Internal service — not exported as a `@noy-db/hub/*` subpath.
23
+ */
24
+ import type { NoydbStore } from '../../kernel/types.js';
25
+ import type { RecordCodec } from '../../kernel/enclave/index.js';
26
+ import { type I18nTextDescriptor } from '../../via/i18n/core.js';
27
+ import { type DictKeyDescriptor, type StaticDictDescriptor, type DictionaryHandle } from '../../via/i18n/dictionary.js';
28
+ import type { BlobSet } from '../../with-shape/blobs/blob-set.js';
29
+ import type { BlobFieldsConfig } from '../../with-shape/blobs/blob-compaction.js';
30
+ import { type VectorSet, type EmbeddingDescriptor } from '../embeddings/index.js';
31
+ import { type SearchOptions, type SearchResult } from './index.js';
32
+ import type { IndexStore } from './index-store.js';
33
+ import type { PersistedIndexCallbacks } from './persisted-index-store.js';
34
+ import type { IndexDoc } from './inverted-index.js';
35
+ import type { RetrieveOptions, RetrieveHit } from './retrieve-types.js';
36
+ /** Everything the moving search/retrieval methods touched on `this.*`. */
37
+ export interface SearchContext<T> {
38
+ /** Collection name — error context + `_ftindex` row key. */
39
+ readonly name: string;
40
+ /** Vault namespace the side-cars (`_vec`, `_ftindex`) live under. */
41
+ readonly vault: string;
42
+ /** The ciphertext store. */
43
+ readonly adapter: NoydbStore;
44
+ /** The record codec — decrypts the `_vec` / `_ftindex` side-car bodies. */
45
+ readonly codec: RecordCodec<T>;
46
+ /** The eager working-set cache (SHARED `Map` reference, never copied). */
47
+ readonly cache: Map<string, {
48
+ record: T;
49
+ version: number;
50
+ }>;
51
+ /** True in lazy mode — search/retrieve/warm require eager mode. */
52
+ readonly lazy: boolean;
53
+ /** Declared text-index fields, or undefined. */
54
+ readonly textIndexes: readonly string[] | undefined;
55
+ /** Declared i18n fields, or undefined. */
56
+ readonly i18nFields: Record<string, I18nTextDescriptor> | undefined;
57
+ /** Declared dictionary-key fields, or undefined. */
58
+ readonly dictKeyFields: Record<string, DictKeyDescriptor | StaticDictDescriptor> | undefined;
59
+ /** Declared blob fields, or undefined. */
60
+ readonly blobFields: BlobFieldsConfig | undefined;
61
+ /** Dictionary handle resolver (dynamic dict-key labels), or undefined. */
62
+ readonly getDictionary: ((name: string) => Promise<DictionaryHandle>) | undefined;
63
+ /** The lexical inverted-index store (in-memory or persisted), or undefined. */
64
+ readonly searchIndexStore: IndexStore | undefined;
65
+ /** The vector set for semantic retrieval, or undefined. */
66
+ readonly vectorSet: VectorSet | undefined;
67
+ /** The embeddings descriptor, or undefined. */
68
+ readonly embeddings: EmbeddingDescriptor | undefined;
69
+ /** Hydrate the eager cache before reading it. */
70
+ ensureHydrated(): Promise<void>;
71
+ /** Open the blob facade for a record (used to list indexed blob filenames). */
72
+ blob(id: string): BlobSet;
73
+ }
74
+ /**
75
+ * Client-side lexical scan over the live eager cache. Eager mode only;
76
+ * nothing searchable is written to the store.
77
+ */
78
+ export declare function search<T>(ctx: SearchContext<T>, field: string, query: string, opts?: SearchOptions): Promise<SearchResult<T>[]>;
79
+ /** L1 — build IndexDoc[] for the configured text fields over the live cache. */
80
+ export declare function buildRetrievalDocs<T>(ctx: SearchContext<T>, labelMaps: Map<string, Map<string, Record<string, string>>>, blobFilenames: Map<string, Map<string, string[]>>, only?: readonly string[]): IndexDoc[];
81
+ /** L1 — true iff any configured text index is also a blob field (gates ALL slot I/O). */
82
+ export declare function hasIndexedBlobFields<T>(ctx: SearchContext<T>, only?: readonly string[]): boolean;
83
+ /** L1.5 — force-persist the lexical index now (e.g. on save/idle). Persists only when textIndexPersist is enabled; a no-op otherwise. */
84
+ export declare function flushIndex<T>(ctx: SearchContext<T>): Promise<void>;
85
+ /**
86
+ * L1.5 — build the PersistedIndexCallbacks bridge: crypto lives here
87
+ * (collection has getDEK / encryptJsonString / decryptJsonString / adapter),
88
+ * the index store itself is crypto-free.
89
+ *
90
+ * Fingerprint encoding: body-wrap approach — save(json, fp) stores
91
+ * JSON.stringify({ fp, idx: json }) as the encrypted body so the standard
92
+ * EncryptedEnvelope shape is never extended. load() decrypts and JSON.parses
93
+ * the wrapper back out.
94
+ *
95
+ * Cache shape: ctx.cache stores { record, version } — currentFingerprint()
96
+ * iterates over e.version.
97
+ *
98
+ * NOTE: this factory is invoked from the `Collection` constructor *before*
99
+ * `this.codec` is assigned, so it takes a context THUNK and resolves the
100
+ * context lazily inside each callback — by the time a callback actually runs,
101
+ * the codec and cache are fully wired.
102
+ */
103
+ export declare function buildPersistedIndexCallbacks<T>(provideCtx: () => SearchContext<T>): PersistedIndexCallbacks;
104
+ /** L1 — pre-build the lexical index (e.g. on open) so the first retrieve() pays no build scan. */
105
+ export declare function warmIndex<T>(ctx: SearchContext<T>): Promise<void>;
106
+ /** Retrieval. mode: 'lexical' (default) | 'semantic' (L2) | 'hybrid' (L3). */
107
+ export declare function retrieve<T>(ctx: SearchContext<T>, query: string, opts?: RetrieveOptions<T>): Promise<RetrieveHit<T>[]>;
108
+ /** L2 — raw-vector kNN over the encrypted vector set (decrypted in the trusted tier).
109
+ * Snippet is '' for vector hits in v1 (semantic match isn't span-located). */
110
+ export declare function similarTo<T>(ctx: SearchContext<T>, vector: Float32Array, opts?: {
111
+ k?: number;
112
+ minScore?: number;
113
+ includeRecord?: boolean;
114
+ }): Promise<RetrieveHit<T>[]>;
115
+ /**
116
+ * L2 — the embedding write-hook: derive a record's embedding vector at
117
+ * write and persist it as the encrypted `_vec` side-car. Routed through the
118
+ * search strategy so it runs only when `withSearch()` is opted in — computing
119
+ * vectors that no gated `similarTo` / semantic `retrieve` could query would be
120
+ * dead weight, so the compute is paired with the search capability. The caller
121
+ * (`Collection.put`) only invokes this when `embeddings` is declared.
122
+ */
123
+ export declare function embedOnWrite<T>(ctx: SearchContext<T>, id: string, record: T, version: number): Promise<void>;
124
+ /**
125
+ * Force-re-derive every eligible tier-0 record's `_vec` sidecar once (#788).
126
+ * Opt-in bulk repair for the #726 re-namespace: legacy bare-id rows are
127
+ * unreachable to `buildVectorLoad` (it only recognises `<collection>/<id>`
128
+ * keys) and otherwise self-heal only when a record is next `put()` — this
129
+ * lets an adopter recover recall immediately instead of waiting on writes.
130
+ *
131
+ * **Skips elevated records** (`liveRecordIsElevated`) rather than refusing
132
+ * the whole walk — the OPPOSITE of `_applyCutoverTransform`'s
133
+ * `assertCutoverTierSafe` refuse-whole-batch precedent. An elevated record is
134
+ * SUPPOSED to have no `_vec` (`syncTierSearch` purges it on elevate);
135
+ * re-embedding one here would write searchable plaintext-derived data above
136
+ * tier 0. Load-bearing: never write a `_vec` row for an elevated record.
137
+ *
138
+ * Tombstones, delete markers, and a raw `get` racing a delete between `list`
139
+ * and `get` all decrypt to `null` (`decryptRecord` already folds
140
+ * tombstone/delete-marker into that null) and are skipped the same way.
141
+ * Unconditional re-derive, no already-migrated check — safe to re-run after
142
+ * a partial failure (each id is independently idempotent).
143
+ */
144
+ export declare function rebuildEmbeddings<T>(ctx: SearchContext<T>): Promise<{
145
+ rebuilt: number;
146
+ skipped: number;
147
+ }>;
148
+ /**
149
+ * Sync the collection's SEARCH artifacts after a tier move (#721). Both the
150
+ * lexical `_ftindex` blob and the `_vec/<id>` embedding are encrypted under
151
+ * the tier-0 DEK and hold the record's derived plaintext (full field text /
152
+ * a text-invertible vector), so leaving them means elevation never hid what
153
+ * the record was searchable by — the `forget()` precedent, unapplied to
154
+ * elevate. `null` → the record left tier 0: purge its `_vec` sidecar (mirrors
155
+ * `Collection._purgeVector`), and invalidate the `_ftindex` blob (mirrors
156
+ * `Collection._purgeSearchIndex`: deletes the persisted blob when persisted,
157
+ * else drops the in-memory index) so the next `retrieve()` rebuilds from the
158
+ * elevated-free `ctx.cache`. A record → it is tier-0 again: re-embed it via
159
+ * {@link embedOnWrite}, then invalidate `_ftindex` so the rebuild includes it
160
+ * again. No-op fast when the collection has neither a lexical index nor a
161
+ * vector set.
162
+ */
163
+ export declare function syncTierSearch<T>(ctx: SearchContext<T>, id: string, record: T | null, version?: number): Promise<void>;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * L3 — Reciprocal Rank Fusion. Merges N ranked `RetrieveHit` lists into
3
+ * one, scoring each id by Σ 1/(k + rank) across the lists it appears in. Pure,
4
+ * deterministic, no I/O — which is why it serves BOTH hybrid lexical⊕semantic
5
+ * fusion AND klum-db's cross-vault federation (the lists are per-vault). The
6
+ * fused `score` is the RRF score, NOT BM25 or cosine.
7
+ */
8
+ import type { RetrieveHit } from './retrieve-types.js';
9
+ export interface FuseOptions {
10
+ /** Only 'rrf' in v1 (default). */
11
+ readonly strategy?: 'rrf';
12
+ /** RRF constant; larger flattens the rank weighting. Default 60. */
13
+ readonly k?: number;
14
+ /** Truncate the fused output to this many hits. */
15
+ readonly limit?: number;
16
+ }
17
+ /**
18
+ * Callers must supply hits with `rank >= 1` (the retrieve contract guarantees
19
+ * it; a federation caller passing `rank: 0` with `k: 0` would divide by zero).
20
+ * Doc-only note — no runtime guard; rank ≥ 1 is the retrieve contract.
21
+ */
22
+ export declare function fuseRetrieval<T>(lists: ReadonlyArray<ReadonlyArray<RetrieveHit<T>>>, opts?: FuseOptions): RetrieveHit<T>[];
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The index persistence seam (L1.5). MemoryIndexStore is session-scoped and
3
+ * lazy; an opaque-blob backend implements the same interface so the
4
+ * collection call-site is unchanged.
5
+ */
6
+ import { InvertedIndex, type IndexDoc } from './inverted-index.js';
7
+ export interface IndexStore {
8
+ ensureBuilt(build: () => ReadonlyArray<IndexDoc>): Promise<InvertedIndex>;
9
+ markDirty(): void;
10
+ flush(): Promise<void>;
11
+ readonly built: boolean;
12
+ }
13
+ export declare class MemoryIndexStore implements IndexStore {
14
+ private index;
15
+ get built(): boolean;
16
+ ensureBuilt(build: () => ReadonlyArray<IndexDoc>): Promise<InvertedIndex>;
17
+ markDirty(): void;
18
+ flush(): Promise<void>;
19
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Search service — scan-mode full-text search.
3
+ *
4
+ * Tree-shakeable: only reaches the bundle when `collection.search()` is called.
5
+ * The store-usable blind index (SSE) is a separate, gated opt-in and not
6
+ * built here.
7
+ */
8
+ export { tokenize, type Tokenizer } from './tokenize.js';
9
+ export { searchScan, type SearchOptions, type SearchResult, type SearchEntry } from './scan.js';
10
+ export { segmentTokens, segmentTokenizer, type Token } from './segment.js';
11
+ export { InvertedIndex, type IndexDoc, type IndexHit, type QueryOptions } from './inverted-index.js';
12
+ export { extractSnippet } from './snippet.js';
13
+ export { MemoryIndexStore, type IndexStore } from './index-store.js';
14
+ export { buildStringFieldEntries } from './build-docs.js';
15
+ export type { RetrieveOptions, RetrieveHit } from './retrieve-types.js';
16
+ export { fuseRetrieval, type FuseOptions } from './fuse.js';
17
+ export { withSearch } from './active.js';
18
+ export { NO_SEARCH, type SearchStrategy } from './strategy.js';
19
+ export { SearchNotEnabledError } from '../../kernel/errors.js';
@@ -0,0 +1,47 @@
1
+ export interface IndexDoc {
2
+ readonly id: string;
3
+ readonly fields: ReadonlyArray<{
4
+ readonly field: string;
5
+ readonly locale?: string;
6
+ readonly text: string;
7
+ }>;
8
+ }
9
+ export interface IndexHit {
10
+ readonly id: string;
11
+ readonly score: number;
12
+ readonly field: string;
13
+ readonly locale?: string;
14
+ readonly text: string;
15
+ readonly offset: number;
16
+ }
17
+ export interface QueryOptions {
18
+ readonly limit?: number;
19
+ readonly match?: 'any' | 'all';
20
+ readonly prefix?: boolean;
21
+ readonly fields?: readonly string[];
22
+ }
23
+ export interface IndexSnapshot {
24
+ readonly v: 1;
25
+ readonly fieldStats: ReadonlyArray<[string, {
26
+ df: [string, number][];
27
+ n: number;
28
+ totalLen: number;
29
+ }]>;
30
+ readonly docs: ReadonlyArray<{
31
+ id: string;
32
+ field: string;
33
+ locale?: string;
34
+ text: string;
35
+ len: number;
36
+ tf: [string, number][];
37
+ firstOffset: [string, number][];
38
+ }>;
39
+ }
40
+ export declare class InvertedIndex {
41
+ private readonly fieldStats;
42
+ private readonly docs;
43
+ static build(docs: ReadonlyArray<IndexDoc>): InvertedIndex;
44
+ query(query: string, opts?: QueryOptions): IndexHit[];
45
+ toSnapshot(): IndexSnapshot;
46
+ static fromSnapshot(s: IndexSnapshot): InvertedIndex;
47
+ }