@noy-db/hub 0.3.0-pre.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/index.js +9 -8
- package/dist/aggregate/index.js.map +1 -1
- package/dist/api-ZGS6LCOF.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/backup-BJ57IKAO.js +242 -0
- package/dist/backup-BJ57IKAO.js.map +1 -0
- package/dist/blobs/index.js +13 -11
- package/dist/blobs/index.js.map +1 -1
- package/dist/broker/index.js +92 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/bundle/index.js +25 -22
- package/dist/bundle/index.js.map +1 -1
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +31 -31
- package/dist/chunk-2NVOWNI3.js +167 -0
- package/dist/chunk-2NVOWNI3.js.map +1 -0
- package/dist/chunk-3B5VVCNY.js +71 -0
- package/dist/chunk-3LQ2YKO4.js +230 -0
- package/dist/chunk-3QCRBHCY.js +54 -0
- package/dist/chunk-454JXE57.js +1697 -0
- package/dist/chunk-454JXE57.js.map +1 -0
- package/dist/chunk-4CTHCN4J.js +480 -0
- package/dist/chunk-4CTHCN4J.js.map +1 -0
- package/dist/chunk-4GPE63GU.js +111 -0
- package/dist/chunk-4GPE63GU.js.map +1 -0
- package/dist/chunk-4JBYV75E.js +150 -0
- package/dist/chunk-4NXKCLLQ.js +97 -0
- package/dist/chunk-4VNQOLML.js +29 -0
- package/dist/chunk-4VNQOLML.js.map +1 -0
- package/dist/chunk-5M5DVGV7.js +69 -0
- package/dist/chunk-5O3XF4DV.js +150 -0
- package/dist/chunk-5O3XF4DV.js.map +1 -0
- package/dist/chunk-5YOLBEQ6.js +30 -0
- package/dist/chunk-6CRIV7DE.js +129 -0
- package/dist/chunk-6JTIAGHD.js +621 -0
- package/dist/chunk-6JTIAGHD.js.map +1 -0
- package/dist/chunk-6QTNZJBS.js +255 -0
- package/dist/chunk-6T2SCQRU.js +86 -0
- package/dist/chunk-7DSTRQIJ.js +45 -0
- package/dist/chunk-AUSTCW2X.js +589 -0
- package/dist/chunk-B3HJYUOF.js +209 -0
- package/dist/chunk-BDVFPG6Y.js +164 -0
- package/dist/chunk-BIOUI4HL.js +1554 -0
- package/dist/chunk-BIOUI4HL.js.map +1 -0
- package/dist/chunk-CAF6WOK7.js +36 -0
- package/dist/chunk-CDUQTA3Z.js +381 -0
- package/dist/chunk-CDUQTA3Z.js.map +1 -0
- package/dist/chunk-CIE2BASH.js +404 -0
- package/dist/chunk-CRI4OUV4.js +42 -0
- package/dist/chunk-DLG74CNB.js +91 -0
- package/dist/chunk-E5ZQT5KX.js +30 -0
- package/dist/chunk-E5ZQT5KX.js.map +1 -0
- package/dist/chunk-EQO2UVP4.js +247 -0
- package/dist/chunk-EQO2UVP4.js.map +1 -0
- package/dist/chunk-ERJ7FU55.js +367 -0
- package/dist/chunk-EVVGJDRQ.js +205 -0
- package/dist/chunk-EVX47VBM.js +74 -0
- package/dist/chunk-EVX47VBM.js.map +1 -0
- package/dist/chunk-EXK7QRWF.js +59 -0
- package/dist/chunk-EYZ6IQ6X.js +202 -0
- package/dist/chunk-F64IRYG3.js +45 -0
- package/dist/chunk-FHS2HQSH.js +823 -0
- package/dist/chunk-FM3G3NOY.js +206 -0
- package/dist/chunk-FM3G3NOY.js.map +1 -0
- package/dist/chunk-FUG4SFN3.js +36 -0
- package/dist/chunk-FUG4SFN3.js.map +1 -0
- package/dist/chunk-GKEWXIV5.js +80 -0
- package/dist/chunk-GTGPO5KW.js +59 -0
- package/dist/chunk-HB3RFQSC.js +95 -0
- package/dist/chunk-HDMEGAQE.js +957 -0
- package/dist/chunk-HDMEGAQE.js.map +1 -0
- package/dist/chunk-HDQIIUPH.js +135 -0
- package/dist/chunk-HDQIIUPH.js.map +1 -0
- package/dist/chunk-HTJQYHZP.js +344 -0
- package/dist/chunk-HTJQYHZP.js.map +1 -0
- package/dist/chunk-I6GALP6E.js +99 -0
- package/dist/chunk-IGJCYUT5.js +99 -0
- package/dist/chunk-IGJCYUT5.js.map +1 -0
- package/dist/chunk-IL6POWCW.js +130 -0
- package/dist/chunk-IU6SNYX6.js +117 -0
- package/dist/chunk-J2ZX2XUV.js +778 -0
- package/dist/chunk-JIF24JPM.js +495 -0
- package/dist/chunk-JIF24JPM.js.map +1 -0
- package/dist/chunk-JK733I5V.js +23 -0
- package/dist/chunk-JK733I5V.js.map +1 -0
- package/dist/chunk-JKJOGPZN.js +29 -0
- package/dist/chunk-JNAI2HN2.js +32 -0
- package/dist/chunk-JNAI2HN2.js.map +1 -0
- package/dist/chunk-JZUV47FZ.js +41 -0
- package/dist/chunk-K5IMOGHB.js +30 -0
- package/dist/chunk-KPZS5QAQ.js +151 -0
- package/dist/chunk-KPZS5QAQ.js.map +1 -0
- package/dist/chunk-KSKBRKGJ.js +291 -0
- package/dist/chunk-KSKBRKGJ.js.map +1 -0
- package/dist/chunk-LASZKVMO.js +382 -0
- package/dist/chunk-LXEXBTKL.js +515 -0
- package/dist/chunk-LXEXBTKL.js.map +1 -0
- package/dist/chunk-M4CV6BRT.js +524 -0
- package/dist/chunk-M4CV6BRT.js.map +1 -0
- package/dist/chunk-MEFJPTZ4.js +371 -0
- package/dist/chunk-MEFJPTZ4.js.map +1 -0
- package/dist/chunk-MV43JSJF.js +265 -0
- package/dist/chunk-MV43JSJF.js.map +1 -0
- package/dist/chunk-NJ4EOKMB.js +392 -0
- package/dist/chunk-NJ4EOKMB.js.map +1 -0
- package/dist/chunk-NR5LT5RY.js +135 -0
- package/dist/chunk-NWSGI5C7.js +261 -0
- package/dist/chunk-NWSGI5C7.js.map +1 -0
- package/dist/chunk-OSDB5WW3.js +739 -0
- package/dist/chunk-OSDB5WW3.js.map +1 -0
- package/dist/chunk-PN2XMATY.js +37 -0
- package/dist/chunk-PN2XMATY.js.map +1 -0
- package/dist/chunk-Q5VNKNE5.js +70 -0
- package/dist/chunk-QLWMEXCT.js +21 -0
- package/dist/chunk-QRB7NAOJ.js +123 -0
- package/dist/chunk-R4ROFEYC.js +74 -0
- package/dist/chunk-RCVJZMFE.js +164 -0
- package/dist/chunk-RCVJZMFE.js.map +1 -0
- package/dist/chunk-RIX4V2TB.js +367 -0
- package/dist/chunk-RYCTDFUX.js +40 -0
- package/dist/chunk-RZ5SVOYR.js +155 -0
- package/dist/chunk-SLFHQTTW.js +99 -0
- package/dist/chunk-SNZ6URZZ.js +2782 -0
- package/dist/chunk-SNZ6URZZ.js.map +1 -0
- package/dist/chunk-T2FFWNPK.js +75 -0
- package/dist/chunk-T2FFWNPK.js.map +1 -0
- package/dist/chunk-UNFPPVNI.js +23 -0
- package/dist/chunk-VFUPHI2Z.js +333 -0
- package/dist/chunk-VFUPHI2Z.js.map +1 -0
- package/dist/chunk-VLFCJYTL.js +235 -0
- package/dist/chunk-VN3DBQAU.js +124 -0
- package/dist/chunk-VYYM3MEN.js +98 -0
- package/dist/chunk-VYYM3MEN.js.map +1 -0
- package/dist/chunk-VZRODIM3.js +49 -0
- package/dist/chunk-W22IKJE2.js +94 -0
- package/dist/chunk-X3YYQWOQ.js +155 -0
- package/dist/chunk-X7QBD67R.js +14405 -0
- package/dist/chunk-X7QBD67R.js.map +1 -0
- package/dist/chunk-XDYREZWE.js +1128 -0
- package/dist/chunk-XDYREZWE.js.map +1 -0
- package/dist/chunk-XWZVFISC.js +720 -0
- package/dist/chunk-XWZVFISC.js.map +1 -0
- package/dist/chunk-YFXZEAYK.js +85 -0
- package/dist/chunk-ZAJAVEXY.js +50 -0
- package/dist/chunk-ZICD77GM.js +34 -0
- package/dist/chunk-ZJ2AK4V7.js +38 -0
- package/dist/chunk-ZJ2AK4V7.js.map +1 -0
- package/dist/chunk-ZUODRVHY.js +14 -0
- package/dist/classified/index.js +5 -3
- package/dist/classified-marker-CZKA6ITE.js +28 -0
- package/dist/classified-marker-CZKA6ITE.js.map +1 -0
- package/dist/collection-facade-TLWIPI76.js +44 -0
- package/dist/computed-ZIQTYTDI.js +11 -0
- package/dist/consent/index.js +9 -9
- package/dist/crdt/index.js +1 -1
- package/dist/dead-filter-ESOBZZP5.js +28 -0
- package/dist/delegation-W7ZV2322.js +25 -0
- package/dist/derivations/index.js +12 -11
- package/dist/derive-H2BJTLUI.js +21 -0
- package/dist/enclave-AP3I5W7O.js +141 -0
- package/dist/executor-KGWTNEQD.js +9 -0
- package/dist/executor-OVEXR6RT.js +9 -0
- package/dist/executor-UNEH5ZYH.js +25 -0
- package/dist/export-accessible-PCMXSUZS.js +23 -0
- package/dist/extract-partition-SWHFSYJO.js +38 -0
- package/dist/fanout-sidecar-A765THMX.js +74 -0
- package/dist/find-N6345CNT.js +11 -0
- package/dist/forget/index.js +10 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +6 -6
- package/dist/history/index.js +14 -11
- package/dist/history/index.js.map +1 -1
- package/dist/i18n/index.js +50 -37
- package/dist/i18n/index.js.map +1 -1
- package/dist/index.d.ts +307 -1459
- package/dist/index.js +595 -198
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +7 -7
- package/dist/indexing/index.js.map +1 -1
- package/dist/issue-5OKB6I2R.js +19 -0
- package/dist/kernel/best-effort-revert.d.ts +52 -0
- package/dist/kernel/cache/index.d.ts +10 -0
- package/dist/kernel/cache/lru.d.ts +97 -0
- package/dist/kernel/cache/policy.d.ts +32 -0
- package/dist/kernel/collection-config.d.ts +809 -0
- package/dist/kernel/collection.d.ts +1522 -0
- package/dist/kernel/constants.d.ts +18 -0
- package/dist/kernel/debug.d.ts +25 -0
- package/dist/kernel/enclave/broker/proof.d.ts +154 -0
- package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
- package/dist/kernel/enclave/classify/compare.d.ts +10 -0
- package/dist/kernel/enclave/classify/digest.d.ts +8 -0
- package/dist/kernel/enclave/classify/find.d.ts +36 -0
- package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
- package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
- package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
- package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
- package/dist/kernel/enclave/classify/verify.d.ts +36 -0
- package/dist/kernel/enclave/classify/write.d.ts +8 -0
- package/dist/kernel/enclave/crypto.d.ts +263 -0
- package/dist/kernel/enclave/index.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/deterministic.d.ts +55 -0
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +107 -0
- package/dist/kernel/enclave/record-keys/record-codec.d.ts +328 -0
- package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
- package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
- package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
- package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
- package/dist/kernel/env-check.d.ts +1 -0
- package/dist/kernel/errors.d.ts +1922 -0
- package/dist/kernel/events.d.ts +11 -0
- package/dist/kernel/lazy-count.d.ts +13 -0
- package/dist/kernel/memory-store.d.ts +17 -0
- package/dist/kernel/mutation.d.ts +14 -0
- package/dist/kernel/noydb.d.ts +826 -0
- package/dist/kernel/paths.d.ts +25 -0
- package/dist/kernel/query/builder.d.ts +520 -0
- package/dist/kernel/query/index.d.ts +31 -0
- package/dist/kernel/query/join.d.ts +205 -0
- package/dist/kernel/query/live.d.ts +111 -0
- package/dist/kernel/query/predicate.d.ts +139 -0
- package/dist/kernel/query/scan-builder.d.ts +334 -0
- package/dist/kernel/refs.d.ts +205 -0
- package/dist/kernel/schema.d.ts +134 -0
- package/dist/kernel/sync-policy.d.ts +188 -0
- package/dist/kernel/tier-visibility.d.ts +54 -0
- package/dist/kernel/types.d.ts +3239 -0
- package/dist/kernel/util/discriminant.d.ts +58 -0
- package/dist/kernel/util/index.d.ts +14 -0
- package/dist/kernel/util/sanitize-filename.d.ts +75 -0
- package/dist/kernel/validation.d.ts +130 -0
- package/dist/kernel/vault.d.ts +1740 -0
- package/dist/kernel/via/compose.d.ts +144 -0
- package/dist/kernel/via/dispatch.d.ts +195 -0
- package/dist/kernel/via/graph-wiring.d.ts +145 -0
- package/dist/kernel/via/graph.d.ts +166 -0
- package/dist/kernel/via/index.d.ts +200 -0
- package/dist/kernel/via/pipeline.d.ts +266 -0
- package/dist/kernel/via/reconcile.d.ts +153 -0
- package/dist/kernel/via/taint-binding.d.ts +66 -0
- package/dist/kernel/write-queue.d.ts +46 -0
- package/dist/ledger-GFBKVPV4.js +42 -0
- package/dist/legacy/bundle.d.ts +30 -0
- package/dist/legacy/kernel.d.ts +33 -0
- package/dist/liberate-3VDOT4KO.js +24 -0
- package/dist/link-set-Z7Q2ASFX.js +31 -0
- package/dist/materialized-views/index.js +19 -15
- package/dist/noydb-ZCJOYBDI.js +68 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -12
- package/dist/pod/index.js +11 -11
- package/dist/policy-Z3RUAIY2.js +41 -0
- package/dist/port/as/index.d.ts +26 -0
- package/dist/port/at/index.d.ts +18 -0
- package/dist/port/by/default-provider.d.ts +9 -0
- package/dist/port/by/index.d.ts +17 -0
- package/dist/port/by/types.d.ts +86 -0
- package/dist/port/in/index.d.ts +21 -0
- package/dist/port/on/index.d.ts +27 -0
- package/dist/port/to/index.d.ts +19 -0
- package/dist/port/ui/index.d.ts +21 -0
- package/dist/port/with/blob-strategy.d.ts +98 -0
- package/dist/port/with/broker-strategy.d.ts +84 -0
- package/dist/port/with/capabilities.d.ts +31 -0
- package/dist/port/with/classified-marker.d.ts +9 -0
- package/dist/port/with/classified-strategy.d.ts +62 -0
- package/dist/port/with/computed-strategy.d.ts +19 -0
- package/dist/port/with/i18n-strategy.d.ts +175 -0
- package/dist/port/with/index.d.ts +18 -0
- package/dist/port/with/lazy-strategy.d.ts +48 -0
- package/dist/port/with/lookup-strategy.d.ts +129 -0
- package/dist/port/with/service-bus.d.ts +156 -0
- package/dist/port/with/team-strategy.d.ts +36 -0
- package/dist/port/with/write-hooks.d.ts +34 -0
- package/dist/portability/index.js +8 -8
- package/dist/post-register-JTH76BLY.js +60 -0
- package/dist/post-register-JTH76BLY.js.map +1 -0
- package/dist/public-envelope-B4KNWVUA.js +32 -0
- package/dist/purge-scope-FGNNLWHD.js +24 -0
- package/dist/purge-scope-FGNNLWHD.js.map +1 -0
- package/dist/query/index.js +9 -6
- package/dist/read-only-facade-CHCKSEPD.js +8 -0
- package/dist/register-VAHONCID.js +23 -0
- package/dist/registry-7MLVD3VO.js +19 -0
- package/dist/registry-EPKPD5SM.js +18 -0
- package/dist/registry-P5T7PS2U.js +9 -0
- package/dist/request-withdrawal-TI3A5WPS.js +31 -0
- package/dist/reveal-DIBHLUZX.js +38 -0
- package/dist/reveal-DIBHLUZX.js.map +1 -0
- package/dist/revoke-FDRD6GRW.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/seed-Q6M2IZFL.js +231 -0
- package/dist/seed-Q6M2IZFL.js.map +1 -0
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-MUWEIUI6.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/stale-OSQ7J3AA.js +29 -0
- package/dist/storage-MVFCGEQE.js +23 -0
- package/dist/store-coordination-provider-64OEZFGS.js +142 -0
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +14 -10
- package/dist/to/index.js +1 -2
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/verify-ZASTRNPR.js +140 -0
- package/dist/verify-ZASTRNPR.js.map +1 -0
- package/dist/via/blob/active.d.ts +34 -0
- package/dist/via/blob/binding.d.ts +86 -0
- package/dist/via/blob/index.d.ts +34 -0
- package/dist/via/classified/active.d.ts +3 -0
- package/dist/via/classified/binding.d.ts +83 -0
- package/dist/via/classified/config-drift.d.ts +34 -0
- package/dist/via/classified/descriptor.d.ts +66 -0
- package/dist/via/classified/errors.d.ts +19 -0
- package/dist/via/classified/guards.d.ts +23 -0
- package/dist/via/classified/index.d.ts +11 -0
- package/dist/via/classified/presets.d.ts +65 -0
- package/dist/via/classified/resolve.d.ts +9 -0
- package/dist/via/classified/strategy.d.ts +11 -0
- package/dist/via/classified/validators.d.ts +3 -0
- package/dist/via/classified/write.d.ts +4 -0
- package/dist/via/computed/binding.d.ts +34 -0
- package/dist/via/computed/descriptor.d.ts +35 -0
- package/dist/via/i18n/active.d.ts +28 -0
- package/dist/via/i18n/binding.d.ts +36 -0
- package/dist/via/i18n/core.d.ts +267 -0
- package/dist/via/i18n/densify.d.ts +24 -0
- package/dist/via/i18n/dictionary.d.ts +200 -0
- package/dist/via/i18n/index.d.ts +21 -0
- package/dist/via/i18n/policy.d.ts +44 -0
- package/dist/via/i18n/script.d.ts +26 -0
- package/dist/via/i18n/strategy.d.ts +13 -0
- package/dist/via/lookup/active.d.ts +19 -0
- package/dist/via/lookup/binding.d.ts +99 -0
- package/dist/via/lookup/descriptor.d.ts +123 -0
- package/dist/via/lookup/handle.d.ts +220 -0
- package/dist/via/lookup/index.d.ts +17 -0
- package/dist/via/lookup/registry.d.ts +228 -0
- package/dist/via/lookup/snapshot.d.ts +67 -0
- package/dist/via/money/arith.d.ts +68 -0
- package/dist/via/money/binding.d.ts +21 -0
- package/dist/via/money/branded.d.ts +61 -0
- package/dist/via/money/descriptor.d.ts +73 -0
- package/dist/via/money/fixed-point.d.ts +51 -0
- package/dist/via/money/index.d.ts +15 -0
- package/dist/via/money/iso4217.d.ts +6 -0
- package/dist/via/money/money-reducer.d.ts +33 -0
- package/dist/via/money/normalize.d.ts +105 -0
- package/dist/via/money/paths.d.ts +61 -0
- package/dist/via/money/where.d.ts +127 -0
- package/dist/walk-SVNDIZ62.js +241 -0
- package/dist/with/index.js +11 -11
- package/dist/with-audit/attestation/active.d.ts +10 -0
- package/dist/with-audit/attestation/index.d.ts +16 -0
- package/dist/with-audit/attestation/issue.d.ts +29 -0
- package/dist/with-audit/attestation/revoke.d.ts +15 -0
- package/dist/with-audit/attestation/signer.d.ts +33 -0
- package/dist/with-audit/attestation/strategy.d.ts +44 -0
- package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
- package/dist/with-audit/consent/active.d.ts +14 -0
- package/dist/with-audit/consent/consent.d.ts +114 -0
- package/dist/with-audit/consent/index.d.ts +14 -0
- package/dist/with-audit/consent/strategy.d.ts +36 -0
- package/dist/with-audit/forget/active.d.ts +31 -0
- package/dist/with-audit/forget/index.d.ts +28 -0
- package/dist/with-audit/forget/purge-scope.d.ts +54 -0
- package/dist/with-audit/forget/strategy.d.ts +199 -0
- package/dist/with-audit/forget/subject-index.d.ts +83 -0
- package/dist/with-audit/guards/executor.d.ts +26 -0
- package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
- package/dist/with-audit/guards/index.d.ts +10 -0
- package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
- package/dist/with-audit/guards/registry.d.ts +83 -0
- package/dist/with-audit/guards/transition-guard.d.ts +82 -0
- package/dist/with-audit/guards/types.d.ts +134 -0
- package/dist/with-audit/guards/with-guard.d.ts +15 -0
- package/dist/with-audit/periods/active.d.ts +11 -0
- package/dist/with-audit/periods/index.d.ts +18 -0
- package/dist/with-audit/periods/periods.d.ts +417 -0
- package/dist/with-audit/periods/strategy.d.ts +32 -0
- package/dist/with-audit/periods/vault-facade.d.ts +95 -0
- package/dist/with-audit/portability/active.d.ts +11 -0
- package/dist/with-audit/portability/export-accessible.d.ts +46 -0
- package/dist/with-audit/portability/index.d.ts +18 -0
- package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
- package/dist/with-audit/portability/strategy.d.ts +31 -0
- package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
- package/dist/with-audit/sealed-record/active.d.ts +9 -0
- package/dist/with-audit/sealed-record/index.d.ts +55 -0
- package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
- package/dist/with-audit/sealed-record/types.d.ts +27 -0
- package/dist/with-audit/tiers/active.d.ts +9 -0
- package/dist/with-audit/tiers/index.d.ts +394 -0
- package/dist/with-audit/tiers/strategy.d.ts +36 -0
- package/dist/with-cargo/active.d.ts +11 -0
- package/dist/with-cargo/adopt-partition.d.ts +81 -0
- package/dist/with-cargo/decrypt-partition.d.ts +19 -0
- package/dist/with-cargo/describe-extraction.d.ts +41 -0
- package/dist/with-cargo/extract-partition.d.ts +155 -0
- package/dist/with-cargo/index.d.ts +33 -0
- package/dist/with-cargo/strategy.d.ts +30 -0
- package/dist/with-cargo/vault-diff.d.ts +144 -0
- package/dist/with-cargo/walk-closure.d.ts +67 -0
- package/dist/with-commit/crdt/active.d.ts +25 -0
- package/dist/with-commit/crdt/crdt.d.ts +42 -0
- package/dist/with-commit/crdt/index.d.ts +16 -0
- package/dist/with-commit/crdt/strategy.d.ts +25 -0
- package/dist/with-commit/history/active.d.ts +40 -0
- package/dist/with-commit/history/diff.d.ts +23 -0
- package/dist/with-commit/history/history.d.ts +73 -0
- package/dist/with-commit/history/index.d.ts +30 -0
- package/dist/with-commit/history/ledger/constants.d.ts +37 -0
- package/dist/with-commit/history/ledger/entry.d.ts +195 -0
- package/dist/with-commit/history/ledger/hash.d.ts +30 -0
- package/dist/with-commit/history/ledger/index.d.ts +19 -0
- package/dist/with-commit/history/ledger/patch.d.ts +99 -0
- package/dist/with-commit/history/ledger/store.d.ts +356 -0
- package/dist/with-commit/history/strategy.d.ts +136 -0
- package/dist/with-commit/history/time-machine.d.ts +202 -0
- package/dist/with-commit/numbering/descriptor.d.ts +27 -0
- package/dist/with-commit/numbering/index.d.ts +69 -0
- package/dist/with-commit/sequence/active.d.ts +10 -0
- package/dist/with-commit/sequence/index.d.ts +150 -0
- package/dist/with-commit/sequence/strategy.d.ts +26 -0
- package/dist/with-commit/tx/active.d.ts +27 -0
- package/dist/with-commit/tx/dry-run.d.ts +29 -0
- package/dist/with-commit/tx/elevated-handle.d.ts +59 -0
- package/dist/with-commit/tx/index.d.ts +13 -0
- package/dist/with-commit/tx/invariants.d.ts +68 -0
- package/dist/with-commit/tx/strategy.d.ts +23 -0
- package/dist/with-commit/tx/transaction.d.ts +212 -0
- package/dist/with-fork/archive/engine.d.ts +71 -0
- package/dist/with-fork/archive/index.d.ts +23 -0
- package/dist/with-fork/shadow/active.d.ts +6 -0
- package/dist/with-fork/shadow/index.d.ts +14 -0
- package/dist/with-fork/shadow/strategy.d.ts +28 -0
- package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
- package/dist/with-fork/snapshots/active.d.ts +20 -0
- package/dist/with-fork/snapshots/engine.d.ts +36 -0
- package/dist/with-fork/snapshots/index.d.ts +5 -0
- package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
- package/dist/with-fork/snapshots/policy.d.ts +23 -0
- package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
- package/dist/with-fork/snapshots/strategy.d.ts +48 -0
- package/dist/with-formula/computed/index.d.ts +48 -0
- package/dist/with-formula/computed/lazy.d.ts +13 -0
- package/dist/with-formula/derivations/executor.d.ts +61 -0
- package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
- package/dist/with-formula/derivations/index.d.ts +6 -0
- package/dist/with-formula/derivations/registry.d.ts +67 -0
- package/dist/with-formula/derivations/stale.d.ts +39 -0
- package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
- package/dist/with-formula/derivations/types.d.ts +248 -0
- package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
- package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
- package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
- package/dist/with-formula/materialized-views/executor.d.ts +80 -0
- package/dist/with-formula/materialized-views/index.d.ts +11 -0
- package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
- package/dist/with-formula/materialized-views/registry.d.ts +99 -0
- package/dist/with-formula/materialized-views/stale.d.ts +113 -0
- package/dist/with-formula/materialized-views/types.d.ts +318 -0
- package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
- package/dist/with-formula/overlay-views/index.d.ts +5 -0
- package/dist/with-formula/overlay-views/registry.d.ts +42 -0
- package/dist/with-formula/overlay-views/types.d.ts +97 -0
- package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
- package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
- package/dist/with-lookup/aggregate/active.d.ts +33 -0
- package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
- package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
- package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
- package/dist/with-lookup/aggregate/index.d.ts +23 -0
- package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
- package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
- package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
- package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
- package/dist/with-lookup/embeddings/index.d.ts +4 -0
- package/dist/with-lookup/embeddings/vec-id.d.ts +47 -0
- package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
- package/dist/with-lookup/indexing/active.d.ts +30 -0
- package/dist/with-lookup/indexing/collection-facade.d.ts +157 -0
- package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
- package/dist/with-lookup/indexing/index.d.ts +27 -0
- package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
- package/dist/with-lookup/indexing/strategy.d.ts +56 -0
- package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
- package/dist/with-lookup/search/active.d.ts +10 -0
- package/dist/with-lookup/search/build-docs.d.ts +15 -0
- package/dist/with-lookup/search/collection-facade.d.ts +163 -0
- package/dist/with-lookup/search/fuse.d.ts +22 -0
- package/dist/with-lookup/search/index-store.d.ts +19 -0
- package/dist/with-lookup/search/index.d.ts +19 -0
- package/dist/with-lookup/search/inverted-index.d.ts +47 -0
- package/dist/with-lookup/search/persisted-index-store.d.ts +121 -0
- package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
- package/dist/with-lookup/search/scan.d.ts +28 -0
- package/dist/with-lookup/search/segment.d.ts +15 -0
- package/dist/with-lookup/search/serialize.d.ts +4 -0
- package/dist/with-lookup/search/snippet.d.ts +5 -0
- package/dist/with-lookup/search/strategy.d.ts +41 -0
- package/dist/with-lookup/search/tokenize.d.ts +12 -0
- package/dist/with-party/auth-introspection/index.d.ts +44 -0
- package/dist/with-party/broker/active.d.ts +23 -0
- package/dist/with-party/broker/index.d.ts +28 -0
- package/dist/with-party/broker/seed.d.ts +77 -0
- package/dist/with-party/custody/active.d.ts +10 -0
- package/dist/with-party/custody/index.d.ts +69 -0
- package/dist/with-party/custody/liberate.d.ts +64 -0
- package/dist/with-party/custody/strategy.d.ts +48 -0
- package/dist/with-party/directory/index.d.ts +11 -0
- package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
- package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
- package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
- package/dist/with-party/directory/storage.d.ts +33 -0
- package/dist/with-party/directory/types.d.ts +43 -0
- package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
- package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
- package/dist/with-party/directory/visibility.d.ts +47 -0
- package/dist/with-party/policy/engine.d.ts +60 -0
- package/dist/with-party/policy/index.d.ts +15 -0
- package/dist/with-party/policy/noydb-facade.d.ts +39 -0
- package/dist/with-party/policy/presets.d.ts +38 -0
- package/dist/with-party/policy/storage.d.ts +31 -0
- package/dist/with-party/session/active.d.ts +34 -0
- package/dist/with-party/session/dev-unlock.d.ts +128 -0
- package/dist/with-party/session/index.d.ts +23 -0
- package/dist/with-party/session/session-policy.d.ts +92 -0
- package/dist/with-party/session/session.d.ts +131 -0
- package/dist/with-party/session/strategy.d.ts +42 -0
- package/dist/with-party/session/unlock-state.d.ts +47 -0
- package/dist/with-party/sync/index.d.ts +31 -0
- package/dist/with-party/tab-coordination.d.ts +73 -0
- package/dist/with-party/tab-write-relay.d.ts +39 -0
- package/dist/with-party/team/active.d.ts +13 -0
- package/dist/with-party/team/authenticators.d.ts +95 -0
- package/dist/with-party/team/deed.d.ts +97 -0
- package/dist/with-party/team/delegation.d.ts +88 -0
- package/dist/with-party/team/index.d.ts +38 -0
- package/dist/with-party/team/keyring.d.ts +318 -0
- package/dist/with-party/team/magic-link-grant.d.ts +152 -0
- package/dist/with-party/team/managed-passphrase.d.ts +280 -0
- package/dist/with-party/team/noydb-facade.d.ts +484 -0
- package/dist/with-party/team/peer-recover.d.ts +81 -0
- package/dist/with-party/team/presence.d.ts +81 -0
- package/dist/with-party/team/recovery.d.ts +191 -0
- package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
- package/dist/with-party/team/rotate-recover.d.ts +275 -0
- package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
- package/dist/with-party/team/strategy.d.ts +9 -0
- package/dist/with-party/team/sync-active.d.ts +33 -0
- package/dist/with-party/team/sync-credentials.d.ts +113 -0
- package/dist/with-party/team/sync-strategy.d.ts +67 -0
- package/dist/with-party/team/sync-transaction.d.ts +39 -0
- package/dist/with-party/team/sync.d.ts +174 -0
- package/dist/with-party/team/tiers.d.ts +39 -0
- package/dist/with-party/team/wrapped-deks.d.ts +86 -0
- package/dist/with-pod/backup.d.ts +74 -0
- package/dist/with-pod/bundle.d.ts +414 -0
- package/dist/with-pod/format.d.ts +203 -0
- package/dist/with-pod/index.d.ts +20 -0
- package/dist/with-pod/pod-store.d.ts +54 -0
- package/dist/with-pod/ulid.d.ts +64 -0
- package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
- package/dist/with-shape/blobs/blob-intent.d.ts +153 -0
- package/dist/with-shape/blobs/blob-set.d.ts +1286 -0
- package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
- package/dist/with-shape/blobs/import-external.d.ts +50 -0
- package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
- package/dist/with-shape/blobs/object-projection.d.ts +70 -0
- package/dist/with-shape/introspection/describe.d.ts +237 -0
- package/dist/with-shape/introspection/field-meta.d.ts +61 -0
- package/dist/with-shape/introspection/fields.d.ts +14 -0
- package/dist/with-shape/introspection/index.d.ts +12 -0
- package/dist/with-shape/introspection/json-schema.d.ts +13 -0
- package/dist/with-shape/introspection/meta.d.ts +22 -0
- package/dist/with-shape/introspection/projection.d.ts +13 -0
- package/dist/with-shape/introspection/types.d.ts +154 -0
- package/dist/with-shape/introspection/walk.d.ts +50 -0
- package/dist/with-shape/links/lazy-handle.d.ts +36 -0
- package/dist/with-shape/links/link-set.d.ts +67 -0
- package/dist/with-shape/links/names.d.ts +65 -0
- package/dist/with-shape/links/vault-facade.d.ts +211 -0
- package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
- package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
- package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
- package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
- package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
- package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
- package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
- package/dist/with-shape/satellites/declare.d.ts +60 -0
- package/dist/with-shape/satellites/existence.d.ts +5 -0
- package/dist/with-shape/satellites/fanout.d.ts +38 -0
- package/dist/with-shape/satellites/forget.d.ts +47 -0
- package/dist/with-shape/satellites/index.d.ts +3 -0
- package/dist/with-shape/satellites/joined.d.ts +19 -0
- package/dist/with-shape/satellites/marker.d.ts +10 -0
- package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
- package/dist/with-shape/satellites/post-register.d.ts +6 -0
- package/dist/with-shape/satellites/proxy.d.ts +37 -0
- package/dist/with-shape/satellites/raw-target.d.ts +14 -0
- package/dist/with-shape/satellites/registry.d.ts +19 -0
- package/dist/with-shape/satellites/types.d.ts +37 -0
- package/dist/with-shape/satellites/validate.d.ts +17 -0
- package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
- package/dist/with-shape/schema-update/cutover.d.ts +5 -0
- package/dist/with-shape/schema-update/delta.d.ts +2 -0
- package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
- package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
- package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
- package/dist/with-shape/schema-update/fence.d.ts +15 -0
- package/dist/with-shape/schema-update/gate.d.ts +16 -0
- package/dist/with-shape/schema-update/index.d.ts +6 -0
- package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
- package/dist/with-shape/schema-update/strategies.d.ts +12 -0
- package/dist/with-shape/schema-update/types.d.ts +53 -0
- package/dist/with-store/index.d.ts +15 -0
- package/dist/with-store/lazy/active.d.ts +12 -0
- package/dist/with-store/lazy/index.d.ts +14 -0
- package/dist/with-store/lazy/strategy.d.ts +9 -0
- package/dist/with-store/route-store.d.ts +259 -0
- package/dist/with-store/store-middleware.d.ts +189 -0
- package/dist/withdraw-accessible-WZIEVWSR.js +28 -0
- package/package.json +47 -55
- package/dist/adapter/index.d.ts +0 -5
- package/dist/adapter/index.js +0 -15
- package/dist/aggregate/index.d.ts +0 -42
- package/dist/api-JDWL67WL.js +0 -20
- package/dist/as/index.d.ts +0 -7
- package/dist/at/index.d.ts +0 -5
- package/dist/attestation/index.d.ts +0 -20
- package/dist/backup-WRGNTGJF.js +0 -225
- package/dist/backup-WRGNTGJF.js.map +0 -1
- package/dist/blobs/index.d.ts +0 -44
- package/dist/bundle/index.d.ts +0 -122
- package/dist/bundle-DzWtVw7w.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -9
- package/dist/chunk-25G7PUTA.js +0 -235
- package/dist/chunk-26FSVNBL.js +0 -34
- package/dist/chunk-2PJB6H3H.js +0 -167
- package/dist/chunk-2PJB6H3H.js.map +0 -1
- package/dist/chunk-37JZR7CY.js +0 -91
- package/dist/chunk-3KBK5LU4.js +0 -117
- package/dist/chunk-3YKBGS3I.js +0 -686
- package/dist/chunk-3YKBGS3I.js.map +0 -1
- package/dist/chunk-44DV37ZV.js +0 -75
- package/dist/chunk-44DV37ZV.js.map +0 -1
- package/dist/chunk-47C4CI7R.js +0 -108
- package/dist/chunk-47C4CI7R.js.map +0 -1
- package/dist/chunk-4VDFUBTS.js +0 -275
- package/dist/chunk-4VDFUBTS.js.map +0 -1
- package/dist/chunk-55LSDABW.js +0 -94
- package/dist/chunk-56JB2BGI.js +0 -13003
- package/dist/chunk-56JB2BGI.js.map +0 -1
- package/dist/chunk-5GQE5IDB.js +0 -513
- package/dist/chunk-5GQE5IDB.js.map +0 -1
- package/dist/chunk-5HRJQSKN.js +0 -202
- package/dist/chunk-5HZULLHE.js +0 -404
- package/dist/chunk-5JQMX2EH.js +0 -50
- package/dist/chunk-5UOPIPZC.js +0 -95
- package/dist/chunk-5YBUFCFF.js +0 -135
- package/dist/chunk-62APEMF3.js +0 -280
- package/dist/chunk-62APEMF3.js.map +0 -1
- package/dist/chunk-6P5AJ2ZS.js +0 -120
- package/dist/chunk-6P5AJ2ZS.js.map +0 -1
- package/dist/chunk-6PALJTC2.js +0 -430
- package/dist/chunk-6PALJTC2.js.map +0 -1
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-6Z435B6N.js +0 -1656
- package/dist/chunk-6Z435B6N.js.map +0 -1
- package/dist/chunk-723XB5NX.js +0 -86
- package/dist/chunk-7CZ6YXMO.js +0 -124
- package/dist/chunk-7KTL4RHZ.js +0 -120
- package/dist/chunk-7KTL4RHZ.js.map +0 -1
- package/dist/chunk-7TAV3BFQ.js +0 -766
- package/dist/chunk-7TAV3BFQ.js.map +0 -1
- package/dist/chunk-BASCPHNM.js +0 -380
- package/dist/chunk-BASCPHNM.js.map +0 -1
- package/dist/chunk-BGIZAFY7.js +0 -1
- package/dist/chunk-BJ2XF2RC.js +0 -823
- package/dist/chunk-BM6E4MUT.js +0 -881
- package/dist/chunk-BM6E4MUT.js.map +0 -1
- package/dist/chunk-BTFTHF6Q.js +0 -42
- package/dist/chunk-C4NOLA5X.js +0 -132
- package/dist/chunk-C4NOLA5X.js.map +0 -1
- package/dist/chunk-CHK5VVMI.js +0 -155
- package/dist/chunk-DCVVCJVB.js +0 -45
- package/dist/chunk-EU7HDMT3.js +0 -54
- package/dist/chunk-F3EKFGUS.js +0 -99
- package/dist/chunk-FCOZ7DEC.js +0 -355
- package/dist/chunk-FCOZ7DEC.js.map +0 -1
- package/dist/chunk-FWART3VA.js +0 -205
- package/dist/chunk-FZK3JJJK.js +0 -150
- package/dist/chunk-GDOOG5YQ.js +0 -382
- package/dist/chunk-GLVXQU3E.js +0 -155
- package/dist/chunk-HU55NPHZ.js +0 -80
- package/dist/chunk-I6JJ6VJS.js +0 -97
- package/dist/chunk-I6URUNTD.js +0 -59
- package/dist/chunk-IARAK3PK.js +0 -14
- package/dist/chunk-II6DLDZM.js +0 -30
- package/dist/chunk-J5YUA6JB.js +0 -23
- package/dist/chunk-J7OH6R4K.js +0 -49
- package/dist/chunk-K2WCO3NX.js +0 -1
- package/dist/chunk-L6Q5NA22.js +0 -40
- package/dist/chunk-LFGJG4XZ.js +0 -30
- package/dist/chunk-M3OYTM5Z.js +0 -85
- package/dist/chunk-MOQ5M46U.js +0 -209
- package/dist/chunk-NTPWQH4S.js +0 -589
- package/dist/chunk-OJ64XMPJ.js +0 -1434
- package/dist/chunk-OJ64XMPJ.js.map +0 -1
- package/dist/chunk-OWGAXPRE.js +0 -129
- package/dist/chunk-P2PEPSPK.js +0 -230
- package/dist/chunk-P6TZ3IVN.js +0 -453
- package/dist/chunk-P6TZ3IVN.js.map +0 -1
- package/dist/chunk-PAJCRV7O.js +0 -123
- package/dist/chunk-PMMV5SQC.js +0 -416
- package/dist/chunk-PMMV5SQC.js.map +0 -1
- package/dist/chunk-PPPZIBKY.js +0 -261
- package/dist/chunk-PPPZIBKY.js.map +0 -1
- package/dist/chunk-PVC2FBCQ.js +0 -45
- package/dist/chunk-PYIUDUGS.js +0 -36
- package/dist/chunk-QABECTNN.js +0 -255
- package/dist/chunk-QYMMMKOO.js +0 -164
- package/dist/chunk-R4IVPJHN.js +0 -130
- package/dist/chunk-REWTMYSF.js +0 -32
- package/dist/chunk-REWTMYSF.js.map +0 -1
- package/dist/chunk-RNYDHIQL.js +0 -367
- package/dist/chunk-RUIMKQTA.js +0 -23
- package/dist/chunk-RUIMKQTA.js.map +0 -1
- package/dist/chunk-TCGVRKOS.js +0 -367
- package/dist/chunk-TIAYXOEI.js +0 -99
- package/dist/chunk-TQ3REHVF.js +0 -95
- package/dist/chunk-TQ3REHVF.js.map +0 -1
- package/dist/chunk-TUL5YQWF.js +0 -777
- package/dist/chunk-U7LV2DUN.js +0 -74
- package/dist/chunk-UB3XHGFG.js +0 -181
- package/dist/chunk-UB3XHGFG.js.map +0 -1
- package/dist/chunk-UMH35AQV.js +0 -70
- package/dist/chunk-UWZ7O4NR.js +0 -29
- package/dist/chunk-V76PHWLE.js +0 -41
- package/dist/chunk-VFQOE76I.js +0 -69
- package/dist/chunk-VIWOGJ2O.js +0 -71
- package/dist/chunk-VK6OC22R.js +0 -37
- package/dist/chunk-VK6OC22R.js.map +0 -1
- package/dist/chunk-VVLOWY74.js +0 -150
- package/dist/chunk-VVLOWY74.js.map +0 -1
- package/dist/chunk-W3JABOVB.js +0 -53
- package/dist/chunk-W3JABOVB.js.map +0 -1
- package/dist/chunk-WPNP3NF5.js +0 -1221
- package/dist/chunk-WPNP3NF5.js.map +0 -1
- package/dist/chunk-X5QZAJDB.js +0 -59
- package/dist/chunk-X6VNIRHS.js +0 -239
- package/dist/chunk-X6VNIRHS.js.map +0 -1
- package/dist/chunk-XBPUVQDO.js +0 -664
- package/dist/chunk-XBPUVQDO.js.map +0 -1
- package/dist/chunk-XW5LZYV4.js +0 -21
- package/dist/chunk-YTCCC6NG.js +0 -320
- package/dist/chunk-YTCCC6NG.js.map +0 -1
- package/dist/classified/index.d.ts +0 -17
- package/dist/collection-facade-EJVIN2BY.js +0 -39
- package/dist/computed-6FOFXQPE.js +0 -11
- package/dist/config-drift-RFEVGBKR.js +0 -24
- package/dist/config-drift-RFEVGBKR.js.map +0 -1
- package/dist/consent/index.d.ts +0 -23
- package/dist/crdt/index.d.ts +0 -34
- package/dist/dead-filter-RHMNYOXP.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-IHXOASHV.js +0 -25
- package/dist/derivations/index.d.ts +0 -70
- package/dist/derive-CD3ZVIXK.js +0 -21
- package/dist/describe/index.d.ts +0 -1
- package/dist/describe/index.js +0 -1
- package/dist/describe-C6iHNlqJ.d.ts +0 -162
- package/dist/dev-unlock-wgQ7Ci5I.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-KGEUW2GL.js +0 -123
- package/dist/executor-EUPYHCLU.js +0 -9
- package/dist/executor-KZ4B3PRT.js +0 -9
- package/dist/executor-MHUM2VZK.js +0 -21
- package/dist/export-accessible-Z3NSZZHN.js +0 -23
- package/dist/extract-partition-VSKT35JG.js +0 -36
- package/dist/fanout-sidecar-NBDKKCHT.js +0 -74
- package/dist/find-OH4BEULF.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -35
- package/dist/hash-CwHnoKyW.d.ts +0 -72
- package/dist/history/index.d.ts +0 -61
- package/dist/i18n/index.d.ts +0 -37
- package/dist/in/index.d.ts +0 -5
- package/dist/index-B9QdHytu.d.ts +0 -123
- package/dist/index-CTvUp94-.d.ts +0 -123
- package/dist/index-Dn5GzPg_.d.ts +0 -22138
- package/dist/indexing/index.d.ts +0 -39
- package/dist/issue-AEOL6RXA.js +0 -19
- package/dist/kernel/index.d.ts +0 -32
- package/dist/kernel/index.js +0 -59
- package/dist/lazy/index.d.ts +0 -21
- package/dist/ledger-3LR3YO2W.js +0 -42
- package/dist/liberate-XSEPRWEA.js +0 -24
- package/dist/link-set-NSUIX6BR.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -173
- package/dist/mime-magic-CYbFNQ4h.d.ts +0 -103
- package/dist/noydb-POVTIVQ6.js +0 -62
- package/dist/on/index.d.ts +0 -5
- package/dist/overlay-views/index.d.ts +0 -98
- package/dist/periods/index.d.ts +0 -20
- package/dist/pod/index.d.ts +0 -63
- package/dist/policy-Y7HL2KGA.js +0 -41
- package/dist/portability/index.d.ts +0 -20
- package/dist/post-register-KOFRTCDD.js +0 -55
- package/dist/post-register-KOFRTCDD.js.map +0 -1
- package/dist/public-envelope-NC7SPNMV.js +0 -32
- package/dist/query/index.d.ts +0 -5
- package/dist/read-only-facade-5ADRJVTM.js +0 -8
- package/dist/register-3D6R2MKN.js +0 -23
- package/dist/registry-AI4E46PD.js +0 -19
- package/dist/registry-HSNQ4NBP.js +0 -9
- package/dist/registry-WIX6QCV5.js +0 -17
- package/dist/request-withdrawal-GU4XS2R5.js +0 -31
- package/dist/reveal-5Y777N5Q.js +0 -38
- package/dist/reveal-5Y777N5Q.js.map +0 -1
- package/dist/revoke-ZFETCLYV.js +0 -24
- package/dist/revoke-ZFETCLYV.js.map +0 -1
- package/dist/satellites/index.d.ts +0 -5
- package/dist/sealed-record/index.d.ts +0 -69
- package/dist/session/index.d.ts +0 -44
- package/dist/shadow/index.d.ts +0 -15
- package/dist/signer-GAIMQQ2J.js +0 -25
- package/dist/signer-GAIMQQ2J.js.map +0 -1
- package/dist/snapshots/index.d.ts +0 -26
- package/dist/stale-77LP2EEF.js +0 -14
- package/dist/stale-77LP2EEF.js.map +0 -1
- package/dist/storage-KEXIXLGM.js +0 -23
- package/dist/storage-KEXIXLGM.js.map +0 -1
- package/dist/store-coordination-provider-NJDDZ264.js +0 -142
- package/dist/subject-index-O75wKshW.d.ts +0 -362
- package/dist/sync/index.d.ts +0 -41
- package/dist/team/index.d.ts +0 -155
- package/dist/tiers/index.d.ts +0 -5
- package/dist/to/index.d.ts +0 -5
- package/dist/transition-guard-D5RLJv8S.d.ts +0 -165
- package/dist/tx/index.d.ts +0 -35
- package/dist/ui/index.d.ts +0 -1
- package/dist/ulid-DRH25k3y.d.ts +0 -66
- package/dist/util/index.d.ts +0 -79
- package/dist/validators-C3lrVF-c.d.ts +0 -101
- package/dist/vault-diff-_LSIcOMv.d.ts +0 -147
- package/dist/verify-CAYGXYNO.js +0 -139
- package/dist/verify-CAYGXYNO.js.map +0 -1
- package/dist/walk-SMAE4IEI.js +0 -241
- package/dist/with/index.d.ts +0 -38
- package/dist/with-materialized-view-Xv1-9Bh0.d.ts +0 -27
- package/dist/with-overlayed-view-CuWhq_-C.d.ts +0 -12
- package/dist/with-rollup-K_iwal4b.d.ts +0 -47
- package/dist/withdraw-accessible-Q7BULAN5.js +0 -28
- package/dist/withdraw-accessible-Q7BULAN5.js.map +0 -1
- /package/dist/{adapter/index.js.map → api-ZGS6LCOF.js.map} +0 -0
- /package/dist/{chunk-VIWOGJ2O.js.map → chunk-3B5VVCNY.js.map} +0 -0
- /package/dist/{chunk-P2PEPSPK.js.map → chunk-3LQ2YKO4.js.map} +0 -0
- /package/dist/{chunk-EU7HDMT3.js.map → chunk-3QCRBHCY.js.map} +0 -0
- /package/dist/{chunk-FZK3JJJK.js.map → chunk-4JBYV75E.js.map} +0 -0
- /package/dist/{chunk-I6JJ6VJS.js.map → chunk-4NXKCLLQ.js.map} +0 -0
- /package/dist/{chunk-VFQOE76I.js.map → chunk-5M5DVGV7.js.map} +0 -0
- /package/dist/{chunk-LFGJG4XZ.js.map → chunk-5YOLBEQ6.js.map} +0 -0
- /package/dist/{chunk-OWGAXPRE.js.map → chunk-6CRIV7DE.js.map} +0 -0
- /package/dist/{chunk-QABECTNN.js.map → chunk-6QTNZJBS.js.map} +0 -0
- /package/dist/{chunk-723XB5NX.js.map → chunk-6T2SCQRU.js.map} +0 -0
- /package/dist/{chunk-PVC2FBCQ.js.map → chunk-7DSTRQIJ.js.map} +0 -0
- /package/dist/{chunk-NTPWQH4S.js.map → chunk-AUSTCW2X.js.map} +0 -0
- /package/dist/{chunk-MOQ5M46U.js.map → chunk-B3HJYUOF.js.map} +0 -0
- /package/dist/{chunk-QYMMMKOO.js.map → chunk-BDVFPG6Y.js.map} +0 -0
- /package/dist/{chunk-PYIUDUGS.js.map → chunk-CAF6WOK7.js.map} +0 -0
- /package/dist/{chunk-5HZULLHE.js.map → chunk-CIE2BASH.js.map} +0 -0
- /package/dist/{chunk-BTFTHF6Q.js.map → chunk-CRI4OUV4.js.map} +0 -0
- /package/dist/{chunk-37JZR7CY.js.map → chunk-DLG74CNB.js.map} +0 -0
- /package/dist/{chunk-TCGVRKOS.js.map → chunk-ERJ7FU55.js.map} +0 -0
- /package/dist/{chunk-FWART3VA.js.map → chunk-EVVGJDRQ.js.map} +0 -0
- /package/dist/{chunk-X5QZAJDB.js.map → chunk-EXK7QRWF.js.map} +0 -0
- /package/dist/{chunk-5HRJQSKN.js.map → chunk-EYZ6IQ6X.js.map} +0 -0
- /package/dist/{chunk-DCVVCJVB.js.map → chunk-F64IRYG3.js.map} +0 -0
- /package/dist/{chunk-BJ2XF2RC.js.map → chunk-FHS2HQSH.js.map} +0 -0
- /package/dist/{chunk-HU55NPHZ.js.map → chunk-GKEWXIV5.js.map} +0 -0
- /package/dist/{chunk-I6URUNTD.js.map → chunk-GTGPO5KW.js.map} +0 -0
- /package/dist/{chunk-5UOPIPZC.js.map → chunk-HB3RFQSC.js.map} +0 -0
- /package/dist/{chunk-F3EKFGUS.js.map → chunk-I6GALP6E.js.map} +0 -0
- /package/dist/{chunk-R4IVPJHN.js.map → chunk-IL6POWCW.js.map} +0 -0
- /package/dist/{chunk-3KBK5LU4.js.map → chunk-IU6SNYX6.js.map} +0 -0
- /package/dist/{chunk-TUL5YQWF.js.map → chunk-J2ZX2XUV.js.map} +0 -0
- /package/dist/{chunk-UWZ7O4NR.js.map → chunk-JKJOGPZN.js.map} +0 -0
- /package/dist/{chunk-V76PHWLE.js.map → chunk-JZUV47FZ.js.map} +0 -0
- /package/dist/{chunk-II6DLDZM.js.map → chunk-K5IMOGHB.js.map} +0 -0
- /package/dist/{chunk-GDOOG5YQ.js.map → chunk-LASZKVMO.js.map} +0 -0
- /package/dist/{chunk-5YBUFCFF.js.map → chunk-NR5LT5RY.js.map} +0 -0
- /package/dist/{chunk-UMH35AQV.js.map → chunk-Q5VNKNE5.js.map} +0 -0
- /package/dist/{chunk-XW5LZYV4.js.map → chunk-QLWMEXCT.js.map} +0 -0
- /package/dist/{chunk-PAJCRV7O.js.map → chunk-QRB7NAOJ.js.map} +0 -0
- /package/dist/{chunk-U7LV2DUN.js.map → chunk-R4ROFEYC.js.map} +0 -0
- /package/dist/{chunk-RNYDHIQL.js.map → chunk-RIX4V2TB.js.map} +0 -0
- /package/dist/{chunk-L6Q5NA22.js.map → chunk-RYCTDFUX.js.map} +0 -0
- /package/dist/{chunk-CHK5VVMI.js.map → chunk-RZ5SVOYR.js.map} +0 -0
- /package/dist/{chunk-TIAYXOEI.js.map → chunk-SLFHQTTW.js.map} +0 -0
- /package/dist/{chunk-J5YUA6JB.js.map → chunk-UNFPPVNI.js.map} +0 -0
- /package/dist/{chunk-25G7PUTA.js.map → chunk-VLFCJYTL.js.map} +0 -0
- /package/dist/{chunk-7CZ6YXMO.js.map → chunk-VN3DBQAU.js.map} +0 -0
- /package/dist/{chunk-J7OH6R4K.js.map → chunk-VZRODIM3.js.map} +0 -0
- /package/dist/{chunk-55LSDABW.js.map → chunk-W22IKJE2.js.map} +0 -0
- /package/dist/{chunk-GLVXQU3E.js.map → chunk-X3YYQWOQ.js.map} +0 -0
- /package/dist/{chunk-M3OYTM5Z.js.map → chunk-YFXZEAYK.js.map} +0 -0
- /package/dist/{chunk-5JQMX2EH.js.map → chunk-ZAJAVEXY.js.map} +0 -0
- /package/dist/{chunk-26FSVNBL.js.map → chunk-ZICD77GM.js.map} +0 -0
- /package/dist/{chunk-IARAK3PK.js.map → chunk-ZUODRVHY.js.map} +0 -0
- /package/dist/{api-JDWL67WL.js.map → collection-facade-TLWIPI76.js.map} +0 -0
- /package/dist/{chunk-BGIZAFY7.js.map → computed-ZIQTYTDI.js.map} +0 -0
- /package/dist/{dead-filter-RHMNYOXP.js.map → dead-filter-ESOBZZP5.js.map} +0 -0
- /package/dist/{chunk-K2WCO3NX.js.map → delegation-W7ZV2322.js.map} +0 -0
- /package/dist/{collection-facade-EJVIN2BY.js.map → derive-H2BJTLUI.js.map} +0 -0
- /package/dist/{computed-6FOFXQPE.js.map → enclave-AP3I5W7O.js.map} +0 -0
- /package/dist/{delegation-IHXOASHV.js.map → executor-KGWTNEQD.js.map} +0 -0
- /package/dist/{derive-CD3ZVIXK.js.map → executor-OVEXR6RT.js.map} +0 -0
- /package/dist/{describe/index.js.map → executor-UNEH5ZYH.js.map} +0 -0
- /package/dist/{enclave-KGEUW2GL.js.map → export-accessible-PCMXSUZS.js.map} +0 -0
- /package/dist/{executor-EUPYHCLU.js.map → extract-partition-SWHFSYJO.js.map} +0 -0
- /package/dist/{fanout-sidecar-NBDKKCHT.js.map → fanout-sidecar-A765THMX.js.map} +0 -0
- /package/dist/{executor-KZ4B3PRT.js.map → find-N6345CNT.js.map} +0 -0
- /package/dist/{executor-MHUM2VZK.js.map → issue-5OKB6I2R.js.map} +0 -0
- /package/dist/{export-accessible-Z3NSZZHN.js.map → ledger-GFBKVPV4.js.map} +0 -0
- /package/dist/{extract-partition-VSKT35JG.js.map → liberate-3VDOT4KO.js.map} +0 -0
- /package/dist/{find-OH4BEULF.js.map → link-set-Z7Q2ASFX.js.map} +0 -0
- /package/dist/{issue-AEOL6RXA.js.map → noydb-ZCJOYBDI.js.map} +0 -0
- /package/dist/{kernel/index.js.map → policy-Z3RUAIY2.js.map} +0 -0
- /package/dist/{ledger-3LR3YO2W.js.map → public-envelope-B4KNWVUA.js.map} +0 -0
- /package/dist/{liberate-XSEPRWEA.js.map → read-only-facade-CHCKSEPD.js.map} +0 -0
- /package/dist/{link-set-NSUIX6BR.js.map → register-VAHONCID.js.map} +0 -0
- /package/dist/{noydb-POVTIVQ6.js.map → registry-7MLVD3VO.js.map} +0 -0
- /package/dist/{policy-Y7HL2KGA.js.map → registry-EPKPD5SM.js.map} +0 -0
- /package/dist/{public-envelope-NC7SPNMV.js.map → registry-P5T7PS2U.js.map} +0 -0
- /package/dist/{read-only-facade-5ADRJVTM.js.map → request-withdrawal-TI3A5WPS.js.map} +0 -0
- /package/dist/{register-3D6R2MKN.js.map → revoke-FDRD6GRW.js.map} +0 -0
- /package/dist/{registry-AI4E46PD.js.map → signer-MUWEIUI6.js.map} +0 -0
- /package/dist/{registry-HSNQ4NBP.js.map → stale-OSQ7J3AA.js.map} +0 -0
- /package/dist/{registry-WIX6QCV5.js.map → storage-MVFCGEQE.js.map} +0 -0
- /package/dist/{store-coordination-provider-NJDDZ264.js.map → store-coordination-provider-64OEZFGS.js.map} +0 -0
- /package/dist/{walk-SMAE4IEI.js.map → walk-SVNDIZ62.js.map} +0 -0
- /package/dist/{request-withdrawal-GU4XS2R5.js.map → withdraw-accessible-WZIEVWSR.js.map} +0 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generic dotted-path / `[]`-wildcard record helpers. Kernel-owned:
|
|
3
|
+
* these carry zero i18n logic — they were extracted out of
|
|
4
|
+
* `via/i18n/core.ts` (Task 7, #623) so kernel call-sites (put-time
|
|
5
|
+
* validation, densify) can import them without a spine→service edge.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Return all leaf values at `path`, expanding `[].` array wildcards.
|
|
11
|
+
*
|
|
12
|
+
* - `'name'` → `[obj.name]`
|
|
13
|
+
* - `'address.lineOne'` → `[obj.address.lineOne]`
|
|
14
|
+
* - `'contacts[].title'` → `[obj.contacts[0].title, obj.contacts[1].title, …]`
|
|
15
|
+
*
|
|
16
|
+
* Returns an empty array when the path does not resolve (missing key,
|
|
17
|
+
* wrong type, etc.). Used by `enforceI18nOnPut` to validate nested fields.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getAtPath(obj: Record<string, unknown>, path: string): unknown[];
|
|
20
|
+
/**
|
|
21
|
+
* Mutate `obj` in-place, setting `value` at the nested `path`.
|
|
22
|
+
* Supports dot notation (`'address.lineOne'`) but not array wildcards —
|
|
23
|
+
* auto-translate on `contacts[].title` style paths is not supported.
|
|
24
|
+
*/
|
|
25
|
+
export declare function setAtPathInPlace(obj: Record<string, unknown>, path: string, value: unknown): void;
|
|
@@ -0,0 +1,520 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chainable, immutable query builder.
|
|
3
|
+
*
|
|
4
|
+
* Each builder operation returns a NEW Query — the underlying plan is never
|
|
5
|
+
* mutated. This makes plans safe to share, cache, and serialize.
|
|
6
|
+
*/
|
|
7
|
+
import type { QueryField } from '../types.js';
|
|
8
|
+
import type { Clause, Operator } from './predicate.js';
|
|
9
|
+
import type { CollectionIndexes } from '../../with-lookup/indexing/eager-indexes.js';
|
|
10
|
+
import type { JoinContext, JoinLeg, JoinStrategy } from './join.js';
|
|
11
|
+
import type { LiveQuery } from './live.js';
|
|
12
|
+
import type { AggregateSpec, AggregateResult, Aggregation } from '../../with-lookup/aggregate/aggregation.js';
|
|
13
|
+
import type { ReducerBuilder } from '../../with-lookup/aggregate/reducers.js';
|
|
14
|
+
import type { GroupedQuery, GroupedQueryN } from '../../with-lookup/aggregate/groupby.js';
|
|
15
|
+
import { type AggregateStrategy } from '../../with-lookup/aggregate/strategy.js';
|
|
16
|
+
import type { ViaPipeline } from '../via/pipeline.js';
|
|
17
|
+
export interface OrderBy {
|
|
18
|
+
readonly field: string;
|
|
19
|
+
readonly direction: 'asc' | 'desc';
|
|
20
|
+
/**
|
|
21
|
+
* Sort key for a `dictKey`/`staticDict` field: `'value'` (default)
|
|
22
|
+
* sorts by the stored code; `'label'` sorts by the code's resolved label at
|
|
23
|
+
* the query locale (`toArray({ locale })`, or a `staticDict` `displayLocale`).
|
|
24
|
+
* Falls back to the code when no label resolves.
|
|
25
|
+
*/
|
|
26
|
+
readonly by?: 'value' | 'label';
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A complete query plan: zero-or-more clauses, optional ordering, pagination,
|
|
30
|
+
* and optional joins.
|
|
31
|
+
*
|
|
32
|
+
* Plans are JSON-serializable as long as no FilterClause is present and no
|
|
33
|
+
* join leg carries a manual `strategy` override (JoinLeg itself is plain
|
|
34
|
+
* data, so it serializes cleanly).
|
|
35
|
+
*
|
|
36
|
+
* Plans are intentionally NOT parametric on T — see `predicate.ts` FilterClause
|
|
37
|
+
* for the variance reasoning. The public `Query<T>` API attaches the type tag.
|
|
38
|
+
*/
|
|
39
|
+
export interface QueryPlan {
|
|
40
|
+
readonly clauses: readonly Clause[];
|
|
41
|
+
readonly orderBy: readonly OrderBy[];
|
|
42
|
+
readonly limit: number | undefined;
|
|
43
|
+
readonly offset: number;
|
|
44
|
+
/**
|
|
45
|
+
* Zero-or-more join legs to apply after where/orderBy/limit/offset.
|
|
46
|
+
* Each leg attaches a resolved right-side record (or null) under its
|
|
47
|
+
* alias. See `query/join.ts` for the full semantics.
|
|
48
|
+
*/
|
|
49
|
+
readonly joins: readonly JoinLeg[];
|
|
50
|
+
}
|
|
51
|
+
/** Default row ceiling for cross-join expansion. Matches JoinTooLargeError's ceiling. */
|
|
52
|
+
export declare const DEFAULT_CROSS_JOIN_MAX_ROWS = 50000;
|
|
53
|
+
/**
|
|
54
|
+
* Source of records that a query executes against.
|
|
55
|
+
*
|
|
56
|
+
* The interface is non-parametric to keep variance friendly: callers cast
|
|
57
|
+
* their typed source (e.g. `QuerySource<Invoice>`) into this opaque shape.
|
|
58
|
+
*
|
|
59
|
+
* `getIndexes` and `lookupById` are optional fast-path hooks. When both are
|
|
60
|
+
* present and a where clause matches an indexed field, the executor uses
|
|
61
|
+
* the index to skip a linear scan. Sources without these methods (or with
|
|
62
|
+
* `getIndexes` returning `null`) always fall back to a linear scan.
|
|
63
|
+
*/
|
|
64
|
+
export interface QuerySource<T> {
|
|
65
|
+
/** Snapshot of all current records. The query never mutates this array. */
|
|
66
|
+
snapshot(): readonly T[];
|
|
67
|
+
/** Subscribe to mutations; returns an unsubscribe function. */
|
|
68
|
+
subscribe?(cb: () => void): () => void;
|
|
69
|
+
/** Index store for the indexed-fast-path. Optional. */
|
|
70
|
+
getIndexes?(): CollectionIndexes | null;
|
|
71
|
+
/** O(1) record lookup by id, used to materialize index hits. */
|
|
72
|
+
lookupById?(id: string): T | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* The backing collection's compiled Via pipeline (money now; more Via
|
|
75
|
+
* features later), used to rewrite `where()` operands, decode results,
|
|
76
|
+
* order, and rewrite aggregate reducers for covered fields.
|
|
77
|
+
*/
|
|
78
|
+
via?: ViaPipeline;
|
|
79
|
+
/**
|
|
80
|
+
* Id-paired snapshot for `Query._idArray()` (the `retrieve({within})`
|
|
81
|
+
* id projection). Optional: only collection-backed queries supply it.
|
|
82
|
+
*/
|
|
83
|
+
snapshotEntries?(): readonly {
|
|
84
|
+
id: string;
|
|
85
|
+
record: T;
|
|
86
|
+
}[];
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The chainable builder. All methods return a new Query — the original
|
|
90
|
+
* remains unchanged. Terminal methods (`toArray`, `first`, `count`,
|
|
91
|
+
* `subscribe`) execute the plan against the source.
|
|
92
|
+
*
|
|
93
|
+
* Type parameter T flows through the public API for ergonomics, but the
|
|
94
|
+
* internal storage uses `unknown` so Collection<T> stays covariant.
|
|
95
|
+
*
|
|
96
|
+
* The optional `joinContext` is attached when the Query is constructed
|
|
97
|
+
* via `Collection.query()` (Collection passes in a context built from
|
|
98
|
+
* the Vault's join resolver). A Query constructed via `new Query`
|
|
99
|
+
* directly — e.g. from tests with a plain-object source — has no
|
|
100
|
+
* joinContext, and calling `.join()` on it throws with an actionable
|
|
101
|
+
* error. See `query/join.ts` for the full design.
|
|
102
|
+
*/
|
|
103
|
+
/**
|
|
104
|
+
* Declared deterministic predicate. Carries the consumer's
|
|
105
|
+
* stable `hash` (for function-body identity), the function itself,
|
|
106
|
+
* and is keyed by name when registered on a `Query<T>` via
|
|
107
|
+
* `_withPredicates()`.
|
|
108
|
+
*/
|
|
109
|
+
export interface DeclaredPredicate {
|
|
110
|
+
hash: string;
|
|
111
|
+
fn: (record: unknown, ctx?: unknown) => boolean;
|
|
112
|
+
}
|
|
113
|
+
export declare class Query<T, S extends keyof T = never, Q extends keyof T & string = never, M extends keyof T & string = never> {
|
|
114
|
+
private readonly source;
|
|
115
|
+
private readonly plan;
|
|
116
|
+
private readonly joinContext;
|
|
117
|
+
private readonly aggregateStrategy;
|
|
118
|
+
private readonly predicates;
|
|
119
|
+
constructor(source: QuerySource<T>, plan?: QueryPlan, joinContext?: JoinContext, aggregateStrategy?: AggregateStrategy, predicates?: ReadonlyMap<string, DeclaredPredicate>);
|
|
120
|
+
/**
|
|
121
|
+
* @internal — accessor for the materialized-view dependency
|
|
122
|
+
* analyzer. Not part of the public API; consumers should use the
|
|
123
|
+
* builder methods, not inspect the plan directly.
|
|
124
|
+
*/
|
|
125
|
+
_plan(): QueryPlan;
|
|
126
|
+
/**
|
|
127
|
+
* @internal — accessor for the materialized-view dependency
|
|
128
|
+
* analyzer. Returns the join resolution context (or `undefined` for
|
|
129
|
+
* queries constructed without a Collection backing).
|
|
130
|
+
*/
|
|
131
|
+
_joinContext(): JoinContext | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* @internal — clone this Query with a declared-predicate map
|
|
134
|
+
* attached. Used by the materialized-view registry to enable
|
|
135
|
+
* `.wherePredicate(name, ctx?)` for the MV's query callback.
|
|
136
|
+
* Consumers don't call this directly.
|
|
137
|
+
*/
|
|
138
|
+
_withPredicates(predicates: ReadonlyMap<string, DeclaredPredicate>): Query<T, S, Q, M>;
|
|
139
|
+
/**
|
|
140
|
+
* @internal — the ids of records matching this query's plan,
|
|
141
|
+
* recovered by reference identity: `executePlanWithSource` returns the
|
|
142
|
+
* ORIGINAL snapshot record references (money-decode and joins are applied
|
|
143
|
+
* later, in `toArray`), so each matched record is found in the id-paired
|
|
144
|
+
* `snapshotEntries()` map. Used by `collection.retrieve({ within })`.
|
|
145
|
+
* Throws if the source is not collection-backed (no `snapshotEntries`).
|
|
146
|
+
*/
|
|
147
|
+
_idArray(): string[];
|
|
148
|
+
/**
|
|
149
|
+
* Filter by a registered deterministic predicate. Requires
|
|
150
|
+
* the Query to have been augmented with a predicates map (typically
|
|
151
|
+
* via the materialized-view registry — bare Queries constructed
|
|
152
|
+
* outside an MV throw on `.wherePredicate()`).
|
|
153
|
+
*
|
|
154
|
+
* `ctx` is an optional opaque value passed verbatim to the predicate
|
|
155
|
+
* function. Both `predicateHash` (from the registration) and a
|
|
156
|
+
* canonical-JSON hash of `ctx` fold into the MV's `queryHash`, so
|
|
157
|
+
* either changing forces refresh on next visit.
|
|
158
|
+
*/
|
|
159
|
+
wherePredicate(name: string, ctx?: unknown): Query<T, S, Q, M>;
|
|
160
|
+
/**
|
|
161
|
+
* Add a field comparison. Multiple where() calls are AND-combined.
|
|
162
|
+
*
|
|
163
|
+
* A declared money field compares in MAJOR units: the operand
|
|
164
|
+
* (`10000`, `'10000.00'`, or `{ amount, currency }` in multi mode) is
|
|
165
|
+
* quantized into stored scaled-int space at build time and evaluated
|
|
166
|
+
* BigInt-exact per record. A malformed operand or a string operator
|
|
167
|
+
* (`contains`/`startsWith`) throws here, at the call site.
|
|
168
|
+
*
|
|
169
|
+
* Consults the Via pipeline's posture before building a clause (#629
|
|
170
|
+
* Task 8): a field whose posture is `queryable: 'none'` (e.g. a
|
|
171
|
+
* `blobFields` slot) throws `FieldNotQueryableError` here, at the call
|
|
172
|
+
* site. Every other posture is unaffected — the existing per-binding
|
|
173
|
+
* `buildClause` machinery runs exactly as before.
|
|
174
|
+
*/
|
|
175
|
+
where(field: QueryField<T, S, Q>, op: Operator, value: unknown): Query<T, S, Q, M>;
|
|
176
|
+
/**
|
|
177
|
+
* Logical OR group. Pass a callback that builds a sub-query.
|
|
178
|
+
* Each clause inside the callback is OR-combined; the group itself
|
|
179
|
+
* joins the parent plan with AND.
|
|
180
|
+
*/
|
|
181
|
+
or(builder: (q: Query<T, S, Q, M>) => Query<T, S, Q, M>): Query<T, S, Q, M>;
|
|
182
|
+
/**
|
|
183
|
+
* Logical AND group. Same shape as `or()` but every clause inside the group
|
|
184
|
+
* must match. Useful for explicit grouping inside a larger OR.
|
|
185
|
+
*/
|
|
186
|
+
and(builder: (q: Query<T, S, Q, M>) => Query<T, S, Q, M>): Query<T, S, Q, M>;
|
|
187
|
+
/** Escape hatch: add an arbitrary predicate function. Not serializable. */
|
|
188
|
+
filter(fn: (record: T) => boolean): Query<T, S, Q, M>;
|
|
189
|
+
/**
|
|
190
|
+
* Sort by a field. Subsequent calls are tie-breakers. Pass
|
|
191
|
+
* `{ by: 'label' }` to sort a `dictKey`/`staticDict` field by its resolved
|
|
192
|
+
* label at the query locale instead of the stored code.
|
|
193
|
+
*
|
|
194
|
+
* Consults the Via pipeline's posture (#629 Task 8): a field whose posture
|
|
195
|
+
* is `queryable: 'none'` throws `FieldNotQueryableError` here, at the call
|
|
196
|
+
* site — same gate as `where()`.
|
|
197
|
+
*/
|
|
198
|
+
orderBy(field: QueryField<T, S>, direction?: 'asc' | 'desc', opts?: {
|
|
199
|
+
by?: 'value' | 'label';
|
|
200
|
+
}): Query<T, S, Q, M>;
|
|
201
|
+
/** Cap the result size. */
|
|
202
|
+
limit(n: number): Query<T, S, Q, M>;
|
|
203
|
+
/** Skip the first N matching records (after ordering). */
|
|
204
|
+
offset(n: number): Query<T, S, Q, M>;
|
|
205
|
+
/**
|
|
206
|
+
* Resolve a `ref()`-declared foreign key and attach the right-side
|
|
207
|
+
* record under `opts.as`. — eager, single-FK, intra-
|
|
208
|
+
* vault joins.
|
|
209
|
+
*
|
|
210
|
+
* ```ts
|
|
211
|
+
* const rows = invoices.query()
|
|
212
|
+
* .where('status', '==', 'open')
|
|
213
|
+
* .join('clientId', { as: 'client' })
|
|
214
|
+
* .toArray()
|
|
215
|
+
* // → [{ id, amount, client: { id, name, ... } }, ...]
|
|
216
|
+
* ```
|
|
217
|
+
*
|
|
218
|
+
* Preconditions:
|
|
219
|
+
* - The Query must have a `joinContext` (constructed via
|
|
220
|
+
* `Collection.query()`, not `new Query`).
|
|
221
|
+
* - `field` must have a matching `refs: { [field]: ref('<target>') }`
|
|
222
|
+
* declaration on the left collection.
|
|
223
|
+
* - The target collection must be reachable via the vault
|
|
224
|
+
* (either currently open or openable on demand).
|
|
225
|
+
*
|
|
226
|
+
* Strategy:
|
|
227
|
+
* - Nested-loop against `lookupById` when the target source
|
|
228
|
+
* provides it (the common path for Collection targets).
|
|
229
|
+
* - Hash join otherwise, or when `{ strategy: 'hash' }` is
|
|
230
|
+
* explicitly passed for test purposes.
|
|
231
|
+
*
|
|
232
|
+
* Ref-mode semantics on dangling refs (left record has a non-null
|
|
233
|
+
* FK value pointing at a right-side id that doesn't exist):
|
|
234
|
+
* - `strict` → throws `DanglingReferenceError` with the full
|
|
235
|
+
* field / target / refId context.
|
|
236
|
+
* - `warn` → attaches `null` and emits a one-shot warning per
|
|
237
|
+
* unique dangling pair.
|
|
238
|
+
* - `cascade` → attaches `null` silently. Cascade is a
|
|
239
|
+
* delete-time mode; dangling refs visible at read time are
|
|
240
|
+
* either mid-flight cascades or pre-existing orphans, not a
|
|
241
|
+
* DSL-level error.
|
|
242
|
+
*
|
|
243
|
+
* A left-side record whose FK field is `null` / `undefined` is NOT
|
|
244
|
+
* a dangling ref — it's "no reference at all", always allowed
|
|
245
|
+
* regardless of mode.
|
|
246
|
+
*
|
|
247
|
+
* The return type widens `T` with `Record<As, R | null>`. The `R`
|
|
248
|
+
* parameter is optional — supply it explicitly for type-checked
|
|
249
|
+
* access to the joined fields:
|
|
250
|
+
*
|
|
251
|
+
* ```ts
|
|
252
|
+
* invoices.query().join<'client', Client>('clientId', { as: 'client' })
|
|
253
|
+
* // ^^^^^^^^^^^^^^^^^^^ alias literal + right-side type
|
|
254
|
+
* ```
|
|
255
|
+
*
|
|
256
|
+
* Without the generic, the joined field is typed as `unknown`, which
|
|
257
|
+
* still works but requires a cast to access its properties.
|
|
258
|
+
*
|
|
259
|
+
* Joins stay intra-vault by construction — cross-vault
|
|
260
|
+
* correlation goes through `Noydb.queryAcross`, not
|
|
261
|
+
* `.join()`.
|
|
262
|
+
*/
|
|
263
|
+
join<As extends string, R = unknown>(field: QueryField<T, S>, opts: {
|
|
264
|
+
as: As;
|
|
265
|
+
strategy?: JoinStrategy;
|
|
266
|
+
maxRows?: number;
|
|
267
|
+
}): Query<T & Record<As, R | null>, S, Q, M>;
|
|
268
|
+
/**
|
|
269
|
+
* Cartesian-product cross-join against `target` collection. Each result row
|
|
270
|
+
* carries the original `T` fields plus `result[as]` populated from every
|
|
271
|
+
* right-side row (or the filtered subset when `on:` is supplied).
|
|
272
|
+
*
|
|
273
|
+
* **Order matters:** `.where().crossJoin()` filters BEFORE expanding (cheaper);
|
|
274
|
+
* `.crossJoin().where('alias.field', ...)` filters AFTER (required when the
|
|
275
|
+
* where clause references the aliased fields).
|
|
276
|
+
*
|
|
277
|
+
* **Cost ceiling:** `CrossJoinTooLargeError` fires before allocation when
|
|
278
|
+
* `leftRows × rightRows` (or the cumulative lateral count) exceeds the limit.
|
|
279
|
+
* Default: 50,000 rows. Override per-clause with `{ maxRows: N }`.
|
|
280
|
+
*
|
|
281
|
+
* **`on:` shapes:**
|
|
282
|
+
* - `on: (left) => TTarget[]` — subset form (most efficient)
|
|
283
|
+
* - `on: (left) => (right) => boolean` — predicate form
|
|
284
|
+
* - `on: { predicate: 'name' }` — MV-safe, hash-tracked form
|
|
285
|
+
* (requires the Query to have been augmented via `_withPredicates`)
|
|
286
|
+
*
|
|
287
|
+
* Requires a JoinContext (constructed via `collection.query()`).
|
|
288
|
+
*/
|
|
289
|
+
crossJoin<TTarget = unknown, As extends string = string>(target: string, opts: {
|
|
290
|
+
as: As;
|
|
291
|
+
on?: ((left: T) => unknown[] | ((right: TTarget) => boolean)) | {
|
|
292
|
+
readonly predicate: string;
|
|
293
|
+
};
|
|
294
|
+
maxRows?: number;
|
|
295
|
+
}): Query<T & {
|
|
296
|
+
[K in As]: TTarget;
|
|
297
|
+
}, S, Q, M>;
|
|
298
|
+
/**
|
|
299
|
+
* Execute the plan and return the matching records. When the plan
|
|
300
|
+
* carries any join legs, they are applied after `where` / `orderBy`
|
|
301
|
+
* / `limit` / `offset` narrow the left set. See the `.join()` doc
|
|
302
|
+
* for the ordering rationale.
|
|
303
|
+
*
|
|
304
|
+
* `opts.locale` resolves JOINED right-side i18n fields at the
|
|
305
|
+
* `join` layer to that locale; without it, the owning collection's default
|
|
306
|
+
* locale applies, and a locale-less query leaves joined i18n fields raw.
|
|
307
|
+
* (Left/base i18n fields are resolved by `get`/`list`, not here.)
|
|
308
|
+
*/
|
|
309
|
+
toArray(opts?: {
|
|
310
|
+
locale?: string;
|
|
311
|
+
}): T[];
|
|
312
|
+
/**
|
|
313
|
+
* Decode this source's Via-covered fields on read (e.g. money: stored
|
|
314
|
+
* scaled-int → canonical decimal), so `query().toArray()` agrees with
|
|
315
|
+
* `get()`/`sum()` on the value. No-op when the source's Via pipeline
|
|
316
|
+
* declares no result decode.
|
|
317
|
+
*
|
|
318
|
+
* The query layer carries no locale context, so money decodes with
|
|
319
|
+
* `'raw'` — canonical decimal, WITHOUT fabricating locale-formatted
|
|
320
|
+
* `<field>Formatted` / `<field>Number` virtuals. Producing a
|
|
321
|
+
* guessed-locale string here would reintroduce a "two read paths
|
|
322
|
+
* disagree" failure on the virtual field (e.g. it-IT via `get()` vs
|
|
323
|
+
* en-US here). Consumers who need formatted money read through
|
|
324
|
+
* `get()`/`list()` with a locale.
|
|
325
|
+
*/
|
|
326
|
+
private decodeVia;
|
|
327
|
+
/** Return the first matching record, or null. Joins are applied. `opts.locale` resolves joined i18n fields. */
|
|
328
|
+
first(opts?: {
|
|
329
|
+
locale?: string;
|
|
330
|
+
}): T | null;
|
|
331
|
+
/**
|
|
332
|
+
* Return the number of matching records (after where/filter,
|
|
333
|
+
* before limit). **Joins are NOT applied** — count() reports the
|
|
334
|
+
* left-side cardinality, because joins in are projection-only
|
|
335
|
+
* (they attach an aliased field; they never filter). Running joins
|
|
336
|
+
* here just to discard the aliases would be wasteful, and in strict
|
|
337
|
+
* mode it could throw `DanglingReferenceError` for a call whose
|
|
338
|
+
* intent is purely to count.
|
|
339
|
+
*/
|
|
340
|
+
count(): number;
|
|
341
|
+
/**
|
|
342
|
+
* Reduce the matching records through a named set of reducers.
|
|
343
|
+
* the aggregation terminal.
|
|
344
|
+
*
|
|
345
|
+
* ```ts
|
|
346
|
+
* const { total, n, avgAmount } = invoices.query()
|
|
347
|
+
* .where('status', '==', 'open')
|
|
348
|
+
* .aggregate({
|
|
349
|
+
* total: sum('amount'),
|
|
350
|
+
* n: count(),
|
|
351
|
+
* avgAmount: avg('amount'),
|
|
352
|
+
* })
|
|
353
|
+
* .run()
|
|
354
|
+
* ```
|
|
355
|
+
*
|
|
356
|
+
* Returns an `Aggregation<R>` wrapper with two terminals:
|
|
357
|
+
* - `.run(): R` — synchronous one-shot reduction
|
|
358
|
+
* - `.live(): LiveAggregation<R>` — reactive primitive that
|
|
359
|
+
* re-runs the reduction whenever the source notifies of a
|
|
360
|
+
* change. Always call `live.stop()` when finished.
|
|
361
|
+
*
|
|
362
|
+
* The reducer spec is bound here once and reused by both
|
|
363
|
+
* terminals — this is why `.aggregate()` returns a wrapper instead
|
|
364
|
+
* of being a direct terminal. Consumers who only need the static
|
|
365
|
+
* value read `.run()`; consumers wiring a reactive UI read
|
|
366
|
+
* `.live()`.
|
|
367
|
+
*
|
|
368
|
+
* Joins are intentionally NOT applied to aggregations in —
|
|
369
|
+
* the same logic as `.count()`. Joins in are projection-only
|
|
370
|
+
* (they attach an aliased field and never filter), so running
|
|
371
|
+
* them just to throw the aliases away would be wasteful. If you
|
|
372
|
+
* need a reducer that reads a joined field, open an issue —
|
|
373
|
+
* aggregations-across-joins is explicitly out of scope for v1.
|
|
374
|
+
*
|
|
375
|
+
* Every reducer factory accepts an optional `{ seed }` parameter
|
|
376
|
+
* that is plumbed through the protocol but unused by the
|
|
377
|
+
* executor — that's constraint #2. When partition-aware
|
|
378
|
+
* aggregation lands, the seed will carry running state across
|
|
379
|
+
* partition boundaries without an API break.
|
|
380
|
+
*
|
|
381
|
+
* KNOWN GAP (sealed fields, bare-spec form): `where`/`orderBy`/`groupBy`
|
|
382
|
+
* refuse a `sensitive` field at compile time, but a reducer over a sensitive
|
|
383
|
+
* field in the BARE-SPEC form (e.g. `aggregate({ x: sum('ssn') })`) is NOT
|
|
384
|
+
* refused — the reducer factories (`sum`/`min`/`max`/…) are standalone
|
|
385
|
+
* `(field: string)` functions with no collection-type context. This form is
|
|
386
|
+
* preserved as-is for backward compatibility.
|
|
387
|
+
*
|
|
388
|
+
* The BUILDER form closes this gap: `aggregate(b => ({ x: b.sum('field') }))`
|
|
389
|
+
* types the builder's field parameter as `QueryField<T, S>`, refusing any
|
|
390
|
+
* `sensitive` field at compile time. Use the builder form for new code that
|
|
391
|
+
* aggregates over a collection with sensitive fields.
|
|
392
|
+
*
|
|
393
|
+
*/
|
|
394
|
+
aggregate<Spec extends AggregateSpec>(spec: Spec): Aggregation<AggregateResult<Spec>>;
|
|
395
|
+
aggregate<Spec extends AggregateSpec>(build: (b: ReducerBuilder<T, S, M>) => Spec): Aggregation<AggregateResult<Spec>>;
|
|
396
|
+
/**
|
|
397
|
+
* Partition matching records into buckets keyed by a field, then
|
|
398
|
+
* terminate with `.aggregate(spec)` to compute per-bucket
|
|
399
|
+
* reducers..
|
|
400
|
+
*
|
|
401
|
+
* ```ts
|
|
402
|
+
* const byClient = invoices.query()
|
|
403
|
+
* .where('status', '==', 'open')
|
|
404
|
+
* .groupBy('clientId')
|
|
405
|
+
* .aggregate({ total: sum('amount'), n: count() })
|
|
406
|
+
* .run()
|
|
407
|
+
* // → [ { clientId: 'c1', total: 5250, n: 3 }, … ]
|
|
408
|
+
* ```
|
|
409
|
+
*
|
|
410
|
+
* Result rows carry the group key value under the grouping field
|
|
411
|
+
* name plus every reducer output from the spec. Buckets are
|
|
412
|
+
* emitted in first-seen order — consumers who want a specific
|
|
413
|
+
* ordering should `.sort()` downstream.
|
|
414
|
+
*
|
|
415
|
+
* **Cardinality caps:** a one-shot warning fires at 10_000
|
|
416
|
+
* distinct groups; `GroupCardinalityError` throws at 100_000.
|
|
417
|
+
* Grouping on a high-uniqueness field like `id` or `createdAt` is
|
|
418
|
+
* almost always a query mistake — the error message names the
|
|
419
|
+
* field and observed cardinality and suggests narrowing with
|
|
420
|
+
* `.where()` first.
|
|
421
|
+
*
|
|
422
|
+
* **Null / undefined keys:** records with a missing or explicitly
|
|
423
|
+
* `null` group field get their own buckets. `Map`-based
|
|
424
|
+
* partitioning distinguishes `undefined` from `null`, so the two
|
|
425
|
+
* cases do NOT merge. Consumers who want them merged should
|
|
426
|
+
* coalesce upstream with `.filter()`.
|
|
427
|
+
*
|
|
428
|
+
* **Joins are not applied** — same rationale as `.count()` and
|
|
429
|
+
* `.aggregate()`. Joined fields in are projection-only, so
|
|
430
|
+
* running a join inside a grouping pipeline would be wasteful and
|
|
431
|
+
* could trigger `DanglingReferenceError` in strict mode for a
|
|
432
|
+
* call whose intent is purely to bucket-and-reduce. Grouping by
|
|
433
|
+
* a joined field is explicitly out of scope for — file an
|
|
434
|
+
* issue if a real consumer needs it.
|
|
435
|
+
*
|
|
436
|
+
* **Filter clauses (`.filter(fn)`):** grouped queries still
|
|
437
|
+
* support filter clauses in the underlying plan — they run in
|
|
438
|
+
* the same candidate/filter pipeline that `.aggregate()` uses.
|
|
439
|
+
* The performance caveat is the same: filter clauses cost O(N)
|
|
440
|
+
* per record and can't be index-accelerated.
|
|
441
|
+
*/
|
|
442
|
+
groupBy<F extends QueryField<T, S>>(field: F): GroupedQuery<T, F, S, M>;
|
|
443
|
+
groupBy<F extends readonly [QueryField<T, S>, QueryField<T, S>, ...QueryField<T, S>[]]>(...fields: F): GroupedQueryN<T, F, S, M>;
|
|
444
|
+
/**
|
|
445
|
+
* Re-run the query whenever the source notifies of changes.
|
|
446
|
+
* Returns an unsubscribe function. The callback receives the latest result.
|
|
447
|
+
* Throws if the source does not support subscriptions.
|
|
448
|
+
*
|
|
449
|
+
* **For joined queries, prefer `.live()`** — `subscribe()`
|
|
450
|
+
* only re-fires on LEFT-side changes, so joined data can be
|
|
451
|
+
* stale if the right side mutates between emissions. `.live()`
|
|
452
|
+
* merges change streams from every join target.
|
|
453
|
+
*/
|
|
454
|
+
subscribe(cb: (result: T[]) => void): () => void;
|
|
455
|
+
/**
|
|
456
|
+
* Reactive terminal — returns a `LiveQuery<T>` that re-runs the
|
|
457
|
+
* query and updates its `value` whenever any source feeding it
|
|
458
|
+
* mutates..
|
|
459
|
+
*
|
|
460
|
+
* For non-joined queries, `.live()` is a convenience over the
|
|
461
|
+
* existing `.subscribe()` callback shape: a hand-rolled reactive
|
|
462
|
+
* primitive with `value` / `error` fields and a `subscribe(cb)`
|
|
463
|
+
* notification channel. Frame-agnostic — Vue / React / Solid
|
|
464
|
+
* adapters wrap it in their own primitive.
|
|
465
|
+
*
|
|
466
|
+
* For joined queries, `.live()` additionally subscribes to every
|
|
467
|
+
* join target's change stream. Mutations on a right-side
|
|
468
|
+
* collection (insert / update / delete of a client referenced by
|
|
469
|
+
* an invoice) re-fire the live query and re-evaluate every
|
|
470
|
+
* dependent left row. Right-side targets are deduped by
|
|
471
|
+
* collection name, so a chain that joins the same target twice
|
|
472
|
+
* (e.g. billing client + shipping client → both 'clients') only
|
|
473
|
+
* subscribes once.
|
|
474
|
+
*
|
|
475
|
+
* **Ref-mode behavior on right-side disappearance** — matches the
|
|
476
|
+
* eager `.toArray()` contract from :
|
|
477
|
+
* - `strict` → re-run throws `DanglingReferenceError`. The
|
|
478
|
+
* LiveQuery catches the throw, stores it in `live.error`, and
|
|
479
|
+
* notifies listeners (the throw does NOT propagate out of
|
|
480
|
+
* the source's change handler — that would tear down the
|
|
481
|
+
* emitter). Consumers check `live.error` after each
|
|
482
|
+
* notification and render an error state in the UI.
|
|
483
|
+
* - `warn` → joined value flips to `null`; the existing
|
|
484
|
+
* warn-channel deduplication keeps repeated re-runs from
|
|
485
|
+
* spamming the console.
|
|
486
|
+
* - `cascade` → no special handling needed; the cascade-
|
|
487
|
+
* delete mechanism propagates the right-side delete into the
|
|
488
|
+
* left collection on the next tick, and the live query
|
|
489
|
+
* naturally re-fires with the orphaned left rows gone.
|
|
490
|
+
*
|
|
491
|
+
* Always call `live.stop()` when finished — it tears down every
|
|
492
|
+
* upstream subscription. The Vue layer's `onUnmounted` hook
|
|
493
|
+
* should call `stop()` automatically; raw consumers must do it
|
|
494
|
+
* themselves.
|
|
495
|
+
*
|
|
496
|
+
* **Limitations:**
|
|
497
|
+
* - No granular delta updates — the whole query re-runs on
|
|
498
|
+
* every change.
|
|
499
|
+
* - No microtask batching — bursty changes produce one re-run
|
|
500
|
+
* per change.
|
|
501
|
+
* - No re-planning under live mutations — the planner picks
|
|
502
|
+
* once at subscription time and reuses the same plan.
|
|
503
|
+
* - Streaming live joins are deferred.
|
|
504
|
+
*/
|
|
505
|
+
live(): LiveQuery<T>;
|
|
506
|
+
/**
|
|
507
|
+
* Return the plan as a JSON-friendly object. FilterClause entries are
|
|
508
|
+
* stripped (their `fn` cannot be serialized) and replaced with
|
|
509
|
+
* { type: 'filter', fn: '[function]' } so devtools can still see them.
|
|
510
|
+
*/
|
|
511
|
+
toPlan(): unknown;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Execute a plan against a snapshot of records.
|
|
515
|
+
* Pure function — same input, same output, no side effects.
|
|
516
|
+
*
|
|
517
|
+
* Records are typed as `unknown` because plans are non-parametric; callers
|
|
518
|
+
* cast the return type at the API surface (see `Query.toArray()`).
|
|
519
|
+
*/
|
|
520
|
+
export declare function executePlan(records: readonly unknown[], plan: QueryPlan): unknown[];
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Query DSL — barrel export.
|
|
3
|
+
*
|
|
4
|
+
* Public API:
|
|
5
|
+
* - `Query<T>` — chainable, immutable builder
|
|
6
|
+
* - `QuerySource<T>` — interface for record sources (Collection implements it)
|
|
7
|
+
* - `Operator` — comparison operators accepted by `where()`
|
|
8
|
+
* - `QueryPlan<T>` — serializable plan object
|
|
9
|
+
*
|
|
10
|
+
* Tree-shakeable: importing this barrel without calling `query()` does not
|
|
11
|
+
* pull in the executor's runtime, since `Query` is the only entry point.
|
|
12
|
+
*/
|
|
13
|
+
export { Query, executePlan, DEFAULT_CROSS_JOIN_MAX_ROWS } from './builder.js';
|
|
14
|
+
export type { QueryPlan, QuerySource, OrderBy } from './builder.js';
|
|
15
|
+
export type { Operator, Clause, FieldClause, FilterClause, GroupClause, CrossJoinClause } from './predicate.js';
|
|
16
|
+
export { evaluateClause, evaluateFieldClause, readPath } from './predicate.js';
|
|
17
|
+
export { CollectionIndexes } from '../../with-lookup/indexing/eager-indexes.js';
|
|
18
|
+
export type { IndexDef, HashIndex } from '../../with-lookup/indexing/eager-indexes.js';
|
|
19
|
+
export { applyJoins, DEFAULT_JOIN_MAX_ROWS, resetJoinWarnings } from './join.js';
|
|
20
|
+
export type { JoinLeg, JoinContext, JoinableSource, JoinStrategy } from './join.js';
|
|
21
|
+
export { buildLiveQuery } from './live.js';
|
|
22
|
+
export type { LiveQuery, LiveUpstream } from './live.js';
|
|
23
|
+
export { count, sum, avg, min, max, moneySum, moneyMin, moneyMax, reducerBuilder } from '../../with-lookup/aggregate/reducers.js';
|
|
24
|
+
export type { Reducer, ReducerOptions, ReducerBuilder } from '../../with-lookup/aggregate/reducers.js';
|
|
25
|
+
export { Aggregation, reduceRecords, buildLiveAggregation } from '../../with-lookup/aggregate/aggregation.js';
|
|
26
|
+
export type { AggregateSpec, AggregateResult, AggregationUpstream, LiveAggregation, } from '../../with-lookup/aggregate/aggregation.js';
|
|
27
|
+
export { GroupedQuery, GroupedQueryN, GroupedAggregation, groupAndReduce, resetGroupByWarnings, GROUPBY_WARN_CARDINALITY, GROUPBY_MAX_CARDINALITY, } from '../../with-lookup/aggregate/groupby.js';
|
|
28
|
+
export type { GroupedRow, GroupedRowN } from '../../with-lookup/aggregate/groupby.js';
|
|
29
|
+
export { ScanBuilder } from './scan-builder.js';
|
|
30
|
+
export type { ScanPageProvider } from './scan-builder.js';
|
|
31
|
+
export { GroupCardinalityError, IndexRequiredError, IndexWriteFailureError, JoinTooLargeError, DanglingReferenceError, CrossJoinTooLargeError, CrossJoinSourceUnknownError, FieldNotQueryableError, } from '../errors.js';
|