@noy-db/hub 0.3.0-pre.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/index.js +9 -8
- package/dist/aggregate/index.js.map +1 -1
- package/dist/api-ZGS6LCOF.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/backup-BJ57IKAO.js +242 -0
- package/dist/backup-BJ57IKAO.js.map +1 -0
- package/dist/blobs/index.js +13 -11
- package/dist/blobs/index.js.map +1 -1
- package/dist/broker/index.js +92 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/bundle/index.js +25 -22
- package/dist/bundle/index.js.map +1 -1
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +31 -31
- package/dist/chunk-2NVOWNI3.js +167 -0
- package/dist/chunk-2NVOWNI3.js.map +1 -0
- package/dist/chunk-3B5VVCNY.js +71 -0
- package/dist/chunk-3LQ2YKO4.js +230 -0
- package/dist/chunk-3QCRBHCY.js +54 -0
- package/dist/chunk-454JXE57.js +1697 -0
- package/dist/chunk-454JXE57.js.map +1 -0
- package/dist/chunk-4CTHCN4J.js +480 -0
- package/dist/chunk-4CTHCN4J.js.map +1 -0
- package/dist/chunk-4GPE63GU.js +111 -0
- package/dist/chunk-4GPE63GU.js.map +1 -0
- package/dist/chunk-4JBYV75E.js +150 -0
- package/dist/chunk-4NXKCLLQ.js +97 -0
- package/dist/chunk-4VNQOLML.js +29 -0
- package/dist/chunk-4VNQOLML.js.map +1 -0
- package/dist/chunk-5M5DVGV7.js +69 -0
- package/dist/chunk-5O3XF4DV.js +150 -0
- package/dist/chunk-5O3XF4DV.js.map +1 -0
- package/dist/chunk-5YOLBEQ6.js +30 -0
- package/dist/chunk-6CRIV7DE.js +129 -0
- package/dist/chunk-6JTIAGHD.js +621 -0
- package/dist/chunk-6JTIAGHD.js.map +1 -0
- package/dist/chunk-6QTNZJBS.js +255 -0
- package/dist/chunk-6T2SCQRU.js +86 -0
- package/dist/chunk-7DSTRQIJ.js +45 -0
- package/dist/chunk-AUSTCW2X.js +589 -0
- package/dist/chunk-B3HJYUOF.js +209 -0
- package/dist/chunk-BDVFPG6Y.js +164 -0
- package/dist/chunk-BIOUI4HL.js +1554 -0
- package/dist/chunk-BIOUI4HL.js.map +1 -0
- package/dist/chunk-CAF6WOK7.js +36 -0
- package/dist/chunk-CDUQTA3Z.js +381 -0
- package/dist/chunk-CDUQTA3Z.js.map +1 -0
- package/dist/chunk-CIE2BASH.js +404 -0
- package/dist/chunk-CRI4OUV4.js +42 -0
- package/dist/chunk-DLG74CNB.js +91 -0
- package/dist/chunk-E5ZQT5KX.js +30 -0
- package/dist/chunk-E5ZQT5KX.js.map +1 -0
- package/dist/chunk-EQO2UVP4.js +247 -0
- package/dist/chunk-EQO2UVP4.js.map +1 -0
- package/dist/chunk-ERJ7FU55.js +367 -0
- package/dist/chunk-EVVGJDRQ.js +205 -0
- package/dist/chunk-EVX47VBM.js +74 -0
- package/dist/chunk-EVX47VBM.js.map +1 -0
- package/dist/chunk-EXK7QRWF.js +59 -0
- package/dist/chunk-EYZ6IQ6X.js +202 -0
- package/dist/chunk-F64IRYG3.js +45 -0
- package/dist/chunk-FHS2HQSH.js +823 -0
- package/dist/chunk-FM3G3NOY.js +206 -0
- package/dist/chunk-FM3G3NOY.js.map +1 -0
- package/dist/chunk-FUG4SFN3.js +36 -0
- package/dist/chunk-FUG4SFN3.js.map +1 -0
- package/dist/chunk-GKEWXIV5.js +80 -0
- package/dist/chunk-GTGPO5KW.js +59 -0
- package/dist/chunk-HB3RFQSC.js +95 -0
- package/dist/chunk-HDMEGAQE.js +957 -0
- package/dist/chunk-HDMEGAQE.js.map +1 -0
- package/dist/chunk-HDQIIUPH.js +135 -0
- package/dist/chunk-HDQIIUPH.js.map +1 -0
- package/dist/chunk-HTJQYHZP.js +344 -0
- package/dist/chunk-HTJQYHZP.js.map +1 -0
- package/dist/chunk-I6GALP6E.js +99 -0
- package/dist/chunk-IGJCYUT5.js +99 -0
- package/dist/chunk-IGJCYUT5.js.map +1 -0
- package/dist/chunk-IL6POWCW.js +130 -0
- package/dist/chunk-IU6SNYX6.js +117 -0
- package/dist/chunk-J2ZX2XUV.js +778 -0
- package/dist/chunk-JIF24JPM.js +495 -0
- package/dist/chunk-JIF24JPM.js.map +1 -0
- package/dist/chunk-JK733I5V.js +23 -0
- package/dist/chunk-JK733I5V.js.map +1 -0
- package/dist/chunk-JKJOGPZN.js +29 -0
- package/dist/chunk-JNAI2HN2.js +32 -0
- package/dist/chunk-JNAI2HN2.js.map +1 -0
- package/dist/chunk-JZUV47FZ.js +41 -0
- package/dist/chunk-K5IMOGHB.js +30 -0
- package/dist/chunk-KPZS5QAQ.js +151 -0
- package/dist/chunk-KPZS5QAQ.js.map +1 -0
- package/dist/chunk-KSKBRKGJ.js +291 -0
- package/dist/chunk-KSKBRKGJ.js.map +1 -0
- package/dist/chunk-LASZKVMO.js +382 -0
- package/dist/chunk-LXEXBTKL.js +515 -0
- package/dist/chunk-LXEXBTKL.js.map +1 -0
- package/dist/chunk-M4CV6BRT.js +524 -0
- package/dist/chunk-M4CV6BRT.js.map +1 -0
- package/dist/chunk-MEFJPTZ4.js +371 -0
- package/dist/chunk-MEFJPTZ4.js.map +1 -0
- package/dist/chunk-MV43JSJF.js +265 -0
- package/dist/chunk-MV43JSJF.js.map +1 -0
- package/dist/chunk-NJ4EOKMB.js +392 -0
- package/dist/chunk-NJ4EOKMB.js.map +1 -0
- package/dist/chunk-NR5LT5RY.js +135 -0
- package/dist/chunk-NWSGI5C7.js +261 -0
- package/dist/chunk-NWSGI5C7.js.map +1 -0
- package/dist/chunk-OSDB5WW3.js +739 -0
- package/dist/chunk-OSDB5WW3.js.map +1 -0
- package/dist/chunk-PN2XMATY.js +37 -0
- package/dist/chunk-PN2XMATY.js.map +1 -0
- package/dist/chunk-Q5VNKNE5.js +70 -0
- package/dist/chunk-QLWMEXCT.js +21 -0
- package/dist/chunk-QRB7NAOJ.js +123 -0
- package/dist/chunk-R4ROFEYC.js +74 -0
- package/dist/chunk-RCVJZMFE.js +164 -0
- package/dist/chunk-RCVJZMFE.js.map +1 -0
- package/dist/chunk-RIX4V2TB.js +367 -0
- package/dist/chunk-RYCTDFUX.js +40 -0
- package/dist/chunk-RZ5SVOYR.js +155 -0
- package/dist/chunk-SLFHQTTW.js +99 -0
- package/dist/chunk-SNZ6URZZ.js +2782 -0
- package/dist/chunk-SNZ6URZZ.js.map +1 -0
- package/dist/chunk-T2FFWNPK.js +75 -0
- package/dist/chunk-T2FFWNPK.js.map +1 -0
- package/dist/chunk-UNFPPVNI.js +23 -0
- package/dist/chunk-VFUPHI2Z.js +333 -0
- package/dist/chunk-VFUPHI2Z.js.map +1 -0
- package/dist/chunk-VLFCJYTL.js +235 -0
- package/dist/chunk-VN3DBQAU.js +124 -0
- package/dist/chunk-VYYM3MEN.js +98 -0
- package/dist/chunk-VYYM3MEN.js.map +1 -0
- package/dist/chunk-VZRODIM3.js +49 -0
- package/dist/chunk-W22IKJE2.js +94 -0
- package/dist/chunk-X3YYQWOQ.js +155 -0
- package/dist/chunk-X7QBD67R.js +14405 -0
- package/dist/chunk-X7QBD67R.js.map +1 -0
- package/dist/chunk-XDYREZWE.js +1128 -0
- package/dist/chunk-XDYREZWE.js.map +1 -0
- package/dist/chunk-XWZVFISC.js +720 -0
- package/dist/chunk-XWZVFISC.js.map +1 -0
- package/dist/chunk-YFXZEAYK.js +85 -0
- package/dist/chunk-ZAJAVEXY.js +50 -0
- package/dist/chunk-ZICD77GM.js +34 -0
- package/dist/chunk-ZJ2AK4V7.js +38 -0
- package/dist/chunk-ZJ2AK4V7.js.map +1 -0
- package/dist/chunk-ZUODRVHY.js +14 -0
- package/dist/classified/index.js +5 -3
- package/dist/classified-marker-CZKA6ITE.js +28 -0
- package/dist/classified-marker-CZKA6ITE.js.map +1 -0
- package/dist/collection-facade-TLWIPI76.js +44 -0
- package/dist/computed-ZIQTYTDI.js +11 -0
- package/dist/consent/index.js +9 -9
- package/dist/crdt/index.js +1 -1
- package/dist/dead-filter-ESOBZZP5.js +28 -0
- package/dist/delegation-W7ZV2322.js +25 -0
- package/dist/derivations/index.js +12 -11
- package/dist/derive-H2BJTLUI.js +21 -0
- package/dist/enclave-AP3I5W7O.js +141 -0
- package/dist/executor-KGWTNEQD.js +9 -0
- package/dist/executor-OVEXR6RT.js +9 -0
- package/dist/executor-UNEH5ZYH.js +25 -0
- package/dist/export-accessible-PCMXSUZS.js +23 -0
- package/dist/extract-partition-SWHFSYJO.js +38 -0
- package/dist/fanout-sidecar-A765THMX.js +74 -0
- package/dist/find-N6345CNT.js +11 -0
- package/dist/forget/index.js +10 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +6 -6
- package/dist/history/index.js +14 -11
- package/dist/history/index.js.map +1 -1
- package/dist/i18n/index.js +50 -37
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.d.ts +307 -1459
- package/dist/index.js +595 -198
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +7 -7
- package/dist/indexing/index.js.map +1 -1
- package/dist/issue-5OKB6I2R.js +19 -0
- package/dist/kernel/best-effort-revert.d.ts +52 -0
- package/dist/kernel/cache/index.d.ts +10 -0
- package/dist/kernel/cache/lru.d.ts +97 -0
- package/dist/kernel/cache/policy.d.ts +32 -0
- package/dist/kernel/collection-config.d.ts +809 -0
- package/dist/kernel/collection.d.ts +1522 -0
- package/dist/kernel/constants.d.ts +18 -0
- package/dist/kernel/debug.d.ts +25 -0
- package/dist/kernel/enclave/broker/proof.d.ts +154 -0
- package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
- package/dist/kernel/enclave/classify/compare.d.ts +10 -0
- package/dist/kernel/enclave/classify/digest.d.ts +8 -0
- package/dist/kernel/enclave/classify/find.d.ts +36 -0
- package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
- package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
- package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
- package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
- package/dist/kernel/enclave/classify/verify.d.ts +36 -0
- package/dist/kernel/enclave/classify/write.d.ts +8 -0
- package/dist/kernel/enclave/crypto.d.ts +263 -0
- package/dist/kernel/enclave/index.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
- package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
- package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
- package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
- package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
- package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
- package/dist/kernel/env-check.d.ts +1 -0
- package/dist/kernel/errors.d.ts +1922 -0
- package/dist/kernel/events.d.ts +11 -0
- package/dist/kernel/lazy-count.d.ts +13 -0
- package/dist/kernel/memory-store.d.ts +17 -0
- package/dist/kernel/mutation.d.ts +14 -0
- package/dist/kernel/noydb.d.ts +826 -0
- package/dist/kernel/paths.d.ts +25 -0
- package/dist/kernel/query/builder.d.ts +520 -0
- package/dist/kernel/query/index.d.ts +31 -0
- package/dist/kernel/query/join.d.ts +205 -0
- package/dist/kernel/query/live.d.ts +111 -0
- package/dist/kernel/query/predicate.d.ts +139 -0
- package/dist/kernel/query/scan-builder.d.ts +334 -0
- package/dist/kernel/refs.d.ts +205 -0
- package/dist/kernel/schema.d.ts +134 -0
- package/dist/kernel/sync-policy.d.ts +188 -0
- package/dist/kernel/tier-visibility.d.ts +54 -0
- package/dist/kernel/types.d.ts +3239 -0
- package/dist/kernel/util/discriminant.d.ts +58 -0
- package/dist/kernel/util/index.d.ts +14 -0
- package/dist/kernel/util/sanitize-filename.d.ts +75 -0
- package/dist/kernel/validation.d.ts +130 -0
- package/dist/kernel/vault.d.ts +1740 -0
- package/dist/kernel/via/compose.d.ts +144 -0
- package/dist/kernel/via/dispatch.d.ts +195 -0
- package/dist/kernel/via/graph-wiring.d.ts +145 -0
- package/dist/kernel/via/graph.d.ts +166 -0
- package/dist/kernel/via/index.d.ts +200 -0
- package/dist/kernel/via/pipeline.d.ts +266 -0
- package/dist/kernel/via/reconcile.d.ts +153 -0
- package/dist/kernel/via/taint-binding.d.ts +66 -0
- package/dist/kernel/write-queue.d.ts +46 -0
- package/dist/ledger-GFBKVPV4.js +42 -0
- package/dist/legacy/bundle.d.ts +30 -0
- package/dist/legacy/kernel.d.ts +33 -0
- package/dist/liberate-3VDOT4KO.js +24 -0
- package/dist/link-set-Z7Q2ASFX.js +31 -0
- package/dist/materialized-views/index.js +19 -15
- package/dist/noydb-ZCJOYBDI.js +68 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -12
- package/dist/pod/index.js +11 -11
- package/dist/policy-Z3RUAIY2.js +41 -0
- package/dist/port/as/index.d.ts +26 -0
- package/dist/port/at/index.d.ts +18 -0
- package/dist/port/by/default-provider.d.ts +9 -0
- package/dist/port/by/index.d.ts +17 -0
- package/dist/port/by/types.d.ts +86 -0
- package/dist/port/in/index.d.ts +21 -0
- package/dist/port/on/index.d.ts +27 -0
- package/dist/port/to/index.d.ts +19 -0
- package/dist/port/ui/index.d.ts +21 -0
- package/dist/port/with/blob-strategy.d.ts +98 -0
- package/dist/port/with/broker-strategy.d.ts +84 -0
- package/dist/port/with/capabilities.d.ts +31 -0
- package/dist/port/with/classified-marker.d.ts +9 -0
- package/dist/port/with/classified-strategy.d.ts +62 -0
- package/dist/port/with/computed-strategy.d.ts +19 -0
- package/dist/port/with/i18n-strategy.d.ts +175 -0
- package/dist/port/with/index.d.ts +18 -0
- package/dist/port/with/lazy-strategy.d.ts +48 -0
- package/dist/port/with/lookup-strategy.d.ts +129 -0
- package/dist/port/with/service-bus.d.ts +156 -0
- package/dist/port/with/team-strategy.d.ts +36 -0
- package/dist/port/with/write-hooks.d.ts +34 -0
- package/dist/portability/index.js +8 -8
- package/dist/post-register-JTH76BLY.js +60 -0
- package/dist/post-register-JTH76BLY.js.map +1 -0
- package/dist/public-envelope-B4KNWVUA.js +32 -0
- package/dist/purge-scope-FGNNLWHD.js +24 -0
- package/dist/purge-scope-FGNNLWHD.js.map +1 -0
- package/dist/query/index.js +9 -6
- package/dist/read-only-facade-CHCKSEPD.js +8 -0
- package/dist/register-VAHONCID.js +23 -0
- package/dist/registry-7MLVD3VO.js +19 -0
- package/dist/registry-EPKPD5SM.js +18 -0
- package/dist/registry-P5T7PS2U.js +9 -0
- package/dist/request-withdrawal-TI3A5WPS.js +31 -0
- package/dist/reveal-DIBHLUZX.js +38 -0
- package/dist/reveal-DIBHLUZX.js.map +1 -0
- package/dist/revoke-FDRD6GRW.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/seed-Q6M2IZFL.js +231 -0
- package/dist/seed-Q6M2IZFL.js.map +1 -0
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-MUWEIUI6.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/stale-OSQ7J3AA.js +29 -0
- package/dist/storage-MVFCGEQE.js +23 -0
- package/dist/store-coordination-provider-64OEZFGS.js +142 -0
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +14 -10
- package/dist/to/index.js +1 -2
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/verify-ZASTRNPR.js +140 -0
- package/dist/verify-ZASTRNPR.js.map +1 -0
- package/dist/via/blob/active.d.ts +34 -0
- package/dist/via/blob/binding.d.ts +86 -0
- package/dist/via/blob/index.d.ts +34 -0
- package/dist/via/classified/active.d.ts +3 -0
- package/dist/via/classified/binding.d.ts +83 -0
- package/dist/via/classified/config-drift.d.ts +34 -0
- package/dist/via/classified/descriptor.d.ts +66 -0
- package/dist/via/classified/errors.d.ts +19 -0
- package/dist/via/classified/guards.d.ts +23 -0
- package/dist/via/classified/index.d.ts +11 -0
- package/dist/via/classified/presets.d.ts +65 -0
- package/dist/via/classified/resolve.d.ts +9 -0
- package/dist/via/classified/strategy.d.ts +11 -0
- package/dist/via/classified/validators.d.ts +3 -0
- package/dist/via/classified/write.d.ts +4 -0
- package/dist/via/computed/binding.d.ts +34 -0
- package/dist/via/computed/descriptor.d.ts +35 -0
- package/dist/via/i18n/active.d.ts +28 -0
- package/dist/via/i18n/binding.d.ts +36 -0
- package/dist/via/i18n/core.d.ts +267 -0
- package/dist/via/i18n/densify.d.ts +24 -0
- package/dist/via/i18n/dictionary.d.ts +200 -0
- package/dist/via/i18n/index.d.ts +21 -0
- package/dist/via/i18n/policy.d.ts +44 -0
- package/dist/via/i18n/script.d.ts +26 -0
- package/dist/via/i18n/strategy.d.ts +13 -0
- package/dist/via/lookup/active.d.ts +19 -0
- package/dist/via/lookup/binding.d.ts +99 -0
- package/dist/via/lookup/descriptor.d.ts +123 -0
- package/dist/via/lookup/handle.d.ts +220 -0
- package/dist/via/lookup/index.d.ts +17 -0
- package/dist/via/lookup/registry.d.ts +228 -0
- package/dist/via/lookup/snapshot.d.ts +67 -0
- package/dist/via/money/arith.d.ts +68 -0
- package/dist/via/money/binding.d.ts +21 -0
- package/dist/via/money/branded.d.ts +61 -0
- package/dist/via/money/descriptor.d.ts +73 -0
- package/dist/via/money/fixed-point.d.ts +51 -0
- package/dist/via/money/index.d.ts +15 -0
- package/dist/via/money/iso4217.d.ts +6 -0
- package/dist/via/money/money-reducer.d.ts +33 -0
- package/dist/via/money/normalize.d.ts +105 -0
- package/dist/via/money/paths.d.ts +61 -0
- package/dist/via/money/where.d.ts +127 -0
- package/dist/walk-SVNDIZ62.js +241 -0
- package/dist/with/index.js +11 -11
- package/dist/with-audit/attestation/active.d.ts +10 -0
- package/dist/with-audit/attestation/index.d.ts +16 -0
- package/dist/with-audit/attestation/issue.d.ts +29 -0
- package/dist/with-audit/attestation/revoke.d.ts +15 -0
- package/dist/with-audit/attestation/signer.d.ts +33 -0
- package/dist/with-audit/attestation/strategy.d.ts +44 -0
- package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
- package/dist/with-audit/consent/active.d.ts +14 -0
- package/dist/with-audit/consent/consent.d.ts +114 -0
- package/dist/with-audit/consent/index.d.ts +14 -0
- package/dist/with-audit/consent/strategy.d.ts +36 -0
- package/dist/with-audit/forget/active.d.ts +31 -0
- package/dist/with-audit/forget/index.d.ts +28 -0
- package/dist/with-audit/forget/purge-scope.d.ts +54 -0
- package/dist/with-audit/forget/strategy.d.ts +199 -0
- package/dist/with-audit/forget/subject-index.d.ts +83 -0
- package/dist/with-audit/guards/executor.d.ts +26 -0
- package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
- package/dist/with-audit/guards/index.d.ts +10 -0
- package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
- package/dist/with-audit/guards/registry.d.ts +83 -0
- package/dist/with-audit/guards/transition-guard.d.ts +82 -0
- package/dist/with-audit/guards/types.d.ts +134 -0
- package/dist/with-audit/guards/with-guard.d.ts +15 -0
- package/dist/with-audit/periods/active.d.ts +11 -0
- package/dist/with-audit/periods/index.d.ts +18 -0
- package/dist/with-audit/periods/periods.d.ts +417 -0
- package/dist/with-audit/periods/strategy.d.ts +32 -0
- package/dist/with-audit/periods/vault-facade.d.ts +95 -0
- package/dist/with-audit/portability/active.d.ts +11 -0
- package/dist/with-audit/portability/export-accessible.d.ts +46 -0
- package/dist/with-audit/portability/index.d.ts +18 -0
- package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
- package/dist/with-audit/portability/strategy.d.ts +31 -0
- package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
- package/dist/with-audit/sealed-record/active.d.ts +9 -0
- package/dist/with-audit/sealed-record/index.d.ts +55 -0
- package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
- package/dist/with-audit/sealed-record/types.d.ts +27 -0
- package/dist/with-audit/tiers/active.d.ts +9 -0
- package/dist/with-audit/tiers/index.d.ts +394 -0
- package/dist/with-audit/tiers/strategy.d.ts +36 -0
- package/dist/with-cargo/active.d.ts +11 -0
- package/dist/with-cargo/adopt-partition.d.ts +81 -0
- package/dist/with-cargo/decrypt-partition.d.ts +19 -0
- package/dist/with-cargo/describe-extraction.d.ts +41 -0
- package/dist/with-cargo/extract-partition.d.ts +155 -0
- package/dist/with-cargo/index.d.ts +33 -0
- package/dist/with-cargo/strategy.d.ts +30 -0
- package/dist/with-cargo/vault-diff.d.ts +144 -0
- package/dist/with-cargo/walk-closure.d.ts +67 -0
- package/dist/with-commit/crdt/active.d.ts +25 -0
- package/dist/with-commit/crdt/crdt.d.ts +42 -0
- package/dist/with-commit/crdt/index.d.ts +16 -0
- package/dist/with-commit/crdt/strategy.d.ts +25 -0
- package/dist/with-commit/history/active.d.ts +40 -0
- package/dist/with-commit/history/diff.d.ts +23 -0
- package/dist/with-commit/history/history.d.ts +73 -0
- package/dist/with-commit/history/index.d.ts +30 -0
- package/dist/with-commit/history/ledger/constants.d.ts +37 -0
- package/dist/with-commit/history/ledger/entry.d.ts +195 -0
- package/dist/with-commit/history/ledger/hash.d.ts +30 -0
- package/dist/with-commit/history/ledger/index.d.ts +19 -0
- package/dist/with-commit/history/ledger/patch.d.ts +99 -0
- package/dist/with-commit/history/ledger/store.d.ts +356 -0
- package/dist/with-commit/history/strategy.d.ts +136 -0
- package/dist/with-commit/history/time-machine.d.ts +202 -0
- package/dist/with-commit/numbering/descriptor.d.ts +27 -0
- package/dist/with-commit/numbering/index.d.ts +69 -0
- package/dist/with-commit/sequence/active.d.ts +10 -0
- package/dist/with-commit/sequence/index.d.ts +150 -0
- package/dist/with-commit/sequence/strategy.d.ts +26 -0
- package/dist/with-commit/tx/active.d.ts +27 -0
- package/dist/with-commit/tx/dry-run.d.ts +29 -0
- package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
- package/dist/with-commit/tx/index.d.ts +13 -0
- package/dist/with-commit/tx/invariants.d.ts +68 -0
- package/dist/with-commit/tx/strategy.d.ts +23 -0
- package/dist/with-commit/tx/transaction.d.ts +212 -0
- package/dist/with-fork/archive/engine.d.ts +71 -0
- package/dist/with-fork/archive/index.d.ts +23 -0
- package/dist/with-fork/shadow/active.d.ts +6 -0
- package/dist/with-fork/shadow/index.d.ts +14 -0
- package/dist/with-fork/shadow/strategy.d.ts +28 -0
- package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
- package/dist/with-fork/snapshots/active.d.ts +20 -0
- package/dist/with-fork/snapshots/engine.d.ts +36 -0
- package/dist/with-fork/snapshots/index.d.ts +5 -0
- package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
- package/dist/with-fork/snapshots/policy.d.ts +23 -0
- package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
- package/dist/with-fork/snapshots/strategy.d.ts +48 -0
- package/dist/with-formula/computed/index.d.ts +48 -0
- package/dist/with-formula/computed/lazy.d.ts +13 -0
- package/dist/with-formula/derivations/executor.d.ts +61 -0
- package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
- package/dist/with-formula/derivations/index.d.ts +6 -0
- package/dist/with-formula/derivations/registry.d.ts +67 -0
- package/dist/with-formula/derivations/stale.d.ts +39 -0
- package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
- package/dist/with-formula/derivations/types.d.ts +248 -0
- package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
- package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
- package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
- package/dist/with-formula/materialized-views/executor.d.ts +80 -0
- package/dist/with-formula/materialized-views/index.d.ts +11 -0
- package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
- package/dist/with-formula/materialized-views/registry.d.ts +99 -0
- package/dist/with-formula/materialized-views/stale.d.ts +113 -0
- package/dist/with-formula/materialized-views/types.d.ts +318 -0
- package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
- package/dist/with-formula/overlay-views/index.d.ts +5 -0
- package/dist/with-formula/overlay-views/registry.d.ts +42 -0
- package/dist/with-formula/overlay-views/types.d.ts +97 -0
- package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
- package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
- package/dist/with-lookup/aggregate/active.d.ts +33 -0
- package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
- package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
- package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
- package/dist/with-lookup/aggregate/index.d.ts +23 -0
- package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
- package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
- package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
- package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
- package/dist/with-lookup/embeddings/index.d.ts +4 -0
- package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
- package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
- package/dist/with-lookup/indexing/active.d.ts +30 -0
- package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
- package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
- package/dist/with-lookup/indexing/index.d.ts +27 -0
- package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
- package/dist/with-lookup/indexing/strategy.d.ts +56 -0
- package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
- package/dist/with-lookup/search/active.d.ts +10 -0
- package/dist/with-lookup/search/build-docs.d.ts +15 -0
- package/dist/with-lookup/search/collection-facade.d.ts +163 -0
- package/dist/with-lookup/search/fuse.d.ts +22 -0
- package/dist/with-lookup/search/index-store.d.ts +19 -0
- package/dist/with-lookup/search/index.d.ts +19 -0
- package/dist/with-lookup/search/inverted-index.d.ts +47 -0
- package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
- package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
- package/dist/with-lookup/search/scan.d.ts +28 -0
- package/dist/with-lookup/search/segment.d.ts +15 -0
- package/dist/with-lookup/search/serialize.d.ts +4 -0
- package/dist/with-lookup/search/snippet.d.ts +5 -0
- package/dist/with-lookup/search/strategy.d.ts +41 -0
- package/dist/with-lookup/search/tokenize.d.ts +12 -0
- package/dist/with-party/auth-introspection/index.d.ts +44 -0
- package/dist/with-party/broker/active.d.ts +23 -0
- package/dist/with-party/broker/index.d.ts +28 -0
- package/dist/with-party/broker/seed.d.ts +77 -0
- package/dist/with-party/custody/active.d.ts +10 -0
- package/dist/with-party/custody/index.d.ts +69 -0
- package/dist/with-party/custody/liberate.d.ts +64 -0
- package/dist/with-party/custody/strategy.d.ts +48 -0
- package/dist/with-party/directory/index.d.ts +11 -0
- package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
- package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
- package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
- package/dist/with-party/directory/storage.d.ts +33 -0
- package/dist/with-party/directory/types.d.ts +43 -0
- package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
- package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
- package/dist/with-party/directory/visibility.d.ts +47 -0
- package/dist/with-party/policy/engine.d.ts +60 -0
- package/dist/with-party/policy/index.d.ts +15 -0
- package/dist/with-party/policy/noydb-facade.d.ts +39 -0
- package/dist/with-party/policy/presets.d.ts +38 -0
- package/dist/with-party/policy/storage.d.ts +31 -0
- package/dist/with-party/session/active.d.ts +34 -0
- package/dist/with-party/session/dev-unlock.d.ts +128 -0
- package/dist/with-party/session/index.d.ts +23 -0
- package/dist/with-party/session/session-policy.d.ts +92 -0
- package/dist/with-party/session/session.d.ts +131 -0
- package/dist/with-party/session/strategy.d.ts +42 -0
- package/dist/with-party/session/unlock-state.d.ts +47 -0
- package/dist/with-party/sync/index.d.ts +31 -0
- package/dist/with-party/tab-coordination.d.ts +73 -0
- package/dist/with-party/tab-write-relay.d.ts +39 -0
- package/dist/with-party/team/active.d.ts +13 -0
- package/dist/with-party/team/authenticators.d.ts +95 -0
- package/dist/with-party/team/deed.d.ts +97 -0
- package/dist/with-party/team/delegation.d.ts +88 -0
- package/dist/with-party/team/index.d.ts +38 -0
- package/dist/with-party/team/keyring.d.ts +318 -0
- package/dist/with-party/team/magic-link-grant.d.ts +152 -0
- package/dist/with-party/team/managed-passphrase.d.ts +280 -0
- package/dist/with-party/team/noydb-facade.d.ts +484 -0
- package/dist/with-party/team/peer-recover.d.ts +81 -0
- package/dist/with-party/team/presence.d.ts +81 -0
- package/dist/with-party/team/recovery.d.ts +191 -0
- package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
- package/dist/with-party/team/rotate-recover.d.ts +275 -0
- package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
- package/dist/with-party/team/strategy.d.ts +9 -0
- package/dist/with-party/team/sync-active.d.ts +33 -0
- package/dist/with-party/team/sync-credentials.d.ts +113 -0
- package/dist/with-party/team/sync-strategy.d.ts +67 -0
- package/dist/with-party/team/sync-transaction.d.ts +39 -0
- package/dist/with-party/team/sync.d.ts +174 -0
- package/dist/with-party/team/tiers.d.ts +39 -0
- package/dist/with-party/team/wrapped-deks.d.ts +86 -0
- package/dist/with-pod/backup.d.ts +74 -0
- package/dist/with-pod/bundle.d.ts +414 -0
- package/dist/with-pod/format.d.ts +203 -0
- package/dist/with-pod/index.d.ts +20 -0
- package/dist/with-pod/pod-store.d.ts +54 -0
- package/dist/with-pod/ulid.d.ts +64 -0
- package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
- package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
- package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
- package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
- package/dist/with-shape/blobs/import-external.d.ts +50 -0
- package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
- package/dist/with-shape/blobs/object-projection.d.ts +70 -0
- package/dist/with-shape/introspection/describe.d.ts +237 -0
- package/dist/with-shape/introspection/field-meta.d.ts +61 -0
- package/dist/with-shape/introspection/fields.d.ts +14 -0
- package/dist/with-shape/introspection/index.d.ts +12 -0
- package/dist/with-shape/introspection/json-schema.d.ts +13 -0
- package/dist/with-shape/introspection/meta.d.ts +22 -0
- package/dist/with-shape/introspection/projection.d.ts +13 -0
- package/dist/with-shape/introspection/types.d.ts +154 -0
- package/dist/with-shape/introspection/walk.d.ts +50 -0
- package/dist/with-shape/links/lazy-handle.d.ts +36 -0
- package/dist/with-shape/links/link-set.d.ts +67 -0
- package/dist/with-shape/links/names.d.ts +65 -0
- package/dist/with-shape/links/vault-facade.d.ts +211 -0
- package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
- package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
- package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
- package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
- package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
- package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
- package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
- package/dist/with-shape/satellites/declare.d.ts +60 -0
- package/dist/with-shape/satellites/existence.d.ts +5 -0
- package/dist/with-shape/satellites/fanout.d.ts +38 -0
- package/dist/with-shape/satellites/forget.d.ts +47 -0
- package/dist/with-shape/satellites/index.d.ts +3 -0
- package/dist/with-shape/satellites/joined.d.ts +19 -0
- package/dist/with-shape/satellites/marker.d.ts +10 -0
- package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
- package/dist/with-shape/satellites/post-register.d.ts +6 -0
- package/dist/with-shape/satellites/proxy.d.ts +37 -0
- package/dist/with-shape/satellites/raw-target.d.ts +14 -0
- package/dist/with-shape/satellites/registry.d.ts +19 -0
- package/dist/with-shape/satellites/types.d.ts +37 -0
- package/dist/with-shape/satellites/validate.d.ts +17 -0
- package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
- package/dist/with-shape/schema-update/cutover.d.ts +5 -0
- package/dist/with-shape/schema-update/delta.d.ts +2 -0
- package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
- package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
- package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
- package/dist/with-shape/schema-update/fence.d.ts +15 -0
- package/dist/with-shape/schema-update/gate.d.ts +16 -0
- package/dist/with-shape/schema-update/index.d.ts +6 -0
- package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
- package/dist/with-shape/schema-update/strategies.d.ts +12 -0
- package/dist/with-shape/schema-update/types.d.ts +53 -0
- package/dist/with-store/index.d.ts +15 -0
- package/dist/with-store/lazy/active.d.ts +12 -0
- package/dist/with-store/lazy/index.d.ts +14 -0
- package/dist/with-store/lazy/strategy.d.ts +9 -0
- package/dist/with-store/route-store.d.ts +259 -0
- package/dist/with-store/store-middleware.d.ts +189 -0
- package/dist/withdraw-accessible-WZIEVWSR.js +28 -0
- package/package.json +47 -55
- package/dist/adapter/index.d.ts +0 -5
- package/dist/adapter/index.js +0 -15
- package/dist/aggregate/index.d.ts +0 -42
- package/dist/api-JDWL67WL.js +0 -20
- package/dist/as/index.d.ts +0 -7
- package/dist/at/index.d.ts +0 -5
- package/dist/attestation/index.d.ts +0 -20
- package/dist/backup-WRGNTGJF.js +0 -225
- package/dist/backup-WRGNTGJF.js.map +0 -1
- package/dist/blobs/index.d.ts +0 -44
- package/dist/bundle/index.d.ts +0 -122
- package/dist/bundle-DzWtVw7w.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -9
- package/dist/chunk-25G7PUTA.js +0 -235
- package/dist/chunk-26FSVNBL.js +0 -34
- package/dist/chunk-2PJB6H3H.js +0 -167
- package/dist/chunk-2PJB6H3H.js.map +0 -1
- package/dist/chunk-37JZR7CY.js +0 -91
- package/dist/chunk-3KBK5LU4.js +0 -117
- package/dist/chunk-3YKBGS3I.js +0 -686
- package/dist/chunk-3YKBGS3I.js.map +0 -1
- package/dist/chunk-44DV37ZV.js +0 -75
- package/dist/chunk-44DV37ZV.js.map +0 -1
- package/dist/chunk-47C4CI7R.js +0 -108
- package/dist/chunk-47C4CI7R.js.map +0 -1
- package/dist/chunk-4VDFUBTS.js +0 -275
- package/dist/chunk-4VDFUBTS.js.map +0 -1
- package/dist/chunk-55LSDABW.js +0 -94
- package/dist/chunk-56JB2BGI.js +0 -13003
- package/dist/chunk-56JB2BGI.js.map +0 -1
- package/dist/chunk-5GQE5IDB.js +0 -513
- package/dist/chunk-5GQE5IDB.js.map +0 -1
- package/dist/chunk-5HRJQSKN.js +0 -202
- package/dist/chunk-5HZULLHE.js +0 -404
- package/dist/chunk-5JQMX2EH.js +0 -50
- package/dist/chunk-5UOPIPZC.js +0 -95
- package/dist/chunk-5YBUFCFF.js +0 -135
- package/dist/chunk-62APEMF3.js +0 -280
- package/dist/chunk-62APEMF3.js.map +0 -1
- package/dist/chunk-6P5AJ2ZS.js +0 -120
- package/dist/chunk-6P5AJ2ZS.js.map +0 -1
- package/dist/chunk-6PALJTC2.js +0 -430
- package/dist/chunk-6PALJTC2.js.map +0 -1
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-6Z435B6N.js +0 -1656
- package/dist/chunk-6Z435B6N.js.map +0 -1
- package/dist/chunk-723XB5NX.js +0 -86
- package/dist/chunk-7CZ6YXMO.js +0 -124
- package/dist/chunk-7KTL4RHZ.js +0 -120
- package/dist/chunk-7KTL4RHZ.js.map +0 -1
- package/dist/chunk-7TAV3BFQ.js +0 -766
- package/dist/chunk-7TAV3BFQ.js.map +0 -1
- package/dist/chunk-BASCPHNM.js +0 -380
- package/dist/chunk-BASCPHNM.js.map +0 -1
- package/dist/chunk-BGIZAFY7.js +0 -1
- package/dist/chunk-BJ2XF2RC.js +0 -823
- package/dist/chunk-BM6E4MUT.js +0 -881
- package/dist/chunk-BM6E4MUT.js.map +0 -1
- package/dist/chunk-BTFTHF6Q.js +0 -42
- package/dist/chunk-C4NOLA5X.js +0 -132
- package/dist/chunk-C4NOLA5X.js.map +0 -1
- package/dist/chunk-CHK5VVMI.js +0 -155
- package/dist/chunk-DCVVCJVB.js +0 -45
- package/dist/chunk-EU7HDMT3.js +0 -54
- package/dist/chunk-F3EKFGUS.js +0 -99
- package/dist/chunk-FCOZ7DEC.js +0 -355
- package/dist/chunk-FCOZ7DEC.js.map +0 -1
- package/dist/chunk-FWART3VA.js +0 -205
- package/dist/chunk-FZK3JJJK.js +0 -150
- package/dist/chunk-GDOOG5YQ.js +0 -382
- package/dist/chunk-GLVXQU3E.js +0 -155
- package/dist/chunk-HU55NPHZ.js +0 -80
- package/dist/chunk-I6JJ6VJS.js +0 -97
- package/dist/chunk-I6URUNTD.js +0 -59
- package/dist/chunk-IARAK3PK.js +0 -14
- package/dist/chunk-II6DLDZM.js +0 -30
- package/dist/chunk-J5YUA6JB.js +0 -23
- package/dist/chunk-J7OH6R4K.js +0 -49
- package/dist/chunk-K2WCO3NX.js +0 -1
- package/dist/chunk-L6Q5NA22.js +0 -40
- package/dist/chunk-LFGJG4XZ.js +0 -30
- package/dist/chunk-M3OYTM5Z.js +0 -85
- package/dist/chunk-MOQ5M46U.js +0 -209
- package/dist/chunk-NTPWQH4S.js +0 -589
- package/dist/chunk-OJ64XMPJ.js +0 -1434
- package/dist/chunk-OJ64XMPJ.js.map +0 -1
- package/dist/chunk-OWGAXPRE.js +0 -129
- package/dist/chunk-P2PEPSPK.js +0 -230
- package/dist/chunk-P6TZ3IVN.js +0 -453
- package/dist/chunk-P6TZ3IVN.js.map +0 -1
- package/dist/chunk-PAJCRV7O.js +0 -123
- package/dist/chunk-PMMV5SQC.js +0 -416
- package/dist/chunk-PMMV5SQC.js.map +0 -1
- package/dist/chunk-PPPZIBKY.js +0 -261
- package/dist/chunk-PPPZIBKY.js.map +0 -1
- package/dist/chunk-PVC2FBCQ.js +0 -45
- package/dist/chunk-PYIUDUGS.js +0 -36
- package/dist/chunk-QABECTNN.js +0 -255
- package/dist/chunk-QYMMMKOO.js +0 -164
- package/dist/chunk-R4IVPJHN.js +0 -130
- package/dist/chunk-REWTMYSF.js +0 -32
- package/dist/chunk-REWTMYSF.js.map +0 -1
- package/dist/chunk-RNYDHIQL.js +0 -367
- package/dist/chunk-RUIMKQTA.js +0 -23
- package/dist/chunk-RUIMKQTA.js.map +0 -1
- package/dist/chunk-TCGVRKOS.js +0 -367
- package/dist/chunk-TIAYXOEI.js +0 -99
- package/dist/chunk-TQ3REHVF.js +0 -95
- package/dist/chunk-TQ3REHVF.js.map +0 -1
- package/dist/chunk-TUL5YQWF.js +0 -777
- package/dist/chunk-U7LV2DUN.js +0 -74
- package/dist/chunk-UB3XHGFG.js +0 -181
- package/dist/chunk-UB3XHGFG.js.map +0 -1
- package/dist/chunk-UMH35AQV.js +0 -70
- package/dist/chunk-UWZ7O4NR.js +0 -29
- package/dist/chunk-V76PHWLE.js +0 -41
- package/dist/chunk-VFQOE76I.js +0 -69
- package/dist/chunk-VIWOGJ2O.js +0 -71
- package/dist/chunk-VK6OC22R.js +0 -37
- package/dist/chunk-VK6OC22R.js.map +0 -1
- package/dist/chunk-VVLOWY74.js +0 -150
- package/dist/chunk-VVLOWY74.js.map +0 -1
- package/dist/chunk-W3JABOVB.js +0 -53
- package/dist/chunk-W3JABOVB.js.map +0 -1
- package/dist/chunk-WPNP3NF5.js +0 -1221
- package/dist/chunk-WPNP3NF5.js.map +0 -1
- package/dist/chunk-X5QZAJDB.js +0 -59
- package/dist/chunk-X6VNIRHS.js +0 -239
- package/dist/chunk-X6VNIRHS.js.map +0 -1
- package/dist/chunk-XBPUVQDO.js +0 -664
- package/dist/chunk-XBPUVQDO.js.map +0 -1
- package/dist/chunk-XW5LZYV4.js +0 -21
- package/dist/chunk-YTCCC6NG.js +0 -320
- package/dist/chunk-YTCCC6NG.js.map +0 -1
- package/dist/classified/index.d.ts +0 -17
- package/dist/collection-facade-EJVIN2BY.js +0 -39
- package/dist/computed-6FOFXQPE.js +0 -11
- package/dist/config-drift-RFEVGBKR.js +0 -24
- package/dist/config-drift-RFEVGBKR.js.map +0 -1
- package/dist/consent/index.d.ts +0 -23
- package/dist/crdt/index.d.ts +0 -34
- package/dist/dead-filter-RHMNYOXP.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-IHXOASHV.js +0 -25
- package/dist/derivations/index.d.ts +0 -70
- package/dist/derive-CD3ZVIXK.js +0 -21
- package/dist/describe/index.d.ts +0 -1
- package/dist/describe/index.js +0 -1
- package/dist/describe-C6iHNlqJ.d.ts +0 -162
- package/dist/dev-unlock-wgQ7Ci5I.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-KGEUW2GL.js +0 -123
- package/dist/executor-EUPYHCLU.js +0 -9
- package/dist/executor-KZ4B3PRT.js +0 -9
- package/dist/executor-MHUM2VZK.js +0 -21
- package/dist/export-accessible-Z3NSZZHN.js +0 -23
- package/dist/extract-partition-VSKT35JG.js +0 -36
- package/dist/fanout-sidecar-NBDKKCHT.js +0 -74
- package/dist/find-OH4BEULF.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -35
- package/dist/hash-CwHnoKyW.d.ts +0 -72
- package/dist/history/index.d.ts +0 -61
- package/dist/i18n/index.d.ts +0 -37
- package/dist/in/index.d.ts +0 -5
- package/dist/index-B9QdHytu.d.ts +0 -123
- package/dist/index-CTvUp94-.d.ts +0 -123
- package/dist/index-Dn5GzPg_.d.ts +0 -22138
- package/dist/indexing/index.d.ts +0 -39
- package/dist/issue-AEOL6RXA.js +0 -19
- package/dist/kernel/index.d.ts +0 -32
- package/dist/kernel/index.js +0 -59
- package/dist/lazy/index.d.ts +0 -21
- package/dist/ledger-3LR3YO2W.js +0 -42
- package/dist/liberate-XSEPRWEA.js +0 -24
- package/dist/link-set-NSUIX6BR.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -173
- package/dist/mime-magic-CYbFNQ4h.d.ts +0 -103
- package/dist/noydb-POVTIVQ6.js +0 -62
- package/dist/on/index.d.ts +0 -5
- package/dist/overlay-views/index.d.ts +0 -98
- package/dist/periods/index.d.ts +0 -20
- package/dist/pod/index.d.ts +0 -63
- package/dist/policy-Y7HL2KGA.js +0 -41
- package/dist/portability/index.d.ts +0 -20
- package/dist/post-register-KOFRTCDD.js +0 -55
- package/dist/post-register-KOFRTCDD.js.map +0 -1
- package/dist/public-envelope-NC7SPNMV.js +0 -32
- package/dist/query/index.d.ts +0 -5
- package/dist/read-only-facade-5ADRJVTM.js +0 -8
- package/dist/register-3D6R2MKN.js +0 -23
- package/dist/registry-AI4E46PD.js +0 -19
- package/dist/registry-HSNQ4NBP.js +0 -9
- package/dist/registry-WIX6QCV5.js +0 -17
- package/dist/request-withdrawal-GU4XS2R5.js +0 -31
- package/dist/reveal-5Y777N5Q.js +0 -38
- package/dist/reveal-5Y777N5Q.js.map +0 -1
- package/dist/revoke-ZFETCLYV.js +0 -24
- package/dist/revoke-ZFETCLYV.js.map +0 -1
- package/dist/satellites/index.d.ts +0 -5
- package/dist/sealed-record/index.d.ts +0 -69
- package/dist/session/index.d.ts +0 -44
- package/dist/shadow/index.d.ts +0 -15
- package/dist/signer-GAIMQQ2J.js +0 -25
- package/dist/signer-GAIMQQ2J.js.map +0 -1
- package/dist/snapshots/index.d.ts +0 -26
- package/dist/stale-77LP2EEF.js +0 -14
- package/dist/stale-77LP2EEF.js.map +0 -1
- package/dist/storage-KEXIXLGM.js +0 -23
- package/dist/storage-KEXIXLGM.js.map +0 -1
- package/dist/store-coordination-provider-NJDDZ264.js +0 -142
- package/dist/subject-index-O75wKshW.d.ts +0 -362
- package/dist/sync/index.d.ts +0 -41
- package/dist/team/index.d.ts +0 -155
- package/dist/tiers/index.d.ts +0 -5
- package/dist/to/index.d.ts +0 -5
- package/dist/transition-guard-D5RLJv8S.d.ts +0 -165
- package/dist/tx/index.d.ts +0 -35
- package/dist/ui/index.d.ts +0 -1
- package/dist/ulid-DRH25k3y.d.ts +0 -66
- package/dist/util/index.d.ts +0 -79
- package/dist/validators-C3lrVF-c.d.ts +0 -101
- package/dist/vault-diff-_LSIcOMv.d.ts +0 -147
- package/dist/verify-CAYGXYNO.js +0 -139
- package/dist/verify-CAYGXYNO.js.map +0 -1
- package/dist/walk-SMAE4IEI.js +0 -241
- package/dist/with/index.d.ts +0 -38
- package/dist/with-materialized-view-Xv1-9Bh0.d.ts +0 -27
- package/dist/with-overlayed-view-CuWhq_-C.d.ts +0 -12
- package/dist/with-rollup-K_iwal4b.d.ts +0 -47
- package/dist/withdraw-accessible-Q7BULAN5.js +0 -28
- package/dist/withdraw-accessible-Q7BULAN5.js.map +0 -1
- /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
- /package/dist/{chunk-VIWOGJ2O.js.map → chunk-3B5VVCNY.js.map} +0 -0
- /package/dist/{chunk-P2PEPSPK.js.map → chunk-3LQ2YKO4.js.map} +0 -0
- /package/dist/{chunk-EU7HDMT3.js.map → chunk-3QCRBHCY.js.map} +0 -0
- /package/dist/{chunk-FZK3JJJK.js.map → chunk-4JBYV75E.js.map} +0 -0
- /package/dist/{chunk-I6JJ6VJS.js.map → chunk-4NXKCLLQ.js.map} +0 -0
- /package/dist/{chunk-VFQOE76I.js.map → chunk-5M5DVGV7.js.map} +0 -0
- /package/dist/{chunk-LFGJG4XZ.js.map → chunk-5YOLBEQ6.js.map} +0 -0
- /package/dist/{chunk-OWGAXPRE.js.map → chunk-6CRIV7DE.js.map} +0 -0
- /package/dist/{chunk-QABECTNN.js.map → chunk-6QTNZJBS.js.map} +0 -0
- /package/dist/{chunk-723XB5NX.js.map → chunk-6T2SCQRU.js.map} +0 -0
- /package/dist/{chunk-PVC2FBCQ.js.map → chunk-7DSTRQIJ.js.map} +0 -0
- /package/dist/{chunk-NTPWQH4S.js.map → chunk-AUSTCW2X.js.map} +0 -0
- /package/dist/{chunk-MOQ5M46U.js.map → chunk-B3HJYUOF.js.map} +0 -0
- /package/dist/{chunk-QYMMMKOO.js.map → chunk-BDVFPG6Y.js.map} +0 -0
- /package/dist/{chunk-PYIUDUGS.js.map → chunk-CAF6WOK7.js.map} +0 -0
- /package/dist/{chunk-5HZULLHE.js.map → chunk-CIE2BASH.js.map} +0 -0
- /package/dist/{chunk-BTFTHF6Q.js.map → chunk-CRI4OUV4.js.map} +0 -0
- /package/dist/{chunk-37JZR7CY.js.map → chunk-DLG74CNB.js.map} +0 -0
- /package/dist/{chunk-TCGVRKOS.js.map → chunk-ERJ7FU55.js.map} +0 -0
- /package/dist/{chunk-FWART3VA.js.map → chunk-EVVGJDRQ.js.map} +0 -0
- /package/dist/{chunk-X5QZAJDB.js.map → chunk-EXK7QRWF.js.map} +0 -0
- /package/dist/{chunk-5HRJQSKN.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
- /package/dist/{chunk-DCVVCJVB.js.map → chunk-F64IRYG3.js.map} +0 -0
- /package/dist/{chunk-BJ2XF2RC.js.map → chunk-FHS2HQSH.js.map} +0 -0
- /package/dist/{chunk-HU55NPHZ.js.map → chunk-GKEWXIV5.js.map} +0 -0
- /package/dist/{chunk-I6URUNTD.js.map → chunk-GTGPO5KW.js.map} +0 -0
- /package/dist/{chunk-5UOPIPZC.js.map → chunk-HB3RFQSC.js.map} +0 -0
- /package/dist/{chunk-F3EKFGUS.js.map → chunk-I6GALP6E.js.map} +0 -0
- /package/dist/{chunk-R4IVPJHN.js.map → chunk-IL6POWCW.js.map} +0 -0
- /package/dist/{chunk-3KBK5LU4.js.map → chunk-IU6SNYX6.js.map} +0 -0
- /package/dist/{chunk-TUL5YQWF.js.map → chunk-J2ZX2XUV.js.map} +0 -0
- /package/dist/{chunk-UWZ7O4NR.js.map → chunk-JKJOGPZN.js.map} +0 -0
- /package/dist/{chunk-V76PHWLE.js.map → chunk-JZUV47FZ.js.map} +0 -0
- /package/dist/{chunk-II6DLDZM.js.map → chunk-K5IMOGHB.js.map} +0 -0
- /package/dist/{chunk-GDOOG5YQ.js.map → chunk-LASZKVMO.js.map} +0 -0
- /package/dist/{chunk-5YBUFCFF.js.map → chunk-NR5LT5RY.js.map} +0 -0
- /package/dist/{chunk-UMH35AQV.js.map → chunk-Q5VNKNE5.js.map} +0 -0
- /package/dist/{chunk-XW5LZYV4.js.map → chunk-QLWMEXCT.js.map} +0 -0
- /package/dist/{chunk-PAJCRV7O.js.map → chunk-QRB7NAOJ.js.map} +0 -0
- /package/dist/{chunk-U7LV2DUN.js.map → chunk-R4ROFEYC.js.map} +0 -0
- /package/dist/{chunk-RNYDHIQL.js.map → chunk-RIX4V2TB.js.map} +0 -0
- /package/dist/{chunk-L6Q5NA22.js.map → chunk-RYCTDFUX.js.map} +0 -0
- /package/dist/{chunk-CHK5VVMI.js.map → chunk-RZ5SVOYR.js.map} +0 -0
- /package/dist/{chunk-TIAYXOEI.js.map → chunk-SLFHQTTW.js.map} +0 -0
- /package/dist/{chunk-J5YUA6JB.js.map → chunk-UNFPPVNI.js.map} +0 -0
- /package/dist/{chunk-25G7PUTA.js.map → chunk-VLFCJYTL.js.map} +0 -0
- /package/dist/{chunk-7CZ6YXMO.js.map → chunk-VN3DBQAU.js.map} +0 -0
- /package/dist/{chunk-J7OH6R4K.js.map → chunk-VZRODIM3.js.map} +0 -0
- /package/dist/{chunk-55LSDABW.js.map → chunk-W22IKJE2.js.map} +0 -0
- /package/dist/{chunk-GLVXQU3E.js.map → chunk-X3YYQWOQ.js.map} +0 -0
- /package/dist/{chunk-M3OYTM5Z.js.map → chunk-YFXZEAYK.js.map} +0 -0
- /package/dist/{chunk-5JQMX2EH.js.map → chunk-ZAJAVEXY.js.map} +0 -0
- /package/dist/{chunk-26FSVNBL.js.map → chunk-ZICD77GM.js.map} +0 -0
- /package/dist/{chunk-IARAK3PK.js.map → chunk-ZUODRVHY.js.map} +0 -0
- /package/dist/{api-JDWL67WL.js.map → collection-facade-TLWIPI76.js.map} +0 -0
- /package/dist/{chunk-BGIZAFY7.js.map → computed-ZIQTYTDI.js.map} +0 -0
- /package/dist/{dead-filter-RHMNYOXP.js.map → dead-filter-ESOBZZP5.js.map} +0 -0
- /package/dist/{chunk-K2WCO3NX.js.map → delegation-W7ZV2322.js.map} +0 -0
- /package/dist/{collection-facade-EJVIN2BY.js.map → derive-H2BJTLUI.js.map} +0 -0
- /package/dist/{computed-6FOFXQPE.js.map → enclave-AP3I5W7O.js.map} +0 -0
- /package/dist/{delegation-IHXOASHV.js.map → executor-KGWTNEQD.js.map} +0 -0
- /package/dist/{derive-CD3ZVIXK.js.map → executor-OVEXR6RT.js.map} +0 -0
- /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
- /package/dist/{enclave-KGEUW2GL.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
- /package/dist/{executor-EUPYHCLU.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
- /package/dist/{fanout-sidecar-NBDKKCHT.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
- /package/dist/{executor-KZ4B3PRT.js.map → find-N6345CNT.js.map} +0 -0
- /package/dist/{executor-MHUM2VZK.js.map → issue-5OKB6I2R.js.map} +0 -0
- /package/dist/{export-accessible-Z3NSZZHN.js.map → ledger-GFBKVPV4.js.map} +0 -0
- /package/dist/{extract-partition-VSKT35JG.js.map → liberate-3VDOT4KO.js.map} +0 -0
- /package/dist/{find-OH4BEULF.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
- /package/dist/{issue-AEOL6RXA.js.map → noydb-ZCJOYBDI.js.map} +0 -0
- /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
- /package/dist/{ledger-3LR3YO2W.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
- /package/dist/{liberate-XSEPRWEA.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
- /package/dist/{link-set-NSUIX6BR.js.map → register-VAHONCID.js.map} +0 -0
- /package/dist/{noydb-POVTIVQ6.js.map → registry-7MLVD3VO.js.map} +0 -0
- /package/dist/{policy-Y7HL2KGA.js.map → registry-EPKPD5SM.js.map} +0 -0
- /package/dist/{public-envelope-NC7SPNMV.js.map → registry-P5T7PS2U.js.map} +0 -0
- /package/dist/{read-only-facade-5ADRJVTM.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
- /package/dist/{register-3D6R2MKN.js.map → revoke-FDRD6GRW.js.map} +0 -0
- /package/dist/{registry-AI4E46PD.js.map → signer-MUWEIUI6.js.map} +0 -0
- /package/dist/{registry-HSNQ4NBP.js.map → stale-OSQ7J3AA.js.map} +0 -0
- /package/dist/{registry-WIX6QCV5.js.map → storage-MVFCGEQE.js.map} +0 -0
- /package/dist/{store-coordination-provider-NJDDZ264.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
- /package/dist/{walk-SMAE4IEI.js.map → walk-SVNDIZ62.js.map} +0 -0
- /package/dist/{request-withdrawal-GU4XS2R5.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { NoydbStore, NoydbPodStore } from '../kernel/types.js';
|
|
2
|
+
export interface WrapPodStoreOptions {
|
|
3
|
+
/**
|
|
4
|
+
* When `true` (default), every `put()` and `delete()` flushes the full
|
|
5
|
+
* vault snapshot to the bundle backend. Set to `false` for bulk operations
|
|
6
|
+
* and call `store.flush(vaultId)` manually.
|
|
7
|
+
*/
|
|
8
|
+
autoFlush?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface WrappedPodNoydbStore extends NoydbStore {
|
|
11
|
+
/** Manually flush the in-memory snapshot to the bundle backend. */
|
|
12
|
+
flush(vaultId: string): Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Run a batch of mutations without flushing until the callback completes.
|
|
15
|
+
* A single flush is performed at the end.
|
|
16
|
+
*/
|
|
17
|
+
batch(vaultId: string, fn: () => Promise<void>): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Convert a `NoydbPodStore` (blob-oriented read/write with OCC) into the
|
|
21
|
+
* standard six-method `NoydbStore` interface expected by `createNoydb({ store })`.
|
|
22
|
+
*
|
|
23
|
+
* Bundle stores operate on the entire vault as a single serialised unit —
|
|
24
|
+
* ideal for backends like Google Drive, WebDAV, or iCloud Drive that work
|
|
25
|
+
* best with whole-file I/O rather than per-record KV operations.
|
|
26
|
+
*
|
|
27
|
+
* ## Optimistic concurrency
|
|
28
|
+
*
|
|
29
|
+
* The wrapper tracks the `version` token from the last `readBundle` and
|
|
30
|
+
* passes it as `expectedVersion` on every flush. On
|
|
31
|
+
* `PodVersionConflictError`, it re-reads, merges the remote snapshot
|
|
32
|
+
* (last-write-wins per record key), and retries (max 3 attempts).
|
|
33
|
+
*
|
|
34
|
+
* ## Flush modes
|
|
35
|
+
*
|
|
36
|
+
* By default, flushes on every mutation (O(vault size) per write). Options:
|
|
37
|
+
* - `autoFlush: false` + explicit `store.flush(vaultId)` calls
|
|
38
|
+
* - `store.batch(vaultId, async () => { ... })` — defers flush until end
|
|
39
|
+
* - Pair with `syncPolicy: { push: { mode: 'debounce' } }` from
|
|
40
|
+
*/
|
|
41
|
+
export declare function wrapPodStore(bundle: NoydbPodStore, options?: WrapPodStoreOptions): WrappedPodNoydbStore;
|
|
42
|
+
/**
|
|
43
|
+
* Type-safe factory helper for `NoydbPodStore` implementations,
|
|
44
|
+
* analogous to `createStore` for KV stores.
|
|
45
|
+
*/
|
|
46
|
+
export declare function createPodStore<TOptions>(factory: (options: TOptions) => NoydbPodStore): (options: TOptions) => NoydbPodStore;
|
|
47
|
+
/** @deprecated Use wrapPodStore. */
|
|
48
|
+
export declare const wrapBundleStore: typeof wrapPodStore;
|
|
49
|
+
/** @deprecated Use createPodStore. */
|
|
50
|
+
export declare const createBundleStore: typeof createPodStore;
|
|
51
|
+
/** @deprecated Use WrappedPodNoydbStore. */
|
|
52
|
+
export type WrappedBundleNoydbStore = WrappedPodNoydbStore;
|
|
53
|
+
/** @deprecated Use WrapPodStoreOptions. */
|
|
54
|
+
export type WrapBundleStoreOptions = WrapPodStoreOptions;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal ULID generator — zero dependencies, Web Crypto API only.
|
|
3
|
+
*
|
|
4
|
+
*. Used by the bundle writer to generate stable opaque
|
|
5
|
+
* handles for `.noydb` containers.
|
|
6
|
+
*
|
|
7
|
+
* **What's a ULID?** A 128-bit identifier encoded as 26 Crockford
|
|
8
|
+
* base32 characters. Layout:
|
|
9
|
+
*
|
|
10
|
+
* ```
|
|
11
|
+
* 01HYABCDEFGHJKMNPQRSTVWXYZ
|
|
12
|
+
* |--------||---------------|
|
|
13
|
+
* 48-bit 80-bit
|
|
14
|
+
* timestamp randomness
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* The first 10 chars encode a millisecond Unix timestamp (so ULIDs
|
|
18
|
+
* sort lexicographically by creation time), and the remaining 16
|
|
19
|
+
* chars are random. Crockford base32 omits I/L/O/U to avoid
|
|
20
|
+
* ambiguity in handwriting and URLs.
|
|
21
|
+
*
|
|
22
|
+
* **Why hand-roll instead of pulling in `ulid`?** The package adds
|
|
23
|
+
* a dep, the implementation is ~30 lines, and the bundle module
|
|
24
|
+
* is the only consumer. Adding `ulid` would also drag in its own
|
|
25
|
+
* crypto polyfill that we don't need on Node 18+ or modern
|
|
26
|
+
* browsers.
|
|
27
|
+
*
|
|
28
|
+
* **Privacy consideration:** the timestamp prefix is observable in
|
|
29
|
+
* the bundle header. This is a deliberate trade-off:
|
|
30
|
+
* - Pro: lexicographic sortability lets bundle adapters list
|
|
31
|
+
* newest-first without an extra index.
|
|
32
|
+
* - Con: a casual observer can read the bundle's creation time
|
|
33
|
+
* from the handle. They cannot read it from any OTHER field
|
|
34
|
+
* (the header explicitly forbids `_exported_at`), and a
|
|
35
|
+
* creation timestamp is the same kind of metadata that
|
|
36
|
+
* filesystem mtime would already expose for a downloaded
|
|
37
|
+
* bundle. The leak is therefore equivalent to what's already
|
|
38
|
+
* visible from the file's mtime — not a new exposure.
|
|
39
|
+
*
|
|
40
|
+
* If a future use case needs timestamp-free handles, a v2 of the
|
|
41
|
+
* format could specify "use the random portion only" without a
|
|
42
|
+
* format break — `validateBundleHeader` only checks the regex
|
|
43
|
+
* shape, not the encoded timestamp.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Generate a fresh ULID. Uses `crypto.getRandomValues` for the
|
|
47
|
+
* randomness portion — same Web Crypto API the rest of the
|
|
48
|
+
* codebase uses for IVs and salt.
|
|
49
|
+
*
|
|
50
|
+
* Returns a 26-character string. Calling twice in the same
|
|
51
|
+
* millisecond produces two distinct ULIDs (the random portion
|
|
52
|
+
* differs); ULIDs from the same millisecond are NOT guaranteed
|
|
53
|
+
* to be monotonically ordered relative to each other, only
|
|
54
|
+
* relative to ULIDs from a different millisecond. The bundle
|
|
55
|
+
* format never relies on intra-millisecond ordering.
|
|
56
|
+
*/
|
|
57
|
+
export declare function generateULID(): string;
|
|
58
|
+
/**
|
|
59
|
+
* Validate that a string is a syntactically well-formed ULID. Used
|
|
60
|
+
* by the bundle header validator. Does NOT verify that the
|
|
61
|
+
* timestamp portion decodes to a sensible date — the format only
|
|
62
|
+
* cares about the encoding shape.
|
|
63
|
+
*/
|
|
64
|
+
export declare function isULID(value: string): boolean;
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Blob retention + compaction.
|
|
3
|
+
*
|
|
4
|
+
* Declarative per-collection / per-slot eviction policy. Two
|
|
5
|
+
* triggers:
|
|
6
|
+
*
|
|
7
|
+
* - **`retainDays`** — age-based TTL. A slot uploaded more than N
|
|
8
|
+
* days ago is evicted.
|
|
9
|
+
* - **`evictWhen(record)`** — predicate over the **decrypted**
|
|
10
|
+
* record. Lets consumers express "the image is safe to drop once
|
|
11
|
+
* the structured invoice has been reviewed and confirmed."
|
|
12
|
+
*
|
|
13
|
+
* Either trigger (or both) causes the slot to evict. Eviction removes
|
|
14
|
+
* the slot entry from `_blob_slots_{collection}`, decrements the
|
|
15
|
+
* blob's refCount (so unreferenced chunks can be GC'd by the next
|
|
16
|
+
* sweep), and writes one entry to the `_blob_eviction_audit`
|
|
17
|
+
* collection for tamper-evident record-keeping.
|
|
18
|
+
*
|
|
19
|
+
* The audit entry carries the eTag of the evicted blob (opaque HMAC
|
|
20
|
+
* of plaintext under the vault's `_blob` DEK) — no plaintext leakage,
|
|
21
|
+
* per the SPEC non-correlation invariant. Consumers reconstructing
|
|
22
|
+
* "what used to be attached" can look up the audit entry by record
|
|
23
|
+
* id.
|
|
24
|
+
*
|
|
25
|
+
* Compaction is **consumer-scheduled** — noy-db never runs a
|
|
26
|
+
* background daemon. Call `vault.compact()` whenever your workflow
|
|
27
|
+
* allows (cron, manual "tidy" button, cold-storage export prep, …).
|
|
28
|
+
*
|
|
29
|
+
* @module
|
|
30
|
+
*/
|
|
31
|
+
import type { NoydbStore, SlotInfo } from '../../kernel/types.js';
|
|
32
|
+
import { type EnclaveKey } from '../../kernel/enclave/index.js';
|
|
33
|
+
export interface BlobFieldPolicy<T = unknown> {
|
|
34
|
+
/**
|
|
35
|
+
* Via port brand marker — lets a `BlobFieldPolicy` satisfy the kernel's
|
|
36
|
+
* opaque `ViaDescriptor` (#629 Task 7). Optional (the
|
|
37
|
+
* `ClassifiedFieldSpec._viaBrand` precedent): `blobFields` policies are
|
|
38
|
+
* plain object literals with no declaration factory to stamp it, so a
|
|
39
|
+
* mandatory field would break every existing declaration.
|
|
40
|
+
*/
|
|
41
|
+
readonly _viaBrand?: 'blob';
|
|
42
|
+
/**
|
|
43
|
+
* Age-based TTL in days. A slot whose `uploadedAt` is older than
|
|
44
|
+
* `now - retainDays × 86400s` evicts on the next `vault.compact()`.
|
|
45
|
+
* Omit to disable age-based eviction.
|
|
46
|
+
*/
|
|
47
|
+
readonly retainDays?: number;
|
|
48
|
+
/**
|
|
49
|
+
* Predicate evaluated against the decrypted record. When it returns
|
|
50
|
+
* `true`, every matching slot on that record evicts. Omit to
|
|
51
|
+
* disable predicate-based eviction.
|
|
52
|
+
*/
|
|
53
|
+
readonly evictWhen?: (record: T) => boolean;
|
|
54
|
+
/**
|
|
55
|
+
* **Legal hold.** When this predicate returns `true`, the slot is
|
|
56
|
+
* never evicted — `retainDays`/`evictWhen` are overridden. Use for a
|
|
57
|
+
* litigation / audit hold on a fiscal document: the blob stays until
|
|
58
|
+
* the predicate returns `false` (the hold is released). Fail-closed:
|
|
59
|
+
* if the predicate throws, the slot is treated as held.
|
|
60
|
+
*/
|
|
61
|
+
readonly legalHold?: (record: T) => boolean;
|
|
62
|
+
/**
|
|
63
|
+
* **Period-bound retention.** Returns the date (Date / ISO string /
|
|
64
|
+
* epoch ms) until which the slot must be retained — typically derived
|
|
65
|
+
* from the record's fiscal period (e.g. period end + 10 years). While
|
|
66
|
+
* `now < retainUntil`, the slot is never evicted, regardless of
|
|
67
|
+
* `retainDays`. Return `null`/`undefined` to impose no floor.
|
|
68
|
+
* Fail-closed: a throwing function holds the slot.
|
|
69
|
+
*/
|
|
70
|
+
readonly retainUntil?: (record: T) => Date | string | number | null | undefined;
|
|
71
|
+
/**
|
|
72
|
+
* **External projection.** When `true`, this field's bytes are stored in the
|
|
73
|
+
* vault's `ObjectProjection` (`createNoydb({ objectStore })`) as a single raw,
|
|
74
|
+
* **unencrypted** object — servable directly from S3/CDN and processable by
|
|
75
|
+
* native tooling — instead of the encrypted-chunk path. The encrypted slot
|
|
76
|
+
* record remains the catalog (anchoring invariant). Requires an `objectStore`;
|
|
77
|
+
* **outside the zero-knowledge guarantee** — use only for assets meant to
|
|
78
|
+
* leave the vault. See the as-aws-s3 design spec.
|
|
79
|
+
*/
|
|
80
|
+
readonly external?: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* For an `external` field: make the object world-readable (CDN origin) rather
|
|
83
|
+
* than presigned-only. Default `false` (presigned). Ignored unless `external`.
|
|
84
|
+
*/
|
|
85
|
+
readonly public?: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* For an `external` field: how to stamp a **backlink** (this record's
|
|
88
|
+
* vault/collection/id/field) onto the object's metadata — the self-describing
|
|
89
|
+
* "secondary store" that powers reconcile / DR / import re-pairing.
|
|
90
|
+
* - `'opaque-token'` (default): a random id; preserves the opaque-bucket
|
|
91
|
+
* property (no names leak); the token is also recorded on the slot.
|
|
92
|
+
* - `'encrypted'`: the reference encrypted under the blob DEK (ZK-preserving;
|
|
93
|
+
* falls back to `'opaque-token'` on a plaintext vault).
|
|
94
|
+
* - `'plain'`: the reference in cleartext metadata — **leaks structure** to
|
|
95
|
+
* bucket readers; only for non-sensitive deployments.
|
|
96
|
+
* - `'none'`: no backlink.
|
|
97
|
+
*/
|
|
98
|
+
readonly backlink?: 'opaque-token' | 'encrypted' | 'plain' | 'none';
|
|
99
|
+
}
|
|
100
|
+
export type BlobFieldsConfig<T = unknown> = Record<string, BlobFieldPolicy<T>>;
|
|
101
|
+
export declare const BLOB_EVICTION_AUDIT_COLLECTION = "_blob_eviction_audit";
|
|
102
|
+
export interface BlobEvictionEntry {
|
|
103
|
+
readonly id: string;
|
|
104
|
+
readonly collection: string;
|
|
105
|
+
readonly recordId: string;
|
|
106
|
+
readonly slotName: string;
|
|
107
|
+
readonly blobHash: string;
|
|
108
|
+
readonly reason: 'ttl' | 'predicate' | 'both';
|
|
109
|
+
readonly evictedAt: string;
|
|
110
|
+
readonly actor: string;
|
|
111
|
+
}
|
|
112
|
+
export interface CompactionResult {
|
|
113
|
+
/** Number of blob slots evicted across all collections. */
|
|
114
|
+
readonly evicted: number;
|
|
115
|
+
/** Number of records touched (iterated + policy checked). */
|
|
116
|
+
readonly records: number;
|
|
117
|
+
/** Number of collections with `blobFields` configured. */
|
|
118
|
+
readonly collections: number;
|
|
119
|
+
/** Number of audit entries written. Equal to `evicted`. */
|
|
120
|
+
readonly auditEntries: number;
|
|
121
|
+
/**
|
|
122
|
+
* Number of slots that would have evicted (TTL/predicate triggered)
|
|
123
|
+
* but were retained by a `legalHold` or `retainUntil` floor.
|
|
124
|
+
*/
|
|
125
|
+
readonly held: number;
|
|
126
|
+
/** Per-collection breakdown for diagnostics. */
|
|
127
|
+
readonly byCollection: Record<string, {
|
|
128
|
+
records: number;
|
|
129
|
+
evicted: number;
|
|
130
|
+
}>;
|
|
131
|
+
}
|
|
132
|
+
export interface CompactRunOptions {
|
|
133
|
+
/** Override "now" for deterministic testing. */
|
|
134
|
+
readonly now?: Date;
|
|
135
|
+
/**
|
|
136
|
+
* Stop after this many evictions. Useful for capped batches / cron
|
|
137
|
+
* jobs that need to fit in a time window. `undefined` = unbounded.
|
|
138
|
+
*/
|
|
139
|
+
readonly maxEvictions?: number;
|
|
140
|
+
/**
|
|
141
|
+
* Dry-run — evaluate policies and return the counts, but do NOT
|
|
142
|
+
* delete slots or write audit entries. Lets a consumer preview
|
|
143
|
+
* what would happen.
|
|
144
|
+
*/
|
|
145
|
+
readonly dryRun?: boolean;
|
|
146
|
+
}
|
|
147
|
+
export interface CompactionContext {
|
|
148
|
+
readonly adapter: NoydbStore;
|
|
149
|
+
readonly vault: string;
|
|
150
|
+
readonly actor: string;
|
|
151
|
+
readonly encrypted: boolean;
|
|
152
|
+
readonly getDEK: (collection: string) => Promise<EnclaveKey>;
|
|
153
|
+
/**
|
|
154
|
+
* Resolve a collection's declared `blobFields` config. Returns an
|
|
155
|
+
* empty map for collections without the config — the walk skips
|
|
156
|
+
* those.
|
|
157
|
+
*/
|
|
158
|
+
readonly getBlobFields: <T>(collection: string) => BlobFieldsConfig<T> | null;
|
|
159
|
+
/** List collection names in the vault. */
|
|
160
|
+
readonly listCollections: () => Promise<string[]>;
|
|
161
|
+
/** List record ids in a collection. */
|
|
162
|
+
readonly listRecords: (collection: string) => Promise<string[]>;
|
|
163
|
+
/** Decrypt and return the record. Null when absent. */
|
|
164
|
+
readonly getRecord: <T>(collection: string, id: string) => Promise<T | null>;
|
|
165
|
+
/** Return the BlobSet-like handle for a record's slots. */
|
|
166
|
+
readonly listSlots: (collection: string, id: string) => Promise<SlotInfo[]>;
|
|
167
|
+
/** Delete a slot and decrement its blob's refCount. */
|
|
168
|
+
readonly deleteSlot: (collection: string, id: string, slotName: string) => Promise<void>;
|
|
169
|
+
}
|
|
170
|
+
export declare function runCompaction(ctx: CompactionContext, options?: CompactRunOptions): Promise<CompactionResult>;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `_blob_intent` — the blob durability journal marker (#753, spec §7).
|
|
3
|
+
*
|
|
4
|
+
* One row per in-flight multi-step blob operation (`shred` | `rehome`),
|
|
5
|
+
* written BEFORE the first destructive/movement step and deleted as the
|
|
6
|
+
* operation's LAST step. An absent marker means "no operation in flight"
|
|
7
|
+
* (the normal state, zero cost on every path that doesn't crash); a present
|
|
8
|
+
* marker means the operation MUST be resumed before any other blob work on
|
|
9
|
+
* that record proceeds.
|
|
10
|
+
*
|
|
11
|
+
* **Pattern honesty (C9):** this is the family's FIRST content-bearing
|
|
12
|
+
* ENCRYPTED reserved marker. The prior reserved-collection precedent,
|
|
13
|
+
* `_mv_stale` (`with-formula/materialized-views/stale.ts`), is
|
|
14
|
+
* content-free plaintext (`{ _iv: '', _data: '{}' }` — the row's only
|
|
15
|
+
* payload is its key). `_blob_intent` carries real operational metadata
|
|
16
|
+
* (op, tiers, eTags + counts) and is encrypted, so its codec/CAS/backup/
|
|
17
|
+
* sweep conventions below are new to the codebase, not a copy of an
|
|
18
|
+
* existing pattern.
|
|
19
|
+
*
|
|
20
|
+
* **Key management (spec §4):** encrypted under the record's OWNING
|
|
21
|
+
* collection's tier-0 DEK — `getDEK(collection)`, which resolves to
|
|
22
|
+
* `dekKey(collection, 0) === collection` (see `with-party/team/tiers.ts`).
|
|
23
|
+
* Every legitimate resumer (forget()-retry, blob write entry points,
|
|
24
|
+
* tier ops) already holds this DEK; minting an elevated DEK for the
|
|
25
|
+
* marker itself would make resume impossible for a tier-0-only resumer.
|
|
26
|
+
* Documented residue: a tier-0 DEK holder can learn that an elevated
|
|
27
|
+
* record's shred/rehome was in flight and which eTags it touched —
|
|
28
|
+
* existence-adjacent, consistent with the already-documented
|
|
29
|
+
* dedup-policy residue (#741).
|
|
30
|
+
*
|
|
31
|
+
* **Key grammar (C11):** `{collection}::{recordId}`. Blob-bearing record
|
|
32
|
+
* ids already refuse `::` at the write surface (`blob-set.ts`'s
|
|
33
|
+
* `assertKeyPartSafe`, #752) — re-validated here defensively so the
|
|
34
|
+
* sweep's prefix-free key list stays unambiguous regardless of caller.
|
|
35
|
+
*
|
|
36
|
+
* Wired by `shredAllForRecord`/`forget()` (PR-1 Task 3, shred) and by
|
|
37
|
+
* `BlobSet.syncTierMove`/`rehomeForTier`/`resolvePendingIntent` (PR-2 Task
|
|
38
|
+
* 2, rehome — mint/resume/consume for `op:'rehome'` markers).
|
|
39
|
+
*/
|
|
40
|
+
import type { NoydbStore } from '../../kernel/types.js';
|
|
41
|
+
import { type EnclaveKey } from '../../kernel/enclave/index.js';
|
|
42
|
+
/** Reserved collection holding `_blob_intent` marker rows. */
|
|
43
|
+
export declare const BLOB_INTENT_COLLECTION = "_blob_intent";
|
|
44
|
+
/**
|
|
45
|
+
* One captured refCount hold on an eTag, authoritative on resume (spec §2a,
|
|
46
|
+
* amended by C5). `chunkCount` lets a resumed release complete chunk
|
|
47
|
+
* cleanup even if the `_blob_index` row itself is already gone (mirrors
|
|
48
|
+
* `releaseRef`'s `chunkCountHint` parameter, Task 1).
|
|
49
|
+
*/
|
|
50
|
+
export interface BlobIntentHold {
|
|
51
|
+
readonly eTag: string;
|
|
52
|
+
readonly n: number;
|
|
53
|
+
readonly chunkCount: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* The intent marker's decrypted payload (spec §2a, amended by C5: `holds`
|
|
57
|
+
* entries carry `{ eTag, n, chunkCount }` rather than the original bare
|
|
58
|
+
* `{ eTag, n }`).
|
|
59
|
+
*/
|
|
60
|
+
export interface BlobIntent {
|
|
61
|
+
readonly op: 'shred' | 'rehome';
|
|
62
|
+
/** Random nonce minted at marker creation (`crypto.getRandomValues`) — the op-stamp identity. */
|
|
63
|
+
readonly opId: string;
|
|
64
|
+
/** Captured ONCE at marker creation; authoritative on every resume. */
|
|
65
|
+
readonly holds?: readonly BlobIntentHold[];
|
|
66
|
+
readonly ownerTier?: number;
|
|
67
|
+
readonly fromTier?: number;
|
|
68
|
+
readonly toTier?: number;
|
|
69
|
+
readonly policy?: 'isolate' | 'dedup';
|
|
70
|
+
/**
|
|
71
|
+
* Rehome destination `+1` row-stamps (`${opId}:${slotName}` /
|
|
72
|
+
* `${opId}:${versionKey}`) CONFIRMED applied — #746 whole-branch review
|
|
73
|
+
* (K=8 stamp-ring blocker). `BlobObject.lastOps` is a BOUNDED ring (K=8,
|
|
74
|
+
* spec C2) — correct as the sole idempotency source for SHRED (one
|
|
75
|
+
* decrement per eTag, count captured in `holds`) but not for REHOME,
|
|
76
|
+
* whose row-scoped increments can exceed K on a single destination via
|
|
77
|
+
* either ≥9 rows of identical content on ONE record, or ≥8 CONCURRENT
|
|
78
|
+
* rehomes converging on one shared destination between a crashed op's
|
|
79
|
+
* stamp-write and its resume — either way, an evicted-but-unapplied-
|
|
80
|
+
* looking stamp gets re-applied, over-counting the destination's
|
|
81
|
+
* refCount and permanently stranding it above 0. This field is THIS
|
|
82
|
+
* op's own UNBOUNDED, per-record backstop: appended (via
|
|
83
|
+
* {@link recordAppliedStamp}) immediately after a stamped `+1` lands
|
|
84
|
+
* (whether freshly applied or found already in the ring), consulted
|
|
85
|
+
* BEFORE attempting the CAS so a resume that finds its own row-stamp
|
|
86
|
+
* here skips the increment entirely — independent of the shared
|
|
87
|
+
* destination object's bounded ring and of how many OTHER ops have
|
|
88
|
+
* touched it since. Absent/empty is the normal case (no rehome — or no
|
|
89
|
+
* increments yet — in flight).
|
|
90
|
+
*/
|
|
91
|
+
readonly appliedStamps?: readonly string[];
|
|
92
|
+
}
|
|
93
|
+
/** Resume callback signature for {@link sweepBlobIntents} — supplied by the caller (Task 3 / PR-2). */
|
|
94
|
+
export type BlobIntentResume = (collection: string, recordId: string, intent: BlobIntent) => Promise<void>;
|
|
95
|
+
/**
|
|
96
|
+
* Read the `_blob_intent` marker for `{collection}::{recordId}`, or `null`
|
|
97
|
+
* if none is pending. The resume-gate check every future blob mutator
|
|
98
|
+
* (Task 3 / PR-2) runs before proceeding.
|
|
99
|
+
*/
|
|
100
|
+
export declare function getIntent(adapter: NoydbStore, vault: string, collection: string, recordId: string, getDEK: (collection: string) => Promise<EnclaveKey>): Promise<BlobIntent | null>;
|
|
101
|
+
/**
|
|
102
|
+
* Create a `_blob_intent` marker for `{collection}::{recordId}` — CAS
|
|
103
|
+
* create-if-absent (C8). `store.put(..., expectedVersion: 0)` succeeds only
|
|
104
|
+
* when no row is present (every real adapter treats a missing record +
|
|
105
|
+
* `expectedVersion: 0` as a no-conflict write — the same convention
|
|
106
|
+
* `loadOrCreateSigner` uses in `with-audit/attestation/signer.ts`); a
|
|
107
|
+
* present row always carries `_v >= 1`, so the CAS throws `ConflictError`
|
|
108
|
+
* and is converted here into {@link BlobIntentPendingError} — the signal
|
|
109
|
+
* a caller catches to resume the PENDING operation before starting a new
|
|
110
|
+
* one, rather than silently clobbering it (which would orphan the prior
|
|
111
|
+
* op's op-stamps).
|
|
112
|
+
*/
|
|
113
|
+
export declare function createIntent(adapter: NoydbStore, vault: string, collection: string, recordId: string, getDEK: (collection: string) => Promise<EnclaveKey>, intent: BlobIntent): Promise<void>;
|
|
114
|
+
/** Delete the `_blob_intent` marker for `{collection}::{recordId}` — the operation's LAST step. */
|
|
115
|
+
export declare function deleteIntent(adapter: NoydbStore, vault: string, collection: string, recordId: string): Promise<void>;
|
|
116
|
+
/**
|
|
117
|
+
* Durably record that a rehome destination row-stamp has been CONFIRMED
|
|
118
|
+
* applied — #746 whole-branch review (K=8 stamp-ring blocker). Appends
|
|
119
|
+
* `stamp` to the marker's `appliedStamps` (idempotent no-op if already
|
|
120
|
+
* present), CAS-retried against concurrent resumers touching the SAME
|
|
121
|
+
* marker (mirrors `BlobSet.casUpdateSlots`'s retry shape).
|
|
122
|
+
*
|
|
123
|
+
* A no-op — never throws — when the marker is already gone: that only
|
|
124
|
+
* happens if the whole op already completed and deleted it (this call is
|
|
125
|
+
* racing its own operation's tail) or a sibling resumer already finished
|
|
126
|
+
* it; either way there is nothing left to record against. A marker whose
|
|
127
|
+
* `op` is NOT `'rehome'` (should be structurally impossible — only
|
|
128
|
+
* `BlobSet`'s own rehome machinery calls this, against its own marker) is
|
|
129
|
+
* treated the same way: nothing to record.
|
|
130
|
+
*/
|
|
131
|
+
export declare function recordAppliedStamp(adapter: NoydbStore, vault: string, collection: string, recordId: string, getDEK: (collection: string) => Promise<EnclaveKey>, stamp: string): Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* List every persisted `_blob_intent` marker and resume each via the
|
|
134
|
+
* caller-supplied `resume` callback (the forget-entry / vault-open sweep,
|
|
135
|
+
* mirroring `_mv_stale`'s `hydratePersistedStaleMarkers`/orphan-sweep
|
|
136
|
+
* pattern).
|
|
137
|
+
*
|
|
138
|
+
* **Per-marker isolation (#753 Task 3, carried finding from the Task 2
|
|
139
|
+
* review):** each marker's decode + `resume` runs in its own try/catch — a
|
|
140
|
+
* corrupt/DEK-mismatched marker, or a marker whose resume genuinely fails
|
|
141
|
+
* (e.g. a store error mid-release), is reported via `onResumeError` and
|
|
142
|
+
* skipped, never aborting the loop and never silently swallowed. Earlier
|
|
143
|
+
* (Task 2) this loop had no try/catch at all; that was safe only because
|
|
144
|
+
* nothing called `resume` with real logic yet — `BlobSet.mintShredIntent`'s
|
|
145
|
+
* collection-scoped sweep (this function's first real caller, Task 3) can
|
|
146
|
+
* hit a genuinely corrupt sibling marker and must not let it block a
|
|
147
|
+
* healthy one (mirrors `stale.ts`'s orphan-sweep defensive posture, #736).
|
|
148
|
+
*
|
|
149
|
+
* `resume` is the per-marker resume action (Task 3: `BlobSet`'s
|
|
150
|
+
* `resolvePendingIntent`-equivalent for a shred marker; a rehome marker is
|
|
151
|
+
* PR-2 scope and should be skipped by the callback, not thrown into here).
|
|
152
|
+
*/
|
|
153
|
+
export declare function sweepBlobIntents(adapter: NoydbStore, vault: string, getDEK: (collection: string) => Promise<EnclaveKey>, resume: BlobIntentResume, onResumeError?: (collection: string, recordId: string, err: unknown) => void): Promise<void>;
|