@noy-db/hub 0.3.0-pre.10 → 0.3.0-pre.11
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 +4 -4
- package/dist/api-YGMINAET.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/backup-XA5STIYQ.js +225 -0
- package/dist/blobs/index.js +10 -10
- package/dist/broker/index.js +92 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/bundle/index.js +20 -20
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +30 -30
- package/dist/chunk-25NDNMQ7.js +70 -0
- package/dist/chunk-2JMMY7HZ.js +188 -0
- package/dist/chunk-3CNQ7FQ3.js +430 -0
- package/dist/chunk-3G4KMVUN.js +291 -0
- package/dist/chunk-3MSQLQNZ.js +74 -0
- package/dist/chunk-45ZZLTFH.js +38 -0
- package/dist/chunk-4GPE63GU.js +111 -0
- package/dist/chunk-4GPE63GU.js.map +1 -0
- package/dist/chunk-4N5QFSNQ.js +150 -0
- package/dist/chunk-4R4Q64W5.js +34 -0
- package/dist/chunk-57V5S7PW.js +130 -0
- package/dist/chunk-5JB73NMC.js +202 -0
- package/dist/chunk-5XIPOCQC.js +155 -0
- package/dist/chunk-5ZOSG3RJ.js +778 -0
- package/dist/chunk-67TNU77I.js +36 -0
- package/dist/chunk-6QILBDZU.js +205 -0
- package/dist/chunk-7E67FJ33.js +155 -0
- package/dist/chunk-7ITPJFGC.js +50 -0
- package/dist/chunk-7NS43EXZ.js +117 -0
- package/dist/chunk-7QIXUSDQ.js +341 -0
- package/dist/chunk-7VSGW5KJ.js +74 -0
- package/dist/chunk-A2QF4JUE.js +14073 -0
- package/dist/chunk-A2QF4JUE.js.map +1 -0
- package/dist/chunk-A2Y6YFVN.js +209 -0
- package/dist/chunk-AOVDSIL3.js +1221 -0
- package/dist/chunk-ARSAMO24.js +29 -0
- package/dist/chunk-AWB5JZW6.js +41 -0
- package/dist/chunk-BCYQA5BK.js +45 -0
- package/dist/chunk-BE7N3AXA.js +621 -0
- package/dist/chunk-BEIRE5K4.js +164 -0
- package/dist/chunk-BZO4WCJI.js +86 -0
- package/dist/chunk-C3YH34IL.js +75 -0
- package/dist/chunk-C7NTK5I3.js +49 -0
- package/dist/chunk-CB25ONKC.js +129 -0
- package/dist/chunk-CIKY6I4W.js +21 -0
- package/dist/chunk-CKZW6P5V.js +32 -0
- package/dist/chunk-CKZW6P5V.js.map +1 -0
- package/dist/chunk-D26JB3LZ.js +54 -0
- package/dist/chunk-D3EFFFOL.js +59 -0
- package/dist/chunk-DGH65E7Q.js +466 -0
- package/dist/chunk-DIRRS7WP.js +42 -0
- package/dist/chunk-DJ3VKYFA.js +150 -0
- package/dist/chunk-DJ3VKYFA.js.map +1 -0
- package/dist/chunk-DMFNPHCX.js +247 -0
- package/dist/chunk-ELNBMFOS.js +392 -0
- package/dist/chunk-FH542DDY.js +1505 -0
- package/dist/chunk-FH542DDY.js.map +1 -0
- package/dist/chunk-FQQF23MC.js +45 -0
- package/dist/chunk-FXK4X4BL.js +91 -0
- package/dist/chunk-GA2QHD6P.js +235 -0
- package/dist/chunk-H44ZE4IE.js +355 -0
- package/dist/chunk-H6CZSDWK.js +1697 -0
- package/dist/chunk-H6HM6CVR.js +279 -0
- package/dist/chunk-HFJIGWJC.js +382 -0
- package/dist/chunk-HUS3J5WM.js +404 -0
- package/dist/chunk-IDIV5NVH.js +99 -0
- package/dist/chunk-IGJHJYM6.js +515 -0
- package/dist/chunk-IP2QBAGS.js +589 -0
- package/dist/chunk-JOQ53DMI.js +255 -0
- package/dist/chunk-K62IUKOD.js +823 -0
- package/dist/chunk-KPGX66PM.js +230 -0
- package/dist/chunk-L2SNBIV7.js +453 -0
- package/dist/chunk-MCEKIAO4.js +367 -0
- package/dist/chunk-MELR46EF.js +280 -0
- package/dist/chunk-MSPNM2OM.js +95 -0
- package/dist/chunk-O2DYPAZY.js +23 -0
- package/dist/chunk-ODJWBC5I.js +30 -0
- package/dist/chunk-OEAATWH5.js +686 -0
- package/dist/chunk-OFJ5GPNA.js +71 -0
- package/dist/chunk-OOLO4LQG.js +99 -0
- package/dist/chunk-P5RY4ZWD.js +662 -0
- package/dist/chunk-PR5LC5YX.js +265 -0
- package/dist/chunk-PXWVF7MC.js +135 -0
- package/dist/chunk-Q3XSMOZM.js +40 -0
- package/dist/chunk-QLLKLFE2.js +94 -0
- package/dist/chunk-QQJXBZCO.js +1056 -0
- package/dist/chunk-QQJXBZCO.js.map +1 -0
- package/dist/chunk-QYPKGVT4.js +261 -0
- package/dist/chunk-RKRGDAS7.js +59 -0
- package/dist/chunk-SRVQHVNX.js +164 -0
- package/dist/chunk-SYMS4546.js +29 -0
- package/dist/chunk-TPH5EO6L.js +54 -0
- package/dist/chunk-UFILRICG.js +14 -0
- package/dist/chunk-UTLEAJXC.js +97 -0
- package/dist/chunk-VA4ZWLFY.js +123 -0
- package/dist/chunk-VR24ILCR.js +367 -0
- package/dist/chunk-W5D62AQD.js +944 -0
- package/dist/chunk-WGV4CUZT.js +167 -0
- package/dist/chunk-WTUNZACT.js +30 -0
- package/dist/chunk-WTUNZACT.js.map +1 -0
- package/dist/chunk-X6CMGUAG.js +69 -0
- package/dist/chunk-XFXUTFWQ.js +85 -0
- package/dist/chunk-XHV25KBM.js +30 -0
- package/dist/chunk-YSXEFGND.js +124 -0
- package/dist/chunk-YXOUQ2H7.js +36 -0
- package/dist/chunk-ZP5PL65C.js +80 -0
- package/dist/classified/index.js +5 -5
- package/dist/classified-marker-LQWWQNIJ.js +24 -0
- package/dist/collection-facade-YE2O4J4O.js +39 -0
- package/dist/computed-W6MVAMWZ.js +11 -0
- package/dist/consent/index.js +9 -9
- package/dist/crdt/index.js +1 -1
- package/dist/dead-filter-4KXZEB3X.js +28 -0
- package/dist/delegation-OPUU3R2E.js +25 -0
- package/dist/derivations/index.js +12 -12
- package/dist/derive-BGUHU663.js +21 -0
- package/dist/enclave-VXAQD4XJ.js +135 -0
- package/dist/executor-GTVSUUBX.js +25 -0
- package/dist/executor-GZWMTOXB.js +9 -0
- package/dist/executor-XXGS4S3K.js +9 -0
- package/dist/export-accessible-BMULIOYB.js +23 -0
- package/dist/extract-partition-JUQTWDXR.js +36 -0
- package/dist/fanout-sidecar-CKYFH33E.js +74 -0
- package/dist/find-XRGCNGNN.js +11 -0
- package/dist/forget/index.js +10 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +3 -3
- package/dist/history/index.js +11 -11
- package/dist/i18n/index.js +15 -15
- package/dist/index.d.ts +303 -1492
- package/dist/index.js +172 -171
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +2 -2
- package/dist/issue-UB6AA5M6.js +19 -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 +781 -0
- package/dist/kernel/collection.d.ts +1505 -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 +33 -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 +78 -0
- package/dist/kernel/enclave/record-keys/deterministic.d.ts +54 -0
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +57 -0
- package/dist/kernel/enclave/record-keys/record-codec.d.ts +301 -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 +1848 -0
- package/dist/kernel/events.d.ts +11 -0
- package/dist/kernel/memory-store.d.ts +17 -0
- package/dist/kernel/mutation.d.ts +14 -0
- package/dist/kernel/noydb.d.ts +818 -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/types.d.ts +3147 -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 +1723 -0
- package/dist/kernel/via/compose.d.ts +144 -0
- package/dist/kernel/via/dispatch.d.ts +185 -0
- package/dist/kernel/via/graph-wiring.d.ts +145 -0
- package/dist/kernel/via/graph.d.ts +165 -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-FU6GH5EH.js +42 -0
- package/dist/legacy/bundle.d.ts +30 -0
- package/dist/legacy/kernel.d.ts +33 -0
- package/dist/liberate-YUN7W5QG.js +24 -0
- package/dist/link-set-MNADSH5M.js +31 -0
- package/dist/materialized-views/index.js +19 -19
- package/dist/noydb-6JLBZU4U.js +67 -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-JTFOPPUU.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 +81 -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 +128 -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-HAWO3O7O.js +55 -0
- package/dist/public-envelope-NJVB7LPA.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 +5 -5
- package/dist/register-VCKOBWKT.js +23 -0
- package/dist/registry-72UKJ2L4.js +9 -0
- package/dist/registry-BZFLJNEH.js +18 -0
- package/dist/registry-YJEYSYI5.js +19 -0
- package/dist/request-withdrawal-6MJRMFHF.js +31 -0
- package/dist/reveal-BOY7XYFH.js +38 -0
- package/dist/revoke-4KUNSVJC.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/seed-4RRXT42N.js +231 -0
- package/dist/seed-4RRXT42N.js.map +1 -0
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-DDDXP5JD.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/stale-NXPT56JA.js +14 -0
- package/dist/storage-IR6EEAV2.js +23 -0
- package/dist/store-coordination-provider-HPYVFJCV.js +142 -0
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +10 -10
- package/dist/to/index.js +1 -1
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/verify-66RHOW7N.js +139 -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 +219 -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 +106 -0
- package/dist/walk-2RWEOCAS.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 +177 -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 +122 -0
- package/dist/with-audit/tiers/strategy.d.ts +35 -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 +33 -0
- package/dist/with-cargo/extract-partition.d.ts +147 -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 +38 -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 +27 -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 +335 -0
- package/dist/with-commit/history/strategy.d.ts +126 -0
- package/dist/with-commit/history/time-machine.d.ts +179 -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 +58 -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 +207 -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 +71 -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 +62 -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 +3 -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 +120 -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 +69 -0
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +186 -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 +123 -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 +41 -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 +37 -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 +165 -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-set.d.ts +342 -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 +37 -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/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 +26 -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-CLMZEHQT.js +28 -0
- package/package.json +47 -43
- package/dist/aggregate/index.d.ts +0 -41
- package/dist/api-TX2EX2FX.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-R7NTDFKY.js +0 -225
- package/dist/blobs/index.d.ts +0 -43
- package/dist/bundle/index.d.ts +0 -121
- package/dist/bundle-D6GxiUfq.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -7
- package/dist/chunk-2OV5NVE7.js +0 -95
- package/dist/chunk-2OZXVKVP.js +0 -367
- package/dist/chunk-2REPHKET.js +0 -54
- package/dist/chunk-3JXPAHOZ.js +0 -686
- package/dist/chunk-3MATJ6O4.js +0 -367
- package/dist/chunk-3OPY6MK2.js +0 -404
- package/dist/chunk-3QSIU3UT.js +0 -291
- package/dist/chunk-4OMCIY6F.js +0 -99
- package/dist/chunk-5I35DOHK.js +0 -94
- package/dist/chunk-5VG4IJR7.js +0 -235
- package/dist/chunk-5YESYH2C.js +0 -155
- package/dist/chunk-6G5ORS5D.js +0 -202
- package/dist/chunk-6P5XCKSD.js +0 -71
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-7BWJHO2A.js +0 -34
- package/dist/chunk-7P2SDJG3.js +0 -279
- package/dist/chunk-ANB77BVV.js +0 -150
- package/dist/chunk-ANB77BVV.js.map +0 -1
- package/dist/chunk-BKARNZJN.js +0 -382
- package/dist/chunk-BQISD5ZV.js +0 -261
- package/dist/chunk-BUAQ7YI3.js +0 -1697
- package/dist/chunk-CB7CWSKW.js +0 -430
- package/dist/chunk-DFVUTGT2.js +0 -515
- package/dist/chunk-DJ7KIPLV.js +0 -23
- package/dist/chunk-DSKDQP3G.js +0 -14066
- package/dist/chunk-DSKDQP3G.js.map +0 -1
- package/dist/chunk-DV4HUP5G.js +0 -99
- package/dist/chunk-EOXAAJTY.js +0 -621
- package/dist/chunk-ET67AY6B.js +0 -74
- package/dist/chunk-F4CEK5YM.js +0 -123
- package/dist/chunk-FORYWFN6.js +0 -130
- package/dist/chunk-FRP6D2DM.js +0 -91
- package/dist/chunk-FUOE7UUV.js +0 -341
- package/dist/chunk-G4JYND6L.js +0 -42
- package/dist/chunk-G6XV4H65.js +0 -59
- package/dist/chunk-GNMXXTMN.js +0 -85
- package/dist/chunk-HPWKV3YB.js +0 -21
- package/dist/chunk-HY3AUMFI.js +0 -41
- package/dist/chunk-HYR4WZZ3.js +0 -69
- package/dist/chunk-ICXIFFYZ.js +0 -355
- package/dist/chunk-IVLTXX4W.js +0 -280
- package/dist/chunk-J4LPNIGK.js +0 -777
- package/dist/chunk-JJZ2LW6T.js +0 -36
- package/dist/chunk-KJ2BCBTL.js +0 -589
- package/dist/chunk-KNZB6JMR.js +0 -129
- package/dist/chunk-LEJIKBBB.js +0 -124
- package/dist/chunk-LL2NIVUR.js +0 -188
- package/dist/chunk-MCHVVJIA.js +0 -968
- package/dist/chunk-MCHVVJIA.js.map +0 -1
- package/dist/chunk-NUEQU36L.js +0 -392
- package/dist/chunk-O45M6LDB.js +0 -38
- package/dist/chunk-OBKWYKYC.js +0 -117
- package/dist/chunk-OHHKHSJP.js +0 -209
- package/dist/chunk-OT76OZL6.js +0 -45
- package/dist/chunk-OVYRLHPE.js +0 -150
- package/dist/chunk-OXCSVM3B.js +0 -155
- package/dist/chunk-P33LUIML.js +0 -205
- package/dist/chunk-PLS64NCS.js +0 -59
- package/dist/chunk-PS2NEWEX.js +0 -36
- package/dist/chunk-QA2KUPCP.js +0 -45
- package/dist/chunk-QOC3VYL2.js +0 -30
- package/dist/chunk-QSFOZUYL.js +0 -823
- package/dist/chunk-RHK32N73.js +0 -30
- package/dist/chunk-RW3Y22MW.js +0 -97
- package/dist/chunk-S7VFUQM2.js +0 -1484
- package/dist/chunk-S7VFUQM2.js.map +0 -1
- package/dist/chunk-T7WSLRAU.js +0 -49
- package/dist/chunk-TAKWLZZX.js +0 -944
- package/dist/chunk-TMBXVJKT.js +0 -75
- package/dist/chunk-TWKKOM55.js +0 -54
- package/dist/chunk-U3WZCU7E.js +0 -14
- package/dist/chunk-UF362QVH.js +0 -70
- package/dist/chunk-UN4FVIBH.js +0 -135
- package/dist/chunk-VEAVKDDB.js +0 -29
- package/dist/chunk-VEPTFUJY.js +0 -29
- package/dist/chunk-VJV7GKQK.js +0 -662
- package/dist/chunk-VQRAIPYF.js +0 -50
- package/dist/chunk-VRIYFLBA.js +0 -74
- package/dist/chunk-VWM3DAVB.js +0 -265
- package/dist/chunk-VWRRVE6D.js +0 -80
- package/dist/chunk-WBJIQSLL.js +0 -167
- package/dist/chunk-WIGQB62E.js +0 -164
- package/dist/chunk-WZSCE6RM.js +0 -466
- package/dist/chunk-XGDAPN6M.js +0 -255
- package/dist/chunk-XH7XP3OL.js +0 -1221
- package/dist/chunk-XREOISSI.js +0 -40
- package/dist/chunk-XUBPSPKD.js +0 -164
- package/dist/chunk-Y3A5CB5G.js +0 -247
- package/dist/chunk-YCXCR7VG.js +0 -230
- package/dist/chunk-YMVQD5Q5.js +0 -453
- package/dist/chunk-YN5IAHN6.js +0 -32
- package/dist/chunk-YN5IAHN6.js.map +0 -1
- package/dist/chunk-ZYJ55N7N.js +0 -86
- package/dist/classified/index.d.ts +0 -16
- package/dist/classified-marker-H6YSHYNK.js +0 -24
- package/dist/collection-facade-LVD22JLM.js +0 -39
- package/dist/computed-EXDMQODG.js +0 -11
- package/dist/consent/index.d.ts +0 -22
- package/dist/crdt/index.d.ts +0 -33
- package/dist/dead-filter-HQIE2YG7.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-BJP73GAP.js +0 -25
- package/dist/derivations/index.d.ts +0 -69
- package/dist/derive-BME7HDWO.js +0 -21
- package/dist/dev-unlock-Bmm2pgJ0.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-NHORSWSF.js +0 -125
- package/dist/executor-FE6X4LFX.js +0 -9
- package/dist/executor-KSHKRJXP.js +0 -25
- package/dist/executor-ZHTJJICG.js +0 -9
- package/dist/export-accessible-DACHM5VT.js +0 -23
- package/dist/extract-partition-RNENZZ4T.js +0 -36
- package/dist/fanout-sidecar-OFWN3NM7.js +0 -74
- package/dist/find-BNGBJNKP.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -34
- package/dist/hash-DAJjMsCE.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-DjWbxsjb.d.ts +0 -23579
- package/dist/index-qwuNvO2B.d.ts +0 -144
- package/dist/indexing/index.d.ts +0 -38
- package/dist/issue-NDI4CVZU.js +0 -19
- package/dist/lazy/index.d.ts +0 -20
- package/dist/ledger-6NDS2EO4.js +0 -42
- package/dist/liberate-HN3RIGIP.js +0 -24
- package/dist/link-set-SJB2MVJV.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -189
- package/dist/mime-magic-bBj5OgUC.d.ts +0 -103
- package/dist/noydb-BWF6EPIR.js +0 -66
- 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-WGNAG5H6.js +0 -41
- package/dist/portability/index.d.ts +0 -19
- package/dist/post-register-CWKBQRC7.js +0 -55
- package/dist/public-envelope-EJLVIFX7.js +0 -32
- package/dist/query/index.d.ts +0 -4
- package/dist/register-SBIX7TVV.js +0 -23
- package/dist/registry-3EQG6OOE.js +0 -18
- package/dist/registry-CA327ACV.js +0 -9
- package/dist/registry-E7OXOTSV.js +0 -19
- package/dist/request-withdrawal-KAH2AAXC.js +0 -31
- package/dist/reveal-R3JLHMUF.js +0 -38
- package/dist/revoke-IXLOJ3IH.js +0 -24
- 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-Y46N2GJ3.js +0 -25
- package/dist/snapshots/index.d.ts +0 -25
- package/dist/stale-Z7IW6RIL.js +0 -14
- package/dist/storage-ADNP2UWI.js +0 -23
- package/dist/store-coordination-provider-DTDMI6VL.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-DI-krBsZ.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-BUcli5Nh.d.ts +0 -101
- package/dist/vault-diff-Z2DUayMe.d.ts +0 -147
- package/dist/verify-JPF2YR5E.js +0 -139
- package/dist/walk-XYA2O3LW.js +0 -241
- package/dist/with/index.d.ts +0 -37
- package/dist/with-materialized-view-BUmzlXue.d.ts +0 -27
- package/dist/with-overlayed-view-m4FaXXTO.d.ts +0 -12
- package/dist/with-rollup-DEKGI9vb.d.ts +0 -47
- package/dist/withdraw-accessible-WLV4MTEN.js +0 -28
- /package/dist/{api-TX2EX2FX.js.map → api-YGMINAET.js.map} +0 -0
- /package/dist/{backup-R7NTDFKY.js.map → backup-XA5STIYQ.js.map} +0 -0
- /package/dist/{chunk-UF362QVH.js.map → chunk-25NDNMQ7.js.map} +0 -0
- /package/dist/{chunk-LL2NIVUR.js.map → chunk-2JMMY7HZ.js.map} +0 -0
- /package/dist/{chunk-CB7CWSKW.js.map → chunk-3CNQ7FQ3.js.map} +0 -0
- /package/dist/{chunk-3QSIU3UT.js.map → chunk-3G4KMVUN.js.map} +0 -0
- /package/dist/{chunk-VRIYFLBA.js.map → chunk-3MSQLQNZ.js.map} +0 -0
- /package/dist/{chunk-O45M6LDB.js.map → chunk-45ZZLTFH.js.map} +0 -0
- /package/dist/{chunk-OVYRLHPE.js.map → chunk-4N5QFSNQ.js.map} +0 -0
- /package/dist/{chunk-7BWJHO2A.js.map → chunk-4R4Q64W5.js.map} +0 -0
- /package/dist/{chunk-FORYWFN6.js.map → chunk-57V5S7PW.js.map} +0 -0
- /package/dist/{chunk-6G5ORS5D.js.map → chunk-5JB73NMC.js.map} +0 -0
- /package/dist/{chunk-OXCSVM3B.js.map → chunk-5XIPOCQC.js.map} +0 -0
- /package/dist/{chunk-J4LPNIGK.js.map → chunk-5ZOSG3RJ.js.map} +0 -0
- /package/dist/{chunk-JJZ2LW6T.js.map → chunk-67TNU77I.js.map} +0 -0
- /package/dist/{chunk-P33LUIML.js.map → chunk-6QILBDZU.js.map} +0 -0
- /package/dist/{chunk-5YESYH2C.js.map → chunk-7E67FJ33.js.map} +0 -0
- /package/dist/{chunk-VQRAIPYF.js.map → chunk-7ITPJFGC.js.map} +0 -0
- /package/dist/{chunk-OBKWYKYC.js.map → chunk-7NS43EXZ.js.map} +0 -0
- /package/dist/{chunk-FUOE7UUV.js.map → chunk-7QIXUSDQ.js.map} +0 -0
- /package/dist/{chunk-ET67AY6B.js.map → chunk-7VSGW5KJ.js.map} +0 -0
- /package/dist/{chunk-OHHKHSJP.js.map → chunk-A2Y6YFVN.js.map} +0 -0
- /package/dist/{chunk-XH7XP3OL.js.map → chunk-AOVDSIL3.js.map} +0 -0
- /package/dist/{chunk-VEAVKDDB.js.map → chunk-ARSAMO24.js.map} +0 -0
- /package/dist/{chunk-HY3AUMFI.js.map → chunk-AWB5JZW6.js.map} +0 -0
- /package/dist/{chunk-OT76OZL6.js.map → chunk-BCYQA5BK.js.map} +0 -0
- /package/dist/{chunk-EOXAAJTY.js.map → chunk-BE7N3AXA.js.map} +0 -0
- /package/dist/{chunk-XUBPSPKD.js.map → chunk-BEIRE5K4.js.map} +0 -0
- /package/dist/{chunk-ZYJ55N7N.js.map → chunk-BZO4WCJI.js.map} +0 -0
- /package/dist/{chunk-TMBXVJKT.js.map → chunk-C3YH34IL.js.map} +0 -0
- /package/dist/{chunk-T7WSLRAU.js.map → chunk-C7NTK5I3.js.map} +0 -0
- /package/dist/{chunk-KNZB6JMR.js.map → chunk-CB25ONKC.js.map} +0 -0
- /package/dist/{chunk-HPWKV3YB.js.map → chunk-CIKY6I4W.js.map} +0 -0
- /package/dist/{chunk-TWKKOM55.js.map → chunk-D26JB3LZ.js.map} +0 -0
- /package/dist/{chunk-PLS64NCS.js.map → chunk-D3EFFFOL.js.map} +0 -0
- /package/dist/{chunk-WZSCE6RM.js.map → chunk-DGH65E7Q.js.map} +0 -0
- /package/dist/{chunk-G4JYND6L.js.map → chunk-DIRRS7WP.js.map} +0 -0
- /package/dist/{chunk-Y3A5CB5G.js.map → chunk-DMFNPHCX.js.map} +0 -0
- /package/dist/{chunk-NUEQU36L.js.map → chunk-ELNBMFOS.js.map} +0 -0
- /package/dist/{chunk-QA2KUPCP.js.map → chunk-FQQF23MC.js.map} +0 -0
- /package/dist/{chunk-FRP6D2DM.js.map → chunk-FXK4X4BL.js.map} +0 -0
- /package/dist/{chunk-5VG4IJR7.js.map → chunk-GA2QHD6P.js.map} +0 -0
- /package/dist/{chunk-ICXIFFYZ.js.map → chunk-H44ZE4IE.js.map} +0 -0
- /package/dist/{chunk-BUAQ7YI3.js.map → chunk-H6CZSDWK.js.map} +0 -0
- /package/dist/{chunk-7P2SDJG3.js.map → chunk-H6HM6CVR.js.map} +0 -0
- /package/dist/{chunk-BKARNZJN.js.map → chunk-HFJIGWJC.js.map} +0 -0
- /package/dist/{chunk-3OPY6MK2.js.map → chunk-HUS3J5WM.js.map} +0 -0
- /package/dist/{chunk-DV4HUP5G.js.map → chunk-IDIV5NVH.js.map} +0 -0
- /package/dist/{chunk-DFVUTGT2.js.map → chunk-IGJHJYM6.js.map} +0 -0
- /package/dist/{chunk-KJ2BCBTL.js.map → chunk-IP2QBAGS.js.map} +0 -0
- /package/dist/{chunk-XGDAPN6M.js.map → chunk-JOQ53DMI.js.map} +0 -0
- /package/dist/{chunk-QSFOZUYL.js.map → chunk-K62IUKOD.js.map} +0 -0
- /package/dist/{chunk-YCXCR7VG.js.map → chunk-KPGX66PM.js.map} +0 -0
- /package/dist/{chunk-YMVQD5Q5.js.map → chunk-L2SNBIV7.js.map} +0 -0
- /package/dist/{chunk-2OZXVKVP.js.map → chunk-MCEKIAO4.js.map} +0 -0
- /package/dist/{chunk-IVLTXX4W.js.map → chunk-MELR46EF.js.map} +0 -0
- /package/dist/{chunk-2OV5NVE7.js.map → chunk-MSPNM2OM.js.map} +0 -0
- /package/dist/{chunk-DJ7KIPLV.js.map → chunk-O2DYPAZY.js.map} +0 -0
- /package/dist/{chunk-RHK32N73.js.map → chunk-ODJWBC5I.js.map} +0 -0
- /package/dist/{chunk-3JXPAHOZ.js.map → chunk-OEAATWH5.js.map} +0 -0
- /package/dist/{chunk-6P5XCKSD.js.map → chunk-OFJ5GPNA.js.map} +0 -0
- /package/dist/{chunk-4OMCIY6F.js.map → chunk-OOLO4LQG.js.map} +0 -0
- /package/dist/{chunk-VJV7GKQK.js.map → chunk-P5RY4ZWD.js.map} +0 -0
- /package/dist/{chunk-VWM3DAVB.js.map → chunk-PR5LC5YX.js.map} +0 -0
- /package/dist/{chunk-UN4FVIBH.js.map → chunk-PXWVF7MC.js.map} +0 -0
- /package/dist/{chunk-XREOISSI.js.map → chunk-Q3XSMOZM.js.map} +0 -0
- /package/dist/{chunk-5I35DOHK.js.map → chunk-QLLKLFE2.js.map} +0 -0
- /package/dist/{chunk-BQISD5ZV.js.map → chunk-QYPKGVT4.js.map} +0 -0
- /package/dist/{chunk-G6XV4H65.js.map → chunk-RKRGDAS7.js.map} +0 -0
- /package/dist/{chunk-WIGQB62E.js.map → chunk-SRVQHVNX.js.map} +0 -0
- /package/dist/{chunk-VEPTFUJY.js.map → chunk-SYMS4546.js.map} +0 -0
- /package/dist/{chunk-2REPHKET.js.map → chunk-TPH5EO6L.js.map} +0 -0
- /package/dist/{chunk-U3WZCU7E.js.map → chunk-UFILRICG.js.map} +0 -0
- /package/dist/{chunk-RW3Y22MW.js.map → chunk-UTLEAJXC.js.map} +0 -0
- /package/dist/{chunk-F4CEK5YM.js.map → chunk-VA4ZWLFY.js.map} +0 -0
- /package/dist/{chunk-3MATJ6O4.js.map → chunk-VR24ILCR.js.map} +0 -0
- /package/dist/{chunk-TAKWLZZX.js.map → chunk-W5D62AQD.js.map} +0 -0
- /package/dist/{chunk-WBJIQSLL.js.map → chunk-WGV4CUZT.js.map} +0 -0
- /package/dist/{chunk-HYR4WZZ3.js.map → chunk-X6CMGUAG.js.map} +0 -0
- /package/dist/{chunk-GNMXXTMN.js.map → chunk-XFXUTFWQ.js.map} +0 -0
- /package/dist/{chunk-QOC3VYL2.js.map → chunk-XHV25KBM.js.map} +0 -0
- /package/dist/{chunk-LEJIKBBB.js.map → chunk-YSXEFGND.js.map} +0 -0
- /package/dist/{chunk-PS2NEWEX.js.map → chunk-YXOUQ2H7.js.map} +0 -0
- /package/dist/{chunk-VWRRVE6D.js.map → chunk-ZP5PL65C.js.map} +0 -0
- /package/dist/{classified-marker-H6YSHYNK.js.map → classified-marker-LQWWQNIJ.js.map} +0 -0
- /package/dist/{collection-facade-LVD22JLM.js.map → collection-facade-YE2O4J4O.js.map} +0 -0
- /package/dist/{computed-EXDMQODG.js.map → computed-W6MVAMWZ.js.map} +0 -0
- /package/dist/{dead-filter-HQIE2YG7.js.map → dead-filter-4KXZEB3X.js.map} +0 -0
- /package/dist/{delegation-BJP73GAP.js.map → delegation-OPUU3R2E.js.map} +0 -0
- /package/dist/{derive-BME7HDWO.js.map → derive-BGUHU663.js.map} +0 -0
- /package/dist/{enclave-NHORSWSF.js.map → enclave-VXAQD4XJ.js.map} +0 -0
- /package/dist/{executor-FE6X4LFX.js.map → executor-GTVSUUBX.js.map} +0 -0
- /package/dist/{executor-KSHKRJXP.js.map → executor-GZWMTOXB.js.map} +0 -0
- /package/dist/{executor-ZHTJJICG.js.map → executor-XXGS4S3K.js.map} +0 -0
- /package/dist/{export-accessible-DACHM5VT.js.map → export-accessible-BMULIOYB.js.map} +0 -0
- /package/dist/{extract-partition-RNENZZ4T.js.map → extract-partition-JUQTWDXR.js.map} +0 -0
- /package/dist/{fanout-sidecar-OFWN3NM7.js.map → fanout-sidecar-CKYFH33E.js.map} +0 -0
- /package/dist/{find-BNGBJNKP.js.map → find-XRGCNGNN.js.map} +0 -0
- /package/dist/{issue-NDI4CVZU.js.map → issue-UB6AA5M6.js.map} +0 -0
- /package/dist/{ledger-6NDS2EO4.js.map → ledger-FU6GH5EH.js.map} +0 -0
- /package/dist/{liberate-HN3RIGIP.js.map → liberate-YUN7W5QG.js.map} +0 -0
- /package/dist/{link-set-SJB2MVJV.js.map → link-set-MNADSH5M.js.map} +0 -0
- /package/dist/{noydb-BWF6EPIR.js.map → noydb-6JLBZU4U.js.map} +0 -0
- /package/dist/{policy-WGNAG5H6.js.map → policy-JTFOPPUU.js.map} +0 -0
- /package/dist/{post-register-CWKBQRC7.js.map → post-register-HAWO3O7O.js.map} +0 -0
- /package/dist/{public-envelope-EJLVIFX7.js.map → public-envelope-NJVB7LPA.js.map} +0 -0
- /package/dist/{register-SBIX7TVV.js.map → register-VCKOBWKT.js.map} +0 -0
- /package/dist/{registry-3EQG6OOE.js.map → registry-72UKJ2L4.js.map} +0 -0
- /package/dist/{registry-CA327ACV.js.map → registry-BZFLJNEH.js.map} +0 -0
- /package/dist/{registry-E7OXOTSV.js.map → registry-YJEYSYI5.js.map} +0 -0
- /package/dist/{request-withdrawal-KAH2AAXC.js.map → request-withdrawal-6MJRMFHF.js.map} +0 -0
- /package/dist/{reveal-R3JLHMUF.js.map → reveal-BOY7XYFH.js.map} +0 -0
- /package/dist/{revoke-IXLOJ3IH.js.map → revoke-4KUNSVJC.js.map} +0 -0
- /package/dist/{signer-Y46N2GJ3.js.map → signer-DDDXP5JD.js.map} +0 -0
- /package/dist/{stale-Z7IW6RIL.js.map → stale-NXPT56JA.js.map} +0 -0
- /package/dist/{storage-ADNP2UWI.js.map → storage-IR6EEAV2.js.map} +0 -0
- /package/dist/{store-coordination-provider-DTDMI6VL.js.map → store-coordination-provider-HPYVFJCV.js.map} +0 -0
- /package/dist/{verify-JPF2YR5E.js.map → verify-66RHOW7N.js.map} +0 -0
- /package/dist/{walk-XYA2O3LW.js.map → walk-2RWEOCAS.js.map} +0 -0
- /package/dist/{withdraw-accessible-WLV4MTEN.js.map → withdraw-accessible-CLMZEHQT.js.map} +0 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The classified `ViaBinding` (#629 Task 5, LIVE since Task 6) — wires
|
|
3
|
+
* classified-fields declaration/write-enforcement/at-rest sealing/erasure
|
|
4
|
+
* into the kernel's generic Via port. Mirrors `via/money/binding.ts`'s
|
|
5
|
+
* inline declaration-time validation and `via/i18n/binding.ts`'s
|
|
6
|
+
* `linkXVia` static-link pattern — except the link itself is EAGER
|
|
7
|
+
* (`port/with/classified-strategy.ts` calls `linkClassifiedVia()` at module
|
|
8
|
+
* load, not lazily from a `classified.*()` preset call): several fixtures
|
|
9
|
+
* build a raw `ClassifiedFieldSpec` literal without ever calling a preset,
|
|
10
|
+
* and the binder must be installed before `compileViaBindings` needs it
|
|
11
|
+
* regardless.
|
|
12
|
+
*
|
|
13
|
+
* `compileViaBindings` (`kernel/collection-config.ts`) compiles this binding
|
|
14
|
+
* in whenever a collection declares `classifiedFields` — money then i18n
|
|
15
|
+
* then classified, order pinned. `kernel/collection.ts`'s `_putInternal`
|
|
16
|
+
* runs `enforceClassifiedWrite`'s effect via the pipeline's `enforceWrite`
|
|
17
|
+
* phase; the codec's `encodeAtRest`/`decodeAtRest` hooks (Task 3's boundary)
|
|
18
|
+
* replace the inline `sensitiveFields` seal path for any collection this
|
|
19
|
+
* binding is compiled into.
|
|
20
|
+
*
|
|
21
|
+
* `declare` — `classifiedBinding(cfg)` runs `resolveClassifiedFields` +
|
|
22
|
+
* `guardClassifiedCompat` at CONSTRUCTION time (the same #553 pattern
|
|
23
|
+
* `moneyBinding`'s `validateMoneyFieldPaths(moneyFields)` call uses) —
|
|
24
|
+
* mirrors today's "door 1" (`collection-config.ts`'s
|
|
25
|
+
* `resolveCollectionConfig`). Both may throw `ClassifiedConfigError`.
|
|
26
|
+
*/
|
|
27
|
+
import type { ViaBinding } from '../../kernel/via/index.js';
|
|
28
|
+
import { type ClassifiedEntry } from './resolve.js';
|
|
29
|
+
import { type ClassifiedGuardCtx } from './guards.js';
|
|
30
|
+
/**
|
|
31
|
+
* One classified per-slot shred/residue verdict — mirrors
|
|
32
|
+
* `RecordCodec.SealedShredSlot` (`kernel/enclave/record-keys/record-codec.ts`)
|
|
33
|
+
* byte-for-byte. Duplicated here (not imported) so this binding never
|
|
34
|
+
* reaches into `kernel/enclave/` (`via-enclave-isolation`, #629) — the
|
|
35
|
+
* closure that PRODUCES real values of this shape is codec-owned and
|
|
36
|
+
* injected via {@link ClassifiedViaConfig.classifySealedShred}.
|
|
37
|
+
*/
|
|
38
|
+
export interface ClassifiedShredSlot {
|
|
39
|
+
readonly field: string;
|
|
40
|
+
readonly class: 'shreddable' | 'dekResidue' | 'live-shreddable+dekResidue-in-backups';
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Config a classified collection's declarations resolve to — the binding's
|
|
44
|
+
* construction input. `entries`/`guardCtx` are the raw "door 1" inputs
|
|
45
|
+
* (`resolveClassifiedFields`/`guardClassifiedCompat`'s own parameters);
|
|
46
|
+
* `classifySealedShred`/`purgeSealedCekEnvelopes` are OPTIONAL codec/vault-
|
|
47
|
+
* provided closures for the `erase` hook — undefined in this dormant task
|
|
48
|
+
* (no caller wires them yet), wired for real in #629 Task 10 ("posture
|
|
49
|
+
* enforcement — forget + erase hooks live").
|
|
50
|
+
*/
|
|
51
|
+
export interface ClassifiedViaConfig {
|
|
52
|
+
readonly entries: Record<string, ClassifiedEntry>;
|
|
53
|
+
readonly collectionName: string;
|
|
54
|
+
readonly guardCtx: ClassifiedGuardCtx;
|
|
55
|
+
/**
|
|
56
|
+
* Codec-provided closure mirroring `RecordCodec.classifySealedShred` —
|
|
57
|
+
* classifies a live envelope's `_sealed` slots for crypto-shred
|
|
58
|
+
* completeness (see that method's doc comment for the shreddable/
|
|
59
|
+
* dekResidue/both-class semantics). `live` is `ViaEraseCtx.live`'s opaque
|
|
60
|
+
* envelope, passed straight through. NOT `readonly` (#629 Task 10):
|
|
61
|
+
* `compileViaBindings` builds this cfg before the owning `Collection`'s
|
|
62
|
+
* `RecordCodec` exists, so `Collection`'s constructor mutates this field
|
|
63
|
+
* in place once `this.codec` is available — the closure `eraseClassified`
|
|
64
|
+
* reads is looked up at CALL time, not at binding-construction time, so
|
|
65
|
+
* the late assignment is picked up correctly.
|
|
66
|
+
*/
|
|
67
|
+
classifySealedShred?: (live: unknown) => Promise<{
|
|
68
|
+
readonly slots: readonly ClassifiedShredSlot[];
|
|
69
|
+
}>;
|
|
70
|
+
/**
|
|
71
|
+
* Vault-provided closure that purges every `_sealed_cek/<collection>/<id>/*`
|
|
72
|
+
* host-delivery envelope for one record (mirrors `rotateRecordCek`'s own
|
|
73
|
+
* prefix-delete) and returns the count purged. Deliberately left UNWIRED
|
|
74
|
+
* by `compileViaBindings` (#629 Task 10) — `forget-sealed-erasure.test.ts`
|
|
75
|
+
* proves this purge is UNCONDITIONAL on `sealRecordToHost` usage alone,
|
|
76
|
+
* independent of whether `classifiedFields` is declared (a bare
|
|
77
|
+
* `sensitive: [...]` collection exercises it with no classified binding
|
|
78
|
+
* at all) — vault.ts keeps owning it directly so that case stays correct.
|
|
79
|
+
*/
|
|
80
|
+
readonly purgeSealedCekEnvelopes?: (id: string) => Promise<number>;
|
|
81
|
+
}
|
|
82
|
+
export declare function classifiedBinding(cfg: ClassifiedViaConfig): ViaBinding;
|
|
83
|
+
export declare function linkClassifiedVia(): void;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C-A / R10 config-drift marker I/O — the store side of the guard, kept OUT of
|
|
3
|
+
* the kernel `Collection` so the always-on kernel surface stays lean. The
|
|
4
|
+
* kernel holds only the per-handle memoization; these helpers do the actual
|
|
5
|
+
* persisted-schema read/write (via the persisted-schemas storage seam, lazily
|
|
6
|
+
* imported so the classified spine tree-shakes).
|
|
7
|
+
*
|
|
8
|
+
* Marker semantics: a collection declaring classified digest-only fields writes
|
|
9
|
+
* an `x-classified` marker into its `_schemas/<collection>` record on the first
|
|
10
|
+
* classified write. A handle later opened WITHOUT `classifiedFields` (a naive
|
|
11
|
+
* handle) reads it back and refuses to write — see RecordCodec.encryptRecord's
|
|
12
|
+
* R10 guard.
|
|
13
|
+
*
|
|
14
|
+
* `dek` is typed as the bare `CryptoKey` global rather than `EnclaveKey`
|
|
15
|
+
* (`kernel/enclave/crypto.ts`'s alias for the same type) — this file lives
|
|
16
|
+
* under `via/classified/`, which the `via-enclave-isolation`
|
|
17
|
+
* architecture guard (#629) forbids from importing `kernel/enclave/` at
|
|
18
|
+
* all, even type-only.
|
|
19
|
+
*
|
|
20
|
+
* @module
|
|
21
|
+
*/
|
|
22
|
+
import type { NoydbStore, VdigFieldPolicy } from '../../kernel/types.js';
|
|
23
|
+
/**
|
|
24
|
+
* Persist the classified marker for a handle's digest-only fields. No-op when
|
|
25
|
+
* the handle declares none. Idempotent (delegates to `persistClassifiedMarker`).
|
|
26
|
+
*/
|
|
27
|
+
export declare function persistClassifiedMarkerForFields(store: NoydbStore, vault: string, collectionName: string, vdigFields: ReadonlyMap<string, VdigFieldPolicy> | null, dek: CryptoKey): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Read a collection's persisted classified marker's declared digest-only field
|
|
30
|
+
* set (empty when the collection carries no marker). Cross-session drift signal:
|
|
31
|
+
* the R10 superset guard refuses a handle whose declared classified set does not
|
|
32
|
+
* cover every field in this set.
|
|
33
|
+
*/
|
|
34
|
+
export declare function readClassifiedMarkerDigestOnly(store: NoydbStore, vault: string, collectionName: string, dek: CryptoKey): Promise<readonly string[]>;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classified fields — behavioral sensitive-field descriptors (stage 1).
|
|
3
|
+
* Design: docs/superpowers/specs/2026-07-04-classified-fields-design.md
|
|
4
|
+
* Law: open on write, declarative on read — read-side behavior is this
|
|
5
|
+
* closed vocabulary; there are no read-side callbacks.
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
export type ClassifiedStorage = 'recoverable' | 'never' | 'digest-only';
|
|
9
|
+
export type ClassifiedList = {
|
|
10
|
+
readonly kind: 'omit';
|
|
11
|
+
} | {
|
|
12
|
+
readonly kind: 'mask';
|
|
13
|
+
readonly pattern: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly kind: 'rider';
|
|
16
|
+
readonly rider: string;
|
|
17
|
+
};
|
|
18
|
+
export type ClassifiedRider = (value: unknown) => unknown;
|
|
19
|
+
export interface ClassifiedFieldSpec {
|
|
20
|
+
readonly _noydbClassified: true;
|
|
21
|
+
/**
|
|
22
|
+
* Via port brand marker — lets a `ClassifiedFieldSpec` satisfy the
|
|
23
|
+
* kernel's opaque `ViaDescriptor` (#629 Task 5). Optional (unlike
|
|
24
|
+
* `MoneyDescriptor._viaBrand`/`I18nTextDescriptor._viaBrand`, which are
|
|
25
|
+
* required): every `classified.*()` preset factory stamps it, but the
|
|
26
|
+
* pre-existing test suite's hand-rolled `ClassifiedFieldSpec` fixtures
|
|
27
|
+
* (built without going through a preset) predate this field and would
|
|
28
|
+
* fail to compile if it were mandatory.
|
|
29
|
+
*/
|
|
30
|
+
readonly _viaBrand?: 'classified';
|
|
31
|
+
readonly preset: string;
|
|
32
|
+
readonly storage: ClassifiedStorage;
|
|
33
|
+
readonly list: ClassifiedList;
|
|
34
|
+
readonly sensitivity: 'pii' | 'secret';
|
|
35
|
+
/** Write-time safe projections; companion field name is `<field>_<rider>`. */
|
|
36
|
+
readonly riders?: Record<string, ClassifiedRider>;
|
|
37
|
+
/** Write-time validator: error message, or null when valid. */
|
|
38
|
+
readonly validate?: (value: unknown) => string | null;
|
|
39
|
+
/** Digest-only verify policy (stage 2). Mode both sides normalize under. */
|
|
40
|
+
readonly verifyNormalize?: 'password' | 'secret-answer';
|
|
41
|
+
/** Decorate ok:true verdicts with mustRotate after this many days (I1). */
|
|
42
|
+
readonly rotateDays?: number;
|
|
43
|
+
/** Refuse reuse of the last N values on rotate (cap 8, spec Q4). */
|
|
44
|
+
readonly notLastN?: number;
|
|
45
|
+
/** Member of the collection's matchGroup (secretAnswer preset). */
|
|
46
|
+
readonly verifyGroupMember?: true;
|
|
47
|
+
/**
|
|
48
|
+
* Opt into a store-visible blind-index (`_bidx`) tag so equal values become
|
|
49
|
+
* queryable/joinable while staying digest-only. Digest-only knob (R7); gated
|
|
50
|
+
* behind the collection's `acknowledgeEquatableRisk` door (R8). Equal values
|
|
51
|
+
* produce equal tags — a partition leak a DEK holder can offline-dictionary
|
|
52
|
+
* at the PBKDF2 floor. Absent/false ⇒ refused-by-default.
|
|
53
|
+
*/
|
|
54
|
+
readonly equatable?: true;
|
|
55
|
+
}
|
|
56
|
+
export interface ClassifiedGroup {
|
|
57
|
+
readonly _noydbClassifiedGroup: true;
|
|
58
|
+
/** Via port brand marker — see {@link ClassifiedFieldSpec._viaBrand}. */
|
|
59
|
+
readonly _viaBrand?: 'classified';
|
|
60
|
+
readonly preset: string;
|
|
61
|
+
/** member record-field name -> spec (differential per-member policy). */
|
|
62
|
+
readonly members: Record<string, ClassifiedFieldSpec>;
|
|
63
|
+
}
|
|
64
|
+
export type ClassifiedEntry = ClassifiedFieldSpec | ClassifiedGroup;
|
|
65
|
+
export declare function isClassifiedFieldSpec(x: unknown): x is ClassifiedFieldSpec;
|
|
66
|
+
export declare function isClassifiedGroup(x: unknown): x is ClassifiedGroup;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration/write errors for classified fields. @module
|
|
3
|
+
*
|
|
4
|
+
* `ClassifiedConfigError` / `ClassifiedRevealError` moved to `kernel/errors.ts`
|
|
5
|
+
* (stage 2) so `kernel/enclave/classify/*` can throw them without importing
|
|
6
|
+
* with-*. Re-exported here under the same names so existing import paths
|
|
7
|
+
* keep working.
|
|
8
|
+
*/
|
|
9
|
+
export { ClassifiedConfigError, ClassifiedRevealError, ClassifiedVerifyError, ClassifiedRotationError } from '../../kernel/errors.js';
|
|
10
|
+
export declare class ClassifiedNeverStoredError extends Error {
|
|
11
|
+
readonly collection: string;
|
|
12
|
+
readonly field: string;
|
|
13
|
+
constructor(collection: string, field: string);
|
|
14
|
+
}
|
|
15
|
+
export declare class ClassifiedValidationError extends Error {
|
|
16
|
+
readonly collection: string;
|
|
17
|
+
readonly field: string;
|
|
18
|
+
constructor(collection: string, field: string, detail: string);
|
|
19
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Refusal matrix R1-R5 (spec) — ONE guard, run at BOTH doors:
|
|
3
|
+
* `collection()` config resolution AND `_applyClassifiedFields` (the reconcile
|
|
4
|
+
* seam), because crdt/conflictPolicy/perRecordKeys are construction-only
|
|
5
|
+
* while classifiedFields can attach later (C5's lesson). @module
|
|
6
|
+
*/
|
|
7
|
+
import type { ClassifiedFieldSpec } from './descriptor.js';
|
|
8
|
+
export interface ClassifiedGuardCtx {
|
|
9
|
+
readonly perRecordKeys: boolean;
|
|
10
|
+
readonly crdt: boolean;
|
|
11
|
+
readonly hasConflictPolicy: boolean;
|
|
12
|
+
/** False on plaintext (`encrypt: false`) collections — no vdig/seal path exists. */
|
|
13
|
+
readonly storeCiphertext: boolean;
|
|
14
|
+
readonly deterministicFields: ReadonlySet<string> | null;
|
|
15
|
+
readonly indexedFields: ReadonlySet<string>;
|
|
16
|
+
readonly textIndexFields: ReadonlySet<string>;
|
|
17
|
+
readonly vectorSourceFields: ReadonlySet<string>;
|
|
18
|
+
readonly subjectKeyField: string | undefined;
|
|
19
|
+
readonly bareSensitiveFields: ReadonlySet<string>;
|
|
20
|
+
/** Collection-level gate for the `equatable` knob (R8 double door). */
|
|
21
|
+
readonly acknowledgeEquatableRisk: boolean;
|
|
22
|
+
}
|
|
23
|
+
export declare function guardClassifiedCompat(collection: string, byField: Record<string, ClassifiedFieldSpec>, ctx: ClassifiedGuardCtx): void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Classified fields barrel — descriptors, presets, resolver, errors (stage 1). @module */
|
|
2
|
+
export type { ClassifiedStorage, ClassifiedList, ClassifiedRider, ClassifiedFieldSpec, ClassifiedGroup, ClassifiedEntry, } from './descriptor.js';
|
|
3
|
+
export { isClassifiedFieldSpec, isClassifiedGroup } from './descriptor.js';
|
|
4
|
+
export { resolveClassifiedFields, type ResolvedClassified } from './resolve.js';
|
|
5
|
+
export { classified } from './presets.js';
|
|
6
|
+
export { luhnCheck } from './validators.js';
|
|
7
|
+
export { enforceClassifiedWrite } from './write.js';
|
|
8
|
+
export { ClassifiedConfigError, ClassifiedNeverStoredError, ClassifiedValidationError, ClassifiedRevealError, ClassifiedVerifyError, ClassifiedRotationError } from './errors.js';
|
|
9
|
+
export { withClassified } from './active.js';
|
|
10
|
+
export { NO_CLASSIFIED, type ClassifiedStrategy, type ClassifiedRevealCtx } from './strategy.js';
|
|
11
|
+
export type { ClassifiedVerdict, ClassifiedVerifyCtx } from './strategy.js';
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/** The preset catalog (stage 1). Presets are hub-owned; devs get declarative
|
|
2
|
+
* knobs, not read-side callbacks (design law D2/D3). @module */
|
|
3
|
+
import type { ClassifiedFieldSpec, ClassifiedGroup } from './descriptor.js';
|
|
4
|
+
export declare const classified: {
|
|
5
|
+
/** Composite card type. PAN sealed + last4/bin riders; CVC is storage:'never' (PCI-aware). */
|
|
6
|
+
creditCard(fields: {
|
|
7
|
+
pan: string;
|
|
8
|
+
expiry?: string;
|
|
9
|
+
cvc?: string;
|
|
10
|
+
}): ClassifiedGroup;
|
|
11
|
+
birthDate(): ClassifiedFieldSpec;
|
|
12
|
+
email(): ClassifiedFieldSpec;
|
|
13
|
+
phone(): ClassifiedFieldSpec;
|
|
14
|
+
/** Digest-only password: verify-without-reveal; never listed, never revealed.
|
|
15
|
+
* Enumeration math is on the caller for low-entropy values — see the
|
|
16
|
+
* per-preset docs; the hub ships no rate limiter in this slice (spec §5).
|
|
17
|
+
*
|
|
18
|
+
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
19
|
+
* `findByDigest`). Cost band you are accepting:
|
|
20
|
+
*
|
|
21
|
+
* equal values produce equal store-visible tags: anyone with store access
|
|
22
|
+
* learns which records share this secret and how many share each value —
|
|
23
|
+
* never the value itself. A collection-DEK holder can additionally test
|
|
24
|
+
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
25
|
+
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
26
|
+
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
27
|
+
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
28
|
+
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
29
|
+
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
30
|
+
* hardest primitive available; the iteration count raises the price but does
|
|
31
|
+
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
32
|
+
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
33
|
+
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
34
|
+
* tags. */
|
|
35
|
+
password(opts?: {
|
|
36
|
+
minLength?: number;
|
|
37
|
+
rotateDays?: number;
|
|
38
|
+
notLastN?: number;
|
|
39
|
+
equatable?: true;
|
|
40
|
+
}): ClassifiedFieldSpec;
|
|
41
|
+
/** Digest-only secret answer: normalized (casefold/trim/collapse), groupable
|
|
42
|
+
* into k-of-n matchGroup challenges. Low-entropy by nature — document the
|
|
43
|
+
* enumeration math to your users; add app-side rate limiting.
|
|
44
|
+
*
|
|
45
|
+
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
46
|
+
* `findByDigest`). Cost band you are accepting:
|
|
47
|
+
*
|
|
48
|
+
* equal values produce equal store-visible tags: anyone with store access
|
|
49
|
+
* learns which records share this secret and how many share each value —
|
|
50
|
+
* never the value itself. A collection-DEK holder can additionally test
|
|
51
|
+
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
52
|
+
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
53
|
+
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
54
|
+
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
55
|
+
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
56
|
+
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
57
|
+
* hardest primitive available; the iteration count raises the price but does
|
|
58
|
+
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
59
|
+
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
60
|
+
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
61
|
+
* tags. */
|
|
62
|
+
secretAnswer(opts?: {
|
|
63
|
+
equatable?: true;
|
|
64
|
+
}): ClassifiedFieldSpec;
|
|
65
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Flatten a classifiedFields config into a per-field map + rider computed entries. @module */
|
|
2
|
+
import { type ClassifiedEntry, type ClassifiedFieldSpec } from './descriptor.js';
|
|
3
|
+
export type { ClassifiedEntry, ClassifiedFieldSpec, ClassifiedGroup, ClassifiedList } from './descriptor.js';
|
|
4
|
+
export { ClassifiedConfigError } from './errors.js';
|
|
5
|
+
export interface ResolvedClassified {
|
|
6
|
+
readonly byField: Record<string, ClassifiedFieldSpec>;
|
|
7
|
+
readonly riderComputed: Record<string, (record: Record<string, unknown>) => unknown>;
|
|
8
|
+
}
|
|
9
|
+
export declare function resolveClassifiedFields(collection: string, config: Record<string, ClassifiedEntry>): ResolvedClassified;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ② capability seam for classified read-egress ops (stage 1: reveal;
|
|
3
|
+
* stage 2: verify). `ClassifiedStrategy` + `ClassifiedRevealCtx` +
|
|
4
|
+
* `ClassifiedVerifyCtx` + `NO_CLASSIFIED` now live on the kernel port
|
|
5
|
+
* (`port/with/classified-strategy.ts`, #629 Task 5) — re-exported here for
|
|
6
|
+
* compat with existing importers of this module.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export type { ClassifiedStrategy, ClassifiedRevealCtx, ClassifiedVerifyCtx, ClassifiedVerdict } from '../../port/with/classified-strategy.js';
|
|
11
|
+
export { NO_CLASSIFIED } from '../../port/with/classified-strategy.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** Write-path enforcement: storage:'never' rejection + preset validators.
|
|
2
|
+
* Runs BEFORE riders/computed and BEFORE schema validation. Pure. @module */
|
|
3
|
+
import type { ClassifiedFieldSpec } from './descriptor.js';
|
|
4
|
+
export declare function enforceClassifiedWrite(record: Record<string, unknown>, byField: Record<string, ClassifiedFieldSpec>, collection: string): void;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `computed` via-binding (#638 Task 7) — covers ONLY `mode: 'virtual'`
|
|
3
|
+
* fields. Materialized entries never reach here: they compile into
|
|
4
|
+
* `mergedComputed` (`kernel/collection-config.ts`) and run through the
|
|
5
|
+
* EXISTING stage-5 `evalComputedFields` write path, byte-for-byte unchanged
|
|
6
|
+
* (the behavior lock).
|
|
7
|
+
*
|
|
8
|
+
* A virtual field is computed on READ, inside `present()` — the money-
|
|
9
|
+
* `Formatted`/i18n-`Label` precedent (seam map Part 4) generalized to a
|
|
10
|
+
* user-declared function. It is NEVER stored (no `encodeAtRest`/
|
|
11
|
+
* `decodeAtRest` — the field never appears in `_data` or any `_sealed`
|
|
12
|
+
* slot), and its posture is fixed `queryable: 'none'` — there is no stored/
|
|
13
|
+
* indexed form to query against, regardless of what its sources would
|
|
14
|
+
* otherwise permit (`ViaGraph`'s grain-'virtual' clamp, `kernel/via/graph.ts`,
|
|
15
|
+
* is the belt; this binding's own static posture is the suspenders for a
|
|
16
|
+
* depsless virtual field, which registers no graph edge at all).
|
|
17
|
+
*
|
|
18
|
+
* Export/read redaction for a TAINTED virtual field (sourced from a
|
|
19
|
+
* classified/sealed field) is NOT this binding's job — it stays ignorant of
|
|
20
|
+
* taint, exactly like `evalComputedFields` stays ignorant of it for
|
|
21
|
+
* materialized fields. `kernel/via/taint-binding.ts#taintBinding` (appended
|
|
22
|
+
* to the pipeline by `via/graph-wiring.ts#applyTaintOverlay`, AFTER this
|
|
23
|
+
* binding) overwrites a tainted virtual field's value with the same
|
|
24
|
+
* `EXPORT_REDACTION_MARKER` on every present() — the one enforcement seam
|
|
25
|
+
* every via feature's taint already routes through.
|
|
26
|
+
*/
|
|
27
|
+
import type { ViaBinding } from '../../kernel/via/index.js';
|
|
28
|
+
import type { ComputedDescriptor } from './descriptor.js';
|
|
29
|
+
export interface ComputedViaConfig {
|
|
30
|
+
/** field name -> its virtual-mode descriptor. Materialized entries are never present here. */
|
|
31
|
+
readonly virtualFields: ReadonlyMap<string, ComputedDescriptor>;
|
|
32
|
+
}
|
|
33
|
+
export declare function computedBinding(cfg: ComputedViaConfig): ViaBinding;
|
|
34
|
+
export declare function linkComputedVia(): void;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* computed() — the declaration factory for a field whose value is DERIVED
|
|
3
|
+
* from other fields on the same record (#638 Task 7, spec §6). Composes
|
|
4
|
+
* with `via()` (the locked grammar since phase A: `via(computed(fn, { deps,
|
|
5
|
+
* mode }), money('EUR'))`), grouped by `_viaBrand` like every other via
|
|
6
|
+
* feature (`kernel/via/compose.ts#mergeViaFields`).
|
|
7
|
+
*
|
|
8
|
+
* `mode` picks where the function runs:
|
|
9
|
+
* - `'materialized'` (default) — TODAY's stage-5 write-time eager compute
|
|
10
|
+
* (`with-formula/computed/index.ts#evalComputedFields`), stored like any
|
|
11
|
+
* other field. Byte-for-byte the existing `computed: { field: fn }` sugar.
|
|
12
|
+
* - `'virtual'` — rides the `present` read phase (the money-`Formatted`/
|
|
13
|
+
* i18n-`Label` precedent, seam map Part 4): computed fresh on every
|
|
14
|
+
* read, NEVER stored, `queryable: 'none'`, excluded from export unless
|
|
15
|
+
* its declared `deps` permit (identical taint rule to materialized —
|
|
16
|
+
* see `via/computed/binding.ts`).
|
|
17
|
+
*
|
|
18
|
+
* `deps` names the OTHER fields `fn` reads — feeds `ViaGraph` (Task 1/2) so
|
|
19
|
+
* a source's taint (e.g. a classified field) propagates to this derived
|
|
20
|
+
* field. A depsless entry is fine UNLESS the collection also declares
|
|
21
|
+
* classified fields (`kernel/collection-config.ts#resolveComputedEdges`
|
|
22
|
+
* refuses it — closes the #636 opaque-function leak).
|
|
23
|
+
*/
|
|
24
|
+
import type { ViaDescriptor } from '../../kernel/via/index.js';
|
|
25
|
+
export interface ComputedDescriptor extends ViaDescriptor {
|
|
26
|
+
readonly _viaBrand: 'computed';
|
|
27
|
+
readonly fn: (record: Record<string, unknown>) => unknown;
|
|
28
|
+
readonly deps?: readonly string[];
|
|
29
|
+
readonly mode: 'materialized' | 'virtual';
|
|
30
|
+
}
|
|
31
|
+
export declare function computed(fn: (record: Record<string, unknown>) => unknown, opts?: {
|
|
32
|
+
readonly deps?: readonly string[];
|
|
33
|
+
readonly mode?: 'materialized' | 'virtual';
|
|
34
|
+
}): ComputedDescriptor;
|
|
35
|
+
export declare function isComputedDescriptor(x: unknown): x is ComputedDescriptor;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Active i18n strategy — `withI18n()` returns the real implementation
|
|
3
|
+
* that wires multi-locale resolution, i18nText validation, and the
|
|
4
|
+
* `DictionaryHandle` for `dictKey` fields into the core read/write
|
|
5
|
+
* paths.
|
|
6
|
+
*
|
|
7
|
+
* Consumers opt in by:
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { createNoydb } from '@noy-db/hub'
|
|
11
|
+
* import { withI18n } from '@noy-db/hub/i18n'
|
|
12
|
+
*
|
|
13
|
+
* const db = await createNoydb({
|
|
14
|
+
* store: ...,
|
|
15
|
+
* user: ...,
|
|
16
|
+
* i18nStrategy: withI18n(),
|
|
17
|
+
* })
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* The factory delegates to the existing `core.ts` and `dictionary.ts`
|
|
21
|
+
* modules. Splitting the import chain through this file is what lets
|
|
22
|
+
* tsup tree-shake the `~854 LOC` of dictionary + locale resolution
|
|
23
|
+
* out of the default bundle when no `withI18n()` import is present.
|
|
24
|
+
*
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
import type { I18nStrategy } from './strategy.js';
|
|
28
|
+
export declare function withI18n(): I18nStrategy;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The i18n `ViaBinding` — wires the i18n engine (auto-translate/script
|
|
3
|
+
* enforcement/validation/densify on write; locale + dict-label presentation
|
|
4
|
+
* on read) into the kernel's generic Via port. Mirrors
|
|
5
|
+
* `via/money/binding.ts`'s #553 static-link pattern.
|
|
6
|
+
*
|
|
7
|
+
* LIVE (#623 Task 8 wired the cutover): `i18nBinding()`/`linkI18nVia()` are
|
|
8
|
+
* the real put/read path for every i18n-declaring collection —
|
|
9
|
+
* `collection.ts`'s `_putInternal`/`applyLocaleToRecord` (the call sites
|
|
10
|
+
* this file's bodies were moved/adapted from) now delegate their i18n
|
|
11
|
+
* stages to `this.via.encodeWrite`/`this.via.present` instead of running
|
|
12
|
+
* the hand-wired i18n logic inline.
|
|
13
|
+
*
|
|
14
|
+
* `i18nText()`, `dictKey()`, `staticDict()` each call {@link linkI18nVia}
|
|
15
|
+
* first — the same #553 pattern `money()` uses.
|
|
16
|
+
*/
|
|
17
|
+
import type { ViaBinding } from '../../kernel/via/index.js';
|
|
18
|
+
/**
|
|
19
|
+
* Config a collection's i18n declarations resolve to — the binding's
|
|
20
|
+
* construction input. Fields are loosely typed (`unknown`) at this seam
|
|
21
|
+
* because the kernel's `ViaBinder` contract is opaque-config-in; the
|
|
22
|
+
* concrete i18n types are applied inside the binding's own functions.
|
|
23
|
+
*/
|
|
24
|
+
export interface I18nViaConfig {
|
|
25
|
+
i18nFields?: Record<string, unknown>;
|
|
26
|
+
dictKeyFields?: Record<string, unknown>;
|
|
27
|
+
i18nDensifyFields?: Record<string, unknown>;
|
|
28
|
+
strategy: unknown;
|
|
29
|
+
defaultLocale?: string;
|
|
30
|
+
autoTranslateHook?: (...args: unknown[]) => Promise<string>;
|
|
31
|
+
dictLabelResolver?: (...args: unknown[]) => Promise<string | undefined>;
|
|
32
|
+
i18nPutValidator?: (record: unknown) => void;
|
|
33
|
+
collectionName: string;
|
|
34
|
+
}
|
|
35
|
+
export declare function i18nBinding(cfg: I18nViaConfig): ViaBinding;
|
|
36
|
+
export declare function linkI18nVia(): void;
|