@noy-db/hub 0.3.0-pre.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/index.js +9 -8
- package/dist/aggregate/index.js.map +1 -1
- package/dist/api-ZGS6LCOF.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/backup-BJ57IKAO.js +242 -0
- package/dist/backup-BJ57IKAO.js.map +1 -0
- package/dist/blobs/index.js +13 -11
- package/dist/blobs/index.js.map +1 -1
- package/dist/broker/index.js +92 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/bundle/index.js +25 -22
- package/dist/bundle/index.js.map +1 -1
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +31 -31
- package/dist/chunk-2NVOWNI3.js +167 -0
- package/dist/chunk-2NVOWNI3.js.map +1 -0
- package/dist/chunk-3B5VVCNY.js +71 -0
- package/dist/chunk-3LQ2YKO4.js +230 -0
- package/dist/chunk-3QCRBHCY.js +54 -0
- package/dist/chunk-454JXE57.js +1697 -0
- package/dist/chunk-454JXE57.js.map +1 -0
- package/dist/chunk-4CTHCN4J.js +480 -0
- package/dist/chunk-4CTHCN4J.js.map +1 -0
- package/dist/chunk-4GPE63GU.js +111 -0
- package/dist/chunk-4GPE63GU.js.map +1 -0
- package/dist/chunk-4JBYV75E.js +150 -0
- package/dist/chunk-4NXKCLLQ.js +97 -0
- package/dist/chunk-4VNQOLML.js +29 -0
- package/dist/chunk-4VNQOLML.js.map +1 -0
- package/dist/chunk-5M5DVGV7.js +69 -0
- package/dist/chunk-5O3XF4DV.js +150 -0
- package/dist/chunk-5O3XF4DV.js.map +1 -0
- package/dist/chunk-5YOLBEQ6.js +30 -0
- package/dist/chunk-6CRIV7DE.js +129 -0
- package/dist/chunk-6JTIAGHD.js +621 -0
- package/dist/chunk-6JTIAGHD.js.map +1 -0
- package/dist/chunk-6QTNZJBS.js +255 -0
- package/dist/chunk-6T2SCQRU.js +86 -0
- package/dist/chunk-7DSTRQIJ.js +45 -0
- package/dist/chunk-AUSTCW2X.js +589 -0
- package/dist/chunk-B3HJYUOF.js +209 -0
- package/dist/chunk-BDVFPG6Y.js +164 -0
- package/dist/chunk-BIOUI4HL.js +1554 -0
- package/dist/chunk-BIOUI4HL.js.map +1 -0
- package/dist/chunk-CAF6WOK7.js +36 -0
- package/dist/chunk-CDUQTA3Z.js +381 -0
- package/dist/chunk-CDUQTA3Z.js.map +1 -0
- package/dist/chunk-CIE2BASH.js +404 -0
- package/dist/chunk-CRI4OUV4.js +42 -0
- package/dist/chunk-DLG74CNB.js +91 -0
- package/dist/chunk-E5ZQT5KX.js +30 -0
- package/dist/chunk-E5ZQT5KX.js.map +1 -0
- package/dist/chunk-EQO2UVP4.js +247 -0
- package/dist/chunk-EQO2UVP4.js.map +1 -0
- package/dist/chunk-ERJ7FU55.js +367 -0
- package/dist/chunk-EVVGJDRQ.js +205 -0
- package/dist/chunk-EVX47VBM.js +74 -0
- package/dist/chunk-EVX47VBM.js.map +1 -0
- package/dist/chunk-EXK7QRWF.js +59 -0
- package/dist/chunk-EYZ6IQ6X.js +202 -0
- package/dist/chunk-F64IRYG3.js +45 -0
- package/dist/chunk-FHS2HQSH.js +823 -0
- package/dist/chunk-FM3G3NOY.js +206 -0
- package/dist/chunk-FM3G3NOY.js.map +1 -0
- package/dist/chunk-FUG4SFN3.js +36 -0
- package/dist/chunk-FUG4SFN3.js.map +1 -0
- package/dist/chunk-GKEWXIV5.js +80 -0
- package/dist/chunk-GTGPO5KW.js +59 -0
- package/dist/chunk-HB3RFQSC.js +95 -0
- package/dist/chunk-HDMEGAQE.js +957 -0
- package/dist/chunk-HDMEGAQE.js.map +1 -0
- package/dist/chunk-HDQIIUPH.js +135 -0
- package/dist/chunk-HDQIIUPH.js.map +1 -0
- package/dist/chunk-HTJQYHZP.js +344 -0
- package/dist/chunk-HTJQYHZP.js.map +1 -0
- package/dist/chunk-I6GALP6E.js +99 -0
- package/dist/chunk-IGJCYUT5.js +99 -0
- package/dist/chunk-IGJCYUT5.js.map +1 -0
- package/dist/chunk-IL6POWCW.js +130 -0
- package/dist/chunk-IU6SNYX6.js +117 -0
- package/dist/chunk-J2ZX2XUV.js +778 -0
- package/dist/chunk-JIF24JPM.js +495 -0
- package/dist/chunk-JIF24JPM.js.map +1 -0
- package/dist/chunk-JK733I5V.js +23 -0
- package/dist/chunk-JK733I5V.js.map +1 -0
- package/dist/chunk-JKJOGPZN.js +29 -0
- package/dist/chunk-JNAI2HN2.js +32 -0
- package/dist/chunk-JNAI2HN2.js.map +1 -0
- package/dist/chunk-JZUV47FZ.js +41 -0
- package/dist/chunk-K5IMOGHB.js +30 -0
- package/dist/chunk-KPZS5QAQ.js +151 -0
- package/dist/chunk-KPZS5QAQ.js.map +1 -0
- package/dist/chunk-KSKBRKGJ.js +291 -0
- package/dist/chunk-KSKBRKGJ.js.map +1 -0
- package/dist/chunk-LASZKVMO.js +382 -0
- package/dist/chunk-LXEXBTKL.js +515 -0
- package/dist/chunk-LXEXBTKL.js.map +1 -0
- package/dist/chunk-M4CV6BRT.js +524 -0
- package/dist/chunk-M4CV6BRT.js.map +1 -0
- package/dist/chunk-MEFJPTZ4.js +371 -0
- package/dist/chunk-MEFJPTZ4.js.map +1 -0
- package/dist/chunk-MV43JSJF.js +265 -0
- package/dist/chunk-MV43JSJF.js.map +1 -0
- package/dist/chunk-NJ4EOKMB.js +392 -0
- package/dist/chunk-NJ4EOKMB.js.map +1 -0
- package/dist/chunk-NR5LT5RY.js +135 -0
- package/dist/chunk-NWSGI5C7.js +261 -0
- package/dist/chunk-NWSGI5C7.js.map +1 -0
- package/dist/chunk-OSDB5WW3.js +739 -0
- package/dist/chunk-OSDB5WW3.js.map +1 -0
- package/dist/chunk-PN2XMATY.js +37 -0
- package/dist/chunk-PN2XMATY.js.map +1 -0
- package/dist/chunk-Q5VNKNE5.js +70 -0
- package/dist/chunk-QLWMEXCT.js +21 -0
- package/dist/chunk-QRB7NAOJ.js +123 -0
- package/dist/chunk-R4ROFEYC.js +74 -0
- package/dist/chunk-RCVJZMFE.js +164 -0
- package/dist/chunk-RCVJZMFE.js.map +1 -0
- package/dist/chunk-RIX4V2TB.js +367 -0
- package/dist/chunk-RYCTDFUX.js +40 -0
- package/dist/chunk-RZ5SVOYR.js +155 -0
- package/dist/chunk-SLFHQTTW.js +99 -0
- package/dist/chunk-SNZ6URZZ.js +2782 -0
- package/dist/chunk-SNZ6URZZ.js.map +1 -0
- package/dist/chunk-T2FFWNPK.js +75 -0
- package/dist/chunk-T2FFWNPK.js.map +1 -0
- package/dist/chunk-UNFPPVNI.js +23 -0
- package/dist/chunk-VFUPHI2Z.js +333 -0
- package/dist/chunk-VFUPHI2Z.js.map +1 -0
- package/dist/chunk-VLFCJYTL.js +235 -0
- package/dist/chunk-VN3DBQAU.js +124 -0
- package/dist/chunk-VYYM3MEN.js +98 -0
- package/dist/chunk-VYYM3MEN.js.map +1 -0
- package/dist/chunk-VZRODIM3.js +49 -0
- package/dist/chunk-W22IKJE2.js +94 -0
- package/dist/chunk-X3YYQWOQ.js +155 -0
- package/dist/chunk-X7QBD67R.js +14405 -0
- package/dist/chunk-X7QBD67R.js.map +1 -0
- package/dist/chunk-XDYREZWE.js +1128 -0
- package/dist/chunk-XDYREZWE.js.map +1 -0
- package/dist/chunk-XWZVFISC.js +720 -0
- package/dist/chunk-XWZVFISC.js.map +1 -0
- package/dist/chunk-YFXZEAYK.js +85 -0
- package/dist/chunk-ZAJAVEXY.js +50 -0
- package/dist/chunk-ZICD77GM.js +34 -0
- package/dist/chunk-ZJ2AK4V7.js +38 -0
- package/dist/chunk-ZJ2AK4V7.js.map +1 -0
- package/dist/chunk-ZUODRVHY.js +14 -0
- package/dist/classified/index.js +5 -3
- package/dist/classified-marker-CZKA6ITE.js +28 -0
- package/dist/classified-marker-CZKA6ITE.js.map +1 -0
- package/dist/collection-facade-TLWIPI76.js +44 -0
- package/dist/computed-ZIQTYTDI.js +11 -0
- package/dist/consent/index.js +9 -9
- package/dist/crdt/index.js +1 -1
- package/dist/dead-filter-ESOBZZP5.js +28 -0
- package/dist/delegation-W7ZV2322.js +25 -0
- package/dist/derivations/index.js +12 -11
- package/dist/derive-H2BJTLUI.js +21 -0
- package/dist/enclave-AP3I5W7O.js +141 -0
- package/dist/executor-KGWTNEQD.js +9 -0
- package/dist/executor-OVEXR6RT.js +9 -0
- package/dist/executor-UNEH5ZYH.js +25 -0
- package/dist/export-accessible-PCMXSUZS.js +23 -0
- package/dist/extract-partition-SWHFSYJO.js +38 -0
- package/dist/fanout-sidecar-A765THMX.js +74 -0
- package/dist/find-N6345CNT.js +11 -0
- package/dist/forget/index.js +10 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +6 -6
- package/dist/history/index.js +14 -11
- package/dist/history/index.js.map +1 -1
- package/dist/i18n/index.js +50 -37
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.d.ts +307 -1459
- package/dist/index.js +595 -198
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +7 -7
- package/dist/indexing/index.js.map +1 -1
- package/dist/issue-5OKB6I2R.js +19 -0
- package/dist/kernel/best-effort-revert.d.ts +52 -0
- package/dist/kernel/cache/index.d.ts +10 -0
- package/dist/kernel/cache/lru.d.ts +97 -0
- package/dist/kernel/cache/policy.d.ts +32 -0
- package/dist/kernel/collection-config.d.ts +809 -0
- package/dist/kernel/collection.d.ts +1522 -0
- package/dist/kernel/constants.d.ts +18 -0
- package/dist/kernel/debug.d.ts +25 -0
- package/dist/kernel/enclave/broker/proof.d.ts +154 -0
- package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
- package/dist/kernel/enclave/classify/compare.d.ts +10 -0
- package/dist/kernel/enclave/classify/digest.d.ts +8 -0
- package/dist/kernel/enclave/classify/find.d.ts +36 -0
- package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
- package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
- package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
- package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
- package/dist/kernel/enclave/classify/verify.d.ts +36 -0
- package/dist/kernel/enclave/classify/write.d.ts +8 -0
- package/dist/kernel/enclave/crypto.d.ts +263 -0
- package/dist/kernel/enclave/index.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
- package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
- package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
- package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
- package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
- package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
- package/dist/kernel/env-check.d.ts +1 -0
- package/dist/kernel/errors.d.ts +1922 -0
- package/dist/kernel/events.d.ts +11 -0
- package/dist/kernel/lazy-count.d.ts +13 -0
- package/dist/kernel/memory-store.d.ts +17 -0
- package/dist/kernel/mutation.d.ts +14 -0
- package/dist/kernel/noydb.d.ts +826 -0
- package/dist/kernel/paths.d.ts +25 -0
- package/dist/kernel/query/builder.d.ts +520 -0
- package/dist/kernel/query/index.d.ts +31 -0
- package/dist/kernel/query/join.d.ts +205 -0
- package/dist/kernel/query/live.d.ts +111 -0
- package/dist/kernel/query/predicate.d.ts +139 -0
- package/dist/kernel/query/scan-builder.d.ts +334 -0
- package/dist/kernel/refs.d.ts +205 -0
- package/dist/kernel/schema.d.ts +134 -0
- package/dist/kernel/sync-policy.d.ts +188 -0
- package/dist/kernel/tier-visibility.d.ts +54 -0
- package/dist/kernel/types.d.ts +3239 -0
- package/dist/kernel/util/discriminant.d.ts +58 -0
- package/dist/kernel/util/index.d.ts +14 -0
- package/dist/kernel/util/sanitize-filename.d.ts +75 -0
- package/dist/kernel/validation.d.ts +130 -0
- package/dist/kernel/vault.d.ts +1740 -0
- package/dist/kernel/via/compose.d.ts +144 -0
- package/dist/kernel/via/dispatch.d.ts +195 -0
- package/dist/kernel/via/graph-wiring.d.ts +145 -0
- package/dist/kernel/via/graph.d.ts +166 -0
- package/dist/kernel/via/index.d.ts +200 -0
- package/dist/kernel/via/pipeline.d.ts +266 -0
- package/dist/kernel/via/reconcile.d.ts +153 -0
- package/dist/kernel/via/taint-binding.d.ts +66 -0
- package/dist/kernel/write-queue.d.ts +46 -0
- package/dist/ledger-GFBKVPV4.js +42 -0
- package/dist/legacy/bundle.d.ts +30 -0
- package/dist/legacy/kernel.d.ts +33 -0
- package/dist/liberate-3VDOT4KO.js +24 -0
- package/dist/link-set-Z7Q2ASFX.js +31 -0
- package/dist/materialized-views/index.js +19 -15
- package/dist/noydb-ZCJOYBDI.js +68 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -12
- package/dist/pod/index.js +11 -11
- package/dist/policy-Z3RUAIY2.js +41 -0
- package/dist/port/as/index.d.ts +26 -0
- package/dist/port/at/index.d.ts +18 -0
- package/dist/port/by/default-provider.d.ts +9 -0
- package/dist/port/by/index.d.ts +17 -0
- package/dist/port/by/types.d.ts +86 -0
- package/dist/port/in/index.d.ts +21 -0
- package/dist/port/on/index.d.ts +27 -0
- package/dist/port/to/index.d.ts +19 -0
- package/dist/port/ui/index.d.ts +21 -0
- package/dist/port/with/blob-strategy.d.ts +98 -0
- package/dist/port/with/broker-strategy.d.ts +84 -0
- package/dist/port/with/capabilities.d.ts +31 -0
- package/dist/port/with/classified-marker.d.ts +9 -0
- package/dist/port/with/classified-strategy.d.ts +62 -0
- package/dist/port/with/computed-strategy.d.ts +19 -0
- package/dist/port/with/i18n-strategy.d.ts +175 -0
- package/dist/port/with/index.d.ts +18 -0
- package/dist/port/with/lazy-strategy.d.ts +48 -0
- package/dist/port/with/lookup-strategy.d.ts +129 -0
- package/dist/port/with/service-bus.d.ts +156 -0
- package/dist/port/with/team-strategy.d.ts +36 -0
- package/dist/port/with/write-hooks.d.ts +34 -0
- package/dist/portability/index.js +8 -8
- package/dist/post-register-JTH76BLY.js +60 -0
- package/dist/post-register-JTH76BLY.js.map +1 -0
- package/dist/public-envelope-B4KNWVUA.js +32 -0
- package/dist/purge-scope-FGNNLWHD.js +24 -0
- package/dist/purge-scope-FGNNLWHD.js.map +1 -0
- package/dist/query/index.js +9 -6
- package/dist/read-only-facade-CHCKSEPD.js +8 -0
- package/dist/register-VAHONCID.js +23 -0
- package/dist/registry-7MLVD3VO.js +19 -0
- package/dist/registry-EPKPD5SM.js +18 -0
- package/dist/registry-P5T7PS2U.js +9 -0
- package/dist/request-withdrawal-TI3A5WPS.js +31 -0
- package/dist/reveal-DIBHLUZX.js +38 -0
- package/dist/reveal-DIBHLUZX.js.map +1 -0
- package/dist/revoke-FDRD6GRW.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/seed-Q6M2IZFL.js +231 -0
- package/dist/seed-Q6M2IZFL.js.map +1 -0
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-MUWEIUI6.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/stale-OSQ7J3AA.js +29 -0
- package/dist/storage-MVFCGEQE.js +23 -0
- package/dist/store-coordination-provider-64OEZFGS.js +142 -0
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +14 -10
- package/dist/to/index.js +1 -2
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/verify-ZASTRNPR.js +140 -0
- package/dist/verify-ZASTRNPR.js.map +1 -0
- package/dist/via/blob/active.d.ts +34 -0
- package/dist/via/blob/binding.d.ts +86 -0
- package/dist/via/blob/index.d.ts +34 -0
- package/dist/via/classified/active.d.ts +3 -0
- package/dist/via/classified/binding.d.ts +83 -0
- package/dist/via/classified/config-drift.d.ts +34 -0
- package/dist/via/classified/descriptor.d.ts +66 -0
- package/dist/via/classified/errors.d.ts +19 -0
- package/dist/via/classified/guards.d.ts +23 -0
- package/dist/via/classified/index.d.ts +11 -0
- package/dist/via/classified/presets.d.ts +65 -0
- package/dist/via/classified/resolve.d.ts +9 -0
- package/dist/via/classified/strategy.d.ts +11 -0
- package/dist/via/classified/validators.d.ts +3 -0
- package/dist/via/classified/write.d.ts +4 -0
- package/dist/via/computed/binding.d.ts +34 -0
- package/dist/via/computed/descriptor.d.ts +35 -0
- package/dist/via/i18n/active.d.ts +28 -0
- package/dist/via/i18n/binding.d.ts +36 -0
- package/dist/via/i18n/core.d.ts +267 -0
- package/dist/via/i18n/densify.d.ts +24 -0
- package/dist/via/i18n/dictionary.d.ts +200 -0
- package/dist/via/i18n/index.d.ts +21 -0
- package/dist/via/i18n/policy.d.ts +44 -0
- package/dist/via/i18n/script.d.ts +26 -0
- package/dist/via/i18n/strategy.d.ts +13 -0
- package/dist/via/lookup/active.d.ts +19 -0
- package/dist/via/lookup/binding.d.ts +99 -0
- package/dist/via/lookup/descriptor.d.ts +123 -0
- package/dist/via/lookup/handle.d.ts +220 -0
- package/dist/via/lookup/index.d.ts +17 -0
- package/dist/via/lookup/registry.d.ts +228 -0
- package/dist/via/lookup/snapshot.d.ts +67 -0
- package/dist/via/money/arith.d.ts +68 -0
- package/dist/via/money/binding.d.ts +21 -0
- package/dist/via/money/branded.d.ts +61 -0
- package/dist/via/money/descriptor.d.ts +73 -0
- package/dist/via/money/fixed-point.d.ts +51 -0
- package/dist/via/money/index.d.ts +15 -0
- package/dist/via/money/iso4217.d.ts +6 -0
- package/dist/via/money/money-reducer.d.ts +33 -0
- package/dist/via/money/normalize.d.ts +105 -0
- package/dist/via/money/paths.d.ts +61 -0
- package/dist/via/money/where.d.ts +127 -0
- package/dist/walk-SVNDIZ62.js +241 -0
- package/dist/with/index.js +11 -11
- package/dist/with-audit/attestation/active.d.ts +10 -0
- package/dist/with-audit/attestation/index.d.ts +16 -0
- package/dist/with-audit/attestation/issue.d.ts +29 -0
- package/dist/with-audit/attestation/revoke.d.ts +15 -0
- package/dist/with-audit/attestation/signer.d.ts +33 -0
- package/dist/with-audit/attestation/strategy.d.ts +44 -0
- package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
- package/dist/with-audit/consent/active.d.ts +14 -0
- package/dist/with-audit/consent/consent.d.ts +114 -0
- package/dist/with-audit/consent/index.d.ts +14 -0
- package/dist/with-audit/consent/strategy.d.ts +36 -0
- package/dist/with-audit/forget/active.d.ts +31 -0
- package/dist/with-audit/forget/index.d.ts +28 -0
- package/dist/with-audit/forget/purge-scope.d.ts +54 -0
- package/dist/with-audit/forget/strategy.d.ts +199 -0
- package/dist/with-audit/forget/subject-index.d.ts +83 -0
- package/dist/with-audit/guards/executor.d.ts +26 -0
- package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
- package/dist/with-audit/guards/index.d.ts +10 -0
- package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
- package/dist/with-audit/guards/registry.d.ts +83 -0
- package/dist/with-audit/guards/transition-guard.d.ts +82 -0
- package/dist/with-audit/guards/types.d.ts +134 -0
- package/dist/with-audit/guards/with-guard.d.ts +15 -0
- package/dist/with-audit/periods/active.d.ts +11 -0
- package/dist/with-audit/periods/index.d.ts +18 -0
- package/dist/with-audit/periods/periods.d.ts +417 -0
- package/dist/with-audit/periods/strategy.d.ts +32 -0
- package/dist/with-audit/periods/vault-facade.d.ts +95 -0
- package/dist/with-audit/portability/active.d.ts +11 -0
- package/dist/with-audit/portability/export-accessible.d.ts +46 -0
- package/dist/with-audit/portability/index.d.ts +18 -0
- package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
- package/dist/with-audit/portability/strategy.d.ts +31 -0
- package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
- package/dist/with-audit/sealed-record/active.d.ts +9 -0
- package/dist/with-audit/sealed-record/index.d.ts +55 -0
- package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
- package/dist/with-audit/sealed-record/types.d.ts +27 -0
- package/dist/with-audit/tiers/active.d.ts +9 -0
- package/dist/with-audit/tiers/index.d.ts +394 -0
- package/dist/with-audit/tiers/strategy.d.ts +36 -0
- package/dist/with-cargo/active.d.ts +11 -0
- package/dist/with-cargo/adopt-partition.d.ts +81 -0
- package/dist/with-cargo/decrypt-partition.d.ts +19 -0
- package/dist/with-cargo/describe-extraction.d.ts +41 -0
- package/dist/with-cargo/extract-partition.d.ts +155 -0
- package/dist/with-cargo/index.d.ts +33 -0
- package/dist/with-cargo/strategy.d.ts +30 -0
- package/dist/with-cargo/vault-diff.d.ts +144 -0
- package/dist/with-cargo/walk-closure.d.ts +67 -0
- package/dist/with-commit/crdt/active.d.ts +25 -0
- package/dist/with-commit/crdt/crdt.d.ts +42 -0
- package/dist/with-commit/crdt/index.d.ts +16 -0
- package/dist/with-commit/crdt/strategy.d.ts +25 -0
- package/dist/with-commit/history/active.d.ts +40 -0
- package/dist/with-commit/history/diff.d.ts +23 -0
- package/dist/with-commit/history/history.d.ts +73 -0
- package/dist/with-commit/history/index.d.ts +30 -0
- package/dist/with-commit/history/ledger/constants.d.ts +37 -0
- package/dist/with-commit/history/ledger/entry.d.ts +195 -0
- package/dist/with-commit/history/ledger/hash.d.ts +30 -0
- package/dist/with-commit/history/ledger/index.d.ts +19 -0
- package/dist/with-commit/history/ledger/patch.d.ts +99 -0
- package/dist/with-commit/history/ledger/store.d.ts +356 -0
- package/dist/with-commit/history/strategy.d.ts +136 -0
- package/dist/with-commit/history/time-machine.d.ts +202 -0
- package/dist/with-commit/numbering/descriptor.d.ts +27 -0
- package/dist/with-commit/numbering/index.d.ts +69 -0
- package/dist/with-commit/sequence/active.d.ts +10 -0
- package/dist/with-commit/sequence/index.d.ts +150 -0
- package/dist/with-commit/sequence/strategy.d.ts +26 -0
- package/dist/with-commit/tx/active.d.ts +27 -0
- package/dist/with-commit/tx/dry-run.d.ts +29 -0
- package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
- package/dist/with-commit/tx/index.d.ts +13 -0
- package/dist/with-commit/tx/invariants.d.ts +68 -0
- package/dist/with-commit/tx/strategy.d.ts +23 -0
- package/dist/with-commit/tx/transaction.d.ts +212 -0
- package/dist/with-fork/archive/engine.d.ts +71 -0
- package/dist/with-fork/archive/index.d.ts +23 -0
- package/dist/with-fork/shadow/active.d.ts +6 -0
- package/dist/with-fork/shadow/index.d.ts +14 -0
- package/dist/with-fork/shadow/strategy.d.ts +28 -0
- package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
- package/dist/with-fork/snapshots/active.d.ts +20 -0
- package/dist/with-fork/snapshots/engine.d.ts +36 -0
- package/dist/with-fork/snapshots/index.d.ts +5 -0
- package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
- package/dist/with-fork/snapshots/policy.d.ts +23 -0
- package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
- package/dist/with-fork/snapshots/strategy.d.ts +48 -0
- package/dist/with-formula/computed/index.d.ts +48 -0
- package/dist/with-formula/computed/lazy.d.ts +13 -0
- package/dist/with-formula/derivations/executor.d.ts +61 -0
- package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
- package/dist/with-formula/derivations/index.d.ts +6 -0
- package/dist/with-formula/derivations/registry.d.ts +67 -0
- package/dist/with-formula/derivations/stale.d.ts +39 -0
- package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
- package/dist/with-formula/derivations/types.d.ts +248 -0
- package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
- package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
- package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
- package/dist/with-formula/materialized-views/executor.d.ts +80 -0
- package/dist/with-formula/materialized-views/index.d.ts +11 -0
- package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
- package/dist/with-formula/materialized-views/registry.d.ts +99 -0
- package/dist/with-formula/materialized-views/stale.d.ts +113 -0
- package/dist/with-formula/materialized-views/types.d.ts +318 -0
- package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
- package/dist/with-formula/overlay-views/index.d.ts +5 -0
- package/dist/with-formula/overlay-views/registry.d.ts +42 -0
- package/dist/with-formula/overlay-views/types.d.ts +97 -0
- package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
- package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
- package/dist/with-lookup/aggregate/active.d.ts +33 -0
- package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
- package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
- package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
- package/dist/with-lookup/aggregate/index.d.ts +23 -0
- package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
- package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
- package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
- package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
- package/dist/with-lookup/embeddings/index.d.ts +4 -0
- package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
- package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
- package/dist/with-lookup/indexing/active.d.ts +30 -0
- package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
- package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
- package/dist/with-lookup/indexing/index.d.ts +27 -0
- package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
- package/dist/with-lookup/indexing/strategy.d.ts +56 -0
- package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
- package/dist/with-lookup/search/active.d.ts +10 -0
- package/dist/with-lookup/search/build-docs.d.ts +15 -0
- package/dist/with-lookup/search/collection-facade.d.ts +163 -0
- package/dist/with-lookup/search/fuse.d.ts +22 -0
- package/dist/with-lookup/search/index-store.d.ts +19 -0
- package/dist/with-lookup/search/index.d.ts +19 -0
- package/dist/with-lookup/search/inverted-index.d.ts +47 -0
- package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
- package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
- package/dist/with-lookup/search/scan.d.ts +28 -0
- package/dist/with-lookup/search/segment.d.ts +15 -0
- package/dist/with-lookup/search/serialize.d.ts +4 -0
- package/dist/with-lookup/search/snippet.d.ts +5 -0
- package/dist/with-lookup/search/strategy.d.ts +41 -0
- package/dist/with-lookup/search/tokenize.d.ts +12 -0
- package/dist/with-party/auth-introspection/index.d.ts +44 -0
- package/dist/with-party/broker/active.d.ts +23 -0
- package/dist/with-party/broker/index.d.ts +28 -0
- package/dist/with-party/broker/seed.d.ts +77 -0
- package/dist/with-party/custody/active.d.ts +10 -0
- package/dist/with-party/custody/index.d.ts +69 -0
- package/dist/with-party/custody/liberate.d.ts +64 -0
- package/dist/with-party/custody/strategy.d.ts +48 -0
- package/dist/with-party/directory/index.d.ts +11 -0
- package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
- package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
- package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
- package/dist/with-party/directory/storage.d.ts +33 -0
- package/dist/with-party/directory/types.d.ts +43 -0
- package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
- package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
- package/dist/with-party/directory/visibility.d.ts +47 -0
- package/dist/with-party/policy/engine.d.ts +60 -0
- package/dist/with-party/policy/index.d.ts +15 -0
- package/dist/with-party/policy/noydb-facade.d.ts +39 -0
- package/dist/with-party/policy/presets.d.ts +38 -0
- package/dist/with-party/policy/storage.d.ts +31 -0
- package/dist/with-party/session/active.d.ts +34 -0
- package/dist/with-party/session/dev-unlock.d.ts +128 -0
- package/dist/with-party/session/index.d.ts +23 -0
- package/dist/with-party/session/session-policy.d.ts +92 -0
- package/dist/with-party/session/session.d.ts +131 -0
- package/dist/with-party/session/strategy.d.ts +42 -0
- package/dist/with-party/session/unlock-state.d.ts +47 -0
- package/dist/with-party/sync/index.d.ts +31 -0
- package/dist/with-party/tab-coordination.d.ts +73 -0
- package/dist/with-party/tab-write-relay.d.ts +39 -0
- package/dist/with-party/team/active.d.ts +13 -0
- package/dist/with-party/team/authenticators.d.ts +95 -0
- package/dist/with-party/team/deed.d.ts +97 -0
- package/dist/with-party/team/delegation.d.ts +88 -0
- package/dist/with-party/team/index.d.ts +38 -0
- package/dist/with-party/team/keyring.d.ts +318 -0
- package/dist/with-party/team/magic-link-grant.d.ts +152 -0
- package/dist/with-party/team/managed-passphrase.d.ts +280 -0
- package/dist/with-party/team/noydb-facade.d.ts +484 -0
- package/dist/with-party/team/peer-recover.d.ts +81 -0
- package/dist/with-party/team/presence.d.ts +81 -0
- package/dist/with-party/team/recovery.d.ts +191 -0
- package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
- package/dist/with-party/team/rotate-recover.d.ts +275 -0
- package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
- package/dist/with-party/team/strategy.d.ts +9 -0
- package/dist/with-party/team/sync-active.d.ts +33 -0
- package/dist/with-party/team/sync-credentials.d.ts +113 -0
- package/dist/with-party/team/sync-strategy.d.ts +67 -0
- package/dist/with-party/team/sync-transaction.d.ts +39 -0
- package/dist/with-party/team/sync.d.ts +174 -0
- package/dist/with-party/team/tiers.d.ts +39 -0
- package/dist/with-party/team/wrapped-deks.d.ts +86 -0
- package/dist/with-pod/backup.d.ts +74 -0
- package/dist/with-pod/bundle.d.ts +414 -0
- package/dist/with-pod/format.d.ts +203 -0
- package/dist/with-pod/index.d.ts +20 -0
- package/dist/with-pod/pod-store.d.ts +54 -0
- package/dist/with-pod/ulid.d.ts +64 -0
- package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
- package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
- package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
- package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
- package/dist/with-shape/blobs/import-external.d.ts +50 -0
- package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
- package/dist/with-shape/blobs/object-projection.d.ts +70 -0
- package/dist/with-shape/introspection/describe.d.ts +237 -0
- package/dist/with-shape/introspection/field-meta.d.ts +61 -0
- package/dist/with-shape/introspection/fields.d.ts +14 -0
- package/dist/with-shape/introspection/index.d.ts +12 -0
- package/dist/with-shape/introspection/json-schema.d.ts +13 -0
- package/dist/with-shape/introspection/meta.d.ts +22 -0
- package/dist/with-shape/introspection/projection.d.ts +13 -0
- package/dist/with-shape/introspection/types.d.ts +154 -0
- package/dist/with-shape/introspection/walk.d.ts +50 -0
- package/dist/with-shape/links/lazy-handle.d.ts +36 -0
- package/dist/with-shape/links/link-set.d.ts +67 -0
- package/dist/with-shape/links/names.d.ts +65 -0
- package/dist/with-shape/links/vault-facade.d.ts +211 -0
- package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
- package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
- package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
- package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
- package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
- package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
- package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
- package/dist/with-shape/satellites/declare.d.ts +60 -0
- package/dist/with-shape/satellites/existence.d.ts +5 -0
- package/dist/with-shape/satellites/fanout.d.ts +38 -0
- package/dist/with-shape/satellites/forget.d.ts +47 -0
- package/dist/with-shape/satellites/index.d.ts +3 -0
- package/dist/with-shape/satellites/joined.d.ts +19 -0
- package/dist/with-shape/satellites/marker.d.ts +10 -0
- package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
- package/dist/with-shape/satellites/post-register.d.ts +6 -0
- package/dist/with-shape/satellites/proxy.d.ts +37 -0
- package/dist/with-shape/satellites/raw-target.d.ts +14 -0
- package/dist/with-shape/satellites/registry.d.ts +19 -0
- package/dist/with-shape/satellites/types.d.ts +37 -0
- package/dist/with-shape/satellites/validate.d.ts +17 -0
- package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
- package/dist/with-shape/schema-update/cutover.d.ts +5 -0
- package/dist/with-shape/schema-update/delta.d.ts +2 -0
- package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
- package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
- package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
- package/dist/with-shape/schema-update/fence.d.ts +15 -0
- package/dist/with-shape/schema-update/gate.d.ts +16 -0
- package/dist/with-shape/schema-update/index.d.ts +6 -0
- package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
- package/dist/with-shape/schema-update/strategies.d.ts +12 -0
- package/dist/with-shape/schema-update/types.d.ts +53 -0
- package/dist/with-store/index.d.ts +15 -0
- package/dist/with-store/lazy/active.d.ts +12 -0
- package/dist/with-store/lazy/index.d.ts +14 -0
- package/dist/with-store/lazy/strategy.d.ts +9 -0
- package/dist/with-store/route-store.d.ts +259 -0
- package/dist/with-store/store-middleware.d.ts +189 -0
- package/dist/withdraw-accessible-WZIEVWSR.js +28 -0
- package/package.json +47 -55
- package/dist/adapter/index.d.ts +0 -5
- package/dist/adapter/index.js +0 -15
- package/dist/aggregate/index.d.ts +0 -42
- package/dist/api-JDWL67WL.js +0 -20
- package/dist/as/index.d.ts +0 -7
- package/dist/at/index.d.ts +0 -5
- package/dist/attestation/index.d.ts +0 -20
- package/dist/backup-WRGNTGJF.js +0 -225
- package/dist/backup-WRGNTGJF.js.map +0 -1
- package/dist/blobs/index.d.ts +0 -44
- package/dist/bundle/index.d.ts +0 -122
- package/dist/bundle-DzWtVw7w.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -9
- package/dist/chunk-25G7PUTA.js +0 -235
- package/dist/chunk-26FSVNBL.js +0 -34
- package/dist/chunk-2PJB6H3H.js +0 -167
- package/dist/chunk-2PJB6H3H.js.map +0 -1
- package/dist/chunk-37JZR7CY.js +0 -91
- package/dist/chunk-3KBK5LU4.js +0 -117
- package/dist/chunk-3YKBGS3I.js +0 -686
- package/dist/chunk-3YKBGS3I.js.map +0 -1
- package/dist/chunk-44DV37ZV.js +0 -75
- package/dist/chunk-44DV37ZV.js.map +0 -1
- package/dist/chunk-47C4CI7R.js +0 -108
- package/dist/chunk-47C4CI7R.js.map +0 -1
- package/dist/chunk-4VDFUBTS.js +0 -275
- package/dist/chunk-4VDFUBTS.js.map +0 -1
- package/dist/chunk-55LSDABW.js +0 -94
- package/dist/chunk-56JB2BGI.js +0 -13003
- package/dist/chunk-56JB2BGI.js.map +0 -1
- package/dist/chunk-5GQE5IDB.js +0 -513
- package/dist/chunk-5GQE5IDB.js.map +0 -1
- package/dist/chunk-5HRJQSKN.js +0 -202
- package/dist/chunk-5HZULLHE.js +0 -404
- package/dist/chunk-5JQMX2EH.js +0 -50
- package/dist/chunk-5UOPIPZC.js +0 -95
- package/dist/chunk-5YBUFCFF.js +0 -135
- package/dist/chunk-62APEMF3.js +0 -280
- package/dist/chunk-62APEMF3.js.map +0 -1
- package/dist/chunk-6P5AJ2ZS.js +0 -120
- package/dist/chunk-6P5AJ2ZS.js.map +0 -1
- package/dist/chunk-6PALJTC2.js +0 -430
- package/dist/chunk-6PALJTC2.js.map +0 -1
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-6Z435B6N.js +0 -1656
- package/dist/chunk-6Z435B6N.js.map +0 -1
- package/dist/chunk-723XB5NX.js +0 -86
- package/dist/chunk-7CZ6YXMO.js +0 -124
- package/dist/chunk-7KTL4RHZ.js +0 -120
- package/dist/chunk-7KTL4RHZ.js.map +0 -1
- package/dist/chunk-7TAV3BFQ.js +0 -766
- package/dist/chunk-7TAV3BFQ.js.map +0 -1
- package/dist/chunk-BASCPHNM.js +0 -380
- package/dist/chunk-BASCPHNM.js.map +0 -1
- package/dist/chunk-BGIZAFY7.js +0 -1
- package/dist/chunk-BJ2XF2RC.js +0 -823
- package/dist/chunk-BM6E4MUT.js +0 -881
- package/dist/chunk-BM6E4MUT.js.map +0 -1
- package/dist/chunk-BTFTHF6Q.js +0 -42
- package/dist/chunk-C4NOLA5X.js +0 -132
- package/dist/chunk-C4NOLA5X.js.map +0 -1
- package/dist/chunk-CHK5VVMI.js +0 -155
- package/dist/chunk-DCVVCJVB.js +0 -45
- package/dist/chunk-EU7HDMT3.js +0 -54
- package/dist/chunk-F3EKFGUS.js +0 -99
- package/dist/chunk-FCOZ7DEC.js +0 -355
- package/dist/chunk-FCOZ7DEC.js.map +0 -1
- package/dist/chunk-FWART3VA.js +0 -205
- package/dist/chunk-FZK3JJJK.js +0 -150
- package/dist/chunk-GDOOG5YQ.js +0 -382
- package/dist/chunk-GLVXQU3E.js +0 -155
- package/dist/chunk-HU55NPHZ.js +0 -80
- package/dist/chunk-I6JJ6VJS.js +0 -97
- package/dist/chunk-I6URUNTD.js +0 -59
- package/dist/chunk-IARAK3PK.js +0 -14
- package/dist/chunk-II6DLDZM.js +0 -30
- package/dist/chunk-J5YUA6JB.js +0 -23
- package/dist/chunk-J7OH6R4K.js +0 -49
- package/dist/chunk-K2WCO3NX.js +0 -1
- package/dist/chunk-L6Q5NA22.js +0 -40
- package/dist/chunk-LFGJG4XZ.js +0 -30
- package/dist/chunk-M3OYTM5Z.js +0 -85
- package/dist/chunk-MOQ5M46U.js +0 -209
- package/dist/chunk-NTPWQH4S.js +0 -589
- package/dist/chunk-OJ64XMPJ.js +0 -1434
- package/dist/chunk-OJ64XMPJ.js.map +0 -1
- package/dist/chunk-OWGAXPRE.js +0 -129
- package/dist/chunk-P2PEPSPK.js +0 -230
- package/dist/chunk-P6TZ3IVN.js +0 -453
- package/dist/chunk-P6TZ3IVN.js.map +0 -1
- package/dist/chunk-PAJCRV7O.js +0 -123
- package/dist/chunk-PMMV5SQC.js +0 -416
- package/dist/chunk-PMMV5SQC.js.map +0 -1
- package/dist/chunk-PPPZIBKY.js +0 -261
- package/dist/chunk-PPPZIBKY.js.map +0 -1
- package/dist/chunk-PVC2FBCQ.js +0 -45
- package/dist/chunk-PYIUDUGS.js +0 -36
- package/dist/chunk-QABECTNN.js +0 -255
- package/dist/chunk-QYMMMKOO.js +0 -164
- package/dist/chunk-R4IVPJHN.js +0 -130
- package/dist/chunk-REWTMYSF.js +0 -32
- package/dist/chunk-REWTMYSF.js.map +0 -1
- package/dist/chunk-RNYDHIQL.js +0 -367
- package/dist/chunk-RUIMKQTA.js +0 -23
- package/dist/chunk-RUIMKQTA.js.map +0 -1
- package/dist/chunk-TCGVRKOS.js +0 -367
- package/dist/chunk-TIAYXOEI.js +0 -99
- package/dist/chunk-TQ3REHVF.js +0 -95
- package/dist/chunk-TQ3REHVF.js.map +0 -1
- package/dist/chunk-TUL5YQWF.js +0 -777
- package/dist/chunk-U7LV2DUN.js +0 -74
- package/dist/chunk-UB3XHGFG.js +0 -181
- package/dist/chunk-UB3XHGFG.js.map +0 -1
- package/dist/chunk-UMH35AQV.js +0 -70
- package/dist/chunk-UWZ7O4NR.js +0 -29
- package/dist/chunk-V76PHWLE.js +0 -41
- package/dist/chunk-VFQOE76I.js +0 -69
- package/dist/chunk-VIWOGJ2O.js +0 -71
- package/dist/chunk-VK6OC22R.js +0 -37
- package/dist/chunk-VK6OC22R.js.map +0 -1
- package/dist/chunk-VVLOWY74.js +0 -150
- package/dist/chunk-VVLOWY74.js.map +0 -1
- package/dist/chunk-W3JABOVB.js +0 -53
- package/dist/chunk-W3JABOVB.js.map +0 -1
- package/dist/chunk-WPNP3NF5.js +0 -1221
- package/dist/chunk-WPNP3NF5.js.map +0 -1
- package/dist/chunk-X5QZAJDB.js +0 -59
- package/dist/chunk-X6VNIRHS.js +0 -239
- package/dist/chunk-X6VNIRHS.js.map +0 -1
- package/dist/chunk-XBPUVQDO.js +0 -664
- package/dist/chunk-XBPUVQDO.js.map +0 -1
- package/dist/chunk-XW5LZYV4.js +0 -21
- package/dist/chunk-YTCCC6NG.js +0 -320
- package/dist/chunk-YTCCC6NG.js.map +0 -1
- package/dist/classified/index.d.ts +0 -17
- package/dist/collection-facade-EJVIN2BY.js +0 -39
- package/dist/computed-6FOFXQPE.js +0 -11
- package/dist/config-drift-RFEVGBKR.js +0 -24
- package/dist/config-drift-RFEVGBKR.js.map +0 -1
- package/dist/consent/index.d.ts +0 -23
- package/dist/crdt/index.d.ts +0 -34
- package/dist/dead-filter-RHMNYOXP.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-IHXOASHV.js +0 -25
- package/dist/derivations/index.d.ts +0 -70
- package/dist/derive-CD3ZVIXK.js +0 -21
- package/dist/describe/index.d.ts +0 -1
- package/dist/describe/index.js +0 -1
- package/dist/describe-C6iHNlqJ.d.ts +0 -162
- package/dist/dev-unlock-wgQ7Ci5I.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-KGEUW2GL.js +0 -123
- package/dist/executor-EUPYHCLU.js +0 -9
- package/dist/executor-KZ4B3PRT.js +0 -9
- package/dist/executor-MHUM2VZK.js +0 -21
- package/dist/export-accessible-Z3NSZZHN.js +0 -23
- package/dist/extract-partition-VSKT35JG.js +0 -36
- package/dist/fanout-sidecar-NBDKKCHT.js +0 -74
- package/dist/find-OH4BEULF.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -35
- package/dist/hash-CwHnoKyW.d.ts +0 -72
- package/dist/history/index.d.ts +0 -61
- package/dist/i18n/index.d.ts +0 -37
- package/dist/in/index.d.ts +0 -5
- package/dist/index-B9QdHytu.d.ts +0 -123
- package/dist/index-CTvUp94-.d.ts +0 -123
- package/dist/index-Dn5GzPg_.d.ts +0 -22138
- package/dist/indexing/index.d.ts +0 -39
- package/dist/issue-AEOL6RXA.js +0 -19
- package/dist/kernel/index.d.ts +0 -32
- package/dist/kernel/index.js +0 -59
- package/dist/lazy/index.d.ts +0 -21
- package/dist/ledger-3LR3YO2W.js +0 -42
- package/dist/liberate-XSEPRWEA.js +0 -24
- package/dist/link-set-NSUIX6BR.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -173
- package/dist/mime-magic-CYbFNQ4h.d.ts +0 -103
- package/dist/noydb-POVTIVQ6.js +0 -62
- package/dist/on/index.d.ts +0 -5
- package/dist/overlay-views/index.d.ts +0 -98
- package/dist/periods/index.d.ts +0 -20
- package/dist/pod/index.d.ts +0 -63
- package/dist/policy-Y7HL2KGA.js +0 -41
- package/dist/portability/index.d.ts +0 -20
- package/dist/post-register-KOFRTCDD.js +0 -55
- package/dist/post-register-KOFRTCDD.js.map +0 -1
- package/dist/public-envelope-NC7SPNMV.js +0 -32
- package/dist/query/index.d.ts +0 -5
- package/dist/read-only-facade-5ADRJVTM.js +0 -8
- package/dist/register-3D6R2MKN.js +0 -23
- package/dist/registry-AI4E46PD.js +0 -19
- package/dist/registry-HSNQ4NBP.js +0 -9
- package/dist/registry-WIX6QCV5.js +0 -17
- package/dist/request-withdrawal-GU4XS2R5.js +0 -31
- package/dist/reveal-5Y777N5Q.js +0 -38
- package/dist/reveal-5Y777N5Q.js.map +0 -1
- package/dist/revoke-ZFETCLYV.js +0 -24
- package/dist/revoke-ZFETCLYV.js.map +0 -1
- package/dist/satellites/index.d.ts +0 -5
- package/dist/sealed-record/index.d.ts +0 -69
- package/dist/session/index.d.ts +0 -44
- package/dist/shadow/index.d.ts +0 -15
- package/dist/signer-GAIMQQ2J.js +0 -25
- package/dist/signer-GAIMQQ2J.js.map +0 -1
- package/dist/snapshots/index.d.ts +0 -26
- package/dist/stale-77LP2EEF.js +0 -14
- package/dist/stale-77LP2EEF.js.map +0 -1
- package/dist/storage-KEXIXLGM.js +0 -23
- package/dist/storage-KEXIXLGM.js.map +0 -1
- package/dist/store-coordination-provider-NJDDZ264.js +0 -142
- package/dist/subject-index-O75wKshW.d.ts +0 -362
- package/dist/sync/index.d.ts +0 -41
- package/dist/team/index.d.ts +0 -155
- package/dist/tiers/index.d.ts +0 -5
- package/dist/to/index.d.ts +0 -5
- package/dist/transition-guard-D5RLJv8S.d.ts +0 -165
- package/dist/tx/index.d.ts +0 -35
- package/dist/ui/index.d.ts +0 -1
- package/dist/ulid-DRH25k3y.d.ts +0 -66
- package/dist/util/index.d.ts +0 -79
- package/dist/validators-C3lrVF-c.d.ts +0 -101
- package/dist/vault-diff-_LSIcOMv.d.ts +0 -147
- package/dist/verify-CAYGXYNO.js +0 -139
- package/dist/verify-CAYGXYNO.js.map +0 -1
- package/dist/walk-SMAE4IEI.js +0 -241
- package/dist/with/index.d.ts +0 -38
- package/dist/with-materialized-view-Xv1-9Bh0.d.ts +0 -27
- package/dist/with-overlayed-view-CuWhq_-C.d.ts +0 -12
- package/dist/with-rollup-K_iwal4b.d.ts +0 -47
- package/dist/withdraw-accessible-Q7BULAN5.js +0 -28
- package/dist/withdraw-accessible-Q7BULAN5.js.map +0 -1
- /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
- /package/dist/{chunk-VIWOGJ2O.js.map → chunk-3B5VVCNY.js.map} +0 -0
- /package/dist/{chunk-P2PEPSPK.js.map → chunk-3LQ2YKO4.js.map} +0 -0
- /package/dist/{chunk-EU7HDMT3.js.map → chunk-3QCRBHCY.js.map} +0 -0
- /package/dist/{chunk-FZK3JJJK.js.map → chunk-4JBYV75E.js.map} +0 -0
- /package/dist/{chunk-I6JJ6VJS.js.map → chunk-4NXKCLLQ.js.map} +0 -0
- /package/dist/{chunk-VFQOE76I.js.map → chunk-5M5DVGV7.js.map} +0 -0
- /package/dist/{chunk-LFGJG4XZ.js.map → chunk-5YOLBEQ6.js.map} +0 -0
- /package/dist/{chunk-OWGAXPRE.js.map → chunk-6CRIV7DE.js.map} +0 -0
- /package/dist/{chunk-QABECTNN.js.map → chunk-6QTNZJBS.js.map} +0 -0
- /package/dist/{chunk-723XB5NX.js.map → chunk-6T2SCQRU.js.map} +0 -0
- /package/dist/{chunk-PVC2FBCQ.js.map → chunk-7DSTRQIJ.js.map} +0 -0
- /package/dist/{chunk-NTPWQH4S.js.map → chunk-AUSTCW2X.js.map} +0 -0
- /package/dist/{chunk-MOQ5M46U.js.map → chunk-B3HJYUOF.js.map} +0 -0
- /package/dist/{chunk-QYMMMKOO.js.map → chunk-BDVFPG6Y.js.map} +0 -0
- /package/dist/{chunk-PYIUDUGS.js.map → chunk-CAF6WOK7.js.map} +0 -0
- /package/dist/{chunk-5HZULLHE.js.map → chunk-CIE2BASH.js.map} +0 -0
- /package/dist/{chunk-BTFTHF6Q.js.map → chunk-CRI4OUV4.js.map} +0 -0
- /package/dist/{chunk-37JZR7CY.js.map → chunk-DLG74CNB.js.map} +0 -0
- /package/dist/{chunk-TCGVRKOS.js.map → chunk-ERJ7FU55.js.map} +0 -0
- /package/dist/{chunk-FWART3VA.js.map → chunk-EVVGJDRQ.js.map} +0 -0
- /package/dist/{chunk-X5QZAJDB.js.map → chunk-EXK7QRWF.js.map} +0 -0
- /package/dist/{chunk-5HRJQSKN.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
- /package/dist/{chunk-DCVVCJVB.js.map → chunk-F64IRYG3.js.map} +0 -0
- /package/dist/{chunk-BJ2XF2RC.js.map → chunk-FHS2HQSH.js.map} +0 -0
- /package/dist/{chunk-HU55NPHZ.js.map → chunk-GKEWXIV5.js.map} +0 -0
- /package/dist/{chunk-I6URUNTD.js.map → chunk-GTGPO5KW.js.map} +0 -0
- /package/dist/{chunk-5UOPIPZC.js.map → chunk-HB3RFQSC.js.map} +0 -0
- /package/dist/{chunk-F3EKFGUS.js.map → chunk-I6GALP6E.js.map} +0 -0
- /package/dist/{chunk-R4IVPJHN.js.map → chunk-IL6POWCW.js.map} +0 -0
- /package/dist/{chunk-3KBK5LU4.js.map → chunk-IU6SNYX6.js.map} +0 -0
- /package/dist/{chunk-TUL5YQWF.js.map → chunk-J2ZX2XUV.js.map} +0 -0
- /package/dist/{chunk-UWZ7O4NR.js.map → chunk-JKJOGPZN.js.map} +0 -0
- /package/dist/{chunk-V76PHWLE.js.map → chunk-JZUV47FZ.js.map} +0 -0
- /package/dist/{chunk-II6DLDZM.js.map → chunk-K5IMOGHB.js.map} +0 -0
- /package/dist/{chunk-GDOOG5YQ.js.map → chunk-LASZKVMO.js.map} +0 -0
- /package/dist/{chunk-5YBUFCFF.js.map → chunk-NR5LT5RY.js.map} +0 -0
- /package/dist/{chunk-UMH35AQV.js.map → chunk-Q5VNKNE5.js.map} +0 -0
- /package/dist/{chunk-XW5LZYV4.js.map → chunk-QLWMEXCT.js.map} +0 -0
- /package/dist/{chunk-PAJCRV7O.js.map → chunk-QRB7NAOJ.js.map} +0 -0
- /package/dist/{chunk-U7LV2DUN.js.map → chunk-R4ROFEYC.js.map} +0 -0
- /package/dist/{chunk-RNYDHIQL.js.map → chunk-RIX4V2TB.js.map} +0 -0
- /package/dist/{chunk-L6Q5NA22.js.map → chunk-RYCTDFUX.js.map} +0 -0
- /package/dist/{chunk-CHK5VVMI.js.map → chunk-RZ5SVOYR.js.map} +0 -0
- /package/dist/{chunk-TIAYXOEI.js.map → chunk-SLFHQTTW.js.map} +0 -0
- /package/dist/{chunk-J5YUA6JB.js.map → chunk-UNFPPVNI.js.map} +0 -0
- /package/dist/{chunk-25G7PUTA.js.map → chunk-VLFCJYTL.js.map} +0 -0
- /package/dist/{chunk-7CZ6YXMO.js.map → chunk-VN3DBQAU.js.map} +0 -0
- /package/dist/{chunk-J7OH6R4K.js.map → chunk-VZRODIM3.js.map} +0 -0
- /package/dist/{chunk-55LSDABW.js.map → chunk-W22IKJE2.js.map} +0 -0
- /package/dist/{chunk-GLVXQU3E.js.map → chunk-X3YYQWOQ.js.map} +0 -0
- /package/dist/{chunk-M3OYTM5Z.js.map → chunk-YFXZEAYK.js.map} +0 -0
- /package/dist/{chunk-5JQMX2EH.js.map → chunk-ZAJAVEXY.js.map} +0 -0
- /package/dist/{chunk-26FSVNBL.js.map → chunk-ZICD77GM.js.map} +0 -0
- /package/dist/{chunk-IARAK3PK.js.map → chunk-ZUODRVHY.js.map} +0 -0
- /package/dist/{api-JDWL67WL.js.map → collection-facade-TLWIPI76.js.map} +0 -0
- /package/dist/{chunk-BGIZAFY7.js.map → computed-ZIQTYTDI.js.map} +0 -0
- /package/dist/{dead-filter-RHMNYOXP.js.map → dead-filter-ESOBZZP5.js.map} +0 -0
- /package/dist/{chunk-K2WCO3NX.js.map → delegation-W7ZV2322.js.map} +0 -0
- /package/dist/{collection-facade-EJVIN2BY.js.map → derive-H2BJTLUI.js.map} +0 -0
- /package/dist/{computed-6FOFXQPE.js.map → enclave-AP3I5W7O.js.map} +0 -0
- /package/dist/{delegation-IHXOASHV.js.map → executor-KGWTNEQD.js.map} +0 -0
- /package/dist/{derive-CD3ZVIXK.js.map → executor-OVEXR6RT.js.map} +0 -0
- /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
- /package/dist/{enclave-KGEUW2GL.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
- /package/dist/{executor-EUPYHCLU.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
- /package/dist/{fanout-sidecar-NBDKKCHT.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
- /package/dist/{executor-KZ4B3PRT.js.map → find-N6345CNT.js.map} +0 -0
- /package/dist/{executor-MHUM2VZK.js.map → issue-5OKB6I2R.js.map} +0 -0
- /package/dist/{export-accessible-Z3NSZZHN.js.map → ledger-GFBKVPV4.js.map} +0 -0
- /package/dist/{extract-partition-VSKT35JG.js.map → liberate-3VDOT4KO.js.map} +0 -0
- /package/dist/{find-OH4BEULF.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
- /package/dist/{issue-AEOL6RXA.js.map → noydb-ZCJOYBDI.js.map} +0 -0
- /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
- /package/dist/{ledger-3LR3YO2W.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
- /package/dist/{liberate-XSEPRWEA.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
- /package/dist/{link-set-NSUIX6BR.js.map → register-VAHONCID.js.map} +0 -0
- /package/dist/{noydb-POVTIVQ6.js.map → registry-7MLVD3VO.js.map} +0 -0
- /package/dist/{policy-Y7HL2KGA.js.map → registry-EPKPD5SM.js.map} +0 -0
- /package/dist/{public-envelope-NC7SPNMV.js.map → registry-P5T7PS2U.js.map} +0 -0
- /package/dist/{read-only-facade-5ADRJVTM.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
- /package/dist/{register-3D6R2MKN.js.map → revoke-FDRD6GRW.js.map} +0 -0
- /package/dist/{registry-AI4E46PD.js.map → signer-MUWEIUI6.js.map} +0 -0
- /package/dist/{registry-HSNQ4NBP.js.map → stale-OSQ7J3AA.js.map} +0 -0
- /package/dist/{registry-WIX6QCV5.js.map → storage-MVFCGEQE.js.map} +0 -0
- /package/dist/{store-coordination-provider-NJDDZ264.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
- /package/dist/{walk-SMAE4IEI.js.map → walk-SVNDIZ62.js.map} +0 -0
- /package/dist/{request-withdrawal-GU4XS2R5.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Persisted backend for the L1 lexical index (L1.5). Crypto-free: the
|
|
3
|
+
* collection injects load/save/remove + a fingerprint provider. In-memory while
|
|
4
|
+
* live (L1 behavior); persists an opaque snapshot via a debounced flush, and
|
|
5
|
+
* validates a loaded blob against a {count,maxVersion} fingerprint so a stale
|
|
6
|
+
* blob is never used — only rebuilt.
|
|
7
|
+
*
|
|
8
|
+
* #725: a debounced save (encrypt + adapter.put) racing a purge (removePersisted,
|
|
9
|
+
* called by elevate's tier purge and forget's erasure) is guarded by an epoch counter
|
|
10
|
+
* — see the `epoch` field doc for the mechanism and why it also closes the issue's
|
|
11
|
+
* variant (b) for free. Residual gap, structurally unavoidable without a durable
|
|
12
|
+
* write-ahead log: a process CRASH strictly between a stale save's `adapter.put`
|
|
13
|
+
* landing and its compensating `remove()` running (or between the compensating
|
|
14
|
+
* remove landing and `pendingCompensation` being persisted somewhere durable — it is
|
|
15
|
+
* in-memory only) leaves the resurrected blob at rest until the next natural
|
|
16
|
+
* rebuild-persist. This is on par with the gate-before-put optimization's own crash
|
|
17
|
+
* residual (a crash between `isStale()` returning false and the put landing) — both
|
|
18
|
+
* are eliminated only by making the purge and the save's commit point transactional
|
|
19
|
+
* with the store, which is out of scope for an in-memory debounce layer over an
|
|
20
|
+
* arbitrary opaque-blob backend.
|
|
21
|
+
*/
|
|
22
|
+
import { InvertedIndex, type IndexDoc } from './inverted-index.js';
|
|
23
|
+
import type { IndexStore } from './index-store.js';
|
|
24
|
+
export interface Fingerprint {
|
|
25
|
+
readonly count: number;
|
|
26
|
+
readonly maxVersion: number;
|
|
27
|
+
}
|
|
28
|
+
export interface PersistedIndexCallbacks {
|
|
29
|
+
load(): Promise<{
|
|
30
|
+
json: string;
|
|
31
|
+
fingerprint: Fingerprint;
|
|
32
|
+
} | null>;
|
|
33
|
+
/** `isStale()` reflects whether a purge (removePersisted) has landed since this
|
|
34
|
+
* save's epoch was captured — check it AFTER any async encrypt step and BEFORE
|
|
35
|
+
* the actual adapter.put, skipping the write when true (#725 review: shrinks the
|
|
36
|
+
* at-rest window for purge-beats-encrypt orderings to zero). Belt-and-suspenders:
|
|
37
|
+
* PersistedIndexStore's own post-save epoch check (persist(), below) is the
|
|
38
|
+
* backstop that catches every other ordering, including a purge landing during
|
|
39
|
+
* the put itself. */
|
|
40
|
+
save(json: string, fp: Fingerprint, isStale: () => boolean): Promise<void>;
|
|
41
|
+
remove(): Promise<void>;
|
|
42
|
+
currentFingerprint(): Fingerprint;
|
|
43
|
+
debounceMs?: number;
|
|
44
|
+
}
|
|
45
|
+
export declare class PersistedIndexStore implements IndexStore {
|
|
46
|
+
private readonly cb;
|
|
47
|
+
private index;
|
|
48
|
+
private timer;
|
|
49
|
+
private lastBuild;
|
|
50
|
+
private readonly debounceMs;
|
|
51
|
+
/**
|
|
52
|
+
* Bumped by every purge (removePersisted). A save() captured under a since-stale
|
|
53
|
+
* epoch undoes its own effect once it settles, however it interleaves with the
|
|
54
|
+
* purge's own delete — a delete can never be overtaken by a save that was
|
|
55
|
+
* scheduled before it (#725).
|
|
56
|
+
*
|
|
57
|
+
* Subsumes the issue's variant (b) (a stale, pre-purge in-memory index getting
|
|
58
|
+
* paired with a live, post-purge fingerprint and TRUSTED by a cold load, defeating
|
|
59
|
+
* the fingerprint backstop) for free — no separate handling needed: removePersisted()
|
|
60
|
+
* always resets `index` to undefined in the SAME synchronous step that bumps the
|
|
61
|
+
* epoch (below), and the only two paths that can repopulate `index` (ensureBuilt's
|
|
62
|
+
* cold rebuild, rebuildAndPersist's rebuild) do so strictly from `lastBuild()`, which
|
|
63
|
+
* the collection wires to read its LIVE cache at call time — not a frozen snapshot.
|
|
64
|
+
* Cache eviction (the collection dropping the purged/forgotten record) always
|
|
65
|
+
* precedes removePersisted() in both the elevate and forget call paths (#721's
|
|
66
|
+
* syncCache eviction / forget's tombstone write both land before syncSearch /
|
|
67
|
+
* _purgeSearchIndex runs). So any rebuild that executes strictly after
|
|
68
|
+
* removePersisted() — the only way `index` becomes defined again post-purge —
|
|
69
|
+
* necessarily observes the post-purge cache, and any rebuild that predates
|
|
70
|
+
* removePersisted() has its `index` wiped by it. There is no ordering in which a
|
|
71
|
+
* stale (pre-purge) index survives to be skip-rebuilt and persisted under a
|
|
72
|
+
* matching live fingerprint. Regression-pinned in
|
|
73
|
+
* `search-persisted-index-store.test.ts` ("variant (b) is subsumed...").
|
|
74
|
+
*/
|
|
75
|
+
private epoch;
|
|
76
|
+
/**
|
|
77
|
+
* Set when a compensating/purging remove() (`compensate()` undoing a stale
|
|
78
|
+
* save, or `removePersisted()`'s own purge, #764) fails. Unlike the routine
|
|
79
|
+
* best-effort swallow on the debounced flush path (markDirty's timer
|
|
80
|
+
* .catch(), below — safe there because the fingerprint backstop forces a
|
|
81
|
+
* rebuild on the next cold load), a failed removal leaves a resurrected or
|
|
82
|
+
* un-purged blob at rest whose fingerprint can still match the live cache —
|
|
83
|
+
* a cold load would TRUST it, not rebuild past it. So this is never silently
|
|
84
|
+
* dropped: every subsequent store entrypoint (ensureBuilt, rebuildAndPersist,
|
|
85
|
+
* removePersisted) retries the remove first and refuses to proceed past it
|
|
86
|
+
* until it succeeds (#725 review), and the raw adapter error is wrapped in
|
|
87
|
+
* {@link PersistedIndexCompensationError} (#764) so a caller can catch a
|
|
88
|
+
* stuck removal deliberately instead of an indistinguishable adapter error.
|
|
89
|
+
* A crash between a landed put and its compensating remove (before this
|
|
90
|
+
* flag or a retry can run) is a residual gap — see the class doc.
|
|
91
|
+
*/
|
|
92
|
+
private pendingCompensation;
|
|
93
|
+
constructor(cb: PersistedIndexCallbacks);
|
|
94
|
+
get built(): boolean;
|
|
95
|
+
ensureBuilt(build: () => ReadonlyArray<IndexDoc>): Promise<InvertedIndex>;
|
|
96
|
+
markDirty(): void;
|
|
97
|
+
/** Force an immediate persist (cancels any pending debounce). */
|
|
98
|
+
flush(): Promise<void>;
|
|
99
|
+
/** Delete the persisted blob and drop the in-memory index (forget/erasure/tier
|
|
100
|
+
* move). A failed purge is wrapped in {@link PersistedIndexCompensationError}
|
|
101
|
+
* (#764) and left sticky (`pendingCompensation`) so the next store entrypoint
|
|
102
|
+
* retries it — never silently dropped, same posture #725 established for a
|
|
103
|
+
* stale save's own compensating remove. */
|
|
104
|
+
removePersisted(): Promise<void>;
|
|
105
|
+
/** Rebuild using the last known build thunk, then persist. */
|
|
106
|
+
private rebuildAndPersist;
|
|
107
|
+
/** Persist the current index, then undo it if a purge (removePersisted) landed
|
|
108
|
+
* while the save was in flight — a delete can never be overtaken by a save
|
|
109
|
+
* that was scheduled before it (#725). A failed undo does not silently vanish:
|
|
110
|
+
* see `pendingCompensation`. */
|
|
111
|
+
private persist;
|
|
112
|
+
/** Undo a stale save. Failure is sticky, not swallowed: see `pendingCompensation`.
|
|
113
|
+
* Wraps the raw adapter error in {@link PersistedIndexCompensationError} (#764) so
|
|
114
|
+
* a caller (e.g. the tier ops' `syncTierSearch`) can catch a stuck compensation
|
|
115
|
+
* deliberately instead of treating it as an indistinguishable adapter failure. */
|
|
116
|
+
private compensate;
|
|
117
|
+
/** Retries a sticky compensation before any store entrypoint proceeds. Failure
|
|
118
|
+
* re-wraps the raw adapter error the same way `compensate()` does (#764) — the
|
|
119
|
+
* flag stays set (untouched here) so the NEXT entrypoint retries again. */
|
|
120
|
+
private retryPendingCompensation;
|
|
121
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public option / result types for `collection.retrieve()` (L1). Kept in
|
|
3
|
+
* the search service so collection.ts holds only thin call-sites; re-exported
|
|
4
|
+
* from the search barrel and the hub root.
|
|
5
|
+
*/
|
|
6
|
+
import type { Query } from '../../kernel/query/builder.js';
|
|
7
|
+
export interface RetrieveOptions<T = unknown> {
|
|
8
|
+
readonly limit?: number;
|
|
9
|
+
readonly match?: 'any' | 'all';
|
|
10
|
+
readonly prefix?: boolean;
|
|
11
|
+
readonly snippetWindow?: number;
|
|
12
|
+
readonly fields?: readonly string[];
|
|
13
|
+
readonly includeRecord?: boolean;
|
|
14
|
+
/** Retrieval strategy; defaults to 'lexical'. 'hybrid' fuses lexical+semantic (L3). */
|
|
15
|
+
readonly mode?: 'lexical' | 'semantic' | 'hybrid';
|
|
16
|
+
/** L2 — minimum cosine score for semantic hits (semantic mode only). */
|
|
17
|
+
readonly minScore?: number;
|
|
18
|
+
/** L3 — intersect hits with a structured query (retrieve ∩ where). Eager-mode only. */
|
|
19
|
+
readonly within?: Query<T>;
|
|
20
|
+
}
|
|
21
|
+
export interface RetrieveHit<T> {
|
|
22
|
+
readonly id: string;
|
|
23
|
+
readonly score: number;
|
|
24
|
+
readonly rank: number;
|
|
25
|
+
readonly field: string;
|
|
26
|
+
readonly snippet: string;
|
|
27
|
+
readonly locale?: string;
|
|
28
|
+
readonly record?: T;
|
|
29
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scan-mode full-text search — ranks **already-decrypted** records by
|
|
3
|
+
* BM25 against a tokenized query. Pure client-side: nothing is written to the
|
|
4
|
+
* store, so this adds **zero** leakage (unlike a store-usable blind index,
|
|
5
|
+
* which is a separate, gated opt-in).
|
|
6
|
+
*
|
|
7
|
+
* O(n) over the collection; intended for small/medium collections (the pilot's
|
|
8
|
+
* scale) where moving the existing userland scan into the DB is the win.
|
|
9
|
+
*/
|
|
10
|
+
import { type Tokenizer } from './tokenize.js';
|
|
11
|
+
export interface SearchOptions {
|
|
12
|
+
/** Top-N by score (default: all matches). */
|
|
13
|
+
readonly limit?: number;
|
|
14
|
+
/** `'any'` (default) = OR of query terms; `'all'` = every term must match. */
|
|
15
|
+
readonly match?: 'any' | 'all';
|
|
16
|
+
/** Treat the LAST query term as a prefix (typeahead). */
|
|
17
|
+
readonly prefix?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface SearchResult<T> {
|
|
20
|
+
readonly id: string;
|
|
21
|
+
readonly score: number;
|
|
22
|
+
readonly record: T;
|
|
23
|
+
}
|
|
24
|
+
export interface SearchEntry<T> {
|
|
25
|
+
readonly id: string;
|
|
26
|
+
readonly record: T;
|
|
27
|
+
}
|
|
28
|
+
export declare function searchScan<T>(entries: ReadonlyArray<SearchEntry<T>>, field: string, query: string, opts?: SearchOptions, tokenizer?: Tokenizer): SearchResult<T>[];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* i18n word tokenizer for the L1 lexical index. Uses Intl.Segmenter
|
|
3
|
+
* (standard ECMAScript — hub-portable) to dictionary-segment Thai/Lao/Khmer/CJK,
|
|
4
|
+
* which the word-run `tokenize` cannot. Terms are matched in NFKC-lowercased form;
|
|
5
|
+
* offsets index the ORIGINAL text so snippets slice the user's text.
|
|
6
|
+
*/
|
|
7
|
+
import type { Tokenizer } from './tokenize.js';
|
|
8
|
+
export interface Token {
|
|
9
|
+
readonly term: string;
|
|
10
|
+
readonly offset: number;
|
|
11
|
+
}
|
|
12
|
+
/** Word-like tokens with NFKC-lowercased terms + original-text char offsets. */
|
|
13
|
+
export declare const segmentTokens: (text: string) => Token[];
|
|
14
|
+
/** Term-only tokenizer (the public `Tokenizer` shape) — for queries. */
|
|
15
|
+
export declare const segmentTokenizer: Tokenizer;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** (De)serialize an InvertedIndex to/from a JSON string for persistence (L1.5). */
|
|
2
|
+
import { InvertedIndex } from './inverted-index.js';
|
|
3
|
+
export declare function serializeIndex(idx: InvertedIndex): string;
|
|
4
|
+
export declare function deserializeIndex(json: string): InvertedIndex;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Search capability strategy — the on-demand collection-level retrieval
|
|
3
|
+
* operations the `Collection` routes through: scan-mode full-text `search`,
|
|
4
|
+
* unified `retrieve` (lexical | semantic | hybrid), raw-vector `similarTo`, and
|
|
5
|
+
* the lexical-index lifecycle (`warmIndex` / `flushIndex`). The active engine
|
|
6
|
+
* ({@link withSearch}) dynamically imports the search/retrieval facade (keeping
|
|
7
|
+
* it out of the floor bundle); {@link NO_SEARCH} throws.
|
|
8
|
+
*
|
|
9
|
+
* The embedding write-hook (`embedOnWrite`) is paired here too: opting into
|
|
10
|
+
* `withSearch()` enables both the query surface AND the put()-time vector
|
|
11
|
+
* compute — a vector that no gated `similarTo` / semantic `retrieve` could read
|
|
12
|
+
* is dead weight, so embedding compute is not separately gatable. `Collection`
|
|
13
|
+
* always assembles the per-call {@link SearchContext} and delegates here, so an
|
|
14
|
+
* un-opted-in caller hits `NO_SEARCH`'s throw.
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
import type { SearchContext } from './collection-facade.js';
|
|
18
|
+
import type { SearchOptions, SearchResult } from './index.js';
|
|
19
|
+
import type { RetrieveOptions, RetrieveHit } from './retrieve-types.js';
|
|
20
|
+
export interface SearchStrategy {
|
|
21
|
+
search<T>(ctx: SearchContext<T>, field: string, query: string, opts?: SearchOptions): Promise<SearchResult<T>[]>;
|
|
22
|
+
retrieve<T>(ctx: SearchContext<T>, query: string, opts?: RetrieveOptions<T>): Promise<RetrieveHit<T>[]>;
|
|
23
|
+
similarTo<T>(ctx: SearchContext<T>, vector: Float32Array, opts?: {
|
|
24
|
+
k?: number;
|
|
25
|
+
minScore?: number;
|
|
26
|
+
includeRecord?: boolean;
|
|
27
|
+
}): Promise<RetrieveHit<T>[]>;
|
|
28
|
+
warmIndex<T>(ctx: SearchContext<T>): Promise<void>;
|
|
29
|
+
flushIndex<T>(ctx: SearchContext<T>): Promise<void>;
|
|
30
|
+
embedOnWrite<T>(ctx: SearchContext<T>, id: string, record: T, version: number): Promise<void>;
|
|
31
|
+
rebuildEmbeddings<T>(ctx: SearchContext<T>): Promise<{
|
|
32
|
+
rebuilt: number;
|
|
33
|
+
skipped: number;
|
|
34
|
+
}>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* No-op stub — the floor default. Every capability method (and the embedding
|
|
38
|
+
* write-hook) throws {@link SearchNotEnabledError}; opt in with
|
|
39
|
+
* `searchStrategy: withSearch()` in createNoydb. @internal
|
|
40
|
+
*/
|
|
41
|
+
export declare const NO_SEARCH: SearchStrategy;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default text tokenizer for scan-mode search.
|
|
3
|
+
*
|
|
4
|
+
* NFKC-normalize → lowercase → split on Unicode letter/number runs. This is a
|
|
5
|
+
* word-boundary tokenizer: it does **not** segment scripts written without
|
|
6
|
+
* inter-word spaces (Thai, Lao, Khmer, CJK) — those collapse to one token per
|
|
7
|
+
* run. For such data, a dictionary/ICU segmenter is the right `tokenizer`
|
|
8
|
+
* (the engine takes one as a parameter); substring/`contains` matching is the
|
|
9
|
+
* pragmatic fallback until then.
|
|
10
|
+
*/
|
|
11
|
+
export type Tokenizer = (text: string) => string[];
|
|
12
|
+
export declare const tokenize: Tokenizer;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authentication introspection.
|
|
3
|
+
*
|
|
4
|
+
* Three surfaces over the configured tier model and the actual
|
|
5
|
+
* per-user enrollment state:
|
|
6
|
+
*
|
|
7
|
+
* 1. **Vault-wide English summary** — {@link describeAuthConfig}.
|
|
8
|
+
* 2. **Vault-wide Mermaid diagram** — {@link diagramAuthConfig}.
|
|
9
|
+
* 3. **Per-user introspection** — {@link describeUserAuth}, gated by
|
|
10
|
+
* the `view-user-auth` policy gate (off by default).
|
|
11
|
+
*
|
|
12
|
+
* The per-user surface is held to a strict allowlist — fields not on
|
|
13
|
+
* the allowlist are dropped, never rendered. The negative test in
|
|
14
|
+
* `auth-introspection.test.ts` exercises the allowlist by feeding a
|
|
15
|
+
* contrived keyring with fake "secret" fields and asserting that none
|
|
16
|
+
* of them appear in the output.
|
|
17
|
+
*
|
|
18
|
+
* @module
|
|
19
|
+
*/
|
|
20
|
+
import type { NoydbStore } from '../../kernel/types.js';
|
|
21
|
+
/** Vault-wide English summary of the configured authentication graph. */
|
|
22
|
+
export declare function describeAuthConfig(store: NoydbStore, vault: string): Promise<string>;
|
|
23
|
+
/**
|
|
24
|
+
* Render the vault's auth graph as Mermaid `flowchart TB` source. The
|
|
25
|
+
* caller pipes this through Mermaid (CLI or browser) to get an SVG.
|
|
26
|
+
*/
|
|
27
|
+
export declare function diagramAuthConfig(store: NoydbStore, vault: string): Promise<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Render the per-user enrollment summary. Returns an empty
|
|
30
|
+
* (non-throwing) string when the user has no keyring file — never
|
|
31
|
+
* confirms or denies the existence of the user from the document
|
|
32
|
+
* alone.
|
|
33
|
+
*
|
|
34
|
+
* Sanitization is strict: only the slot list, enrollment dates, and
|
|
35
|
+
* recovery-profile counts are rendered. WebAuthn cred ids, OIDC
|
|
36
|
+
* subject ids, password hashes, recovery codes, TOTP secrets — all
|
|
37
|
+
* dropped at the allowlist boundary, not redacted.
|
|
38
|
+
*/
|
|
39
|
+
export declare function describeUserAuth(store: NoydbStore, vault: string, userId: string): Promise<string>;
|
|
40
|
+
/** Bulk variant for owner dashboards. */
|
|
41
|
+
export declare function describeAllUsersAuth(store: NoydbStore, vault: string): Promise<Array<{
|
|
42
|
+
userId: string;
|
|
43
|
+
description: string;
|
|
44
|
+
}>>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enable the credential-broker capability (#479, spec §5).
|
|
3
|
+
*
|
|
4
|
+
* Pass to `createNoydb({ brokerStrategy: withBroker(config) })` to make
|
|
5
|
+
* `vault.broker()` live. Each method dynamic-imports the seed lifecycle
|
|
6
|
+
* engine (`./seed.js`) — mirroring `via/classified/active.ts`'s per-method
|
|
7
|
+
* dynamic-import seam — so `with-party/broker/seed.ts` (the heavy module:
|
|
8
|
+
* the CAS enrol, quiesce-then-swap rotate, and the challenge/response round
|
|
9
|
+
* trip) is reachable only through the `@noy-db/hub/broker` subpath and
|
|
10
|
+
* never enters the single-user floor bundle.
|
|
11
|
+
*
|
|
12
|
+
* The single-flight, per-vault-per-profile refresh cache (H-6/I6) lives
|
|
13
|
+
* HERE, in this factory's closure — shared across every `credentialSource(profile)`
|
|
14
|
+
* call for this one broker instance (in turn shared across every vault of a
|
|
15
|
+
* `createNoydb()` instance — `vault.broker()` passes the SAME `BrokerStrategy`
|
|
16
|
+
* for all of them), so `rotate()` can quiesce it (await any in-flight
|
|
17
|
+
* round-trip, then drop it) before the seed swap. The cache key is
|
|
18
|
+
* `${vault}\0${profile}` — keyed by vault FIRST, or two vaults sharing this
|
|
19
|
+
* one strategy would collide and hand vault-B a cached credential minted
|
|
20
|
+
* (and STS-scoped) for vault-A.
|
|
21
|
+
*/
|
|
22
|
+
import type { BrokerStrategy, BrokerConfig } from '../../port/with/broker-strategy.js';
|
|
23
|
+
export declare function withBroker(config: BrokerConfig): BrokerStrategy;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@noy-db/hub/broker` — subpath export for the credential-broker capability
|
|
3
|
+
* (#479, credential-broker spec). Apps that never call `vault.broker()` can
|
|
4
|
+
* exclude this subpath entirely: the floor default `NO_BROKER` throws, and
|
|
5
|
+
* this module's real engine (`with-party/broker/{seed,active}.ts`) is only
|
|
6
|
+
* ever reached through `withBroker()`'s dynamic imports, so it never enters
|
|
7
|
+
* a floor bundle.
|
|
8
|
+
*
|
|
9
|
+
* Also re-exports the host-side helpers (`issueChallenge`, `verifyBrokerProof`)
|
|
10
|
+
* from the enclave barrel, so a Lambda/Worker implementing the reference
|
|
11
|
+
* broker host can import just this one subpath and get everything it
|
|
12
|
+
* needs, `crypto.subtle`-only.
|
|
13
|
+
*/
|
|
14
|
+
export { withBroker } from './active.js';
|
|
15
|
+
export { NO_BROKER, type BrokerStrategy, type BrokerCtx, type BrokerConfig, type CredentialBrokerHandle, } from '../../port/with/broker-strategy.js';
|
|
16
|
+
export { BrokerNotEnabledError, BrokerEnrolmentError, BrokerProofError } from '../../kernel/errors.js';
|
|
17
|
+
import { verifyBrokerProof } from '../../kernel/enclave/index.js';
|
|
18
|
+
import type { IssuedChallenge, VerifyBrokerProofArgs } from '../../kernel/enclave/index.js';
|
|
19
|
+
/**
|
|
20
|
+
* {@link issueChallengeRaw} (the enclave's mechanical primitive) with a
|
|
21
|
+
* `[10s, 60s]` TTL clamp applied, so a reference host built on this barrel
|
|
22
|
+
* gets a safe challenge TTL without having to know the bounds itself.
|
|
23
|
+
*/
|
|
24
|
+
export declare function issueChallenge(opts?: {
|
|
25
|
+
ttlMs?: number;
|
|
26
|
+
}): IssuedChallenge;
|
|
27
|
+
export { verifyBrokerProof };
|
|
28
|
+
export type { VerifyBrokerProofArgs };
|