@noy-db/hub 0.3.0-pre.9 → 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 +5 -5
- 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 -32
- 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-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-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-ZUODRVHY.js +14 -0
- package/dist/classified/index.js +5 -5
- 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 -12
- 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 +21 -19
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.d.ts +307 -1493
- package/dist/index.js +309 -190
- 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 -17
- 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 +7 -7
- 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 -4
- package/dist/adapter/index.js +0 -15
- package/dist/aggregate/index.d.ts +0 -41
- package/dist/api-HV4PDUWF.js +0 -20
- package/dist/as/index.d.ts +0 -6
- package/dist/at/index.d.ts +0 -4
- package/dist/attestation/index.d.ts +0 -19
- package/dist/backup-ODXO7OGA.js +0 -225
- package/dist/backup-ODXO7OGA.js.map +0 -1
- package/dist/blobs/index.d.ts +0 -43
- package/dist/bundle/index.d.ts +0 -121
- package/dist/bundle-DlSxo31R.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -8
- package/dist/chunk-2644KEGW.js +0 -247
- package/dist/chunk-2644KEGW.js.map +0 -1
- package/dist/chunk-2HVUKRNE.js +0 -21
- package/dist/chunk-2KOSJTMU.js +0 -69
- package/dist/chunk-2UQ4RMHV.js +0 -167
- package/dist/chunk-2UQ4RMHV.js.map +0 -1
- package/dist/chunk-2XE6LIXT.js +0 -515
- package/dist/chunk-2XE6LIXT.js.map +0 -1
- package/dist/chunk-34RRRIC3.js +0 -71
- package/dist/chunk-3C5CKXFI.js +0 -621
- package/dist/chunk-3C5CKXFI.js.map +0 -1
- package/dist/chunk-3I4KYWNP.js +0 -30
- package/dist/chunk-42KVY3OC.js +0 -86
- package/dist/chunk-4C4WBS4V.js +0 -13822
- package/dist/chunk-4C4WBS4V.js.map +0 -1
- package/dist/chunk-4G3IT7J7.js +0 -280
- package/dist/chunk-4G3IT7J7.js.map +0 -1
- package/dist/chunk-4RQ62VSR.js +0 -53
- package/dist/chunk-4RQ62VSR.js.map +0 -1
- package/dist/chunk-4ZSGSRBI.js +0 -1221
- package/dist/chunk-4ZSGSRBI.js.map +0 -1
- package/dist/chunk-5GAX2QOH.js +0 -132
- package/dist/chunk-5GAX2QOH.js.map +0 -1
- package/dist/chunk-5SAZMBW7.js +0 -202
- package/dist/chunk-5TZZUL5X.js +0 -30
- package/dist/chunk-6CU3FN74.js +0 -777
- package/dist/chunk-6G2SCQYS.js +0 -29
- package/dist/chunk-6G2SCQYS.js.map +0 -1
- package/dist/chunk-6MWUANRF.js +0 -29
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-6ULCYCMU.js +0 -74
- package/dist/chunk-7HAPHVRJ.js +0 -1695
- package/dist/chunk-7HAPHVRJ.js.map +0 -1
- package/dist/chunk-7IZQTCTR.js +0 -382
- package/dist/chunk-7ZANJ6JZ.js +0 -265
- package/dist/chunk-7ZANJ6JZ.js.map +0 -1
- package/dist/chunk-A2APWS32.js +0 -150
- package/dist/chunk-A2APWS32.js.map +0 -1
- package/dist/chunk-A4MAD6PO.js +0 -99
- package/dist/chunk-ANDBBA2P.js +0 -36
- package/dist/chunk-ANDBBA2P.js.map +0 -1
- package/dist/chunk-AUR7MRHA.js +0 -404
- package/dist/chunk-AYGZMQP5.js +0 -75
- package/dist/chunk-BGIZAFY7.js +0 -1
- package/dist/chunk-CJEMA2Z6.js +0 -230
- package/dist/chunk-CTSFKDGA.js +0 -40
- package/dist/chunk-CU62BBRB.js +0 -1465
- package/dist/chunk-CU62BBRB.js.map +0 -1
- package/dist/chunk-CWCCYH34.js +0 -23
- package/dist/chunk-DEYAO3N6.js +0 -589
- package/dist/chunk-DFIBOSOQ.js +0 -85
- package/dist/chunk-E5AHO65E.js +0 -150
- package/dist/chunk-FC3XK5JT.js +0 -99
- package/dist/chunk-FGOGS7CE.js +0 -662
- package/dist/chunk-FGOGS7CE.js.map +0 -1
- package/dist/chunk-GX2BYNCT.js +0 -117
- package/dist/chunk-GZ2MOPVX.js +0 -291
- package/dist/chunk-GZ2MOPVX.js.map +0 -1
- package/dist/chunk-H57P2SJB.js +0 -126
- package/dist/chunk-H57P2SJB.js.map +0 -1
- package/dist/chunk-HBTT7YQX.js +0 -94
- package/dist/chunk-HOCEGVGQ.js +0 -36
- package/dist/chunk-ICV32FPK.js +0 -50
- package/dist/chunk-IIP5WFVT.js +0 -462
- package/dist/chunk-IIP5WFVT.js.map +0 -1
- package/dist/chunk-IUKGIB2Q.js +0 -91
- package/dist/chunk-IWTYFS3D.js +0 -129
- package/dist/chunk-JC5R7P44.js +0 -355
- package/dist/chunk-JC5R7P44.js.map +0 -1
- package/dist/chunk-K2WCO3NX.js +0 -1
- package/dist/chunk-KBBWY46Y.js +0 -14
- package/dist/chunk-KBF5GSGX.js +0 -367
- package/dist/chunk-KCG3BHFG.js +0 -99
- package/dist/chunk-KCG3BHFG.js.map +0 -1
- package/dist/chunk-KNXN47MO.js +0 -155
- package/dist/chunk-KWLD2D75.js +0 -38
- package/dist/chunk-KXKLKJW4.js +0 -49
- package/dist/chunk-KYC4LIEU.js +0 -123
- package/dist/chunk-LEOXZY36.js +0 -130
- package/dist/chunk-M5I354EE.js +0 -235
- package/dist/chunk-MK2BSS44.js +0 -34
- package/dist/chunk-MSVY7ULZ.js +0 -70
- package/dist/chunk-NNWK3PSY.js +0 -135
- package/dist/chunk-NSZ6J5DF.js +0 -59
- package/dist/chunk-NUEFXLZU.js +0 -59
- package/dist/chunk-NYVQCZ54.js +0 -261
- package/dist/chunk-OQAODTYR.js +0 -45
- package/dist/chunk-OV4CMJGR.js +0 -164
- package/dist/chunk-PEDZFFKW.js +0 -41
- package/dist/chunk-PF3FQCCF.js +0 -164
- package/dist/chunk-PF3FQCCF.js.map +0 -1
- package/dist/chunk-Q2KVKTC2.js +0 -823
- package/dist/chunk-QJR3W3MF.js +0 -23
- package/dist/chunk-QJR3W3MF.js.map +0 -1
- package/dist/chunk-QTXQ6RNZ.js +0 -255
- package/dist/chunk-RJ5522XX.js +0 -453
- package/dist/chunk-RJ5522XX.js.map +0 -1
- package/dist/chunk-RMUXPHIH.js +0 -930
- package/dist/chunk-RMUXPHIH.js.map +0 -1
- package/dist/chunk-S6AQXDN4.js +0 -155
- package/dist/chunk-SSFC3IYA.js +0 -275
- package/dist/chunk-SSFC3IYA.js.map +0 -1
- package/dist/chunk-SZCHEDML.js +0 -209
- package/dist/chunk-TDPEJINP.js +0 -188
- package/dist/chunk-TDPEJINP.js.map +0 -1
- package/dist/chunk-TQ3REHVF.js +0 -95
- package/dist/chunk-TQ3REHVF.js.map +0 -1
- package/dist/chunk-UNJU345Q.js +0 -32
- package/dist/chunk-UNJU345Q.js.map +0 -1
- package/dist/chunk-V7RNIND6.js +0 -265
- package/dist/chunk-V7RNIND6.js.map +0 -1
- package/dist/chunk-VJ3NQK4K.js +0 -205
- package/dist/chunk-WNA6T3MA.js +0 -686
- package/dist/chunk-WNA6T3MA.js.map +0 -1
- package/dist/chunk-WVCQ75OK.js +0 -124
- package/dist/chunk-X66MXMR5.js +0 -42
- package/dist/chunk-XHD3L3JO.js +0 -930
- package/dist/chunk-XHD3L3JO.js.map +0 -1
- package/dist/chunk-XJK2WIYN.js +0 -430
- package/dist/chunk-XJK2WIYN.js.map +0 -1
- package/dist/chunk-XQ7UYPVN.js +0 -95
- package/dist/chunk-Y2OCKFZ3.js +0 -80
- package/dist/chunk-YBFOBRTO.js +0 -367
- package/dist/chunk-YLN33ADH.js +0 -97
- package/dist/chunk-Z5YFRMG5.js +0 -45
- package/dist/chunk-ZWQFOXBR.js +0 -54
- package/dist/classified/index.d.ts +0 -16
- package/dist/classified-marker-IO5EBW7Q.js +0 -24
- package/dist/classified-marker-IO5EBW7Q.js.map +0 -1
- package/dist/collection-facade-3RAXG2OU.js +0 -38
- package/dist/computed-R62HGCO4.js +0 -11
- package/dist/consent/index.d.ts +0 -22
- package/dist/crdt/index.d.ts +0 -33
- package/dist/dead-filter-VNA4M3GP.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-ZKII5UBI.js +0 -25
- package/dist/derivations/index.d.ts +0 -69
- package/dist/derive-5D2C3WG4.js +0 -21
- package/dist/describe/index.d.ts +0 -4
- package/dist/describe/index.js +0 -1
- package/dist/dev-unlock-DDTafVO6.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-EUBEJGPG.js +0 -125
- package/dist/executor-IL7SRNUZ.js +0 -23
- package/dist/executor-OUA2Y6YC.js +0 -9
- package/dist/executor-WAEI6PDV.js +0 -9
- package/dist/export-accessible-O55RKAGC.js +0 -23
- package/dist/extract-partition-VBGCBA6Q.js +0 -36
- package/dist/fanout-sidecar-CI5BCMQM.js +0 -74
- package/dist/find-FISGUWSK.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -34
- package/dist/hash-DBkZfIBW.d.ts +0 -72
- package/dist/history/index.d.ts +0 -60
- package/dist/i18n/index.d.ts +0 -56
- package/dist/in/index.d.ts +0 -4
- package/dist/index-B9QdHytu.d.ts +0 -123
- package/dist/index-CyclmyDr.d.ts +0 -122
- package/dist/index-DzhNI2vE.d.ts +0 -23260
- package/dist/indexing/index.d.ts +0 -38
- package/dist/issue-EQAWIYFQ.js +0 -19
- package/dist/kernel/index.d.ts +0 -31
- package/dist/kernel/index.js +0 -60
- package/dist/lazy/index.d.ts +0 -20
- package/dist/ledger-AJA2SR3C.js +0 -42
- package/dist/liberate-SEGR4JLY.js +0 -24
- package/dist/link-set-YBAC2DQT.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -182
- package/dist/mime-magic-CbV1quyp.d.ts +0 -103
- package/dist/noydb-AMEOU456.js +0 -65
- package/dist/on/index.d.ts +0 -4
- package/dist/overlay-views/index.d.ts +0 -97
- package/dist/periods/index.d.ts +0 -19
- package/dist/pod/index.d.ts +0 -62
- package/dist/policy-SDGRWVIL.js +0 -41
- package/dist/portability/index.d.ts +0 -19
- package/dist/post-register-MROIUA5O.js +0 -55
- package/dist/post-register-MROIUA5O.js.map +0 -1
- package/dist/public-envelope-J5PLQOW2.js +0 -32
- package/dist/query/index.d.ts +0 -4
- package/dist/read-only-facade-UCYNRE56.js +0 -8
- package/dist/register-OVJKW7BS.js +0 -23
- package/dist/registry-5RJSK5AJ.js +0 -9
- package/dist/registry-DQRNTWRL.js +0 -18
- package/dist/registry-LTGLERS7.js +0 -19
- package/dist/request-withdrawal-27O77D2V.js +0 -31
- package/dist/reveal-LT3I2K4P.js +0 -38
- package/dist/reveal-LT3I2K4P.js.map +0 -1
- package/dist/revoke-4N45G7D2.js +0 -24
- package/dist/revoke-4N45G7D2.js.map +0 -1
- package/dist/satellites/index.d.ts +0 -4
- package/dist/sealed-record/index.d.ts +0 -68
- package/dist/session/index.d.ts +0 -43
- package/dist/shadow/index.d.ts +0 -14
- package/dist/signer-XJCOV7JD.js +0 -25
- package/dist/signer-XJCOV7JD.js.map +0 -1
- package/dist/snapshots/index.d.ts +0 -25
- package/dist/stale-IYYXEH3U.js +0 -14
- package/dist/stale-IYYXEH3U.js.map +0 -1
- package/dist/storage-Y44CAPE6.js +0 -23
- package/dist/storage-Y44CAPE6.js.map +0 -1
- package/dist/store-coordination-provider-WKGAE2WI.js +0 -142
- package/dist/subject-index-CyOgGMJL.d.ts +0 -380
- package/dist/sync/index.d.ts +0 -40
- package/dist/team/index.d.ts +0 -154
- package/dist/tiers/index.d.ts +0 -4
- package/dist/to/index.d.ts +0 -4
- package/dist/transition-guard-BOUkzQU4.d.ts +0 -165
- package/dist/tx/index.d.ts +0 -34
- package/dist/ui/index.d.ts +0 -4
- package/dist/ulid-DRH25k3y.d.ts +0 -66
- package/dist/util/index.d.ts +0 -79
- package/dist/validators-B3SalxlJ.d.ts +0 -101
- package/dist/vault-diff-Dt9NkLzw.d.ts +0 -147
- package/dist/verify-GH6CWVSW.js +0 -139
- package/dist/verify-GH6CWVSW.js.map +0 -1
- package/dist/walk-76UCFXYV.js +0 -241
- package/dist/with/index.d.ts +0 -37
- package/dist/with-materialized-view-BP33v1Z6.d.ts +0 -27
- package/dist/with-overlayed-view-DntFpOKN.d.ts +0 -12
- package/dist/with-rollup-ClCHO6-4.d.ts +0 -47
- package/dist/withdraw-accessible-6J2UH3IN.js +0 -28
- package/dist/withdraw-accessible-6J2UH3IN.js.map +0 -1
- /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
- /package/dist/{chunk-34RRRIC3.js.map → chunk-3B5VVCNY.js.map} +0 -0
- /package/dist/{chunk-CJEMA2Z6.js.map → chunk-3LQ2YKO4.js.map} +0 -0
- /package/dist/{chunk-ZWQFOXBR.js.map → chunk-3QCRBHCY.js.map} +0 -0
- /package/dist/{chunk-E5AHO65E.js.map → chunk-4JBYV75E.js.map} +0 -0
- /package/dist/{chunk-YLN33ADH.js.map → chunk-4NXKCLLQ.js.map} +0 -0
- /package/dist/{chunk-2KOSJTMU.js.map → chunk-5M5DVGV7.js.map} +0 -0
- /package/dist/{chunk-3I4KYWNP.js.map → chunk-5YOLBEQ6.js.map} +0 -0
- /package/dist/{chunk-IWTYFS3D.js.map → chunk-6CRIV7DE.js.map} +0 -0
- /package/dist/{chunk-QTXQ6RNZ.js.map → chunk-6QTNZJBS.js.map} +0 -0
- /package/dist/{chunk-42KVY3OC.js.map → chunk-6T2SCQRU.js.map} +0 -0
- /package/dist/{chunk-Z5YFRMG5.js.map → chunk-7DSTRQIJ.js.map} +0 -0
- /package/dist/{chunk-DEYAO3N6.js.map → chunk-AUSTCW2X.js.map} +0 -0
- /package/dist/{chunk-SZCHEDML.js.map → chunk-B3HJYUOF.js.map} +0 -0
- /package/dist/{chunk-OV4CMJGR.js.map → chunk-BDVFPG6Y.js.map} +0 -0
- /package/dist/{chunk-HOCEGVGQ.js.map → chunk-CAF6WOK7.js.map} +0 -0
- /package/dist/{chunk-AUR7MRHA.js.map → chunk-CIE2BASH.js.map} +0 -0
- /package/dist/{chunk-X66MXMR5.js.map → chunk-CRI4OUV4.js.map} +0 -0
- /package/dist/{chunk-IUKGIB2Q.js.map → chunk-DLG74CNB.js.map} +0 -0
- /package/dist/{chunk-YBFOBRTO.js.map → chunk-ERJ7FU55.js.map} +0 -0
- /package/dist/{chunk-VJ3NQK4K.js.map → chunk-EVVGJDRQ.js.map} +0 -0
- /package/dist/{chunk-NSZ6J5DF.js.map → chunk-EXK7QRWF.js.map} +0 -0
- /package/dist/{chunk-5SAZMBW7.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
- /package/dist/{chunk-OQAODTYR.js.map → chunk-F64IRYG3.js.map} +0 -0
- /package/dist/{chunk-Q2KVKTC2.js.map → chunk-FHS2HQSH.js.map} +0 -0
- /package/dist/{chunk-Y2OCKFZ3.js.map → chunk-GKEWXIV5.js.map} +0 -0
- /package/dist/{chunk-NUEFXLZU.js.map → chunk-GTGPO5KW.js.map} +0 -0
- /package/dist/{chunk-XQ7UYPVN.js.map → chunk-HB3RFQSC.js.map} +0 -0
- /package/dist/{chunk-FC3XK5JT.js.map → chunk-I6GALP6E.js.map} +0 -0
- /package/dist/{chunk-LEOXZY36.js.map → chunk-IL6POWCW.js.map} +0 -0
- /package/dist/{chunk-GX2BYNCT.js.map → chunk-IU6SNYX6.js.map} +0 -0
- /package/dist/{chunk-6CU3FN74.js.map → chunk-J2ZX2XUV.js.map} +0 -0
- /package/dist/{chunk-6MWUANRF.js.map → chunk-JKJOGPZN.js.map} +0 -0
- /package/dist/{chunk-PEDZFFKW.js.map → chunk-JZUV47FZ.js.map} +0 -0
- /package/dist/{chunk-5TZZUL5X.js.map → chunk-K5IMOGHB.js.map} +0 -0
- /package/dist/{chunk-7IZQTCTR.js.map → chunk-LASZKVMO.js.map} +0 -0
- /package/dist/{chunk-NNWK3PSY.js.map → chunk-NR5LT5RY.js.map} +0 -0
- /package/dist/{chunk-NYVQCZ54.js.map → chunk-NWSGI5C7.js.map} +0 -0
- /package/dist/{chunk-MSVY7ULZ.js.map → chunk-Q5VNKNE5.js.map} +0 -0
- /package/dist/{chunk-2HVUKRNE.js.map → chunk-QLWMEXCT.js.map} +0 -0
- /package/dist/{chunk-KYC4LIEU.js.map → chunk-QRB7NAOJ.js.map} +0 -0
- /package/dist/{chunk-6ULCYCMU.js.map → chunk-R4ROFEYC.js.map} +0 -0
- /package/dist/{chunk-KBF5GSGX.js.map → chunk-RIX4V2TB.js.map} +0 -0
- /package/dist/{chunk-CTSFKDGA.js.map → chunk-RYCTDFUX.js.map} +0 -0
- /package/dist/{chunk-S6AQXDN4.js.map → chunk-RZ5SVOYR.js.map} +0 -0
- /package/dist/{chunk-A4MAD6PO.js.map → chunk-SLFHQTTW.js.map} +0 -0
- /package/dist/{chunk-AYGZMQP5.js.map → chunk-T2FFWNPK.js.map} +0 -0
- /package/dist/{chunk-CWCCYH34.js.map → chunk-UNFPPVNI.js.map} +0 -0
- /package/dist/{chunk-M5I354EE.js.map → chunk-VLFCJYTL.js.map} +0 -0
- /package/dist/{chunk-WVCQ75OK.js.map → chunk-VN3DBQAU.js.map} +0 -0
- /package/dist/{chunk-KXKLKJW4.js.map → chunk-VZRODIM3.js.map} +0 -0
- /package/dist/{chunk-HBTT7YQX.js.map → chunk-W22IKJE2.js.map} +0 -0
- /package/dist/{chunk-KNXN47MO.js.map → chunk-X3YYQWOQ.js.map} +0 -0
- /package/dist/{chunk-DFIBOSOQ.js.map → chunk-YFXZEAYK.js.map} +0 -0
- /package/dist/{chunk-ICV32FPK.js.map → chunk-ZAJAVEXY.js.map} +0 -0
- /package/dist/{chunk-MK2BSS44.js.map → chunk-ZICD77GM.js.map} +0 -0
- /package/dist/{chunk-KWLD2D75.js.map → chunk-ZJ2AK4V7.js.map} +0 -0
- /package/dist/{chunk-KBBWY46Y.js.map → chunk-ZUODRVHY.js.map} +0 -0
- /package/dist/{api-HV4PDUWF.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-VNA4M3GP.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-3RAXG2OU.js.map → derive-H2BJTLUI.js.map} +0 -0
- /package/dist/{computed-R62HGCO4.js.map → enclave-AP3I5W7O.js.map} +0 -0
- /package/dist/{delegation-ZKII5UBI.js.map → executor-KGWTNEQD.js.map} +0 -0
- /package/dist/{derive-5D2C3WG4.js.map → executor-OVEXR6RT.js.map} +0 -0
- /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
- /package/dist/{enclave-EUBEJGPG.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
- /package/dist/{executor-IL7SRNUZ.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
- /package/dist/{fanout-sidecar-CI5BCMQM.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
- /package/dist/{executor-OUA2Y6YC.js.map → find-N6345CNT.js.map} +0 -0
- /package/dist/{executor-WAEI6PDV.js.map → issue-5OKB6I2R.js.map} +0 -0
- /package/dist/{export-accessible-O55RKAGC.js.map → ledger-GFBKVPV4.js.map} +0 -0
- /package/dist/{extract-partition-VBGCBA6Q.js.map → liberate-3VDOT4KO.js.map} +0 -0
- /package/dist/{find-FISGUWSK.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
- /package/dist/{issue-EQAWIYFQ.js.map → noydb-ZCJOYBDI.js.map} +0 -0
- /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
- /package/dist/{ledger-AJA2SR3C.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
- /package/dist/{liberate-SEGR4JLY.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
- /package/dist/{link-set-YBAC2DQT.js.map → register-VAHONCID.js.map} +0 -0
- /package/dist/{noydb-AMEOU456.js.map → registry-7MLVD3VO.js.map} +0 -0
- /package/dist/{policy-SDGRWVIL.js.map → registry-EPKPD5SM.js.map} +0 -0
- /package/dist/{public-envelope-J5PLQOW2.js.map → registry-P5T7PS2U.js.map} +0 -0
- /package/dist/{read-only-facade-UCYNRE56.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
- /package/dist/{register-OVJKW7BS.js.map → revoke-FDRD6GRW.js.map} +0 -0
- /package/dist/{registry-5RJSK5AJ.js.map → signer-MUWEIUI6.js.map} +0 -0
- /package/dist/{registry-DQRNTWRL.js.map → stale-OSQ7J3AA.js.map} +0 -0
- /package/dist/{registry-LTGLERS7.js.map → storage-MVFCGEQE.js.map} +0 -0
- /package/dist/{store-coordination-provider-WKGAE2WI.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
- /package/dist/{walk-76UCFXYV.js.map → walk-SVNDIZ62.js.map} +0 -0
- /package/dist/{request-withdrawal-27O77D2V.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
|
@@ -0,0 +1,826 @@
|
|
|
1
|
+
import type { NoydbOptions, NoydbEventMap, GrantOptions, RevokeOptions, UpdateUserOptions, UserInfo, PushResult, PullResult, PushOptions, PullOptions, SyncStatus, NoydbStore, AccessibleVault, ListAccessibleVaultsOptions, QueryAcrossOptions, QueryAcrossResult, TranslatorAuditEntry, WriteConflict, UserApiFactory, ActiveTier, FactorProofBundle, GateName, VaultPolicy } from './types.js';
|
|
2
|
+
import type { PassphrasePolicy } from './validation.js';
|
|
3
|
+
import { type RotatePassphraseInput, type RecoverPassphraseInput, type RecoverPassphraseResult, type RotateRecoveryOptions, type RotateRecoveryResult, type EnrollRecoveryResult, type RecoveryEnrollmentInput, type RecoveryProof } from '../with-party/team/rotate-recover.js';
|
|
4
|
+
import type { RecoverUserOptions } from '../with-party/team/peer-recover.js';
|
|
5
|
+
import { type PaperRecoveryEntry, type ShamirRecoveryEntry } from '../with-party/team/recovery.js';
|
|
6
|
+
import { type CoordinationProvider } from '../port/by/default-provider.js';
|
|
7
|
+
import type { PublicEnvelope } from '../with-party/directory/public-envelope/types.js';
|
|
8
|
+
import type { SetPublicEnvelopeInput } from '../with-party/directory/public-envelope/schema.js';
|
|
9
|
+
import { Vault } from './vault.js';
|
|
10
|
+
import type { VaultMeta } from '../with-shape/introspection/meta.js';
|
|
11
|
+
import { WriteQueueTracker, type WriteQueue } from './write-queue.js';
|
|
12
|
+
import { WriteHookRegistry, type WriteHook, type Unsubscribe } from '../port/with/write-hooks.js';
|
|
13
|
+
import { ServiceBus } from '../port/with/service-bus.js';
|
|
14
|
+
import { type TabCoordinationOptions, type TabRole, type TabPresence } from '../with-party/tab-coordination.js';
|
|
15
|
+
import type { UnlockedKeyring } from '../with-party/team/keyring.js';
|
|
16
|
+
import { type EnrollAuthenticatorOptions, type UpdateAuthenticatorOptions } from '../with-party/team/authenticators.js';
|
|
17
|
+
import { type QuickUnlockState } from '../with-party/session/unlock-state.js';
|
|
18
|
+
import type { KeyringAuthenticator } from './types.js';
|
|
19
|
+
import type { SyncEngine } from '../with-party/team/sync.js';
|
|
20
|
+
import type { SyncTransaction } from '../with-party/team/sync-transaction.js';
|
|
21
|
+
import { type SnapshotMeta } from '../with-fork/snapshots/strategy.js';
|
|
22
|
+
import type { AmendmentTxOptions } from '../with-commit/tx/transaction.js';
|
|
23
|
+
import { TxContext } from '../with-commit/tx/transaction.js';
|
|
24
|
+
import type { DryRunResult } from '../with-commit/tx/dry-run.js';
|
|
25
|
+
import { type ForgetStrategy } from '../with-audit/forget/strategy.js';
|
|
26
|
+
import { type CustodyStrategy } from '../with-party/custody/strategy.js';
|
|
27
|
+
/** NoydbOptions with the store resolved to a non-optional value (internal use only). */
|
|
28
|
+
type ResolvedNoydbOptions = NoydbOptions & {
|
|
29
|
+
readonly store: NoydbStore;
|
|
30
|
+
};
|
|
31
|
+
/** The top-level NOYDB instance. */
|
|
32
|
+
export declare class Noydb {
|
|
33
|
+
#private;
|
|
34
|
+
private readonly options;
|
|
35
|
+
private readonly emitter;
|
|
36
|
+
private readonly writeQueueTracker;
|
|
37
|
+
private readonly writeHooks;
|
|
38
|
+
private readonly subsystemBus;
|
|
39
|
+
private readonly clientId;
|
|
40
|
+
/** Session that owns this instance's writers (one user's writers across vaults). */
|
|
41
|
+
private readonly sessionId;
|
|
42
|
+
/** Drain-barrier coordination transport for the schema fence. */
|
|
43
|
+
private readonly coordinationProvider;
|
|
44
|
+
/** Pre-resolved `vault.user` API factory (mirrors `coordinationProvider` above). Public so `Vault` can call it. */
|
|
45
|
+
readonly userApiFactory: UserApiFactory;
|
|
46
|
+
private readonly vaultCache;
|
|
47
|
+
/**
|
|
48
|
+
* In-flight `openVault` promise per name — concurrent opens of the same
|
|
49
|
+
* vault must converge on ONE Vault instance. Without this, two callers
|
|
50
|
+
* racing past the `vaultCache` miss each construct a Vault (and later two
|
|
51
|
+
* Collections with independent DEKs for the same store slice), so a record
|
|
52
|
+
* written through one fails decryption through the other with a spurious
|
|
53
|
+
* `TamperedError` (#564).
|
|
54
|
+
*/
|
|
55
|
+
private readonly vaultOpening;
|
|
56
|
+
private readonly keyringCache;
|
|
57
|
+
private readonly syncEngines;
|
|
58
|
+
/**
|
|
59
|
+
* Per-vault active session tier — defaults to `1` after a passphrase
|
|
60
|
+
* unlock; tier-2 / tier-3 unlocks downgrade it. Used by
|
|
61
|
+
* {@link checkGate} to evaluate `gate.minTier`.
|
|
62
|
+
*/
|
|
63
|
+
private readonly activeTier;
|
|
64
|
+
/**
|
|
65
|
+
* Per-vault loaded policy. Cached after the first
|
|
66
|
+
* `_meta/policy` load; replaced by `db.updatePolicy()`.
|
|
67
|
+
*/
|
|
68
|
+
private readonly policyCache;
|
|
69
|
+
/**
|
|
70
|
+
* One-shot bypass for the managed-mode strong-recovery check.
|
|
71
|
+
* Set true by {@link openVaultAndEnrollRecovery} for the duration of
|
|
72
|
+
* the bootstrap window so the keyring can be created before the
|
|
73
|
+
* strong recovery is enrolled. Always cleared (try/finally).
|
|
74
|
+
* @internal
|
|
75
|
+
*/
|
|
76
|
+
private _skipNextManagedRecoveryCheck;
|
|
77
|
+
/** Per-vault tier-3 (PIN / quick-resume) state. */
|
|
78
|
+
private readonly quickUnlock;
|
|
79
|
+
private closed;
|
|
80
|
+
private sessionTimer;
|
|
81
|
+
/** Same-device multi-tab coordinator; created on `enableTabCoordination()`. */
|
|
82
|
+
private tabCoordinator;
|
|
83
|
+
/** Cross-tab write relay; created on `enableTabCoordination()`. */
|
|
84
|
+
private writeRelay;
|
|
85
|
+
/** Per-vault policy enforcers. */
|
|
86
|
+
private readonly policyEnforcers;
|
|
87
|
+
private readonly txStrategy;
|
|
88
|
+
private readonly forgetStrategy;
|
|
89
|
+
/**
|
|
90
|
+
* Opt-in sovereign-custody (FR-6) strategy — `NO_CUSTODY` (throwing) unless
|
|
91
|
+
* `withCustody()` was passed. Public so `Vault` routes `vault.custody.liberate`
|
|
92
|
+
* through it; grant/revoke route through it from this class. @internal
|
|
93
|
+
*/
|
|
94
|
+
readonly custodyStrategy: CustodyStrategy;
|
|
95
|
+
/**
|
|
96
|
+
* Opt-in multi-user team strategy (#267 keyring-grant → team split) —
|
|
97
|
+
* `NO_TEAM` (throwing) unless `withTeam()` was passed; the keyring
|
|
98
|
+
* engines are linked only by the active strategy, not by this file. */
|
|
99
|
+
private readonly teamStrategy;
|
|
100
|
+
private readonly sessionStrategy;
|
|
101
|
+
private readonly syncStrategy;
|
|
102
|
+
private readonly snapshots;
|
|
103
|
+
private readonly policyManager;
|
|
104
|
+
/** Pre-resolved policy-gate engine function (mirrors `coordinationProvider`/`userApiFactory` above). */
|
|
105
|
+
private readonly policyCheckGate;
|
|
106
|
+
private readonly team;
|
|
107
|
+
/**
|
|
108
|
+
* Currently-running multi-record transaction, set by
|
|
109
|
+
* `runTransaction` at the start of Phase 2 (commit) and cleared in
|
|
110
|
+
* the same function's `finally` block. Side-effect writes triggered
|
|
111
|
+
* during a staged op's `Collection.put` (today: eager derivation
|
|
112
|
+
* outputs) register their pre-write envelope on `_executed` here so
|
|
113
|
+
* a mid-batch failure rolls them back alongside the main staged ops.
|
|
114
|
+
* `null` outside of Phase 2.
|
|
115
|
+
* @internal
|
|
116
|
+
*/
|
|
117
|
+
private _activeTxContext;
|
|
118
|
+
/**
|
|
119
|
+
* In-process translation cache. Key is `"${field}\x00${collection}\x00${from}\x00${to}\x00${text}"`.
|
|
120
|
+
* Cleared on `close()` alongside the KEK and DEKs.
|
|
121
|
+
*/
|
|
122
|
+
private readonly translatorCache;
|
|
123
|
+
/** Audit log for all translator invocations in this session. Cleared on `close()`. */
|
|
124
|
+
private readonly _translatorAuditLog;
|
|
125
|
+
constructor(options: ResolvedNoydbOptions);
|
|
126
|
+
/** @internal — resolved forget strategy (NO_FORGET when not configured). */
|
|
127
|
+
get _forgetStrategy(): ForgetStrategy;
|
|
128
|
+
private resetSessionTimer;
|
|
129
|
+
/**
|
|
130
|
+
* Touch the policy enforcer for a vault (records activity, resets
|
|
131
|
+
* idle timer). Also touches the legacy session timer. No-op if no enforcer.
|
|
132
|
+
*/
|
|
133
|
+
private touchPolicy;
|
|
134
|
+
/**
|
|
135
|
+
* Check that a policy-guarded operation is permitted.
|
|
136
|
+
* Throws `SessionPolicyError` if re-auth is required.
|
|
137
|
+
*/
|
|
138
|
+
private checkPolicyOperation;
|
|
139
|
+
/**
|
|
140
|
+
* Open a vault by name.
|
|
141
|
+
*
|
|
142
|
+
* @param name Vault identifier.
|
|
143
|
+
* @param opts Optional settings for this session.
|
|
144
|
+
* @param opts.locale Default locale for i18n/dictKey field resolution
|
|
145
|
+
*. Set here to avoid passing `{ locale }`
|
|
146
|
+
* on every individual `get()`/`list()` call.
|
|
147
|
+
* @param opts.meta Vault descriptive metadata (label, description, etc.). First-wins: applied on first open, ignored on subsequent opens.
|
|
148
|
+
*/
|
|
149
|
+
openVault(name: string, opts?: {
|
|
150
|
+
locale?: string;
|
|
151
|
+
create?: boolean;
|
|
152
|
+
meta?: VaultMeta;
|
|
153
|
+
}): Promise<Vault>;
|
|
154
|
+
/** Synchronous vault access (must call openVault first, or auto-opens). */
|
|
155
|
+
vault(name: string): Vault;
|
|
156
|
+
/**
|
|
157
|
+
* Grant access to a user for a vault.
|
|
158
|
+
*
|
|
159
|
+
* Gated by `enroll-user`. `STRICT_POLICY` requires a TOTP / email-OTP
|
|
160
|
+
* factor proof so the operator affirmatively re-asserts identity at
|
|
161
|
+
* the moment of grant; `PERSONAL_POLICY` accepts a tier-1 unlock alone.
|
|
162
|
+
*
|
|
163
|
+
* The legacy `requireReAuthFor: ['grant']` session-policy check still
|
|
164
|
+
* fires on top — both are independent opt-ins.
|
|
165
|
+
* Opt-in (#267): throws {@link TeamNotEnabledError} without `withTeam()`.
|
|
166
|
+
*/
|
|
167
|
+
grant(vault: string, options: GrantOptions, factors?: FactorProofBundle): Promise<void>;
|
|
168
|
+
/**
|
|
169
|
+
* Revoke a user's access to a vault.
|
|
170
|
+
*
|
|
171
|
+
* Gated by `revoke-user`. `STRICT_POLICY` requires a TOTP / email-OTP
|
|
172
|
+
* factor proof; `PERSONAL_POLICY` accepts a tier-1 unlock alone.
|
|
173
|
+
*
|
|
174
|
+
* The legacy `requireReAuthFor: ['revoke']` session-policy check still
|
|
175
|
+
* fires on top — both are independent opt-ins.
|
|
176
|
+
* Opt-in (#267): throws {@link TeamNotEnabledError} without `withTeam()`.
|
|
177
|
+
*/
|
|
178
|
+
revoke(vault: string, options: RevokeOptions, factors?: FactorProofBundle): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* Grant the FR-6 `custodian` role to a user (owner-only custody API).
|
|
181
|
+
*
|
|
182
|
+
* A custodian operates every collection (rw + access) but is provably
|
|
183
|
+
* unable to grant / revoke / rotate / extract-and-sever. Only the Deed
|
|
184
|
+
* owner may mint one. Defended in depth: the `grant-custodian` gate
|
|
185
|
+
* (fail-closed) AND an explicit `keyring.role !== 'owner'` check — the
|
|
186
|
+
* gate enforces host policy, the role check enforces the cryptographic
|
|
187
|
+
* owner-only invariant even if a host mis-configures the gate.
|
|
188
|
+
*/
|
|
189
|
+
grantCustodian(vault: string, options: Omit<GrantOptions, 'role'>, factors?: FactorProofBundle): Promise<void>;
|
|
190
|
+
/** @internal — grant-custodian engine, reached only via withCustody(); the
|
|
191
|
+
* keyring engine arrives as an argument so the floor never carries it (#267). */
|
|
192
|
+
_grantCustodianImpl(engine: (adapter: NoydbStore, vault: string, callerKeyring: UnlockedKeyring, options: GrantOptions) => Promise<void>, vault: string, options: Omit<GrantOptions, 'role'>, factors?: FactorProofBundle): Promise<void>;
|
|
193
|
+
/**
|
|
194
|
+
* Revoke a custodian (owner-only custody API).
|
|
195
|
+
*
|
|
196
|
+
* Mirrors {@link revoke} but pins the caller to the Deed owner: defended
|
|
197
|
+
* in depth by the `revoke-user` gate AND an explicit `keyring.role !==
|
|
198
|
+
* 'owner'` check, so an admin cannot unwind a custodianship.
|
|
199
|
+
*/
|
|
200
|
+
revokeCustodian(vault: string, options: RevokeOptions, factors?: FactorProofBundle): Promise<void>;
|
|
201
|
+
/** @internal — revoke-custodian engine, reached only via withCustody().
|
|
202
|
+
* Mirrors `_grantCustodianImpl` (#267: engine passed in). */
|
|
203
|
+
_revokeCustodianImpl(engine: (adapter: NoydbStore, vault: string, callerKeyring: UnlockedKeyring, options: RevokeOptions) => Promise<void>, vault: string, options: RevokeOptions, factors?: FactorProofBundle): Promise<void>;
|
|
204
|
+
/**
|
|
205
|
+
* Mutate post-grant identity fields on an existing keyring — `role`,
|
|
206
|
+
* `displayName`, and/or `permissions`. Pure plaintext-header rewrite:
|
|
207
|
+
* no DEK rewrap, no KEK required, no authenticator slots touched.
|
|
208
|
+
* Tier-2 enrollments and recovery codes survive.
|
|
209
|
+
*
|
|
210
|
+
* Different from `db.revoke + db.grant`:
|
|
211
|
+
*
|
|
212
|
+
* - Same `userId`, same DEK wrappings, same `granted_by`, same
|
|
213
|
+
* `_users/<keyringId>` envelope. Only the specified header
|
|
214
|
+
* fields move. Last-write-wins via the standard keyring put.
|
|
215
|
+
* - No cascade on role demotion (admins demoted to operator keep
|
|
216
|
+
* the keyrings they previously granted; the cascade rules are
|
|
217
|
+
* a `db.revoke` concern, not `db.updateUser`).
|
|
218
|
+
* - Tier-2 slots NOT dropped — the wrapping is unaffected.
|
|
219
|
+
*
|
|
220
|
+
* Role-elevation guard: BOTH the old and new role must satisfy
|
|
221
|
+
* `db.grant`'s hierarchy. Owner can do anything; admin manages
|
|
222
|
+
* admin/operator/viewer/client laterally; admin cannot promote to
|
|
223
|
+
* owner OR demote from owner. The guard runs regardless of the
|
|
224
|
+
* `update-user` policy gate's settings — gates can only be more
|
|
225
|
+
* permissive than the structural floor, never less.
|
|
226
|
+
*
|
|
227
|
+
* Gated by `update-user`. `STRICT_POLICY` requires a TOTP/email-OTP
|
|
228
|
+
* factor proof so the operator affirmatively re-asserts identity at
|
|
229
|
+
* the moment of mutation; `PERSONAL_POLICY` accepts a tier-1 unlock
|
|
230
|
+
* alone.
|
|
231
|
+
*
|
|
232
|
+
* ```ts
|
|
233
|
+
* await db.updateUser('acme', {
|
|
234
|
+
* userId: 'bob',
|
|
235
|
+
* role: 'operator', // promote
|
|
236
|
+
* permissions: { invoices: 'rw' },
|
|
237
|
+
* }, { factors: [{ kind: 'totp' }] })
|
|
238
|
+
* ```
|
|
239
|
+
*
|
|
240
|
+
* @throws `NoAccessError` when no keyring exists for the target.
|
|
241
|
+
* @throws `PermissionDeniedError` when the role hierarchy rejects.
|
|
242
|
+
* @throws `ValidationError` when no field is provided.
|
|
243
|
+
*/
|
|
244
|
+
updateUser(vault: string, options: UpdateUserOptions, factors?: FactorProofBundle): Promise<void>;
|
|
245
|
+
/**
|
|
246
|
+
* Rotate the DEKs for the given collections in a vault.
|
|
247
|
+
*
|
|
248
|
+
* Generates fresh DEKs, re-encrypts every record in each collection,
|
|
249
|
+
* and re-wraps the new DEKs into every remaining user's keyring. The
|
|
250
|
+
* old DEKs become unreachable — useful as a defense-in-depth measure
|
|
251
|
+
* after a suspected key leak, or as the scheduled half of a
|
|
252
|
+
* key-rotation policy.
|
|
253
|
+
*
|
|
254
|
+
* Unlike `revoke({ rotateKeys: true })`, this call does NOT remove
|
|
255
|
+
* any users — every current member keeps access, but with fresh
|
|
256
|
+
* keys. This is the "just rotate" path; the "revoke and rotate"
|
|
257
|
+
* path still lives in `revoke()`.
|
|
258
|
+
*
|
|
259
|
+
* Exposed on Noydb (rather than only on the lower-level keyring
|
|
260
|
+
* module) so CLI and admin tooling can trigger rotation without
|
|
261
|
+
* reaching into internals. See `noy-db rotate` for the CLI wrapper.
|
|
262
|
+
* Opt-in (#267): throws {@link TeamNotEnabledError} without `withTeam()`.
|
|
263
|
+
*/
|
|
264
|
+
rotate(vault: string, collections: string[]): Promise<void>;
|
|
265
|
+
/** List all users with access to a vault. */
|
|
266
|
+
listUsers(vault: string): Promise<UserInfo[]>;
|
|
267
|
+
/**
|
|
268
|
+
* Enumerate every vault the calling principal can unwrap,
|
|
269
|
+
* optionally filtered by minimum role.
|
|
270
|
+
*
|
|
271
|
+
* The walk is a two-step pipeline: first ask the adapter for the
|
|
272
|
+
* universe of compartments it stores, then for each one attempt to
|
|
273
|
+
* load the calling user's keyring with the in-memory passphrase.
|
|
274
|
+
* Compartments where the user has no keyring file (`NoAccessError`)
|
|
275
|
+
* or where the passphrase doesn't unwrap (`InvalidKeyError`) are
|
|
276
|
+
* silently dropped from the result — the existence of those
|
|
277
|
+
* compartments is **not** confirmed in the return value.
|
|
278
|
+
*
|
|
279
|
+
* Requires the optional `NoydbStore.listVaults()` capability.
|
|
280
|
+
* Throws `StoreCapabilityError` against stores that don't
|
|
281
|
+
* implement it (today: store-aws-dynamo, store-aws-s3, store-browser-local, store-browser-idb). For those backends the
|
|
282
|
+
* consumer should either pass an explicit candidate list to
|
|
283
|
+
* `queryAcross()` directly, or maintain a vault index out of
|
|
284
|
+
* band.
|
|
285
|
+
*
|
|
286
|
+
* **Privacy note.** This method's return value never reveals the
|
|
287
|
+
* existence of a vault the caller cannot unwrap. The adapter
|
|
288
|
+
* sees the enumeration call (it has to — it owns the storage), but
|
|
289
|
+
* downstream consumers of `listAccessibleVaults()` only see
|
|
290
|
+
* the filtered list. That's the boundary the existence-leak
|
|
291
|
+
* guarantee draws.
|
|
292
|
+
*
|
|
293
|
+
* **Known edge case.** A vault whose keyring file
|
|
294
|
+
* happens to have an empty wrapped-DEKs map (because the owner
|
|
295
|
+
* granted access before any collection was created) will pass the
|
|
296
|
+
* `loadKeyring` probe with *any* passphrase — there are no DEKs to
|
|
297
|
+
* unwrap, so the integrity-checked unwrap that normally rejects
|
|
298
|
+
* wrong passphrases never runs. The result is that an unrelated
|
|
299
|
+
* principal who happens to know the user-id and the vault
|
|
300
|
+
* name can show up in `listAccessibleVaults()` as having
|
|
301
|
+
* access to that empty vault. They cannot read any actual
|
|
302
|
+
* data (their DEK set is empty), so this is a metadata leak
|
|
303
|
+
* (vault name + user-id), not a content leak. Hardening this
|
|
304
|
+
* via a passphrase canary in the keyring file is a deferred
|
|
305
|
+
* follow-up.
|
|
306
|
+
*
|
|
307
|
+
* **Cost.** O(compartments × keyring-load) — one `loadKeyring`
|
|
308
|
+
* attempt per vault in the universe. Each attempt does one
|
|
309
|
+
* adapter `get` + one PBKDF2 derivation + N AES-KW unwraps. For
|
|
310
|
+
* dozens of compartments this is fine; for thousands the consumer
|
|
311
|
+
* should cache the result and refresh on grant/revoke events. A
|
|
312
|
+
* future optimization could batch the keyring reads via
|
|
313
|
+
* `loadAll('_keyring')` if such a thing existed at the adapter
|
|
314
|
+
* layer, but the contract doesn't expose that.
|
|
315
|
+
*
|
|
316
|
+
* @example
|
|
317
|
+
* ```ts
|
|
318
|
+
* // All compartments I can unwrap
|
|
319
|
+
* const all = await db.listAccessibleVaults()
|
|
320
|
+
*
|
|
321
|
+
* // Only compartments where I'm at least admin
|
|
322
|
+
* const admin = await db.listAccessibleVaults({ minRole: 'admin' })
|
|
323
|
+
*
|
|
324
|
+
* // Only compartments I own
|
|
325
|
+
* const owned = await db.listAccessibleVaults({ minRole: 'owner' })
|
|
326
|
+
* ```
|
|
327
|
+
*/
|
|
328
|
+
listAccessibleVaults(options?: ListAccessibleVaultsOptions): Promise<AccessibleVault[]>;
|
|
329
|
+
/**
|
|
330
|
+
* Run a per-vault callback against a list of compartments and
|
|
331
|
+
* collect the results.
|
|
332
|
+
*
|
|
333
|
+
* Pure orchestration — there is no new crypto, no new sync, no new
|
|
334
|
+
* authorization layer. Each vault is opened via the existing
|
|
335
|
+
* `openVault()` path (which honors the cache primed by
|
|
336
|
+
* `listAccessibleVaults`), the callback runs against the
|
|
337
|
+
* resulting `Vault` instance, and the result (or thrown
|
|
338
|
+
* error) is captured into the per-vault slot.
|
|
339
|
+
*
|
|
340
|
+
* **Per-vault errors do not abort the fan-out.** If one
|
|
341
|
+
* vault's callback throws, that vault's slot carries
|
|
342
|
+
* the error and the remaining compartments still run. The caller
|
|
343
|
+
* decides how to handle the partition between success and failure.
|
|
344
|
+
* This is the right shape for cross-tenant reports where one
|
|
345
|
+
* tenant's outage shouldn't hide the other tenants' data.
|
|
346
|
+
*
|
|
347
|
+
* **Concurrency** is opt-in via `options.concurrency`. The default
|
|
348
|
+
* is `1` (sequential) — conservative because per-vault
|
|
349
|
+
* callbacks typically do their own I/O and an unbounded fan-out
|
|
350
|
+
* can exhaust adapter connections (DynamoDB throughput, S3 socket
|
|
351
|
+
* limits, browser fetch concurrency). Bump to 4-8 for cloud-backed
|
|
352
|
+
* adapters where parallelism is the whole point.
|
|
353
|
+
*
|
|
354
|
+
* @example
|
|
355
|
+
* ```ts
|
|
356
|
+
* // Cross-tenant invoice totals as a flat list
|
|
357
|
+
* const accessible = await db.listAccessibleVaults({ minRole: 'admin' })
|
|
358
|
+
* const results = await db.queryAcross(
|
|
359
|
+
* accessible.map((c) => c.id),
|
|
360
|
+
* async (comp) => {
|
|
361
|
+
* return comp.collection<Invoice>('invoices').query()
|
|
362
|
+
* .where('month', '==', '2026-03')
|
|
363
|
+
* .toArray()
|
|
364
|
+
* },
|
|
365
|
+
* { concurrency: 4 },
|
|
366
|
+
* )
|
|
367
|
+
* // results: Array<{ vault, result?: Invoice[], error?: Error }>
|
|
368
|
+
*
|
|
369
|
+
* // Compose with exportStream() — cross-vault plaintext export
|
|
370
|
+
* const exports = await db.queryAcross(accessible.map((c) => c.id), async (comp) => {
|
|
371
|
+
* const out: unknown[] = []
|
|
372
|
+
* for await (const chunk of comp.exportStream()) out.push(chunk)
|
|
373
|
+
* return out
|
|
374
|
+
* })
|
|
375
|
+
* ```
|
|
376
|
+
*/
|
|
377
|
+
queryAcross<T>(vaultIds: string[], fn: (vault: Vault) => Promise<T>, options?: QueryAcrossOptions): Promise<QueryAcrossResult<T>[]>;
|
|
378
|
+
/**
|
|
379
|
+
* @internal True once `close()` has been called. Read by outward
|
|
380
|
+
* orchestration frameworks whose entry points can't see the private
|
|
381
|
+
* `closed` field.
|
|
382
|
+
*/
|
|
383
|
+
get isClosed(): boolean;
|
|
384
|
+
/**
|
|
385
|
+
* @internal — true when an encrypted shard vault is provisioned
|
|
386
|
+
* (its keyring exists in the store).
|
|
387
|
+
*/
|
|
388
|
+
_shardVaultProvisioned(vaultId: string): Promise<boolean>;
|
|
389
|
+
/**
|
|
390
|
+
* @internal — the physical backend store a vault id maps to. A
|
|
391
|
+
* `routeStore` resolves the vault-prefix route via its `resolveBackend`;
|
|
392
|
+
* a plain store is its own backend. Used by the federation data-residency
|
|
393
|
+
* guard to read the placement backend's `capabilities.region`.
|
|
394
|
+
*/
|
|
395
|
+
_resolveBackend(vaultId: string): NoydbStore;
|
|
396
|
+
/**
|
|
397
|
+
* Change the current user's passphrase for a vault.
|
|
398
|
+
*
|
|
399
|
+
* Validates the new passphrase against the strength rules. Pass
|
|
400
|
+
* `{ allowWeakPassphrase: true }` to skip — typically only useful for
|
|
401
|
+
* fixtures and migrations. Pass a `PassphrasePolicy` to override the
|
|
402
|
+
* default rules (e.g. consumer-tunable `pattern` / `customValidator`).
|
|
403
|
+
*/
|
|
404
|
+
changeSecret(vault: string, newPassphrase: string, options?: PassphrasePolicy & {
|
|
405
|
+
allowWeakPassphrase?: boolean;
|
|
406
|
+
}): Promise<void>;
|
|
407
|
+
/** Push local changes to remote for a vault. */
|
|
408
|
+
push(vault: string, options?: PushOptions): Promise<PushResult>;
|
|
409
|
+
/**
|
|
410
|
+
* Pull remote changes to local for a vault. A `backup`/`archive` primary is a
|
|
411
|
+
* push-only sink and is never pulled from (#616) — returns an empty result.
|
|
412
|
+
*/
|
|
413
|
+
pull(vault: string, options?: PullOptions): Promise<PullResult>;
|
|
414
|
+
/**
|
|
415
|
+
* Bidirectional sync: pull then push for all targets.
|
|
416
|
+
* `sync-peer` targets do pull+push; `backup`/`archive` targets do push-only.
|
|
417
|
+
*/
|
|
418
|
+
sync(vault: string, options?: {
|
|
419
|
+
push?: PushOptions;
|
|
420
|
+
pull?: PullOptions;
|
|
421
|
+
}): Promise<{
|
|
422
|
+
pull: PullResult;
|
|
423
|
+
push: PushResult;
|
|
424
|
+
}>;
|
|
425
|
+
/**
|
|
426
|
+
* Multi-record atomic transaction.
|
|
427
|
+
*
|
|
428
|
+
* The callback stages writes across any number of vaults /
|
|
429
|
+
* collections; on return the hub pre-flights version checks, then
|
|
430
|
+
* commits every staged op. If the body throws, nothing is
|
|
431
|
+
* persisted. If any staged op fails its `expectedVersion` check,
|
|
432
|
+
* the batch throws `ConflictError` with zero writes performed. If a
|
|
433
|
+
* mid-commit failure occurs after one or more ops have already
|
|
434
|
+
* written, each executed op is reverted best-effort (see
|
|
435
|
+
* `runTransaction` for the crash-window caveat).
|
|
436
|
+
*
|
|
437
|
+
* Distinct from `transaction(vault: string) → SyncTransaction`
|
|
438
|
+
* which batches push/pull across sync peers.
|
|
439
|
+
*/
|
|
440
|
+
transaction<T>(fn: (tx: TxContext) => Promise<T> | T): Promise<T>;
|
|
441
|
+
/**
|
|
442
|
+
* Open an amendment-mode transaction. Requires `admin` or `owner`
|
|
443
|
+
* role on every vault touched by the body; throws
|
|
444
|
+
* `AmendmentForbiddenError` on first non-privileged `tx.vault(name)`
|
|
445
|
+
* call. Guard `check` callbacks are SKIPPED inside an amendment —
|
|
446
|
+
* the staged change-set is fed to each guard's `amendment.invariant`
|
|
447
|
+
* after the body returns, and the multi-record summary is appended
|
|
448
|
+
* to the vault's ledger as `op: 'amendment'`.
|
|
449
|
+
*/
|
|
450
|
+
transaction<T>(options: AmendmentTxOptions, fn: (tx: TxContext) => Promise<T> | T): Promise<T>;
|
|
451
|
+
/**
|
|
452
|
+
* Dry-run a transaction: run the body to stage ops, then return
|
|
453
|
+
* the directly-affected diff + collected guard violations WITHOUT
|
|
454
|
+
* committing (no adapter writes, no write hooks). MV/derivation cascade
|
|
455
|
+
* is not simulated. Requires `withTransactions()`.
|
|
456
|
+
*/
|
|
457
|
+
transaction(options: {
|
|
458
|
+
readonly dryRun: true;
|
|
459
|
+
}, fn: (tx: TxContext) => unknown): Promise<DryRunResult>;
|
|
460
|
+
/**
|
|
461
|
+
* Create a sync transaction for the given vault.
|
|
462
|
+
* The vault must already be open via `openVault()`.
|
|
463
|
+
* Call `tx.put()` / `tx.delete()` to stage changes, then `tx.commit()`
|
|
464
|
+
* to write all locally and push atomically to remote.
|
|
465
|
+
*/
|
|
466
|
+
transaction(vault: string): SyncTransaction;
|
|
467
|
+
/**
|
|
468
|
+
* Internal accessor for the primary store — used by the tx
|
|
469
|
+
* executor to perform raw adapter reads for pre-flight CAS and
|
|
470
|
+
* raw writes for rollback. Not part of the public API.
|
|
471
|
+
*
|
|
472
|
+
* @internal
|
|
473
|
+
*/
|
|
474
|
+
get _store(): NoydbStore;
|
|
475
|
+
/**
|
|
476
|
+
* Currently-running multi-record transaction, or `null` outside
|
|
477
|
+
* Phase 2. `Collection.dispatchDerivations` consults this so a
|
|
478
|
+
* recursive derived-output write inside `Collection.put` can register
|
|
479
|
+
* its envelope onto `ctx._executed` and roll back with the main
|
|
480
|
+
* staged ops on mid-batch failure.
|
|
481
|
+
*
|
|
482
|
+
* @internal
|
|
483
|
+
*/
|
|
484
|
+
get _activeTxContextOrNull(): TxContext | null;
|
|
485
|
+
/**
|
|
486
|
+
* Called by `runTransaction` at Phase 2 start, and by
|
|
487
|
+
* `Collection.putManyAtomic` (via `derivationSource.setActiveTxContext`)
|
|
488
|
+
* for its own Phase 2 loop. Nested or concurrent (non-nested)
|
|
489
|
+
* transactions on the same Noydb instance are NOT supported —
|
|
490
|
+
* overwriting an active context means another transaction is still
|
|
491
|
+
* running and its `_executed` list would be cross-contaminated by
|
|
492
|
+
* the nested writes. We tolerate the overwrite (best-effort, no
|
|
493
|
+
* throw) to keep the rare interleaving from breaking consumers who
|
|
494
|
+
* currently get lucky with timing, but applications should ensure
|
|
495
|
+
* their multi-record commits are serialised on a single Noydb.
|
|
496
|
+
*
|
|
497
|
+
* @internal
|
|
498
|
+
*/
|
|
499
|
+
_setActiveTxContext(ctx: TxContext): void;
|
|
500
|
+
/**
|
|
501
|
+
* Factory for a transient `TxContext` bound to this Noydb. Used by
|
|
502
|
+
* `Collection.putManyAtomic` (via `derivationSource.createTxContext`)
|
|
503
|
+
* to publish an active context for the duration of its bulk-atomic
|
|
504
|
+
* Phase 2 loop, so recursive derivation-output writes register on
|
|
505
|
+
* `ctx._executed` and roll back together with the source ops.
|
|
506
|
+
*
|
|
507
|
+
* @internal
|
|
508
|
+
*/
|
|
509
|
+
_createTxContext(): TxContext;
|
|
510
|
+
/**
|
|
511
|
+
* Called by `runTransaction` in its `finally`. Only clears when the
|
|
512
|
+
* passed ctx matches the active one — a defensive no-op if some
|
|
513
|
+
* other code path already cleared it.
|
|
514
|
+
*
|
|
515
|
+
* @internal
|
|
516
|
+
*/
|
|
517
|
+
_clearActiveTxContext(ctx: TxContext): void;
|
|
518
|
+
/** Get sync status for a vault. */
|
|
519
|
+
syncStatus(vault: string): SyncStatus;
|
|
520
|
+
private getSyncEngine;
|
|
521
|
+
_forEachSyncEngine(vault: string, fn: (engine: SyncEngine) => void): void;
|
|
522
|
+
on<K extends keyof NoydbEventMap>(event: K, handler: (data: NoydbEventMap[K]) => void): void;
|
|
523
|
+
off<K extends keyof NoydbEventMap>(event: K, handler: (data: NoydbEventMap[K]) => void): void;
|
|
524
|
+
/**
|
|
525
|
+
* Observable write-queue for this hub instance. Reflects outstanding
|
|
526
|
+
* in-flight writes across all collections. See {@link WriteQueue}.
|
|
527
|
+
*
|
|
528
|
+
* @example
|
|
529
|
+
* window.addEventListener('beforeunload', (e) => {
|
|
530
|
+
* if (db.writeQueue.pending) { e.preventDefault(); e.returnValue = '' }
|
|
531
|
+
* })
|
|
532
|
+
*/
|
|
533
|
+
get writeQueue(): WriteQueue;
|
|
534
|
+
/**
|
|
535
|
+
* @internal Mutable tracker behind {@link writeQueue}. Threaded into
|
|
536
|
+
* each Collection (via Vault) so `put`/`delete` can `track()` writes.
|
|
537
|
+
* Not part of the public surface — consumers use `writeQueue`.
|
|
538
|
+
*/
|
|
539
|
+
get _writeQueueTracker(): WriteQueueTracker;
|
|
540
|
+
/**
|
|
541
|
+
* Register a hook that runs before each write. Awaited; a throw
|
|
542
|
+
* aborts the write. Returns an unsubscribe function.
|
|
543
|
+
*/
|
|
544
|
+
onBeforeWrite(handler: WriteHook): Unsubscribe;
|
|
545
|
+
/**
|
|
546
|
+
* Register a hook that runs after each committed write. Awaited;
|
|
547
|
+
* a handler error is warned, never rolled back. Returns an unsubscribe fn.
|
|
548
|
+
*/
|
|
549
|
+
onAfterWrite(handler: WriteHook): Unsubscribe;
|
|
550
|
+
/** Subscribe to cross-tab write conflicts. Returns an unsubscribe. */
|
|
551
|
+
onWriteConflict(fn: (c: WriteConflict) => void): Unsubscribe;
|
|
552
|
+
/**
|
|
553
|
+
* Enable same-device multi-tab coordination: primary/secondary
|
|
554
|
+
* election + presence. Browser-only — a graceful no-op (role 'unknown')
|
|
555
|
+
* when Web Locks / BroadcastChannel are unavailable and nothing is
|
|
556
|
+
* injected. Idempotent; returns a disposer.
|
|
557
|
+
*/
|
|
558
|
+
enableTabCoordination(opts?: TabCoordinationOptions): {
|
|
559
|
+
dispose: () => void;
|
|
560
|
+
};
|
|
561
|
+
private disableTabCoordination;
|
|
562
|
+
get tabRole(): TabRole;
|
|
563
|
+
activeTabs(): TabPresence[];
|
|
564
|
+
onTabRoleChange(fn: (r: TabRole) => void): Unsubscribe;
|
|
565
|
+
onActiveTabsChange(fn: (t: TabPresence[]) => void): Unsubscribe;
|
|
566
|
+
/** @internal The write-hook registry, threaded into each Collection. */
|
|
567
|
+
get _writeHooks(): WriteHookRegistry;
|
|
568
|
+
/** @internal The observe bus, threaded into every Collection. */
|
|
569
|
+
get _subsystemBus(): ServiceBus;
|
|
570
|
+
/** @internal Stable per-instance id for schema-cutover coordination. */
|
|
571
|
+
get _clientId(): string;
|
|
572
|
+
/** @internal Session that owns this instance's writers. */
|
|
573
|
+
get _sessionId(): string;
|
|
574
|
+
/**
|
|
575
|
+
* @internal Drain-barrier coordination transport for the schema fence.
|
|
576
|
+
* The default store-backed provider reproduces today's fence behavior; a
|
|
577
|
+
* `by-*` real-time transport is injected via `coordinationStrategy`.
|
|
578
|
+
*/
|
|
579
|
+
get coordination(): CoordinationProvider;
|
|
580
|
+
/**
|
|
581
|
+
* #693: true when multi-tab coordination is active at all — presence/election
|
|
582
|
+
* alone (`propagateWrites: false`) or full write-propagation — a peer tab can
|
|
583
|
+
* write this instance's shared store out-of-band either way, so per-collection
|
|
584
|
+
* marker-id sets are not authoritative and the re-create gate must fall back to
|
|
585
|
+
* a store read. Live (tab coordination is enable/disable-able at runtime).
|
|
586
|
+
*/
|
|
587
|
+
get _tabCoordinationActive(): boolean;
|
|
588
|
+
/**
|
|
589
|
+
* Soft-lock a single vault: clear its in-memory keyring, DEKs, vault
|
|
590
|
+
* instance, sync engine, policy enforcer, and active-tier entry —
|
|
591
|
+
* WITHOUT destroying the `Noydb` instance.
|
|
592
|
+
*
|
|
593
|
+
* Designed for "lock screen" UX: the user taps **Lock** and DEKs are
|
|
594
|
+
* scrubbed from memory immediately, but the same `Noydb` instance can
|
|
595
|
+
* be re-unlocked via {@link unlockViaAuthenticator} (tier 2) or
|
|
596
|
+
* {@link unlockViaPin} (tier 3) without re-running `createNoydb`.
|
|
597
|
+
*
|
|
598
|
+
* **QuickUnlock state is preserved.** That's the whole point — the
|
|
599
|
+
* user can still resume via PIN without a full credential re-prompt.
|
|
600
|
+
* The on-disk `_meta/policy` document is also kept in cache (it
|
|
601
|
+
* survives lock; nothing about it changes when DEKs are scrubbed).
|
|
602
|
+
*
|
|
603
|
+
* No-op when `vault` is not currently in cache (idempotent).
|
|
604
|
+
*/
|
|
605
|
+
lockVault(vault: string): void;
|
|
606
|
+
close(): void;
|
|
607
|
+
/**
|
|
608
|
+
* Returns a snapshot of all translator invocations since the last
|
|
609
|
+
* `close()`. Useful for testing and compliance auditing. The log is
|
|
610
|
+
* in-memory only — it is cleared when `db.close()` is called.
|
|
611
|
+
*
|
|
612
|
+
* Entries deliberately omit content hashes. See `TranslatorAuditEntry`
|
|
613
|
+
* and issue for the rationale.
|
|
614
|
+
*/
|
|
615
|
+
translatorAuditLog(): readonly TranslatorAuditEntry[];
|
|
616
|
+
/**
|
|
617
|
+
* Invoke the configured `plaintextTranslator` (or serve from cache).
|
|
618
|
+
* Records one `TranslatorAuditEntry` per call regardless of cache hit.
|
|
619
|
+
* Called by `Vault` during `put()` for `autoTranslate: true` fields.
|
|
620
|
+
*
|
|
621
|
+
* @internal — not part of the public API surface
|
|
622
|
+
*/
|
|
623
|
+
invokeTranslator(text: string, from: string, to: string, field: string, collection: string): Promise<string>;
|
|
624
|
+
/**
|
|
625
|
+
* Read the active policy for a vault. Loads from `_meta/policy` on
|
|
626
|
+
* first call; subsequent calls hit the in-memory cache. Throws
|
|
627
|
+
* `ValidationError` if the vault has not been opened.
|
|
628
|
+
*/
|
|
629
|
+
getPolicy(vault: string): Promise<VaultPolicy>;
|
|
630
|
+
/**
|
|
631
|
+
* Replace the policy document at `_meta/policy` and update the
|
|
632
|
+
* in-memory cache. Gated by the `enroll-user` policy (a policy
|
|
633
|
+
* change is fundamentally a privilege-management action).
|
|
634
|
+
*/
|
|
635
|
+
updatePolicy(vault: string, override: Partial<VaultPolicy>): Promise<VaultPolicy>;
|
|
636
|
+
/**
|
|
637
|
+
* Read the current vault-level user-directory toggle. Returns
|
|
638
|
+
* the default-on shape (`{ enabled: true }`) when no `_meta/directory`
|
|
639
|
+
* document has been persisted yet.
|
|
640
|
+
*
|
|
641
|
+
* No role gate — anyone who can open the vault can read the toggle.
|
|
642
|
+
*/
|
|
643
|
+
getDirectoryEnabled(vault: string): Promise<boolean>;
|
|
644
|
+
/**
|
|
645
|
+
* Toggle the vault's user-directory listing on or off.
|
|
646
|
+
* Owner-only. When disabled, `listUsersWithEnvelopes()` throws
|
|
647
|
+
* {@link import('./errors.js').DirectoryDisabledError} for callers
|
|
648
|
+
* whose role is neither `owner` nor `admin`.
|
|
649
|
+
*
|
|
650
|
+
* Honest caveat: this is a UX flag, not a privacy guarantee. The
|
|
651
|
+
* keyring file at `_keyring/<userId>` and the envelope ciphertext at
|
|
652
|
+
* `_users/<keyringId>` remain observable to anyone with direct store
|
|
653
|
+
* read access — only the hub-level enumeration is gated. See
|
|
654
|
+
* `https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/user-envelope.md` → "Directory visibility".
|
|
655
|
+
*/
|
|
656
|
+
setDirectoryEnabled(vault: string, enabled: boolean): Promise<void>;
|
|
657
|
+
/**
|
|
658
|
+
* Evaluate a policy gate against the active session tier and the
|
|
659
|
+
* presented factor proofs. Throws {@link PolicyDeniedError} on
|
|
660
|
+
* denial; resolves with `void` on success.
|
|
661
|
+
*
|
|
662
|
+
* @param vault The vault whose policy applies.
|
|
663
|
+
* @param gate Gate name — built-in (e.g. `'rotate-passphrase'`)
|
|
664
|
+
* or app-defined (`app:*`).
|
|
665
|
+
* @param presented Caller-supplied factor proofs.
|
|
666
|
+
*/
|
|
667
|
+
checkGate(vault: string, gate: GateName, factors?: FactorProofBundle): Promise<void>;
|
|
668
|
+
/** Read or persist the vault policy at `_meta/policy` on first open. */
|
|
669
|
+
private bootstrapPolicy;
|
|
670
|
+
/**
|
|
671
|
+
* Throw {@link RecoveryNotEnrolledError} or
|
|
672
|
+
* {@link ManagedRecoveryNotEnrolledError} when recovery enrollment
|
|
673
|
+
* is missing.
|
|
674
|
+
*
|
|
675
|
+
* Two enforcement modes:
|
|
676
|
+
*
|
|
677
|
+
* 1. **Managed-mode mandatory strong-recovery.** When
|
|
678
|
+
* `passphraseMode === 'managed'`, the vault MUST have at least
|
|
679
|
+
* one **strong** recovery profile (Shamir today). Paper alone is
|
|
680
|
+
* rejected because under managed mode the user has no memorized
|
|
681
|
+
* passphrase, so losing the paper sheet = losing every record.
|
|
682
|
+
* This check is unconditional — independent of `requireRecovery`
|
|
683
|
+
* and the `recover-passphrase` gate.
|
|
684
|
+
*
|
|
685
|
+
* 2. **Opt-in strict mandatory-recovery.** When
|
|
686
|
+
* `requireRecovery: true` is set on createNoydb (and the gate is
|
|
687
|
+
* not explicitly disabled), require ANY recovery profile (paper
|
|
688
|
+
* or shamir). This is the v0.x default-off behavior; v1.0 may
|
|
689
|
+
* flip it default-on.
|
|
690
|
+
*
|
|
691
|
+
* The managed-mode check fires from {@link bootstrapPolicy} unless
|
|
692
|
+
* the `skipManagedCheck` flag is set (used by
|
|
693
|
+
* {@link openVaultAndEnrollRecovery} to allow atomic create-and-enroll).
|
|
694
|
+
*/
|
|
695
|
+
private assertRecoveryEnrolled;
|
|
696
|
+
/**
|
|
697
|
+
* Internal accessor used by tier-2/tier-3 unlock paths
|
|
698
|
+
* to mark the active session tier.
|
|
699
|
+
* @internal
|
|
700
|
+
*/
|
|
701
|
+
_setActiveTier(vault: string, tier: ActiveTier): void;
|
|
702
|
+
/** Add a tier-2 authenticator slot — see {@link TeamFacade.enrollAuthenticator}. */
|
|
703
|
+
enrollAuthenticator(vault: string, options: EnrollAuthenticatorOptions, factors?: FactorProofBundle): Promise<void>;
|
|
704
|
+
/** Remove a tier-2 authenticator slot — see {@link TeamFacade.removeAuthenticator}. */
|
|
705
|
+
removeAuthenticator(vault: string, slotId: string, factors?: FactorProofBundle): Promise<void>;
|
|
706
|
+
/** Read the slot list for a vault — see {@link TeamFacade.listAuthenticators}. */
|
|
707
|
+
listAuthenticators(vault: string): Promise<ReadonlyArray<KeyringAuthenticator>>;
|
|
708
|
+
/** Mutate an authenticator slot's `meta` — see {@link TeamFacade.updateAuthenticator}. */
|
|
709
|
+
updateAuthenticator(vault: string, slotId: string, options: UpdateAuthenticatorOptions, factors?: FactorProofBundle): Promise<void>;
|
|
710
|
+
/** Native WebAuthn enrollment — see {@link TeamFacade.enrollWebAuthn}. */
|
|
711
|
+
enrollWebAuthn(vault: string, ceremony: (keyring: UnlockedKeyring) => Promise<EnrollAuthenticatorOptions>, factors?: FactorProofBundle): Promise<{
|
|
712
|
+
credentialId: string;
|
|
713
|
+
}>;
|
|
714
|
+
/** List webauthn-method slots — see {@link TeamFacade.listWebAuthnSlots}. */
|
|
715
|
+
listWebAuthnSlots(vault: string): Promise<ReadonlyArray<{
|
|
716
|
+
id: string;
|
|
717
|
+
enrolledAt: string;
|
|
718
|
+
credentialId: string;
|
|
719
|
+
}>>;
|
|
720
|
+
/** Unlock via a tier-2 authenticator slot — see {@link TeamFacade.unlockViaAuthenticator}. */
|
|
721
|
+
unlockViaAuthenticator(vault: string, slotId: string, verify: (slot: KeyringAuthenticator) => Promise<UnlockedKeyring>): Promise<UnlockedKeyring>;
|
|
722
|
+
/**
|
|
723
|
+
* Set the owner-curated public envelope for a vault. Throws
|
|
724
|
+
* `ValidationError` if the developer did not opt the hub into
|
|
725
|
+
* `publicEnvelope` via `NoydbOptions`, or if the input violates
|
|
726
|
+
* the resolved schema (oversized icon, disallowed MIME, oversized
|
|
727
|
+
* string, unknown field).
|
|
728
|
+
*
|
|
729
|
+
* `createdAt` is set on the first write and preserved on every
|
|
730
|
+
* subsequent write. `updatedAt` is refreshed on every write.
|
|
731
|
+
* `version` is monotonic — increments on every successful write.
|
|
732
|
+
*/
|
|
733
|
+
setPublicEnvelope(vault: string, input: SetPublicEnvelopeInput): Promise<PublicEnvelope>;
|
|
734
|
+
/**
|
|
735
|
+
* Read the public envelope for a vault. Returns `undefined` when
|
|
736
|
+
* none has been written. Pass `locale` to resolve any locale-map
|
|
737
|
+
* fields to plain strings; omitting `locale` returns the raw map.
|
|
738
|
+
*
|
|
739
|
+
* Works even when the developer didn't enable
|
|
740
|
+
* `publicEnvelope` — reads are passive and never throw on a
|
|
741
|
+
* missing schema (the envelope is plaintext and exists on disk
|
|
742
|
+
* regardless).
|
|
743
|
+
*/
|
|
744
|
+
getPublicEnvelope(vault: string, opts?: {
|
|
745
|
+
readonly locale?: string;
|
|
746
|
+
}): Promise<PublicEnvelope | undefined>;
|
|
747
|
+
/** English summary of the configured auth model — see {@link TeamFacade.describeAuthConfig}. */
|
|
748
|
+
describeAuthConfig(vault: string): Promise<string>;
|
|
749
|
+
/** Mermaid `flowchart TB` source for the auth graph — see {@link TeamFacade.diagramAuthConfig}. */
|
|
750
|
+
diagramAuthConfig(vault: string): Promise<string>;
|
|
751
|
+
/** Per-user enrollment summary — see {@link TeamFacade.describeUserAuth}. */
|
|
752
|
+
describeUserAuth(vault: string, userId: string, factors?: FactorProofBundle): Promise<string>;
|
|
753
|
+
/** Bulk per-user enrollment summary — see {@link TeamFacade.describeAllUsersAuth}. */
|
|
754
|
+
describeAllUsersAuth(vault: string, factors?: FactorProofBundle): Promise<Array<{
|
|
755
|
+
userId: string;
|
|
756
|
+
description: string;
|
|
757
|
+
}>>;
|
|
758
|
+
/** Rotate the user's passphrase (user remembers old) — see {@link TeamFacade.rotatePassphrase}. */
|
|
759
|
+
rotatePassphrase(vault: string, input: RotatePassphraseInput, factors?: FactorProofBundle): Promise<void>;
|
|
760
|
+
/** Reset the passphrase using a recovery proof — see {@link TeamFacade.recoverPassphrase}. */
|
|
761
|
+
recoverPassphrase(vault: string, input: RecoverPassphraseInput, factors?: FactorProofBundle): Promise<RecoverPassphraseResult>;
|
|
762
|
+
/** Deliberate paper/Shamir recovery-code regeneration — see {@link TeamFacade.rotateRecovery}. */
|
|
763
|
+
rotateRecovery(vault: string, options: RotateRecoveryOptions, factors?: FactorProofBundle): Promise<RotateRecoveryResult>;
|
|
764
|
+
/** Atomic create-and-enroll for managed-mode vaults — see {@link TeamFacade.openVaultAndEnrollRecovery}. */
|
|
765
|
+
openVaultAndEnrollRecovery(vault: string, opts: {
|
|
766
|
+
readonly recovery: ReadonlyArray<RecoveryEnrollmentInput>;
|
|
767
|
+
readonly locale?: string;
|
|
768
|
+
}): Promise<{
|
|
769
|
+
readonly vault: Vault;
|
|
770
|
+
readonly recoveryEnrollments: ReadonlyArray<EnrollRecoveryResult>;
|
|
771
|
+
}>;
|
|
772
|
+
/** Recovery flow under managed-passphrase mode — see {@link TeamFacade.recoverManagedPassphrase}. */
|
|
773
|
+
recoverManagedPassphrase(vault: string, options: {
|
|
774
|
+
readonly recoveryProof: RecoveryProof;
|
|
775
|
+
readonly passphrasePolicy?: PassphrasePolicy;
|
|
776
|
+
}): Promise<void>;
|
|
777
|
+
/** Atomic peer-recovery of an existing user's keyring — see {@link TeamFacade.recoverUser}. */
|
|
778
|
+
recoverUser(vault: string, options: RecoverUserOptions, factors?: FactorProofBundle): Promise<void>;
|
|
779
|
+
/** Persist a recovery enrollment (paper or Shamir) — see {@link TeamFacade.enrollRecovery}. */
|
|
780
|
+
enrollRecovery(vault: string, enrollment: RecoveryEnrollmentInput): Promise<EnrollRecoveryResult>;
|
|
781
|
+
/** Read the persisted recovery entries (paper + Shamir) — see {@link TeamFacade.listRecoveryEntries}. */
|
|
782
|
+
listRecoveryEntries(vault: string): Promise<{
|
|
783
|
+
paper: ReadonlyArray<PaperRecoveryEntry>;
|
|
784
|
+
shamir: ReadonlyArray<ShamirRecoveryEntry>;
|
|
785
|
+
}>;
|
|
786
|
+
/** Register a tier-3 quick-unlock state — see {@link TeamFacade.enrollUnlock}. */
|
|
787
|
+
enrollUnlock(vault: string, state: QuickUnlockState, factors?: FactorProofBundle): Promise<void>;
|
|
788
|
+
/** Resume a session via the registered tier-3 state — see {@link TeamFacade.unlockViaPin}. */
|
|
789
|
+
unlockViaPin(vault: string, resume: (state: QuickUnlockState) => Promise<UnlockedKeyring>): Promise<UnlockedKeyring | undefined>;
|
|
790
|
+
/** Drop the tier-3 state for a vault — see {@link TeamFacade.clearQuickUnlock}. */
|
|
791
|
+
clearQuickUnlock(vault: string): void;
|
|
792
|
+
/** Public defensive-copy accessor for the unlocked keyring — see {@link TeamFacade.getKeyring}. */
|
|
793
|
+
getKeyring(vault: string): Promise<UnlockedKeyring>;
|
|
794
|
+
/**
|
|
795
|
+
* Live-reference variant used by the hub's own code paths. Internal
|
|
796
|
+
* mutations on `deks` (e.g. {@link ensureCollectionDEK} adding a
|
|
797
|
+
* collection key) need to land on the cached keyring so subsequent
|
|
798
|
+
* accesses see them. Not exposed publicly — callers outside hub
|
|
799
|
+
* should use {@link getKeyring}, which returns a defensive copy.
|
|
800
|
+
*/
|
|
801
|
+
private _getKeyringInternal;
|
|
802
|
+
/**
|
|
803
|
+
* Take an on-demand checkpoint of the given vault.
|
|
804
|
+
* Requires `snapshotStrategy: withSnapshots({ store })` in `createNoydb`.
|
|
805
|
+
* @throws ValidationError when the vault is not open
|
|
806
|
+
*/
|
|
807
|
+
snapshot(vault: string, opts?: {
|
|
808
|
+
label?: string;
|
|
809
|
+
note?: string;
|
|
810
|
+
}): Promise<SnapshotMeta>;
|
|
811
|
+
/**
|
|
812
|
+
* List all snapshots for the given vault, newest first.
|
|
813
|
+
* Reads only the sidecar index — does not download snapshot bytes.
|
|
814
|
+
*/
|
|
815
|
+
listSnapshots(vault: string): Promise<SnapshotMeta[]>;
|
|
816
|
+
/**
|
|
817
|
+
* Restore the vault to a previously snapshotted state.
|
|
818
|
+
* Runs `verifyBackupIntegrity()` automatically on restore.
|
|
819
|
+
* @throws SnapshotNotFoundError when `version` doesn't exist in the store
|
|
820
|
+
* @throws ValidationError when the vault is not open
|
|
821
|
+
*/
|
|
822
|
+
restoreSnapshot(vault: string, version: string): Promise<void>;
|
|
823
|
+
}
|
|
824
|
+
/** Create a new NOYDB instance. */
|
|
825
|
+
export declare function createNoydb(options: NoydbOptions): Promise<Noydb>;
|
|
826
|
+
export {};
|