@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
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { bc as GuardStrategy, bi as GuardStrategyHandle, bd as GuardChange, be as GuardContext } from './index-DzhNI2vE.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Register a guard for a collection. Guards run on every `put()` /
|
|
5
|
-
* `delete()` for the named collection (after permissions, before
|
|
6
|
-
* encryption) and may:
|
|
7
|
-
*
|
|
8
|
-
* - `check` — block writes by throwing (typically `RecordLockedError`)
|
|
9
|
-
* - `frozenFields` — freeze specific fields once a condition is true
|
|
10
|
-
* - `amendment` — declare an authorized-override path with invariant
|
|
11
|
-
*
|
|
12
|
-
* Pass the returned handle to `createNoydb({ strategies: [...] })`.
|
|
13
|
-
*
|
|
14
|
-
* @see docs/superpowers/specs/2026-05-18-guards-design.md
|
|
15
|
-
*/
|
|
16
|
-
declare function withGuard<T extends Record<string, unknown>>(strategy: GuardStrategy<T>): GuardStrategyHandle<T>;
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* `immutableGuard` — declarative WORM / append-only sugar over the guard
|
|
20
|
-
* service.
|
|
21
|
-
*
|
|
22
|
-
* Issued fiscal documents (invoices, DDTs) must be immutable after issue.
|
|
23
|
-
* That is expressible today with a hand-rolled `withGuard` (block on
|
|
24
|
-
* `check`/`onDelete`, allow an admin `amendment`), but the boilerplate is
|
|
25
|
-
* repetitive and easy to get subtly wrong. `immutableGuard` generates
|
|
26
|
-
* exactly that guard from a declarative config, reusing the guard
|
|
27
|
-
* machinery wholesale — `check`/`onDelete` rejection, the ledgered
|
|
28
|
-
* `amendment` override, and composition with `periods`/`history`.
|
|
29
|
-
*
|
|
30
|
-
* ```ts
|
|
31
|
-
* createNoydb({ guardStrategies: [
|
|
32
|
-
* immutableGuard({
|
|
33
|
-
* collection: 'invoices',
|
|
34
|
-
* after: (r) => r.status === 'issued', // immutable once issued
|
|
35
|
-
* }),
|
|
36
|
-
* ] })
|
|
37
|
-
* ```
|
|
38
|
-
*
|
|
39
|
-
* A record is mutable until `after(record)` holds; from then on, updates
|
|
40
|
-
* and deletes throw `RecordLockedError` unless performed inside an
|
|
41
|
-
* `amendment` transaction by an authorized role (the override is
|
|
42
|
-
* ledgered by the guard amendment mechanism). `appendOnly: true` is
|
|
43
|
-
* shorthand for `after: () => true` — immutable from creation.
|
|
44
|
-
*/
|
|
45
|
-
|
|
46
|
-
interface ImmutableGuardConfig<T extends Record<string, unknown>> {
|
|
47
|
-
/** The collection to make WORM. */
|
|
48
|
-
collection: string;
|
|
49
|
-
/**
|
|
50
|
-
* A record becomes immutable once this predicate holds. Evaluated on
|
|
51
|
-
* the *existing* (already-persisted) record, so the write that first
|
|
52
|
-
* makes it true is still allowed; subsequent writes are blocked.
|
|
53
|
-
* Mutually exclusive with `appendOnly`.
|
|
54
|
-
*/
|
|
55
|
-
after?: (record: T) => boolean;
|
|
56
|
-
/** Shorthand for `after: () => true` — immutable from creation. */
|
|
57
|
-
appendOnly?: boolean;
|
|
58
|
-
/** Roles permitted to override via an amendment transaction. Default `['admin', 'owner']`. */
|
|
59
|
-
amendmentRoles?: ReadonlyArray<'admin' | 'owner'>;
|
|
60
|
-
/**
|
|
61
|
-
* Optional set-level invariant run over the amendment change-set after
|
|
62
|
-
* the writes execute. Signature matches `GuardStrategy.amendment.invariant`
|
|
63
|
-
* exactly: it receives every {before, after} pair touching this
|
|
64
|
-
* collection in the amendment plus the guard context; throwing reverts
|
|
65
|
-
* the whole amendment and surfaces as `InvariantError`.
|
|
66
|
-
*
|
|
67
|
-
* Use this to keep a constraint inviolable EVEN under amendment — e.g.
|
|
68
|
-
* forbid deleting an issued document by re-throwing on any
|
|
69
|
-
* `before !== null && after === null` change, or assert a cross-record
|
|
70
|
-
* sum is preserved. When omitted the amendment is unconditionally
|
|
71
|
-
* allowed (the amendment itself is the sanctioned, ledgered override) —
|
|
72
|
-
* this is the backward-compatible default.
|
|
73
|
-
*/
|
|
74
|
-
amendmentInvariant?: (changes: ReadonlyArray<GuardChange<T>>, ctx: GuardContext<T>) => Promise<void> | void;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Build an immutability guard. Pass the returned handle to
|
|
78
|
-
* `createNoydb({ guardStrategies: [...] })`.
|
|
79
|
-
*/
|
|
80
|
-
declare function immutableGuard<T extends Record<string, unknown>>(config: ImmutableGuardConfig<T>): GuardStrategyHandle<T>;
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* `transitionGuard` — declarative state-machine sugar over the guard
|
|
84
|
-
* service.
|
|
85
|
-
*
|
|
86
|
-
* Any record with a lifecycle field (invoice `status`, order state,
|
|
87
|
-
* ticket workflow, subscription phase) needs transition validation: a
|
|
88
|
-
* write may only move the field along a declared arc. That is expressible
|
|
89
|
-
* with a hand-rolled `withGuard({ check })`, but every consumer
|
|
90
|
-
* re-implements the same graph lookup + error. `transitionGuard`
|
|
91
|
-
* generates exactly that guard from a state graph, reusing the guard
|
|
92
|
-
* machinery wholesale — `check` rejection, the ledgered `amendment`
|
|
93
|
-
* override, and composition with `periods`/`history`.
|
|
94
|
-
*
|
|
95
|
-
* It generalizes {@link immutableGuard}: WORM is the special case "every
|
|
96
|
-
* state has no outgoing arcs", i.e. `transitions` mapping each state to `[]`.
|
|
97
|
-
*
|
|
98
|
-
* ```ts
|
|
99
|
-
* createNoydb({ guardStrategies: [
|
|
100
|
-
* transitionGuard<Sale>({
|
|
101
|
-
* collection: 'sales', field: 'status',
|
|
102
|
-
* transitions: { // absence of an arc = forbidden
|
|
103
|
-
* draft: ['to_verify', 'cancelled'],
|
|
104
|
-
* to_verify: ['proforma', 'draft', 'cancelled'],
|
|
105
|
-
* proforma: ['invoiced', 'cancelled'],
|
|
106
|
-
* invoiced: ['paid'], paid: [], cancelled: [],
|
|
107
|
-
* },
|
|
108
|
-
* initial: ['draft', 'to_verify'], // allowed status on insert
|
|
109
|
-
* }),
|
|
110
|
-
* ] })
|
|
111
|
-
* ```
|
|
112
|
-
*
|
|
113
|
-
* Semantics:
|
|
114
|
-
* - **Insert** (`ctx.existing === null`): `incoming[field]` must be in
|
|
115
|
-
* `initial`. When `initial` is omitted, any value is allowed on insert.
|
|
116
|
-
* - **Update**: the arc `(existing[field] → incoming[field])` must be
|
|
117
|
-
* listed in `transitions[from]`, else `IllegalTransitionError`. A
|
|
118
|
-
* same-value write (`from === to`) is allowed when `allowIdempotent`
|
|
119
|
-
* (default `true`) — so writes that touch other fields without moving
|
|
120
|
-
* state pass.
|
|
121
|
-
* - **Override**: inside an `amendment` transaction by an authorized role
|
|
122
|
-
* the check is skipped and the change is ledgered (mirrors every guard).
|
|
123
|
-
*
|
|
124
|
-
* The status graph is caller-supplied data — no UI, no domain logic.
|
|
125
|
-
*/
|
|
126
|
-
|
|
127
|
-
interface TransitionGuardConfig<T extends Record<string, unknown>> {
|
|
128
|
-
/** The collection whose state field is governed. */
|
|
129
|
-
collection: string;
|
|
130
|
-
/** The state field on the record (e.g. `'status'`). */
|
|
131
|
-
field: keyof T & string;
|
|
132
|
-
/**
|
|
133
|
-
* The transition graph: each state maps to the states it may move to.
|
|
134
|
-
* A state absent from the map (or mapped to `[]`) is terminal — no
|
|
135
|
-
* outgoing arc, so any non-idempotent write from it is rejected.
|
|
136
|
-
*/
|
|
137
|
-
transitions: Readonly<Record<string, readonly string[]>>;
|
|
138
|
-
/**
|
|
139
|
-
* States allowed as the initial value on insert (`existing === null`).
|
|
140
|
-
* Omit to allow any value on insert.
|
|
141
|
-
*/
|
|
142
|
-
initial?: readonly string[];
|
|
143
|
-
/**
|
|
144
|
-
* Allow a same-value write (`from === to`) on update. Default `true` —
|
|
145
|
-
* lets a put that changes other fields, but not the state, through.
|
|
146
|
-
*/
|
|
147
|
-
allowIdempotent?: boolean;
|
|
148
|
-
/** Roles permitted to override via an amendment transaction. Default `['admin', 'owner']`. */
|
|
149
|
-
amendmentRoles?: ReadonlyArray<'admin' | 'owner'>;
|
|
150
|
-
/**
|
|
151
|
-
* Optional set-level invariant run over the amendment change-set after
|
|
152
|
-
* the writes execute. Signature matches `GuardStrategy.amendment.invariant`
|
|
153
|
-
* exactly. When omitted the amendment is unconditionally allowed (the
|
|
154
|
-
* amendment itself is the sanctioned, ledgered override) — the
|
|
155
|
-
* backward-compatible default. Mirrors {@link immutableGuard}.
|
|
156
|
-
*/
|
|
157
|
-
amendmentInvariant?: (changes: ReadonlyArray<GuardChange<T>>, ctx: GuardContext<T>) => Promise<void> | void;
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Build a state-machine transition guard. Pass the returned handle to
|
|
161
|
-
* `createNoydb({ guardStrategies: [...] })`.
|
|
162
|
-
*/
|
|
163
|
-
declare function transitionGuard<T extends Record<string, unknown>>(config: TransitionGuardConfig<T>): GuardStrategyHandle<T>;
|
|
164
|
-
|
|
165
|
-
export { type ImmutableGuardConfig as I, type TransitionGuardConfig as T, immutableGuard as i, transitionGuard as t, withGuard as w };
|
package/dist/tx/index.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { jE as TransactionInvariant, lM as TxStrategy } from '../index-DzhNI2vE.js';
|
|
2
|
-
export { lN as AmendmentTxOptions, jG as TxCollection, eb as TxContext, jI as TxVault, lk as runTransaction } from '../index-DzhNI2vE.js';
|
|
3
|
-
import '../subject-index-CyOgGMJL.js';
|
|
4
|
-
import '../index-B9QdHytu.js';
|
|
5
|
-
import '@noy-db/attestation';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Active transactions strategy. Only reachable via `@noy-db/hub/tx`.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Options for {@link withTransactions}. Currently only commit-time
|
|
13
|
-
* changeset `invariants` (see {@link TransactionInvariant}).
|
|
14
|
-
*/
|
|
15
|
-
interface TransactionStrategyOptions {
|
|
16
|
-
/**
|
|
17
|
-
* Commit-time set-level invariants run over the changeset on every
|
|
18
|
-
* commit (ordinary AND amendment). See {@link TransactionInvariant}.
|
|
19
|
-
*/
|
|
20
|
-
invariants?: ReadonlyArray<TransactionInvariant>;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Build the default transactions strategy. Pass into
|
|
24
|
-
* `createNoydb({ txStrategy: withTransactions() })` to enable
|
|
25
|
-
* `db.transaction(fn)` (and `db.transaction({ dryRun: true }, fn)`).
|
|
26
|
-
*
|
|
27
|
-
* Supply `{ invariants }` to register commit-time changeset invariants —
|
|
28
|
-
* set-level constraints that fire after the writes commit and revert the
|
|
29
|
-
* transaction on a throw. Unlike `amendment.invariant`, these run for
|
|
30
|
-
* ordinary `db.transaction(fn)` calls (and amendments) with no role gate.
|
|
31
|
-
*/
|
|
32
|
-
declare function withTransactions(opts?: TransactionStrategyOptions): TxStrategy;
|
|
33
|
-
|
|
34
|
-
export { TransactionInvariant, type TransactionStrategyOptions, TxStrategy, withTransactions };
|
package/dist/ui/index.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { et as CollectionDescription, f5 as CollectionMeta, fB as DescribeOptions, fC as DescribedField, g3 as FieldMeta, iX as SemanticType } from '../index-DzhNI2vE.js';
|
|
2
|
-
import '../subject-index-CyOgGMJL.js';
|
|
3
|
-
import '../index-B9QdHytu.js';
|
|
4
|
-
import '@noy-db/attestation';
|
package/dist/ulid-DRH25k3y.d.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
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
|
-
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
|
-
declare function isULID(value: string): boolean;
|
|
65
|
-
|
|
66
|
-
export { generateULID as g, isULID as i };
|
package/dist/util/index.d.ts
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
export { i as isDiscriminant } from '../discriminant-BN9REW3o.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Target-profile aware filename sanitizer.
|
|
5
|
-
*
|
|
6
|
-
* Pure string in / string out. No filesystem access, no I/O. Use this
|
|
7
|
-
* at the boundary where a user-supplied filename meets a storage
|
|
8
|
-
* destination — local FS, ZIP archive, S3 key, URL path, SMB share —
|
|
9
|
-
* to defuse the canonical 14-class footgun before it reaches that
|
|
10
|
-
* destination.
|
|
11
|
-
*
|
|
12
|
-
* ## Threat model
|
|
13
|
-
*
|
|
14
|
-
* 1. Path injection — `..`, NUL bytes, `\` on POSIX, absolute paths.
|
|
15
|
-
* 2. Windows reserved names — `CON`, `PRN`, `AUX`, `NUL`,
|
|
16
|
-
* `COM1-9`, `LPT1-9`, with or without an extension.
|
|
17
|
-
* 3. Windows reserved chars — `< > : " / \ | ? *` plus ASCII 0-31.
|
|
18
|
-
* 4. Trailing `.` and ` ` on Windows / SMB.
|
|
19
|
-
* 5. Unicode normalization drift — same display, different bytes →
|
|
20
|
-
* "two files with the same name" sync ghosts.
|
|
21
|
-
* 6. Bidi override spoofing — U+202E reversing `harmless.exe.txt`
|
|
22
|
-
* into `harmless.txt.exe`.
|
|
23
|
-
* 7. URL `+` ambiguity in S3 presigned URLs.
|
|
24
|
-
* 8. ZIP general-purpose-flag bit 11 (UTF-8 filename) optional in
|
|
25
|
-
* pre-2006 readers.
|
|
26
|
-
* 9-14. Length caps, leading/trailing whitespace + controls,
|
|
27
|
-
* `.DS_Store`-style hidden noise, etc.
|
|
28
|
-
*
|
|
29
|
-
* ## Always-on transforms (every profile)
|
|
30
|
-
*
|
|
31
|
-
* - NFC normalize (`String.prototype.normalize('NFC')`).
|
|
32
|
-
* - Reject NUL — hard fail, not strip. Silent strip enables a
|
|
33
|
-
* classic truncation bypass (`safe.txt\0.exe` → `safe.txt`).
|
|
34
|
-
* - Strip bidi overrides (`U+202A..U+202E`, `U+2066..U+2069`).
|
|
35
|
-
* - Trim leading/trailing whitespace and ASCII control chars.
|
|
36
|
-
*
|
|
37
|
-
* ## Non-goals (i18n boundary policy, )
|
|
38
|
-
*
|
|
39
|
-
* - No transliteration.
|
|
40
|
-
* - No locale-aware slugging.
|
|
41
|
-
* - No script-specific segmentation.
|
|
42
|
-
*
|
|
43
|
-
* @module
|
|
44
|
-
*/
|
|
45
|
-
/**
|
|
46
|
-
* One of seven storage destinations the sanitizer knows how to defang
|
|
47
|
-
* for. Pick the most restrictive that covers your write site:
|
|
48
|
-
* `'macos-smb'` is the safe default for "I don't know where these
|
|
49
|
-
* files end up but they're going to a real filesystem somewhere."
|
|
50
|
-
*/
|
|
51
|
-
type FilenameProfile = 'posix' | 'windows' | 'macos-smb' | 'zip' | 'url-path' | 's3-key' | 'opaque';
|
|
52
|
-
interface SanitizeFilenameOptions {
|
|
53
|
-
/** Target-destination profile. */
|
|
54
|
-
readonly profile: FilenameProfile;
|
|
55
|
-
/**
|
|
56
|
-
* Override the per-profile length cap. Useful when leaving headroom
|
|
57
|
-
* for a collision suffix — e.g. `maxBytes: 240` on a `posix` write
|
|
58
|
-
* site that wants 15 bytes of slack for `-1`, `-2`, …
|
|
59
|
-
*/
|
|
60
|
-
readonly maxBytes?: number;
|
|
61
|
-
/**
|
|
62
|
-
* Required when `profile === 'opaque'`. The opaque profile replaces
|
|
63
|
-
* the entire input with `${opaqueId}.${ext}` (extension preserved
|
|
64
|
-
* from the input when present).
|
|
65
|
-
*/
|
|
66
|
-
readonly opaqueId?: string;
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Sanitize a filename for a target-destination profile. Pure: same
|
|
70
|
-
* input + options always returns the same output, no I/O.
|
|
71
|
-
*
|
|
72
|
-
* Returns the sanitized name. Throws {@link FilenameSanitizationError}
|
|
73
|
-
* when the input cannot be made safe at all (NUL byte, empty after
|
|
74
|
-
* normalization, missing `opaqueId` for the opaque profile,
|
|
75
|
-
* `..` segment that would fall out of any reasonable target).
|
|
76
|
-
*/
|
|
77
|
-
declare function sanitizeFilename(name: string, opts: SanitizeFilenameOptions): string;
|
|
78
|
-
|
|
79
|
-
export { type FilenameProfile, type SanitizeFilenameOptions, sanitizeFilename };
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { dV as ClassifiedEntry, dS as ClassifiedFieldSpec, dW as ClassifiedGroup } from './index-DzhNI2vE.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Configuration/write errors for classified fields. @module
|
|
5
|
-
*
|
|
6
|
-
* `ClassifiedConfigError` / `ClassifiedRevealError` moved to `kernel/errors.ts`
|
|
7
|
-
* (stage 2) so `kernel/enclave/classify/*` can throw them without importing
|
|
8
|
-
* with-*. Re-exported here under the same names so existing import paths
|
|
9
|
-
* keep working.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
declare class ClassifiedNeverStoredError extends Error {
|
|
13
|
-
readonly collection: string;
|
|
14
|
-
readonly field: string;
|
|
15
|
-
constructor(collection: string, field: string);
|
|
16
|
-
}
|
|
17
|
-
declare class ClassifiedValidationError extends Error {
|
|
18
|
-
readonly collection: string;
|
|
19
|
-
readonly field: string;
|
|
20
|
-
constructor(collection: string, field: string, detail: string);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
/** Flatten a classifiedFields config into a per-field map + rider computed entries. @module */
|
|
24
|
-
|
|
25
|
-
interface ResolvedClassified {
|
|
26
|
-
readonly byField: Record<string, ClassifiedFieldSpec>;
|
|
27
|
-
readonly riderComputed: Record<string, (record: Record<string, unknown>) => unknown>;
|
|
28
|
-
}
|
|
29
|
-
declare function resolveClassifiedFields(collection: string, config: Record<string, ClassifiedEntry>): ResolvedClassified;
|
|
30
|
-
|
|
31
|
-
/** The preset catalog (stage 1). Presets are hub-owned; devs get declarative
|
|
32
|
-
* knobs, not read-side callbacks (design law D2/D3). @module */
|
|
33
|
-
|
|
34
|
-
declare const classified: {
|
|
35
|
-
/** Composite card type. PAN sealed + last4/bin riders; CVC is storage:'never' (PCI-aware). */
|
|
36
|
-
creditCard(fields: {
|
|
37
|
-
pan: string;
|
|
38
|
-
expiry?: string;
|
|
39
|
-
cvc?: string;
|
|
40
|
-
}): ClassifiedGroup;
|
|
41
|
-
birthDate(): ClassifiedFieldSpec;
|
|
42
|
-
email(): ClassifiedFieldSpec;
|
|
43
|
-
phone(): ClassifiedFieldSpec;
|
|
44
|
-
/** Digest-only password: verify-without-reveal; never listed, never revealed.
|
|
45
|
-
* Enumeration math is on the caller for low-entropy values — see the
|
|
46
|
-
* per-preset docs; the hub ships no rate limiter in this slice (spec §5).
|
|
47
|
-
*
|
|
48
|
-
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
49
|
-
* `findByDigest`). Cost band you are accepting:
|
|
50
|
-
*
|
|
51
|
-
* equal values produce equal store-visible tags: anyone with store access
|
|
52
|
-
* learns which records share this secret and how many share each value —
|
|
53
|
-
* never the value itself. A collection-DEK holder can additionally test
|
|
54
|
-
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
55
|
-
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
56
|
-
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
57
|
-
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
58
|
-
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
59
|
-
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
60
|
-
* hardest primitive available; the iteration count raises the price but does
|
|
61
|
-
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
62
|
-
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
63
|
-
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
64
|
-
* tags. */
|
|
65
|
-
password(opts?: {
|
|
66
|
-
minLength?: number;
|
|
67
|
-
rotateDays?: number;
|
|
68
|
-
notLastN?: number;
|
|
69
|
-
equatable?: true;
|
|
70
|
-
}): ClassifiedFieldSpec;
|
|
71
|
-
/** Digest-only secret answer: normalized (casefold/trim/collapse), groupable
|
|
72
|
-
* into k-of-n matchGroup challenges. Low-entropy by nature — document the
|
|
73
|
-
* enumeration math to your users; add app-side rate limiting.
|
|
74
|
-
*
|
|
75
|
-
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
76
|
-
* `findByDigest`). Cost band you are accepting:
|
|
77
|
-
*
|
|
78
|
-
* equal values produce equal store-visible tags: anyone with store access
|
|
79
|
-
* learns which records share this secret and how many share each value —
|
|
80
|
-
* never the value itself. A collection-DEK holder can additionally test
|
|
81
|
-
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
82
|
-
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
83
|
-
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
84
|
-
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
85
|
-
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
86
|
-
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
87
|
-
* hardest primitive available; the iteration count raises the price but does
|
|
88
|
-
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
89
|
-
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
90
|
-
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
91
|
-
* tags. */
|
|
92
|
-
secretAnswer(opts?: {
|
|
93
|
-
equatable?: true;
|
|
94
|
-
}): ClassifiedFieldSpec;
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
/** Pure write-time validators. Exported so userland can validate storage:'never'
|
|
98
|
-
* fields (e.g. CVC) at capture, before dropping them. @module */
|
|
99
|
-
declare function luhnCheck(pan: string): boolean;
|
|
100
|
-
|
|
101
|
-
export { ClassifiedNeverStoredError as C, type ResolvedClassified as R, ClassifiedValidationError as a, classified as c, luhnCheck as l, resolveClassifiedFields as r };
|
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import { V as Vault, c7 as DiffEntry } from './index-DzhNI2vE.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Vault-level diff orchestrator.
|
|
5
|
-
*
|
|
6
|
-
* Compares a live `Vault`'s plaintext state against a candidate state
|
|
7
|
-
* (another vault, a plain `{ collection: records[] }` map, or a vault
|
|
8
|
-
* dump JSON) and returns a structured `VaultDiff` plan listing the
|
|
9
|
-
* records that would be added, modified, or deleted to bring the live
|
|
10
|
-
* vault into the candidate's shape.
|
|
11
|
-
*
|
|
12
|
-
* Builds on two existing record-level helpers:
|
|
13
|
-
*
|
|
14
|
-
* 1. `diff(a, b)` from `./history/diff.ts` — emits dot-pathed
|
|
15
|
-
* `DiffEntry[]` with `type: 'added' | 'removed' | 'changed'` for
|
|
16
|
-
* each changed field of two records. Used here for the
|
|
17
|
-
* `fieldDiffs` of every `modified` entry, and (with empty result)
|
|
18
|
-
* as the default deep-equal check.
|
|
19
|
-
*
|
|
20
|
-
* 2. `Vault.exportStream()` from `./vault.ts` — the canonical
|
|
21
|
-
* decrypt-and-stream-records iterator. Used to walk both sides
|
|
22
|
-
* when the candidate is itself a `Vault`. ACL-scoped: collections
|
|
23
|
-
* the caller can't read silently drop out, the same way every
|
|
24
|
-
* other plaintext-emitting export pipeline filters them.
|
|
25
|
-
*
|
|
26
|
-
* The new orchestration is the **vault-level** enumeration: bucket
|
|
27
|
-
* each record id into added (only in candidate), deleted (only in
|
|
28
|
-
* vault), or modified (in both with field changes); leave the
|
|
29
|
-
* field-level granularity to the existing `diff()`.
|
|
30
|
-
*
|
|
31
|
-
* Use cases:
|
|
32
|
-
*
|
|
33
|
-
* - Import preview (`@noy-db/as-*` `fromString` returns a plan
|
|
34
|
-
* whose body is a `VaultDiff`).
|
|
35
|
-
* - Backup verification ("does this `.noydb` bundle from yesterday
|
|
36
|
-
* match the current vault?").
|
|
37
|
-
* - Two-vault reconciliation ("what's different between Office A
|
|
38
|
-
* and Office B before we sync?").
|
|
39
|
-
* - Test assertions (golden-file testing with one-liner
|
|
40
|
-
* `expect(plan.summary).toEqual(...)`).
|
|
41
|
-
*
|
|
42
|
-
* @module
|
|
43
|
-
*/
|
|
44
|
-
|
|
45
|
-
/** Per-record entry shape — added and deleted records carry only the record value. */
|
|
46
|
-
interface VaultDiffEntry<T = unknown> {
|
|
47
|
-
readonly collection: string;
|
|
48
|
-
readonly id: string;
|
|
49
|
-
readonly record: T;
|
|
50
|
-
/**
|
|
51
|
-
* Unencrypted envelope metadata for the RECEIVER-side record.
|
|
52
|
-
* Populated only when `diffVault` is called with `{includeMetadata: true}`.
|
|
53
|
-
* Default: `undefined` (zero extra reads, no behavior change).
|
|
54
|
-
*
|
|
55
|
-
* Populated for `modified` (the CURRENT receiver state, before the candidate
|
|
56
|
-
* is applied) and `deleted` (the receiver envelope of the record being
|
|
57
|
-
* removed). `added` entries have no receiver envelope at diff time, so their
|
|
58
|
-
* `metadata` is always absent.
|
|
59
|
-
*/
|
|
60
|
-
readonly metadata?: {
|
|
61
|
-
readonly version: number;
|
|
62
|
-
readonly timestamp: string;
|
|
63
|
-
readonly by?: string;
|
|
64
|
-
readonly source?: string;
|
|
65
|
-
readonly sourceTs?: string;
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
/** Modified records carry both halves of the diff plus the field-level breakdown. */
|
|
69
|
-
interface VaultDiffModifiedEntry<T = unknown> extends VaultDiffEntry<T> {
|
|
70
|
-
/** The record as it stands in the live vault. */
|
|
71
|
-
readonly before: T;
|
|
72
|
-
/** Top-level keys whose values differ between `before` and `record`. */
|
|
73
|
-
readonly fieldsChanged: readonly string[];
|
|
74
|
-
/**
|
|
75
|
-
* Field-level diff entries from `diff(before, record)`. Reuses the
|
|
76
|
-
* existing per-record diff helper so consumers can render git-style
|
|
77
|
-
* `path: from → to` rows without re-walking the records.
|
|
78
|
-
*/
|
|
79
|
-
readonly fieldDiffs: readonly DiffEntry[];
|
|
80
|
-
}
|
|
81
|
-
interface VaultDiff<T = unknown> {
|
|
82
|
-
readonly added: readonly VaultDiffEntry<T>[];
|
|
83
|
-
readonly modified: readonly VaultDiffModifiedEntry<T>[];
|
|
84
|
-
readonly deleted: readonly VaultDiffEntry<T>[];
|
|
85
|
-
/** Only populated when `options.includeUnchanged: true`. */
|
|
86
|
-
readonly unchanged: readonly VaultDiffEntry<T>[] | undefined;
|
|
87
|
-
readonly summary: {
|
|
88
|
-
readonly add: number;
|
|
89
|
-
readonly modify: number;
|
|
90
|
-
readonly delete: number;
|
|
91
|
-
readonly total: number;
|
|
92
|
-
};
|
|
93
|
-
/**
|
|
94
|
-
* Format the diff as a human-readable string.
|
|
95
|
-
*
|
|
96
|
-
* - `'count'` — one line, just the numbers (`12 added · 3 modified · 0 deleted`)
|
|
97
|
-
* - `'one-line'` — count plus a single overview line
|
|
98
|
-
* - `'full'` — count + one row per added/modified/deleted record (default)
|
|
99
|
-
*/
|
|
100
|
-
format(opts?: {
|
|
101
|
-
detail?: 'count' | 'one-line' | 'full';
|
|
102
|
-
}): string;
|
|
103
|
-
}
|
|
104
|
-
interface DiffOptions {
|
|
105
|
-
/** Restrict the diff to a subset of collections. */
|
|
106
|
-
readonly collections?: readonly string[];
|
|
107
|
-
/** Field on each record that carries its id. Defaults to `'id'`. */
|
|
108
|
-
readonly idKey?: string;
|
|
109
|
-
/** Override the default deep-equal check for "modified vs unchanged". */
|
|
110
|
-
readonly compareFn?: (a: unknown, b: unknown) => boolean;
|
|
111
|
-
/** If true, include unchanged records in the diff (off by default to save memory). */
|
|
112
|
-
readonly includeUnchanged?: boolean;
|
|
113
|
-
/**
|
|
114
|
-
* When `true`, each entry in `added`, `modified`, and `deleted` will carry a
|
|
115
|
-
* `metadata` field with the RECEIVER-side envelope metadata
|
|
116
|
-
* (`version`, `timestamp`, `by?`, `source?`, `sourceTs?`).
|
|
117
|
-
*
|
|
118
|
-
* Off by default — no extra adapter reads, no behavior change for existing callers.
|
|
119
|
-
*/
|
|
120
|
-
readonly includeMetadata?: boolean;
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Candidate state to diff the vault against:
|
|
124
|
-
*
|
|
125
|
-
* - A `Vault` instance — both sides are walked via `exportStream()`.
|
|
126
|
-
* - A `Record<collection, records[]>` map — same shape `as-json.toObject()`
|
|
127
|
-
* produces. Useful for diffing parsed file content against the live vault.
|
|
128
|
-
* - A `VaultDump` (output of `vault.dump()`) — a JSON string carrying the
|
|
129
|
-
* full vault state. Parsed and reduced to the map shape above.
|
|
130
|
-
*/
|
|
131
|
-
type DiffCandidate<T = unknown> = Vault | Record<string, readonly T[]> | string;
|
|
132
|
-
/**
|
|
133
|
-
* Compute the diff between a live vault and a candidate state.
|
|
134
|
-
*
|
|
135
|
-
* Ungated shared import/merge infrastructure: the `as-*` exporters call this
|
|
136
|
-
* internally from their `fromString`/import merge logic, so it is always
|
|
137
|
-
* available (not behind `withCargo()`). Only `extractPartition` is a gated
|
|
138
|
-
* cargo capability.
|
|
139
|
-
*
|
|
140
|
-
* Returns a fully buffered `VaultDiff` — no streaming. Memory cost is
|
|
141
|
-
* O(n + m) in the row count of vault + candidate. For documented
|
|
142
|
-
* 1K-50K-record vaults this is fine; a streaming variant lands as a
|
|
143
|
-
* follow-up if a > 100K-record consumer arrives.
|
|
144
|
-
*/
|
|
145
|
-
declare function diffVault<T = unknown>(vault: Vault, candidate: DiffCandidate<T>, options?: DiffOptions): Promise<VaultDiff<T>>;
|
|
146
|
-
|
|
147
|
-
export { type DiffCandidate as D, type VaultDiff as V, type DiffOptions as a, type VaultDiffEntry as b, type VaultDiffModifiedEntry as c, diffVault as d };
|