@nicia-ai/typegraph 0.43.0 → 0.45.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/backend/drizzle/indexes.cjs +9 -9
- package/dist/backend/drizzle/indexes.d.cts +1 -1
- package/dist/backend/drizzle/indexes.d.ts +1 -1
- package/dist/backend/drizzle/indexes.js +5 -5
- package/dist/backend/index.cjs +50 -50
- package/dist/backend/index.d.cts +3 -3
- package/dist/backend/index.d.ts +3 -3
- package/dist/backend/index.js +11 -11
- package/dist/backend/postgres/index.cjs +26 -26
- package/dist/backend/postgres/index.d.cts +6 -5
- package/dist/backend/postgres/index.d.ts +6 -5
- package/dist/backend/postgres/index.js +13 -13
- package/dist/backend/postgres/pglite-store.cjs +32 -33
- package/dist/backend/postgres/pglite-store.cjs.map +1 -1
- package/dist/backend/postgres/pglite-store.d.cts +7 -7
- package/dist/backend/postgres/pglite-store.d.ts +7 -7
- package/dist/backend/postgres/pglite-store.js +28 -29
- package/dist/backend/postgres/pglite-store.js.map +1 -1
- package/dist/backend/postgres/pglite.cjs +15 -15
- package/dist/backend/postgres/pglite.d.cts +3 -2
- package/dist/backend/postgres/pglite.d.ts +3 -2
- package/dist/backend/postgres/pglite.js +14 -14
- package/dist/backend/sqlite/index.cjs +23 -23
- package/dist/backend/sqlite/index.d.cts +7 -6
- package/dist/backend/sqlite/index.d.ts +7 -6
- package/dist/backend/sqlite/index.js +11 -11
- package/dist/backend/sqlite/libsql.cjs +17 -17
- package/dist/backend/sqlite/libsql.cjs.map +1 -1
- package/dist/backend/sqlite/libsql.d.cts +3 -2
- package/dist/backend/sqlite/libsql.d.ts +3 -2
- package/dist/backend/sqlite/libsql.js +13 -13
- package/dist/backend/sqlite/libsql.js.map +1 -1
- package/dist/backend/sqlite/local-store.cjs +33 -34
- package/dist/backend/sqlite/local-store.cjs.map +1 -1
- package/dist/backend/sqlite/local-store.d.cts +8 -7
- package/dist/backend/sqlite/local-store.d.ts +8 -7
- package/dist/backend/sqlite/local-store.js +29 -30
- package/dist/backend/sqlite/local-store.js.map +1 -1
- package/dist/backend/sqlite/local.cjs +16 -16
- package/dist/backend/sqlite/local.d.cts +3 -2
- package/dist/backend/sqlite/local.d.ts +3 -2
- package/dist/backend/sqlite/local.js +14 -14
- package/dist/{chunk-2OOY4OYT.js → chunk-2L54C2C2.js} +4 -4
- package/dist/{chunk-2OOY4OYT.js.map → chunk-2L54C2C2.js.map} +1 -1
- package/dist/{chunk-4WYFRACU.js → chunk-42PYUGLS.js} +58 -4
- package/dist/chunk-42PYUGLS.js.map +1 -0
- package/dist/{chunk-EQOQOT55.js → chunk-4GUBTVPV.js} +4 -5
- package/dist/chunk-4GUBTVPV.js.map +1 -0
- package/dist/{chunk-ZIRC2U6G.js → chunk-4GUTQPVO.js} +102 -16
- package/dist/chunk-4GUTQPVO.js.map +1 -0
- package/dist/{chunk-OYJSYDIH.js → chunk-4MB3AQAQ.js} +13 -3
- package/dist/chunk-4MB3AQAQ.js.map +1 -0
- package/dist/{chunk-5Q3P6OIC.cjs → chunk-4MEWSUVM.cjs} +12 -12
- package/dist/chunk-4MEWSUVM.cjs.map +1 -0
- package/dist/{chunk-VC26BUNP.js → chunk-4QIKLIGG.js} +17 -5
- package/dist/chunk-4QIKLIGG.js.map +1 -0
- package/dist/chunk-4SZ6XPTG.cjs +12 -0
- package/dist/{chunk-VGMNGWBR.cjs.map → chunk-4SZ6XPTG.cjs.map} +1 -1
- package/dist/{chunk-UZLEQFTV.js → chunk-55ITBQJI.js} +4 -4
- package/dist/chunk-55ITBQJI.js.map +1 -0
- package/dist/{chunk-JOYPNY33.js → chunk-5EKPX6QU.js} +9 -9
- package/dist/{chunk-JOYPNY33.js.map → chunk-5EKPX6QU.js.map} +1 -1
- package/dist/{chunk-TRC646QQ.cjs → chunk-5GAONX5G.cjs} +7 -7
- package/dist/{chunk-TRC646QQ.cjs.map → chunk-5GAONX5G.cjs.map} +1 -1
- package/dist/{chunk-M4GYQF2H.js → chunk-6DCB664D.js} +7 -4
- package/dist/chunk-6DCB664D.js.map +1 -0
- package/dist/{chunk-64LERBFM.cjs → chunk-6RYPD3NJ.cjs} +75 -65
- package/dist/chunk-6RYPD3NJ.cjs.map +1 -0
- package/dist/{chunk-5AERZSHC.cjs → chunk-7PF2L3H6.cjs} +4 -4
- package/dist/{chunk-5AERZSHC.cjs.map → chunk-7PF2L3H6.cjs.map} +1 -1
- package/dist/chunk-B3F2D3SP.cjs +12 -0
- package/dist/{chunk-U3YRCZ5L.cjs.map → chunk-B3F2D3SP.cjs.map} +1 -1
- package/dist/{chunk-Z3WIL6S3.js → chunk-BGYJW37L.js} +5 -5
- package/dist/{chunk-Z3WIL6S3.js.map → chunk-BGYJW37L.js.map} +1 -1
- package/dist/{chunk-DMZEVJGL.cjs → chunk-BNS75YNF.cjs} +12 -13
- package/dist/chunk-BNS75YNF.cjs.map +1 -0
- package/dist/{chunk-KTBTSHU6.cjs → chunk-C4F7VJ5D.cjs} +13 -3
- package/dist/chunk-C4F7VJ5D.cjs.map +1 -0
- package/dist/{chunk-L2BYRYHC.js → chunk-CBKG6HEP.js} +43 -33
- package/dist/chunk-CBKG6HEP.js.map +1 -0
- package/dist/{chunk-CVK4T34X.cjs → chunk-CPEL3YIR.cjs} +22 -22
- package/dist/{chunk-CVK4T34X.cjs.map → chunk-CPEL3YIR.cjs.map} +1 -1
- package/dist/{chunk-O2GZM7UK.cjs → chunk-D54WH24V.cjs} +62 -7
- package/dist/chunk-D54WH24V.cjs.map +1 -0
- package/dist/{chunk-33PAKPED.cjs → chunk-D56XG4EI.cjs} +53 -41
- package/dist/chunk-D56XG4EI.cjs.map +1 -0
- package/dist/{chunk-O3USVVWS.js → chunk-DK2S42XB.js} +3 -3
- package/dist/{chunk-O3USVVWS.js.map → chunk-DK2S42XB.js.map} +1 -1
- package/dist/{chunk-HHBKGPEI.js → chunk-DXEEHSGN.js} +517 -26
- package/dist/chunk-DXEEHSGN.js.map +1 -0
- package/dist/{chunk-UJRWOV5B.js → chunk-EFEOOCJ3.js} +5 -5
- package/dist/{chunk-UJRWOV5B.js.map → chunk-EFEOOCJ3.js.map} +1 -1
- package/dist/{chunk-ECU53PMN.cjs → chunk-EKFUG4G7.cjs} +5 -5
- package/dist/chunk-EKFUG4G7.cjs.map +1 -0
- package/dist/{chunk-FSCJOTHF.cjs → chunk-EQ7JKLZO.cjs} +10 -10
- package/dist/{chunk-FSCJOTHF.cjs.map → chunk-EQ7JKLZO.cjs.map} +1 -1
- package/dist/{chunk-AQR6BHB3.cjs → chunk-F4NHQHEZ.cjs} +10 -10
- package/dist/{chunk-AQR6BHB3.cjs.map → chunk-F4NHQHEZ.cjs.map} +1 -1
- package/dist/{chunk-2G6ZEGYO.js → chunk-FL5UQRES.js} +4 -4
- package/dist/{chunk-2G6ZEGYO.js.map → chunk-FL5UQRES.js.map} +1 -1
- package/dist/{chunk-ZP2KPDNN.js → chunk-FLEQ2HBK.js} +3 -3
- package/dist/{chunk-ZP2KPDNN.js.map → chunk-FLEQ2HBK.js.map} +1 -1
- package/dist/{chunk-RAWG2FEU.js → chunk-FQ7ZPOTZ.js} +264 -18
- package/dist/chunk-FQ7ZPOTZ.js.map +1 -0
- package/dist/{chunk-O7XVCLXW.cjs → chunk-H7VE3FL4.cjs} +577 -82
- package/dist/chunk-H7VE3FL4.cjs.map +1 -0
- package/dist/{chunk-JNXZQBN3.js → chunk-ID4WXTKL.js} +1039 -482
- package/dist/chunk-ID4WXTKL.js.map +1 -0
- package/dist/{chunk-ZGOUVMVS.js → chunk-ISLPNELU.js} +17 -5
- package/dist/chunk-ISLPNELU.js.map +1 -0
- package/dist/{chunk-I73ATSAH.cjs → chunk-IX64T5OL.cjs} +4 -4
- package/dist/{chunk-I73ATSAH.cjs.map → chunk-IX64T5OL.cjs.map} +1 -1
- package/dist/{chunk-XDMPDUKL.cjs → chunk-J2ICGNHO.cjs} +8 -9
- package/dist/chunk-J2ICGNHO.cjs.map +1 -0
- package/dist/{chunk-KDRF3NR2.cjs → chunk-J7LXTUTP.cjs} +295 -201
- package/dist/chunk-J7LXTUTP.cjs.map +1 -0
- package/dist/{chunk-AO2WPYFZ.cjs → chunk-JQXSZHF2.cjs} +14 -4
- package/dist/chunk-JQXSZHF2.cjs.map +1 -0
- package/dist/{chunk-UTTW2Q3M.cjs → chunk-JXUTCSXX.cjs} +197 -133
- package/dist/chunk-JXUTCSXX.cjs.map +1 -0
- package/dist/{chunk-GT7NEXSU.js → chunk-KCO5EFJU.js} +3 -3
- package/dist/{chunk-GT7NEXSU.js.map → chunk-KCO5EFJU.js.map} +1 -1
- package/dist/{chunk-ARN3ZODS.cjs → chunk-KKYELPZ2.cjs} +6 -6
- package/dist/{chunk-ARN3ZODS.cjs.map → chunk-KKYELPZ2.cjs.map} +1 -1
- package/dist/{chunk-7Y6BV3TK.cjs → chunk-KMXWZLQX.cjs} +100 -100
- package/dist/{chunk-7Y6BV3TK.cjs.map → chunk-KMXWZLQX.cjs.map} +1 -1
- package/dist/{chunk-CDYRPI5U.js → chunk-MIJKEVV7.js} +4 -4
- package/dist/{chunk-CDYRPI5U.js.map → chunk-MIJKEVV7.js.map} +1 -1
- package/dist/{chunk-FFQGI67R.cjs → chunk-NAAMUYMS.cjs} +56 -44
- package/dist/chunk-NAAMUYMS.cjs.map +1 -0
- package/dist/{chunk-6TJ6PKPS.cjs → chunk-OOA273IJ.cjs} +27 -27
- package/dist/{chunk-6TJ6PKPS.cjs.map → chunk-OOA273IJ.cjs.map} +1 -1
- package/dist/{chunk-F2KVJ6FF.cjs → chunk-P7GTYOLB.cjs} +203 -117
- package/dist/chunk-P7GTYOLB.cjs.map +1 -0
- package/dist/{chunk-42XYPKZU.js → chunk-PVUI6KGR.js} +67 -3
- package/dist/chunk-PVUI6KGR.js.map +1 -0
- package/dist/{chunk-L5AUCL5P.js → chunk-Q6EDCUXV.js} +274 -14
- package/dist/chunk-Q6EDCUXV.js.map +1 -0
- package/dist/{chunk-ZPCKPLMX.cjs → chunk-QB6VMOJ2.cjs} +8 -8
- package/dist/{chunk-ZPCKPLMX.cjs.map → chunk-QB6VMOJ2.cjs.map} +1 -1
- package/dist/{chunk-3RPQDGUE.cjs → chunk-QC4MCOFV.cjs} +5 -5
- package/dist/{chunk-3RPQDGUE.cjs.map → chunk-QC4MCOFV.cjs.map} +1 -1
- package/dist/{chunk-4XRP2N6B.js → chunk-QLUXRWKL.js} +3 -3
- package/dist/{chunk-4XRP2N6B.js.map → chunk-QLUXRWKL.js.map} +1 -1
- package/dist/{chunk-OM6RIOA5.cjs → chunk-QR24DJDF.cjs} +13 -13
- package/dist/{chunk-OM6RIOA5.cjs.map → chunk-QR24DJDF.cjs.map} +1 -1
- package/dist/{chunk-YPVQYM3L.js → chunk-QRNYDV5Z.js} +138 -31
- package/dist/chunk-QRNYDV5Z.js.map +1 -0
- package/dist/{chunk-ZOHCFYXE.js → chunk-QT6V3YRH.js} +3 -3
- package/dist/{chunk-ZOHCFYXE.js.map → chunk-QT6V3YRH.js.map} +1 -1
- package/dist/{chunk-5C75HQYQ.js → chunk-RFRM3Q5K.js} +17 -5
- package/dist/chunk-RFRM3Q5K.js.map +1 -0
- package/dist/{chunk-NXIZL7ZZ.js → chunk-RUQS6M7G.js} +6 -6
- package/dist/chunk-RUQS6M7G.js.map +1 -0
- package/dist/{chunk-CI5NPLXX.js → chunk-S3ZRKJHY.js} +3 -3
- package/dist/{chunk-CI5NPLXX.js.map → chunk-S3ZRKJHY.js.map} +1 -1
- package/dist/{chunk-3V6D5DEC.js → chunk-S4KQ5LV4.js} +3 -3
- package/dist/{chunk-3V6D5DEC.js.map → chunk-S4KQ5LV4.js.map} +1 -1
- package/dist/{chunk-CTWZPYJW.js → chunk-TKORQCG4.js} +108 -15
- package/dist/chunk-TKORQCG4.js.map +1 -0
- package/dist/{chunk-2HKIID5K.js → chunk-TKP5T34P.js} +4 -5
- package/dist/chunk-TKP5T34P.js.map +1 -0
- package/dist/{chunk-X2XOQZT3.cjs → chunk-U5W4LKZV.cjs} +13 -9
- package/dist/chunk-U5W4LKZV.cjs.map +1 -0
- package/dist/{chunk-BLBG2VZ5.cjs → chunk-UCQ3BFSY.cjs} +372 -110
- package/dist/chunk-UCQ3BFSY.cjs.map +1 -0
- package/dist/{chunk-CUPJL6TS.js → chunk-V34A6R5V.js} +13 -4
- package/dist/chunk-V34A6R5V.js.map +1 -0
- package/dist/{chunk-LQLVJWUH.js → chunk-VTN3C3CH.js} +7 -7
- package/dist/chunk-VTN3C3CH.js.map +1 -0
- package/dist/{chunk-FY4VY5EV.cjs → chunk-VVQM4CZD.cjs} +20 -20
- package/dist/chunk-VVQM4CZD.cjs.map +1 -0
- package/dist/{chunk-LDCWO5B6.js → chunk-WDAVPX46.js} +3 -3
- package/dist/{chunk-LDCWO5B6.js.map → chunk-WDAVPX46.js.map} +1 -1
- package/dist/{chunk-5GV4JQNA.cjs → chunk-WDBXJOU5.cjs} +55 -43
- package/dist/chunk-WDBXJOU5.cjs.map +1 -0
- package/dist/{chunk-FMPZPOUD.js → chunk-WUFASQUO.js} +3 -3
- package/dist/{chunk-FMPZPOUD.js.map → chunk-WUFASQUO.js.map} +1 -1
- package/dist/{chunk-5ZPRE4CV.cjs → chunk-YDWLUT5V.cjs} +237 -130
- package/dist/chunk-YDWLUT5V.cjs.map +1 -0
- package/dist/{chunk-CVNGKTHO.js → chunk-YMTXMPV6.js} +4 -4
- package/dist/{chunk-CVNGKTHO.js.map → chunk-YMTXMPV6.js.map} +1 -1
- package/dist/{chunk-NDQLPKBX.cjs → chunk-YOALGKRE.cjs} +2092 -1535
- package/dist/chunk-YOALGKRE.cjs.map +1 -0
- package/dist/{chunk-OMQ2NBOR.cjs → chunk-Z3WO6MND.cjs} +27 -27
- package/dist/{chunk-OMQ2NBOR.cjs.map → chunk-Z3WO6MND.cjs.map} +1 -1
- package/dist/{chunk-V2GZBPY2.cjs → chunk-ZI6VQSZA.cjs} +310 -61
- package/dist/chunk-ZI6VQSZA.cjs.map +1 -0
- package/dist/{chunk-ZBV4LQD2.cjs → chunk-ZTAJL4DT.cjs} +4 -4
- package/dist/{chunk-ZBV4LQD2.cjs.map → chunk-ZTAJL4DT.cjs.map} +1 -1
- package/dist/core/index.cjs +27 -28
- package/dist/core/index.d.cts +5 -5
- package/dist/core/index.d.ts +5 -5
- package/dist/core/index.js +7 -8
- package/dist/{ddl-3unqC-kg.d.cts → ddl-BG4J805L.d.cts} +3 -3
- package/dist/{ddl-Bc4Dl8fu.d.ts → ddl-CgiS9QLj.d.ts} +3 -3
- package/dist/{define-graph-DBFnc7u_.d.ts → define-graph-BGrJahvp.d.ts} +1 -1
- package/dist/{define-graph-Byslw2OO.d.cts → define-graph-alREY2wj.d.cts} +1 -1
- package/dist/graph-extension/index.cjs +19 -20
- package/dist/graph-extension/index.d.cts +4 -4
- package/dist/graph-extension/index.d.ts +4 -4
- package/dist/graph-extension/index.js +4 -5
- package/dist/graph-merge/index.cjs +103 -104
- package/dist/graph-merge/index.cjs.map +1 -1
- package/dist/graph-merge/index.d.cts +9 -8
- package/dist/graph-merge/index.d.ts +9 -8
- package/dist/graph-merge/index.js +23 -24
- package/dist/graph-merge/index.js.map +1 -1
- package/dist/{index-DHXw7QAl.d.cts → index-BBxZCUdu.d.ts} +37 -7
- package/dist/{index-DQzVJBHa.d.ts → index-C3y_98iN.d.cts} +37 -7
- package/dist/index.cjs +209 -202
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +13 -13
- package/dist/index.d.ts +13 -13
- package/dist/index.js +33 -34
- package/dist/index.js.map +1 -1
- package/dist/indexes/index.cjs +13 -13
- package/dist/indexes/index.d.cts +4 -4
- package/dist/indexes/index.d.ts +4 -4
- package/dist/indexes/index.js +6 -6
- package/dist/interchange/index.cjs +50 -41
- package/dist/interchange/index.cjs.map +1 -1
- package/dist/interchange/index.d.cts +11 -11
- package/dist/interchange/index.d.ts +11 -11
- package/dist/interchange/index.js +24 -15
- package/dist/interchange/index.js.map +1 -1
- package/dist/{manager-U9_zopqr.d.cts → manager-KS7CGQQT.d.cts} +44 -6
- package/dist/{manager-Dl0-er1G.d.ts → manager-YoLEfcc1.d.ts} +44 -6
- package/dist/{materialize-indexes-BM3u0aXE.d.ts → materialize-indexes-Bhhyb1B3.d.ts} +1 -1
- package/dist/{materialize-indexes-DzMCetZe.d.cts → materialize-indexes-OHRWypW6.d.cts} +1 -1
- package/dist/{postgres-DpJqtbSX.d.cts → postgres-DpkW3R5Y.d.cts} +1 -1
- package/dist/{postgres-C5-WMKFA.d.ts → postgres-DwqyIniy.d.ts} +1 -1
- package/dist/profiler/index.d.cts +10 -9
- package/dist/profiler/index.d.ts +10 -9
- package/dist/provenance/index.cjs +38 -38
- package/dist/provenance/index.cjs.map +1 -1
- package/dist/provenance/index.d.cts +7 -7
- package/dist/provenance/index.d.ts +7 -7
- package/dist/provenance/index.js +8 -8
- package/dist/provenance/index.js.map +1 -1
- package/dist/schema/index.cjs +40 -41
- package/dist/schema/index.d.cts +7 -7
- package/dist/schema/index.d.ts +7 -7
- package/dist/schema/index.js +13 -14
- package/dist/{searchable-B4mUXZT6.d.cts → searchable-CIZL8Hyw.d.cts} +2 -2
- package/dist/{searchable-C7jmPNLT.d.ts → searchable-DLWEfC4a.d.ts} +2 -2
- package/dist/{sqlite-Ch5tSYQY.d.ts → sqlite-DY0WODUK.d.cts} +1 -1
- package/dist/{sqlite-Da7jiYu9.d.cts → sqlite-L-VIRzqA.d.ts} +1 -1
- package/dist/{store-view-DdwBNjZQ.d.ts → store-view-66p92IPi.d.ts} +1974 -1751
- package/dist/{store-view-D1F6KqsE.d.cts → store-view-A85FFRnk.d.cts} +1974 -1751
- package/dist/{temporal-CMpigMCW.d.cts → temporal-BNbjXqer.d.cts} +1 -1
- package/dist/{temporal-BtrTYTiB.d.ts → temporal-Bob6Nfbp.d.ts} +1 -1
- package/dist/{types-Dh-EgT-w.d.cts → types-Ch9a0Dx6.d.cts} +483 -20
- package/dist/{types-Dh-EgT-w.d.ts → types-Ch9a0Dx6.d.ts} +483 -20
- package/dist/{types-D2rU5Taq.d.ts → types-ClCzT-dT.d.ts} +1 -1
- package/dist/{types-G4sVM-76.d.cts → types-DeORZhxn.d.cts} +1 -1
- package/dist/{where-DbZ9XDOI.d.cts → where-DPw52ksb.d.cts} +1 -1
- package/dist/{where-B8Y21kig.d.ts → where-kWUZPvEA.d.ts} +1 -1
- package/package.json +1 -1
- package/dist/chunk-2HKIID5K.js.map +0 -1
- package/dist/chunk-33PAKPED.cjs.map +0 -1
- package/dist/chunk-42XYPKZU.js.map +0 -1
- package/dist/chunk-4WYFRACU.js.map +0 -1
- package/dist/chunk-5C75HQYQ.js.map +0 -1
- package/dist/chunk-5GV4JQNA.cjs.map +0 -1
- package/dist/chunk-5Q3P6OIC.cjs.map +0 -1
- package/dist/chunk-5ZPRE4CV.cjs.map +0 -1
- package/dist/chunk-64LERBFM.cjs.map +0 -1
- package/dist/chunk-AO2WPYFZ.cjs.map +0 -1
- package/dist/chunk-BLBG2VZ5.cjs.map +0 -1
- package/dist/chunk-CTWZPYJW.js.map +0 -1
- package/dist/chunk-CUPJL6TS.js.map +0 -1
- package/dist/chunk-DMZEVJGL.cjs.map +0 -1
- package/dist/chunk-ECU53PMN.cjs.map +0 -1
- package/dist/chunk-EQOQOT55.js.map +0 -1
- package/dist/chunk-F2KVJ6FF.cjs.map +0 -1
- package/dist/chunk-F7TDKSVB.cjs +0 -61
- package/dist/chunk-F7TDKSVB.cjs.map +0 -1
- package/dist/chunk-FFQGI67R.cjs.map +0 -1
- package/dist/chunk-FY4VY5EV.cjs.map +0 -1
- package/dist/chunk-HHBKGPEI.js.map +0 -1
- package/dist/chunk-JNXZQBN3.js.map +0 -1
- package/dist/chunk-KDRF3NR2.cjs.map +0 -1
- package/dist/chunk-KTBTSHU6.cjs.map +0 -1
- package/dist/chunk-L2BYRYHC.js.map +0 -1
- package/dist/chunk-L5AUCL5P.js.map +0 -1
- package/dist/chunk-LQLVJWUH.js.map +0 -1
- package/dist/chunk-M4GYQF2H.js.map +0 -1
- package/dist/chunk-NDQLPKBX.cjs.map +0 -1
- package/dist/chunk-NXIZL7ZZ.js.map +0 -1
- package/dist/chunk-O2GZM7UK.cjs.map +0 -1
- package/dist/chunk-O7XVCLXW.cjs.map +0 -1
- package/dist/chunk-OYJSYDIH.js.map +0 -1
- package/dist/chunk-RAWG2FEU.js.map +0 -1
- package/dist/chunk-RXOAXO3R.js +0 -59
- package/dist/chunk-RXOAXO3R.js.map +0 -1
- package/dist/chunk-U3YRCZ5L.cjs +0 -12
- package/dist/chunk-UTTW2Q3M.cjs.map +0 -1
- package/dist/chunk-UZLEQFTV.js.map +0 -1
- package/dist/chunk-V2GZBPY2.cjs.map +0 -1
- package/dist/chunk-VC26BUNP.js.map +0 -1
- package/dist/chunk-VGMNGWBR.cjs +0 -12
- package/dist/chunk-X2XOQZT3.cjs.map +0 -1
- package/dist/chunk-XDMPDUKL.cjs.map +0 -1
- package/dist/chunk-YPVQYM3L.js.map +0 -1
- package/dist/chunk-ZGOUVMVS.js.map +0 -1
- package/dist/chunk-ZIRC2U6G.js.map +0 -1
|
@@ -595,6 +595,18 @@ type DialectCapabilities = Readonly<{
|
|
|
595
595
|
*/
|
|
596
596
|
supportsFulltext: boolean;
|
|
597
597
|
}>;
|
|
598
|
+
/**
|
|
599
|
+
* Shape of a list-valued `IN` parameter, resolved at compile time.
|
|
600
|
+
*/
|
|
601
|
+
type InListParameterOptions = Readonly<{
|
|
602
|
+
/** Whether the predicate is `notIn` rather than `in`. */
|
|
603
|
+
negated: boolean;
|
|
604
|
+
/**
|
|
605
|
+
* The value type the left operand was compiled for. `undefined` when the
|
|
606
|
+
* schema declares nothing usable, in which case the comparison is textual.
|
|
607
|
+
*/
|
|
608
|
+
elementType: ValueType | undefined;
|
|
609
|
+
}>;
|
|
598
610
|
/**
|
|
599
611
|
* Adapter interface for SQL dialect differences.
|
|
600
612
|
*
|
|
@@ -765,6 +777,13 @@ interface DialectAdapter {
|
|
|
765
777
|
* PostgreSQL: jsonb_typeof(column #> path) = 'number'
|
|
766
778
|
*/
|
|
767
779
|
readonly jsonPathIsNumber: (this: void, column: SqlFragment, pointer: JsonPointer) => SqlFragment;
|
|
780
|
+
/**
|
|
781
|
+
* Replaces top-level JSON object properties while preserving explicit JSON
|
|
782
|
+
* null values. This is the token-level dialect seam used by set-based node
|
|
783
|
+
* mutation; callers validate the patch against the node schema before SQL
|
|
784
|
+
* compilation.
|
|
785
|
+
*/
|
|
786
|
+
readonly jsonSetProperties: (this: void, column: SqlFragment, patch: Readonly<Record<string, JsonValue>>, unsetProperties?: readonly string[]) => SqlFragment;
|
|
768
787
|
/**
|
|
769
788
|
* Null-safe equality: `TRUE` when both sides are equal OR both are NULL.
|
|
770
789
|
* Unlike `=`, a NULL on either side does not yield NULL/unknown.
|
|
@@ -787,6 +806,40 @@ interface DialectAdapter {
|
|
|
787
806
|
* PostgreSQL: left IN ($1, $2, ...)
|
|
788
807
|
*/
|
|
789
808
|
readonly inList: (this: void, left: SqlFragment, values: readonly unknown[], negated: boolean) => SqlFragment;
|
|
809
|
+
/**
|
|
810
|
+
* Tests scalar membership in a list supplied as a SINGLE bound parameter —
|
|
811
|
+
* the `field.in(param("ids"))` form.
|
|
812
|
+
*
|
|
813
|
+
* The emitted SQL must not depend on how many elements the list holds, so a
|
|
814
|
+
* prepared statement compiles once and serves every arity from the same
|
|
815
|
+
* cached template. Both bundled dialects therefore unpack a JSON-encoded
|
|
816
|
+
* array (produced by {@link DialectAdapter.packListValue}) into a one-column
|
|
817
|
+
* relation instead of emitting one placeholder per element.
|
|
818
|
+
*
|
|
819
|
+
* `elementType` is the value type the left operand was compiled for, so a
|
|
820
|
+
* dialect that extracts JSON as text can cast the unpacked elements to the
|
|
821
|
+
* same type; `undefined` means text.
|
|
822
|
+
*
|
|
823
|
+
* @example
|
|
824
|
+
* SQLite: left IN (SELECT value FROM json_each(?))
|
|
825
|
+
* PostgreSQL: left IN (SELECT e.value::numeric FROM jsonb_array_elements_text($1::jsonb) AS e(value))
|
|
826
|
+
*/
|
|
827
|
+
readonly inListParameter: (this: void, left: SqlFragment, packedValues: SqlFragment, options: InListParameterOptions) => SqlFragment;
|
|
828
|
+
/**
|
|
829
|
+
* Packs the scalar list bound to an `in()`/`notIn()` parameter into the
|
|
830
|
+
* single driver value {@link DialectAdapter.inListParameter} unpacks.
|
|
831
|
+
* Elements arrive as plain JavaScript scalars and must be bound with the
|
|
832
|
+
* same rules a literal of that type would be (SQLite booleans as 0/1, dates
|
|
833
|
+
* as ISO text), so the parameterized and literal forms match row for row.
|
|
834
|
+
*
|
|
835
|
+
* Every element is guaranteed to match the compiled element type, and to be
|
|
836
|
+
* a finite number when that type is numeric: `PreparedQuery` validates the
|
|
837
|
+
* binding before it reaches this method. Implementations therefore do not
|
|
838
|
+
* need to normalize or reject anything — and must not paper over a mismatch,
|
|
839
|
+
* since doing so is what would let one dialect quietly disagree with
|
|
840
|
+
* another.
|
|
841
|
+
*/
|
|
842
|
+
readonly packListValue: (this: void, values: readonly unknown[]) => unknown;
|
|
790
843
|
/**
|
|
791
844
|
* Case-insensitive LIKE comparison.
|
|
792
845
|
*
|
|
@@ -1265,6 +1318,10 @@ type VectorStrategy = Readonly<{
|
|
|
1265
1318
|
buildUpsertBatch?: (this: void, slot: VectorSlot, params: UpsertEmbeddingBatchParams, timestamp: string) => readonly SqlFragment[];
|
|
1266
1319
|
/** Emits the statement(s) that delete a single embedding from the slot. */
|
|
1267
1320
|
buildDelete: (this: void, slot: VectorSlot, params: DeleteEmbeddingParams) => readonly SqlFragment[];
|
|
1321
|
+
/** Emits one set-based delete for many node ids in a vector slot. */
|
|
1322
|
+
buildDeleteBatch: (this: void, slot: VectorSlot, params: Omit<DeleteEmbeddingParams, "nodeId"> & Readonly<{
|
|
1323
|
+
nodeIds: readonly string[];
|
|
1324
|
+
}>) => readonly SqlFragment[];
|
|
1268
1325
|
/**
|
|
1269
1326
|
* Raw DDL statement(s) that drop the slot's entire physical storage
|
|
1270
1327
|
* (table + ANN index, and any engine-managed shadow tables). Used by the
|
|
@@ -2088,7 +2145,9 @@ type BackendCapabilities = Readonly<{
|
|
|
2088
2145
|
* Maximum number of bound parameters the engine accepts in one statement.
|
|
2089
2146
|
* SQLite defaults to 999 (raisable at compile time via
|
|
2090
2147
|
* `SQLITE_MAX_VARIABLE_NUMBER`), while hosted SQLite runtimes may impose a
|
|
2091
|
-
* lower platform ceiling
|
|
2148
|
+
* lower platform ceiling. PostgreSQL's wire protocol encodes a 65535-count,
|
|
2149
|
+
* but postgres.js accepts at most 65533 bound values, so the bundled
|
|
2150
|
+
* PostgreSQL capability advertises that lower shared-driver ceiling.
|
|
2092
2151
|
* Recorded-time capture and recorded point reads size their multi-row
|
|
2093
2152
|
* statements to this ceiling — the same budget the backend's own batched
|
|
2094
2153
|
* inserts use — instead of a conservative dialect-blind constant. Custom
|
|
@@ -2233,6 +2292,38 @@ type UpdateNodeParams = Readonly<{
|
|
|
2233
2292
|
/** If true, clears deleted_at (un-deletes the node). Used by upsert. */
|
|
2234
2293
|
clearDeleted?: boolean;
|
|
2235
2294
|
}>;
|
|
2295
|
+
/**
|
|
2296
|
+
* Parameters for updating a set of live nodes selected by a compiled
|
|
2297
|
+
* TypeGraph query.
|
|
2298
|
+
*
|
|
2299
|
+
* The candidate query must expose the named node-id column from the same graph
|
|
2300
|
+
* and kind. The backend independently fences the rows it writes to
|
|
2301
|
+
* `graphId` and `kind`; constructing the matching candidate query remains the
|
|
2302
|
+
* caller's responsibility.
|
|
2303
|
+
* Property values replace top-level keys, including preserving an explicit
|
|
2304
|
+
* JSON `null` value.
|
|
2305
|
+
*
|
|
2306
|
+
* This is a storage primitive: callers that expose it as a graph mutation are
|
|
2307
|
+
* responsible for schema validation and for synchronizing uniqueness,
|
|
2308
|
+
* fulltext, and vector sidecars. The result contains after-images only; callers
|
|
2309
|
+
* that need previous property values must freeze the candidate set and retain
|
|
2310
|
+
* its before-images in the same transaction before invoking this method.
|
|
2311
|
+
*/
|
|
2312
|
+
type UpdateNodeSetParams = Readonly<{
|
|
2313
|
+
graphId: string;
|
|
2314
|
+
kind: string;
|
|
2315
|
+
patch: Readonly<Record<string, JsonValue>>;
|
|
2316
|
+
/** Top-level properties to remove (the storage form of an `undefined` patch value). */
|
|
2317
|
+
unsetProperties?: readonly string[];
|
|
2318
|
+
candidateIds: CompiledSelectSql;
|
|
2319
|
+
/** Projected SQL column holding the candidate node id (for example `n_id`). */
|
|
2320
|
+
candidateIdColumn: string;
|
|
2321
|
+
}>;
|
|
2322
|
+
/** The after-images changed by {@link GraphBackend.updateNodeSet}. */
|
|
2323
|
+
type UpdateNodeSetResult = Readonly<{
|
|
2324
|
+
affectedCount: number;
|
|
2325
|
+
rows: readonly NodeRow[];
|
|
2326
|
+
}>;
|
|
2236
2327
|
/**
|
|
2237
2328
|
* Parameters for deleting a node (soft delete).
|
|
2238
2329
|
*/
|
|
@@ -2780,6 +2871,124 @@ type RecordContributionMaterializationParams = Readonly<{
|
|
|
2780
2871
|
/** Error message on failure; undefined on success (clears existing). */
|
|
2781
2872
|
error: string | undefined;
|
|
2782
2873
|
}>;
|
|
2874
|
+
/**
|
|
2875
|
+
* Why a contribution is not usable. Most members are a disagreement
|
|
2876
|
+
* between the durable marker and the physical catalog; one
|
|
2877
|
+
* (`failed-materialization`) is a state the two agree on and that is
|
|
2878
|
+
* broken anyway. A contribution that is genuinely healthy — or that was
|
|
2879
|
+
* simply never attempted — is not reported at all.
|
|
2880
|
+
*
|
|
2881
|
+
* - `orphaned-marker` — the marker records a successful materialization
|
|
2882
|
+
* but the physical table is gone (a partial restore, an out-of-band
|
|
2883
|
+
* `DROP`, a schema-scoped restore that missed the contribution
|
|
2884
|
+
* tables). The state {@link GraphBackend.verifyContributions} exists
|
|
2885
|
+
* to surface: nothing on the open path probes the catalog, so this
|
|
2886
|
+
* database opens clean and fails at the first read of the slot.
|
|
2887
|
+
* - `missing-marker` — the physical table exists but no marker attests
|
|
2888
|
+
* it as initialized (no row, no recorded success, or a recorded
|
|
2889
|
+
* failure). Reads and writes are refused with
|
|
2890
|
+
* `StoreNotInitializedError` even though storage is present. These
|
|
2891
|
+
* three causes share one state because they share one repair; check
|
|
2892
|
+
* {@link ContributionDiagnostic.lastError} to tell them apart.
|
|
2893
|
+
* - `failed-materialization` — the marker records a *failed* attempt
|
|
2894
|
+
* and no table was produced. Marker and catalog agree here, so this
|
|
2895
|
+
* is not a disagreement — but it is where a contribution lands when
|
|
2896
|
+
* provisioning genuinely broke (the `fts5` module is absent, the role
|
|
2897
|
+
* lacks `CREATE`, the extension was never loaded), and calling it
|
|
2898
|
+
* healthy on the grounds that both sides agree would be the one
|
|
2899
|
+
* answer this method must never give. Distinguished from a
|
|
2900
|
+
* contribution that was never attempted, which has no marker row and
|
|
2901
|
+
* is correctly silent. {@link ContributionDiagnostic.lastError}
|
|
2902
|
+
* carries the reason it failed.
|
|
2903
|
+
* - `stale` — the table exists and the marker records a prior success
|
|
2904
|
+
* at a different signature (a strategy swap, or a declared embedding
|
|
2905
|
+
* dimension that has moved ahead of the provisioned table).
|
|
2906
|
+
*
|
|
2907
|
+
* **Do not re-frame this union as "how the marker disagrees with the
|
|
2908
|
+
* catalog."** It was described that way once, and the description was
|
|
2909
|
+
* load-bearing in the wrong direction: under it, a marker recording a
|
|
2910
|
+
* failed attempt with no table looks like agreement, therefore not a
|
|
2911
|
+
* disagreement, therefore correctly silent — and a contribution that
|
|
2912
|
+
* had genuinely broken was reported as healthy. The gap read as
|
|
2913
|
+
* principled rather than as an oversight precisely because the framing
|
|
2914
|
+
* endorsed it. "Why the contribution is unusable" is the question that
|
|
2915
|
+
* makes `failed-materialization` obviously belong, and any future
|
|
2916
|
+
* tidy-up that narrows the framing back will re-open the same hole.
|
|
2917
|
+
*/
|
|
2918
|
+
type ContributionDiagnosticState = "orphaned-marker" | "missing-marker" | "failed-materialization" | "stale";
|
|
2919
|
+
/**
|
|
2920
|
+
* One contribution that is not usable, reported by
|
|
2921
|
+
* {@link GraphBackend.verifyContributions}.
|
|
2922
|
+
*
|
|
2923
|
+
* The identity fields come from the active contribution declaration and
|
|
2924
|
+
* match the durable-marker identity contract, so a caller can route an entry
|
|
2925
|
+
* to its repair without reconstructing any internal naming contract. A
|
|
2926
|
+
* `missing-marker` entry may have no marker row at all.
|
|
2927
|
+
*
|
|
2928
|
+
* **Route on {@link ContributionDiagnosticState}, not on whether the
|
|
2929
|
+
* entry is a vector slot.** The repair differs per state and the wrong
|
|
2930
|
+
* choice destroys data: `store.reembedVectorField` drops and recreates
|
|
2931
|
+
* storage, so applying it to a `missing-marker` — where the table is
|
|
2932
|
+
* intact and only the bookkeeping is wrong — discards every embedding
|
|
2933
|
+
* to fix a marker, and without an `embed` callback it leaves the field
|
|
2934
|
+
* empty. Prefer `store.repairContributions()` for `missing-marker` and
|
|
2935
|
+
* `failed-materialization`; it resolves the current strategy declarations
|
|
2936
|
+
* internally and keeps the normal signature-drift guard enabled. It reports
|
|
2937
|
+
* `stale` and `orphaned-marker` as `requires-rebuild`. See the per-state
|
|
2938
|
+
* repair table in the troubleshooting guide.
|
|
2939
|
+
*/
|
|
2940
|
+
type ContributionDiagnostic = Readonly<{
|
|
2941
|
+
/** Producing strategy, e.g. `"fts5"` / `"tsvector"` / `"pgvector"`. */
|
|
2942
|
+
owner: string;
|
|
2943
|
+
/** Stable logical slot, e.g. `"fulltext"`. Never the SQL name. */
|
|
2944
|
+
logicalName: string;
|
|
2945
|
+
/** Resolved physical table name that was probed. */
|
|
2946
|
+
physicalName: string;
|
|
2947
|
+
/** Node kind — vector slots only. */
|
|
2948
|
+
kind?: string;
|
|
2949
|
+
/** Embedding field path — vector slots only. */
|
|
2950
|
+
fieldPath?: string;
|
|
2951
|
+
state: ContributionDiagnosticState;
|
|
2952
|
+
/**
|
|
2953
|
+
* The error the marker recorded against its last attempt, when it
|
|
2954
|
+
* recorded one. Absent otherwise.
|
|
2955
|
+
*
|
|
2956
|
+
* This is the part of the picture the catalog cannot supply. `state`
|
|
2957
|
+
* says what to do — the states are chosen so that each maps to one
|
|
2958
|
+
* repair — while this says *why it broke*, which is a different
|
|
2959
|
+
* question and often a different investigation. A failed attempt with no
|
|
2960
|
+
* table surfaces as `failed-materialization`; when the table exists but
|
|
2961
|
+
* the marker does not attest a successful materialization, it surfaces as
|
|
2962
|
+
* `missing-marker`. This field distinguishes only failures whose marker
|
|
2963
|
+
* recorded a reason; a missing row has no `lastError`. Present on any state
|
|
2964
|
+
* whose marker row carries an error, not just those two states.
|
|
2965
|
+
*/
|
|
2966
|
+
lastError?: string;
|
|
2967
|
+
}>;
|
|
2968
|
+
/**
|
|
2969
|
+
* Outcome of one contribution considered by
|
|
2970
|
+
* {@link GraphBackend.repairContributions}.
|
|
2971
|
+
*
|
|
2972
|
+
* Repair targets are always resolved from the backend's current strategy
|
|
2973
|
+
* declarations. The diagnostic is returned for operator context only; callers
|
|
2974
|
+
* never pass diagnostics or physical DDL back into the repair API.
|
|
2975
|
+
*/
|
|
2976
|
+
type ContributionRepairEntry = Readonly<{
|
|
2977
|
+
diagnostic: ContributionDiagnostic;
|
|
2978
|
+
status: "repaired";
|
|
2979
|
+
}> | Readonly<{
|
|
2980
|
+
diagnostic: ContributionDiagnostic;
|
|
2981
|
+
status: "requires-rebuild";
|
|
2982
|
+
}> | Readonly<{
|
|
2983
|
+
diagnostic: ContributionDiagnostic;
|
|
2984
|
+
status: "failed";
|
|
2985
|
+
error: string;
|
|
2986
|
+
}>;
|
|
2987
|
+
/** Result of a contribution repair pass followed by a fresh verification. */
|
|
2988
|
+
type ContributionRepairResult = Readonly<{
|
|
2989
|
+
results: readonly ContributionRepairEntry[];
|
|
2990
|
+
remaining: readonly ContributionDiagnostic[];
|
|
2991
|
+
}>;
|
|
2783
2992
|
/**
|
|
2784
2993
|
* One row of the per-deployment `typegraph_kind_removals` table:
|
|
2785
2994
|
* a graph-extension kind that has been removed from the schema and whose
|
|
@@ -2867,6 +3076,7 @@ type GraphBackend = Readonly<{
|
|
|
2867
3076
|
insertNodesBatch?: (this: void, params: readonly InsertNodeParams[]) => Promise<void>;
|
|
2868
3077
|
insertNodesBatchReturning?: (this: void, params: readonly InsertNodeParams[]) => Promise<readonly NodeRow[]>;
|
|
2869
3078
|
updateNode: (this: void, params: UpdateNodeParams) => Promise<NodeRow>;
|
|
3079
|
+
updateNodeSet?: (this: void, params: UpdateNodeSetParams) => Promise<UpdateNodeSetResult>;
|
|
2870
3080
|
deleteNode: (this: void, params: DeleteNodeParams) => Promise<void>;
|
|
2871
3081
|
hardDeleteNode: (this: void, params: HardDeleteNodeParams) => Promise<void>;
|
|
2872
3082
|
getNode: (this: void, graphId: string, kind: string, id: string) => Promise<NodeRow | undefined>;
|
|
@@ -2895,6 +3105,30 @@ type GraphBackend = Readonly<{
|
|
|
2895
3105
|
findNodesByKind: (this: void, params: FindNodesByKindParams) => Promise<readonly NodeRow[]>;
|
|
2896
3106
|
countNodesByKind: (this: void, params: CountNodesByKindParams) => Promise<number>;
|
|
2897
3107
|
findEdgesByKind: (this: void, params: FindEdgesByKindParams) => Promise<readonly EdgeRow[]>;
|
|
3108
|
+
/**
|
|
3109
|
+
* Reads the edges of a SET of endpoints in one statement per bind-budget
|
|
3110
|
+
* chunk — see {@link FindEdgesByEndpointSetParams}.
|
|
3111
|
+
*
|
|
3112
|
+
* **Optional, and its absence is the capability signal.** `store.edges.<kind>
|
|
3113
|
+
* .bulkFindFrom` / `.bulkFindTo` check for this method before issuing any
|
|
3114
|
+
* read and refuse with a typed `ConfigurationError` when it is missing,
|
|
3115
|
+
* rather than degrading to a per-endpoint loop. A caller reaching for a bulk
|
|
3116
|
+
* endpoint read is asking for set-oriented statements; quietly giving them N
|
|
3117
|
+
* singleton statements is the surprise the method exists to prevent.
|
|
3118
|
+
*
|
|
3119
|
+
* Both bundled Drizzle backends implement it. A custom backend that does not
|
|
3120
|
+
* simply omits it and the bulk reads refuse; the singleton `findEdgesByKind`
|
|
3121
|
+
* path is unaffected.
|
|
3122
|
+
*/
|
|
3123
|
+
findEdgesByEndpointSet?: (this: void, params: FindEdgesByEndpointSetParams) => Promise<readonly EdgeRow[]>;
|
|
3124
|
+
/**
|
|
3125
|
+
* Reads several edge kinds from a heterogeneous set of endpoints without
|
|
3126
|
+
* issuing one statement per licensed `(edge kind, endpoint kind)` pair.
|
|
3127
|
+
*
|
|
3128
|
+
* Optional for custom backends. Store-level heterogeneous bulk reads refuse
|
|
3129
|
+
* when it is absent rather than hiding a per-kind/per-endpoint fallback.
|
|
3130
|
+
*/
|
|
3131
|
+
findEdgesByHeterogeneousEndpointSet?: (this: void, params: FindEdgesByHeterogeneousEndpointSetParams) => Promise<readonly EdgeRow[]>;
|
|
2898
3132
|
countEdgesByKind: (this: void, params: CountEdgesByKindParams) => Promise<number>;
|
|
2899
3133
|
insertUnique: (this: void, params: InsertUniqueParams) => Promise<void>;
|
|
2900
3134
|
/**
|
|
@@ -2905,6 +3139,12 @@ type GraphBackend = Readonly<{
|
|
|
2905
3139
|
*/
|
|
2906
3140
|
insertUniqueBatch?: (this: void, entries: readonly InsertUniqueParams[]) => Promise<void>;
|
|
2907
3141
|
deleteUnique: (this: void, params: DeleteUniqueParams) => Promise<void>;
|
|
3142
|
+
/**
|
|
3143
|
+
* Permanently removes every uniqueness sidecar owned by the specified
|
|
3144
|
+
* concrete nodes. Optional capability used by set-based updates before they
|
|
3145
|
+
* rebuild reservations from the returned node after-images.
|
|
3146
|
+
*/
|
|
3147
|
+
hardDeleteUniquesByNodeIds?: (this: void, params: HardDeleteUniquesByNodeIdsParams) => Promise<void>;
|
|
2908
3148
|
checkUnique: (this: void, params: CheckUniqueParams) => Promise<UniqueRow | undefined>;
|
|
2909
3149
|
checkUniqueBatch?: (this: void, params: CheckUniqueBatchParams) => Promise<readonly UniqueRow[]>;
|
|
2910
3150
|
getActiveSchema: (this: void, graphId: string) => Promise<SchemaVersionRow | undefined>;
|
|
@@ -2930,6 +3170,40 @@ type GraphBackend = Readonly<{
|
|
|
2930
3170
|
* window the primitive exists to eliminate.
|
|
2931
3171
|
*/
|
|
2932
3172
|
commitSchemaVersion: (this: void, params: CommitSchemaVersionParams) => Promise<SchemaVersionRow>;
|
|
3173
|
+
/**
|
|
3174
|
+
* Commit a schema version only if every requested kind is empty. The probes
|
|
3175
|
+
* and schema CAS run under one backend-owned write fence, preventing a
|
|
3176
|
+
* participating schema-managed Store write from landing between the final
|
|
3177
|
+
* count and commit. Raw Stores and direct backend writes are not fenced.
|
|
3178
|
+
*/
|
|
3179
|
+
commitSchemaVersionIfKindsEmpty?: (this: void, params: CommitSchemaVersionParams, probes: readonly Readonly<{
|
|
3180
|
+
entity: "node" | "edge";
|
|
3181
|
+
kind: string;
|
|
3182
|
+
}>[]) => Promise<Readonly<{
|
|
3183
|
+
status: "committed";
|
|
3184
|
+
row: SchemaVersionRow;
|
|
3185
|
+
}> | Readonly<{
|
|
3186
|
+
status: "populated";
|
|
3187
|
+
kinds: readonly Readonly<{
|
|
3188
|
+
entity: "node" | "edge";
|
|
3189
|
+
kind: string;
|
|
3190
|
+
count: number;
|
|
3191
|
+
}>[];
|
|
3192
|
+
}>>;
|
|
3193
|
+
/**
|
|
3194
|
+
* Acquire the transaction-scoped shared fence for a schema-managed graph
|
|
3195
|
+
* write, then verify that the active schema still matches the Store that is
|
|
3196
|
+
* issuing it. Official transactional backends provide this method; custom
|
|
3197
|
+
* backends may omit it, in which case schema-managed Store writes fail
|
|
3198
|
+
* closed rather than racing a schema change. This method must be called on a
|
|
3199
|
+
* transaction-scoped backend. PostgreSQL locks the active schema row, so a
|
|
3200
|
+
* concurrent change either becomes visible at read committed or raises the
|
|
3201
|
+
* database's native serialization failure at stronger isolation.
|
|
3202
|
+
*/
|
|
3203
|
+
lockSchemaVersionForWrite?: (this: void, params: Readonly<{
|
|
3204
|
+
graphId: string;
|
|
3205
|
+
expectedVersion: number;
|
|
3206
|
+
}>) => Promise<void>;
|
|
2933
3207
|
/**
|
|
2934
3208
|
* Atomically flips the active schema pointer to an existing version,
|
|
2935
3209
|
* with optimistic compare-and-swap on the currently active version.
|
|
@@ -2940,6 +3214,23 @@ type GraphBackend = Readonly<{
|
|
|
2940
3214
|
* Same transactional requirements as `commitSchemaVersion`.
|
|
2941
3215
|
*/
|
|
2942
3216
|
setActiveVersion: (this: void, params: SetActiveVersionParams) => Promise<void>;
|
|
3217
|
+
/**
|
|
3218
|
+
* Run an administrative callback while holding the same per-graph lock as
|
|
3219
|
+
* schema commits. The callback receives the transaction-scoped backend, so
|
|
3220
|
+
* its reads, DML, and DDL are committed atomically before another schema
|
|
3221
|
+
* writer can proceed.
|
|
3222
|
+
*
|
|
3223
|
+
* This is intentionally absent from {@link TransactionBackend}: nesting a
|
|
3224
|
+
* schema-write lock from an already-open transaction can deadlock. It is an
|
|
3225
|
+
* optional backend capability so custom backends can decline operations
|
|
3226
|
+
* that require a schema fence rather than silently running them unsafely.
|
|
3227
|
+
*/
|
|
3228
|
+
schemaWriteTransaction?: <T>(this: void, graphId: string, fn: (tx: TransactionBackend & Readonly<{
|
|
3229
|
+
executeStatement: NonNullable<TransactionBackend["executeStatement"]>;
|
|
3230
|
+
tableExists: (this: void, tableName: string) => Promise<boolean>;
|
|
3231
|
+
executeSchemaDdl: (this: void, ddl: string) => Promise<void>;
|
|
3232
|
+
deleteSchemaVectorSlotContribution: (this: void, slot: VectorSlot) => Promise<void>;
|
|
3233
|
+
}>) => Promise<T>) => Promise<T>;
|
|
2943
3234
|
upsertEmbedding?: (this: void, params: UpsertEmbeddingParams) => Promise<void>;
|
|
2944
3235
|
/**
|
|
2945
3236
|
* Batched variant of `upsertEmbedding` for one vector slot. Optional —
|
|
@@ -2947,6 +3238,9 @@ type GraphBackend = Readonly<{
|
|
|
2947
3238
|
*/
|
|
2948
3239
|
upsertEmbeddingBatch?: (this: void, params: UpsertEmbeddingBatchParams) => Promise<void>;
|
|
2949
3240
|
deleteEmbedding?: (this: void, params: DeleteEmbeddingParams) => Promise<void>;
|
|
3241
|
+
deleteEmbeddingBatch?: (this: void, params: Omit<DeleteEmbeddingParams, "nodeId"> & Readonly<{
|
|
3242
|
+
nodeIds: readonly string[];
|
|
3243
|
+
}>) => Promise<void>;
|
|
2950
3244
|
/**
|
|
2951
3245
|
* KNN search over one `(nodeKind, fieldPath)` slot. Top-k is computed
|
|
2952
3246
|
* over CURRENT nodes only — non-tombstoned AND inside their validity
|
|
@@ -3084,11 +3378,11 @@ type GraphBackend = Readonly<{
|
|
|
3084
3378
|
assertRuntimeContributionsInitialized?: (this: void, graphId: string) => Promise<void>;
|
|
3085
3379
|
/**
|
|
3086
3380
|
* Bootstraps the per-deployment `typegraph_kind_removals` table so
|
|
3087
|
-
* `store.
|
|
3088
|
-
* removal status. Mirrors the focused-bootstrap
|
|
3089
|
-
* on `ensureIndexMaterializationsTable` — the full
|
|
3090
|
-
* touches every base table and risks Postgres SHARE-lock
|
|
3091
|
-
* under concurrent replica startup.
|
|
3381
|
+
* `store.evolve()` can check pending removals and the removal verbs can
|
|
3382
|
+
* persist and materialize removal status. Mirrors the focused-bootstrap
|
|
3383
|
+
* rationale documented on `ensureIndexMaterializationsTable` — the full
|
|
3384
|
+
* `bootstrapTables` touches every base table and risks Postgres SHARE-lock
|
|
3385
|
+
* deadlock under concurrent replica startup.
|
|
3092
3386
|
*/
|
|
3093
3387
|
ensureKindRemovalsTable?: (this: void) => Promise<void>;
|
|
3094
3388
|
/**
|
|
@@ -3193,6 +3487,44 @@ type GraphBackend = Readonly<{
|
|
|
3193
3487
|
* Present only on backends wired with a vector strategy.
|
|
3194
3488
|
*/
|
|
3195
3489
|
deleteVectorSlotContribution?: (this: void, slot: VectorSlot) => Promise<void>;
|
|
3490
|
+
/**
|
|
3491
|
+
* Diagnostic: compare each contribution currently expected for `graphId`
|
|
3492
|
+
* against its durable marker and the physical catalog.
|
|
3493
|
+
*
|
|
3494
|
+
* Covers the strategy-owned `runtimeEnsure` contributions (fulltext)
|
|
3495
|
+
* plus the `ownedTables` contribution(s) of each supplied vector slot.
|
|
3496
|
+
* Returns one {@link ContributionDiagnostic} per detected unusable
|
|
3497
|
+
* contribution. A recorded failed materialization is unusable even when
|
|
3498
|
+
* marker and catalog agree that no table was produced. A contribution with
|
|
3499
|
+
* neither a marker nor a table is treated as never attempted and omitted;
|
|
3500
|
+
* marker rows outside the current declaration set are not audited. An empty
|
|
3501
|
+
* array therefore is not proof that storage was initialized.
|
|
3502
|
+
*
|
|
3503
|
+
* Deliberately NOT part of the open path. `ensureRuntimeContributions`
|
|
3504
|
+
* and `assertRuntimeContributionsInitialized` short-circuit on a
|
|
3505
|
+
* per-instance signature cache and then on the marker row alone, which
|
|
3506
|
+
* is the right default for a hot path but leaves a database whose
|
|
3507
|
+
* contribution tables were dropped out of band opening clean and
|
|
3508
|
+
* failing at the first read. This method is the explicit, operator-
|
|
3509
|
+
* invoked catalog probe that fills that gap: it issues one uncached
|
|
3510
|
+
* existence query per distinct physical table and performs ZERO DDL
|
|
3511
|
+
* and ZERO writes, so it is safe under a least-privilege runtime role.
|
|
3512
|
+
*
|
|
3513
|
+
* Present only on backends that can probe their own catalog.
|
|
3514
|
+
*/
|
|
3515
|
+
verifyContributions?: (this: void, graphId: string, vectorSlots: readonly VectorSlot[]) => Promise<readonly ContributionDiagnostic[]>;
|
|
3516
|
+
/**
|
|
3517
|
+
* Re-audit current contribution declarations and non-destructively repair
|
|
3518
|
+
* `missing-marker` and `failed-materialization` findings. The backend must
|
|
3519
|
+
* resolve every target itself; it must not accept caller-provided physical
|
|
3520
|
+
* identities or DDL. `stale` and `orphaned-marker` findings are returned as
|
|
3521
|
+
* `requires-rebuild` because repairing either can require destructive data
|
|
3522
|
+
* reconstruction.
|
|
3523
|
+
*
|
|
3524
|
+
* Present only on backends that can both probe their catalog and run the
|
|
3525
|
+
* strategy-owned contribution DDL.
|
|
3526
|
+
*/
|
|
3527
|
+
repairContributions?: (this: void, graphId: string, vectorSlots: readonly VectorSlot[]) => Promise<ContributionRepairResult>;
|
|
3196
3528
|
/**
|
|
3197
3529
|
* Bootstraps the fulltext storage table the active `FulltextStrategy`
|
|
3198
3530
|
* owns. Same focused-bootstrap rationale as the other `ensure*Table`
|
|
@@ -3263,9 +3595,17 @@ type GraphBackend = Readonly<{
|
|
|
3263
3595
|
* entire operation back.
|
|
3264
3596
|
*
|
|
3265
3597
|
* This is a top-level-only lifecycle operation and is deliberately absent
|
|
3266
|
-
* from {@link TransactionBackend}.
|
|
3267
|
-
|
|
3268
|
-
|
|
3598
|
+
* from {@link TransactionBackend}. When `schemaWrite` is supplied, the
|
|
3599
|
+
* import acquires and validates that Store version's managed-write fence
|
|
3600
|
+
* before checking emptiness or writing. Omitting it retains the raw,
|
|
3601
|
+
* unversioned import behavior.
|
|
3602
|
+
*/
|
|
3603
|
+
trustedImport?: <T>(this: void, fn: (session: TrustedImportSession) => Promise<T>, options?: Readonly<{
|
|
3604
|
+
schemaWrite?: Readonly<{
|
|
3605
|
+
graphId: string;
|
|
3606
|
+
expectedVersion: number;
|
|
3607
|
+
}>;
|
|
3608
|
+
}>) => Promise<T>;
|
|
3269
3609
|
execute: <T>(this: void, query: CompiledRowsSql) => Promise<readonly T[]>;
|
|
3270
3610
|
/**
|
|
3271
3611
|
* Execute a non-row-returning SQL statement bound to this backend or
|
|
@@ -3319,15 +3659,16 @@ type AdapterBackend<TNativeTransaction> = GraphBackend & Readonly<{
|
|
|
3319
3659
|
}>;
|
|
3320
3660
|
type BackendIdentity = Pick<GraphBackend, "dialect" | "capabilities" | "tableNames" | "fulltextStrategy" | "vectorStrategy">;
|
|
3321
3661
|
type NodeEntityReadBackend = Pick<GraphBackend, "getNode" | "getNodes" | "findNodesByKind" | "countNodesByKind">;
|
|
3322
|
-
type NodeEntityWriteBackend = Pick<GraphBackend, "insertNode" | "insertNodeNoReturn" | "insertNodesBatch" | "insertNodesBatchReturning" | "updateNode" | "deleteNode" | "hardDeleteNode">;
|
|
3323
|
-
type EdgeEntityReadBackend = Pick<GraphBackend, "getEdge" | "getEdges" | "countEdgesFrom" | "edgeExistsBetween" | "findEdgesConnectedTo" | "findEdgesByKind" | "countEdgesByKind">;
|
|
3662
|
+
type NodeEntityWriteBackend = Pick<GraphBackend, "insertNode" | "insertNodeNoReturn" | "insertNodesBatch" | "insertNodesBatchReturning" | "updateNode" | "updateNodeSet" | "deleteNode" | "hardDeleteNode">;
|
|
3663
|
+
type EdgeEntityReadBackend = Pick<GraphBackend, "getEdge" | "getEdges" | "countEdgesFrom" | "edgeExistsBetween" | "findEdgesConnectedTo" | "findEdgesByKind" | "findEdgesByEndpointSet" | "findEdgesByHeterogeneousEndpointSet" | "countEdgesByKind">;
|
|
3324
3664
|
type EdgeEntityWriteBackend = Pick<GraphBackend, "insertEdge" | "insertEdgeNoReturn" | "insertEdgesBatch" | "insertEdgesBatchReturning" | "updateEdge" | "deleteEdge" | "deleteEdgesBatch" | "hardDeleteEdge" | "hardDeleteEdgesBatch">;
|
|
3325
3665
|
type GraphEntityReadBackend = NodeEntityReadBackend & EdgeEntityReadBackend;
|
|
3326
3666
|
type GraphEntityWriteBackend = NodeEntityWriteBackend & EdgeEntityWriteBackend;
|
|
3327
|
-
type UniqueConstraintBackend = Pick<GraphBackend, "insertUnique" | "insertUniqueBatch" | "deleteUnique" | "checkUnique" | "checkUniqueBatch">;
|
|
3667
|
+
type UniqueConstraintBackend = Pick<GraphBackend, "insertUnique" | "insertUniqueBatch" | "deleteUnique" | "hardDeleteUniquesByNodeIds" | "checkUnique" | "checkUniqueBatch">;
|
|
3328
3668
|
type SchemaReadBackend = Pick<GraphBackend, "getActiveSchema" | "getSchemaVersion">;
|
|
3329
|
-
type SchemaCommitBackend = Pick<GraphBackend, "commitSchemaVersion" | "setActiveVersion">;
|
|
3330
|
-
type
|
|
3669
|
+
type SchemaCommitBackend = Pick<GraphBackend, "commitSchemaVersion" | "commitSchemaVersionIfKindsEmpty" | "setActiveVersion">;
|
|
3670
|
+
type SchemaWriteFenceBackend = Pick<GraphBackend, "lockSchemaVersionForWrite">;
|
|
3671
|
+
type VectorOperationBackend = Pick<GraphBackend, "upsertEmbedding" | "upsertEmbeddingBatch" | "deleteEmbedding" | "deleteEmbeddingBatch" | "vectorSearch" | "createVectorIndex" | "dropVectorIndex">;
|
|
3331
3672
|
type FulltextOperationBackend = Pick<GraphBackend, "upsertFulltext" | "deleteFulltext" | "upsertFulltextBatch" | "deleteFulltextBatch" | "fulltextSearch">;
|
|
3332
3673
|
type IndexMaterializationBackend = Pick<GraphBackend, "ensureIndexMaterializationsTable" | "getIndexMaterialization" | "getIndexMaterializations" | "recordIndexMaterialization">;
|
|
3333
3674
|
type ContributionMaterializationBackend = Pick<GraphBackend, "ensureContributionMaterializationsTable" | "getContributionMaterialization" | "recordContributionMaterialization" | "assertRuntimeContributionsInitialized" | "ensureRuntimeContributions" | "ensureFulltextTable">;
|
|
@@ -3358,7 +3699,7 @@ type TransactionReadBackend = Readonly<BackendIdentity & GraphEntityReadBackend
|
|
|
3358
3699
|
* deliberately absent: their guarantees depend on the top-level backend or
|
|
3359
3700
|
* lifecycle owner rather than an already-open transaction.
|
|
3360
3701
|
*/
|
|
3361
|
-
type TransactionBackend = Readonly<BackendIdentity & GraphEntityReadBackend & GraphEntityWriteBackend & UniqueConstraintBackend & SchemaReadBackend & VectorOperationBackend & FulltextOperationBackend & IndexMaterializationBackend & ContributionMaterializationBackend & RemovalMaterializationBackend & GraphLifecycleBackend & QueryExecutionBackend & RawQueryExecutionBackend & RawStatementExecutionBackend>;
|
|
3702
|
+
type TransactionBackend = Readonly<BackendIdentity & GraphEntityReadBackend & GraphEntityWriteBackend & UniqueConstraintBackend & SchemaReadBackend & Pick<GraphBackend, "lockSchemaVersionForWrite"> & VectorOperationBackend & FulltextOperationBackend & IndexMaterializationBackend & ContributionMaterializationBackend & RemovalMaterializationBackend & GraphLifecycleBackend & QueryExecutionBackend & RawQueryExecutionBackend & RawStatementExecutionBackend>;
|
|
3362
3703
|
/**
|
|
3363
3704
|
* Parameters for inserting a unique constraint entry.
|
|
3364
3705
|
*/
|
|
@@ -3379,6 +3720,12 @@ type DeleteUniqueParams = Readonly<{
|
|
|
3379
3720
|
constraintName: string;
|
|
3380
3721
|
key: string;
|
|
3381
3722
|
}>;
|
|
3723
|
+
/** Parameters for permanently clearing uniqueness sidecars by node identity. */
|
|
3724
|
+
type HardDeleteUniquesByNodeIdsParams = Readonly<{
|
|
3725
|
+
graphId: string;
|
|
3726
|
+
concreteKind: string;
|
|
3727
|
+
nodeIds: readonly string[];
|
|
3728
|
+
}>;
|
|
3382
3729
|
/**
|
|
3383
3730
|
* Parameters for checking a unique constraint.
|
|
3384
3731
|
*/
|
|
@@ -3449,6 +3796,35 @@ type CommitSchemaVersionParams = Readonly<{
|
|
|
3449
3796
|
schemaHash: string;
|
|
3450
3797
|
schemaDoc: SerializedSchema;
|
|
3451
3798
|
}>;
|
|
3799
|
+
type SchemaKindEmptinessProbe = Readonly<{
|
|
3800
|
+
entity: "node" | "edge";
|
|
3801
|
+
kind: string;
|
|
3802
|
+
}>;
|
|
3803
|
+
type PopulatedSchemaKind = SchemaKindEmptinessProbe & Readonly<{
|
|
3804
|
+
count: number;
|
|
3805
|
+
}>;
|
|
3806
|
+
type CommitSchemaVersionIfKindsEmptyResult = Readonly<{
|
|
3807
|
+
status: "committed";
|
|
3808
|
+
row: SchemaVersionRow;
|
|
3809
|
+
}> | Readonly<{
|
|
3810
|
+
status: "populated";
|
|
3811
|
+
kinds: readonly PopulatedSchemaKind[];
|
|
3812
|
+
}>;
|
|
3813
|
+
type LockSchemaVersionForWriteParams = Readonly<{
|
|
3814
|
+
graphId: string;
|
|
3815
|
+
expectedVersion: number;
|
|
3816
|
+
}>;
|
|
3817
|
+
/**
|
|
3818
|
+
* Optional schema-managed write identity for a trusted import. Supplying it
|
|
3819
|
+
* acquires and validates the Store version's transaction-scoped schema fence;
|
|
3820
|
+
* omitting it leaves the import outside the versioned guarantee.
|
|
3821
|
+
*/
|
|
3822
|
+
type TrustedImportOptions = Readonly<{
|
|
3823
|
+
schemaWrite?: Readonly<{
|
|
3824
|
+
graphId: string;
|
|
3825
|
+
expectedVersion: number;
|
|
3826
|
+
}>;
|
|
3827
|
+
}>;
|
|
3452
3828
|
/**
|
|
3453
3829
|
* Parameters for `setActiveVersion`.
|
|
3454
3830
|
*
|
|
@@ -3567,6 +3943,93 @@ type FindEdgesByKindParams = Readonly<{
|
|
|
3567
3943
|
*/
|
|
3568
3944
|
after?: string;
|
|
3569
3945
|
}>;
|
|
3946
|
+
/**
|
|
3947
|
+
* The endpoint side a {@link FindEdgesByEndpointSetParams} read fans out over.
|
|
3948
|
+
*/
|
|
3949
|
+
type EdgeEndpointSide = "from" | "to";
|
|
3950
|
+
/**
|
|
3951
|
+
* Parameters for reading the edges of a SET of endpoints in one statement per
|
|
3952
|
+
* bind-budget chunk — the widened form of {@link FindEdgesByKindParams}'s
|
|
3953
|
+
* scalar `fromId` / `toId`.
|
|
3954
|
+
*
|
|
3955
|
+
* Deliberately a SEPARATE parameter type on a separate operation rather than
|
|
3956
|
+
* optional fields on `FindEdgesByKindParams`. A backend that did not implement
|
|
3957
|
+
* set membership would still type-check while ignoring the id list, and would
|
|
3958
|
+
* then return every edge of the kind — which the caller would rebucket into a
|
|
3959
|
+
* correct-looking answer at unbounded cost. Splitting the operation makes that
|
|
3960
|
+
* failure unreachable: support is detected by the method's presence, before any
|
|
3961
|
+
* read is issued.
|
|
3962
|
+
*
|
|
3963
|
+
* The shape also makes the previously-validated illegal states
|
|
3964
|
+
* unrepresentable. One `side` instead of two independent id lists means both
|
|
3965
|
+
* endpoints can never fan out at once; no scalar `fromId` / `toId` field means
|
|
3966
|
+
* a scalar and a set can never disagree; no `limit` / `offset` / `after` means
|
|
3967
|
+
* a global slice can never be requested across a read the backend splits into
|
|
3968
|
+
* bind-budget chunks.
|
|
3969
|
+
*/
|
|
3970
|
+
type FindEdgesByEndpointSetParams = Readonly<{
|
|
3971
|
+
graphId: string;
|
|
3972
|
+
kind: string;
|
|
3973
|
+
/** Which endpoint column the id set constrains. */
|
|
3974
|
+
side: EdgeEndpointSide;
|
|
3975
|
+
/**
|
|
3976
|
+
* Kind of the fanned-out endpoint. Required: it is the index prefix that
|
|
3977
|
+
* makes the set a seek rather than a scan, so a set is always scoped to one
|
|
3978
|
+
* endpoint kind and a heterogeneous page costs one read per distinct kind.
|
|
3979
|
+
*/
|
|
3980
|
+
endpointKind: string;
|
|
3981
|
+
/**
|
|
3982
|
+
* Endpoint NODE ids to match — deliberately not named `ids`, which in the
|
|
3983
|
+
* backend params vocabulary means edge ids (see
|
|
3984
|
+
* {@link DeleteEdgesBatchParams}); the write-surface assertion in
|
|
3985
|
+
* `recorded-capture/write-surface.ts` classifies params structurally and a
|
|
3986
|
+
* `{ graphId, ids }` read would be misread as a write.
|
|
3987
|
+
*
|
|
3988
|
+
* The backend deduplicates before splitting the list across bind-budget
|
|
3989
|
+
* chunks — a repeated id spanning two chunks would return its edges twice.
|
|
3990
|
+
* An empty list reads nothing and yields no rows.
|
|
3991
|
+
*/
|
|
3992
|
+
endpointIds: readonly string[];
|
|
3993
|
+
/**
|
|
3994
|
+
* Maximum rows per distinct endpoint id, applied inside the statement (via
|
|
3995
|
+
* `ROW_NUMBER()` over the read's own ordering) rather than by the caller.
|
|
3996
|
+
* Only meaningful on a backend whose `capabilities.windowFunctions` is true;
|
|
3997
|
+
* callers must still cap client-side, so a backend that ignores this returns
|
|
3998
|
+
* a superset rather than a wrong answer. Unlike a global `limit`, a
|
|
3999
|
+
* per-endpoint cap composes with chunking: each endpoint's rows fall
|
|
4000
|
+
* entirely within one chunk.
|
|
4001
|
+
*/
|
|
4002
|
+
limitPerEndpoint?: number;
|
|
4003
|
+
/** If true, exclude deleted edges. Default true. */
|
|
4004
|
+
excludeDeleted?: boolean;
|
|
4005
|
+
/** Temporal mode for filtering by validity period. */
|
|
4006
|
+
temporalMode?: TemporalMode;
|
|
4007
|
+
/** Timestamp for "current" and "asOf" temporal modes. */
|
|
4008
|
+
asOf?: string;
|
|
4009
|
+
}>;
|
|
4010
|
+
/**
|
|
4011
|
+
* Parameters for reading several edge kinds from several endpoint kinds.
|
|
4012
|
+
*
|
|
4013
|
+
* The endpoint pairs are joined as a relation, so round trips are independent
|
|
4014
|
+
* of the number of licensed edge-kind/endpoint-kind combinations. Large source
|
|
4015
|
+
* sets may still be split to respect the backend's bind-parameter budget.
|
|
4016
|
+
*/
|
|
4017
|
+
type FindEdgesByHeterogeneousEndpointSetParams = Readonly<{
|
|
4018
|
+
graphId: string;
|
|
4019
|
+
side: EdgeEndpointSide;
|
|
4020
|
+
endpoints: readonly Readonly<{
|
|
4021
|
+
kind: string;
|
|
4022
|
+
id: string;
|
|
4023
|
+
}>[];
|
|
4024
|
+
edgeKinds: readonly string[];
|
|
4025
|
+
limitPerEndpoint?: number;
|
|
4026
|
+
/** If true, exclude deleted edges. Default true. */
|
|
4027
|
+
excludeDeleted?: boolean;
|
|
4028
|
+
/** Temporal mode for filtering by validity period. */
|
|
4029
|
+
temporalMode?: TemporalMode;
|
|
4030
|
+
/** Timestamp for "current" and "asOf" temporal modes. */
|
|
4031
|
+
asOf?: string;
|
|
4032
|
+
}>;
|
|
3570
4033
|
/**
|
|
3571
4034
|
* Parameters for counting edges by kind.
|
|
3572
4035
|
*/
|
|
@@ -3611,11 +4074,11 @@ declare const D1_MAX_BIND_PARAMETERS = 100;
|
|
|
3611
4074
|
*/
|
|
3612
4075
|
declare const DURABLE_OBJECT_MAX_BIND_PARAMETERS = 100;
|
|
3613
4076
|
/**
|
|
3614
|
-
*
|
|
3615
|
-
*
|
|
3616
|
-
* batch math.
|
|
4077
|
+
* Safe bound-parameter ceiling shared by every bundled PostgreSQL driver.
|
|
4078
|
+
* The protocol count can represent 65535, but postgres.js rejects a statement
|
|
4079
|
+
* with 65534 bound values, so backend batch math uses the lower portable limit.
|
|
3617
4080
|
*/
|
|
3618
|
-
declare const POSTGRES_MAX_BIND_PARAMETERS =
|
|
4081
|
+
declare const POSTGRES_MAX_BIND_PARAMETERS = 65533;
|
|
3619
4082
|
/**
|
|
3620
4083
|
* Default capabilities for SQLite.
|
|
3621
4084
|
*/
|
|
@@ -4417,4 +4880,4 @@ type RelationalIndexDeclaration = NodeIndexDeclaration | EdgeIndexDeclaration;
|
|
|
4417
4880
|
type IndexDeclaration = RelationalIndexDeclaration | VectorIndexDeclaration;
|
|
4418
4881
|
type SystemColumnName = "graph_id" | "kind" | "id" | "from_kind" | "from_id" | "to_kind" | "to_id" | "deleted_at" | "valid_from" | "valid_to" | "created_at" | "updated_at" | "version";
|
|
4419
4882
|
|
|
4420
|
-
export { type
|
|
4883
|
+
export { type SerializedOntology as $, type AdapterBackend as A, type BackendCapabilities as B, type ContributionDiagnostic as C, type DeleteBehavior as D, type EdgeRegistration as E, type FulltextStrategy as F, type GraphExtension as G, type SerializedSchema as H, type IndexDeclaration as I, type JsonPointer as J, type KindEntity as K, type SerializedNodeDef as L, type SerializedEdgeDef as M, type NodeRegistration as N, type OntologyRelation as O, type IndexEntity as P, type QueryAst as Q, type RelationalIndexDeclaration as R, type SqlDialect as S, type TemporalMode as T, type SerializedMetaEdge as U, type VectorStrategy as V, type SerializedOntologyRelation as W, type SerializedClosures as X, type SchemaHash as Y, type NullCheckOp as Z, type JsonSchema as _, type ContributionDiagnosticState as a, type NodeEntityWriteBackend as a$, type SerializedUniqueConstraint as a0, type InferenceType as a1, type EdgeType as a2, type AggregateExpr as a3, type FieldRef as a4, type ComparisonOp as a5, type AggregateComparisonPredicate as a6, type TraversalDirection as a7, type AdapterBackendTransactions as a8, type BackendIdentity as a9, type FulltextCapabilities as aA, type FulltextOperationBackend as aB, type FulltextQueryMode as aC, type FulltextSearchParams as aD, type FulltextSearchResult as aE, type GraphAnalyticsCapabilities as aF, type GraphEntityReadBackend as aG, type GraphEntityWriteBackend as aH, type GraphExtensionVersion as aI, type GraphLifecycleBackend as aJ, type HardDeleteUniquesByNodeIdsParams as aK, type HybridFusionOptions as aL, type IndexMaterializationBackend as aM, type IntentSql as aN, type JsonPointerFor as aO, type JsonPointerInput as aP, type JsonPointerSegment as aQ, type JsonPointerSegments as aR, type JsonPointerSegmentsFor as aS, type JsonValue as aT, type KindAnnotations as aU, LEGACY_GRAPH_EXTENSION_VERSION as aV, type LockSchemaVersionForWriteParams as aW, MAX_JSON_POINTER_DEPTH as aX, type MetaEdge as aY, type MetaEdgeProperties as aZ, type NodeEntityReadBackend as a_, type BackendLifecycle as aa, type BackendMaintenance as ab, type BackendTransactions as ac, CURRENT_GRAPH_EXTENSION_VERSION as ad, type Cardinality as ae, type Collation as af, type CommitSchemaVersionExpected as ag, type CommitSchemaVersionIfKindsEmptyResult as ah, type CommitSchemaVersionParams as ai, type CompiledRowsSql as aj, type CompiledSelectSql as ak, type CompiledStatementSql as al, type ContributionMaterializationBackend as am, DEFAULT_SQL_SCHEMA as an, type DeleteFulltextBatchParams as ao, type EdgeEntityReadBackend as ap, type EdgeEntityWriteBackend as aq, type EdgeId as ar, type EdgeProps as as, type EdgeTypeWithEndpoints as at, type EndpointExistence as au, type ExternalRecordedReadSource as av, type FilteredApproximateSearch as aw, type FilteredApproximateSearchMode as ax, type FindEdgesByHeterogeneousEndpointSetParams as ay, type FulltextBatchRow as az, type ContributionRepairEntry as b, renderPostgres as b$, type NodeId as b0, type NodeProps as b1, type OrderSpec as b2, type ParameterRef as b3, Placeholder as b4, type PopulatedSchemaKind as b5, type QueryExecutionBackend as b6, type RawQueryExecutionBackend as b7, type RawStatementExecutionBackend as b8, type RecordedRelationOptions as b9, type TransactionReadBackend as bA, type TraversalExpansion as bB, type TrustedImportOptions as bC, type TrustedImportSession as bD, type UniqueConstraint as bE, type UniqueConstraintBackend as bF, type UniquenessScope as bG, type UpdateNodeSetParams as bH, type UpdateNodeSetResult as bI, type UpsertFulltextBatchParams as bJ, type VectorCapabilities as bK, type VectorOperationBackend as bL, asEdgeId as bM, asNodeId as bN, buildVectorCapabilities as bO, createSqlSchema as bP, fts5Strategy as bQ, isEdgeType as bR, isEdgeTypeWithEndpoints as bS, isMetaEdge as bT, isNodeType as bU, isSqlFragment as bV, joinJsonPointers as bW, jsonPointer as bX, normalizeJsonPointer as bY, parseJsonPointer as bZ, recordedRelation as b_, type RemovalMaterializationBackend as ba, type RenderedSql as bb, type ResolveJsonPointer as bc, type ResolveJsonPointerSegments as bd, type ResolvedSqlTableNames as be, type RowProps as bf, type SchemaCommitBackend as bg, type SchemaKindEmptinessProbe as bh, type SchemaReadBackend as bi, type SchemaWriteFenceBackend as bj, type SetActiveVersionParams as bk, type SortDirection as bl, type SqlChunk as bm, type SqlFragment as bn, type SqlIdentifierChunk as bo, type SqlIntent as bp, type SqlParameterChunk as bq, type SqlPlaceholderChunk as br, SqlSchema as bs, type SqlTableNames as bt, type SqlTag as bu, type SqlTextChunk as bv, type StrategyTableContribution as bw, type TableContribution as bx, type TransactionBackend as by, type TransactionOptions as bz, type ContributionRepairResult as c, type ExtensionIndexWhere as c$, renderSql as c0, renderSqlInline as c1, renderSqlite as c2, rowPropsToJsonText as c3, rowPropsToObject as c4, sql as c5, tsvectorStrategy as c6, type ExtensionNodeDef as c7, type ExtensionEdgeDef as c8, type ExtensionOntologyRelation as c9, type ContributionMaterializationIdentity as cA, type ContributionMaterializationRow as cB, type CountEdgesByKindParams as cC, type CountEdgesFromParams as cD, type CountNodesByKindParams as cE, type CreateVectorIndexParams as cF, D1_MAX_BIND_PARAMETERS as cG, DURABLE_OBJECT_MAX_BIND_PARAMETERS as cH, type DeleteEdgeParams as cI, type DeleteEdgesBatchParams as cJ, type DeleteEmbeddingParams as cK, type DeleteFulltextParams as cL, type DeleteNodeParams as cM, type DeleteUniqueParams as cN, type DialectAdapter as cO, type DialectCapabilities as cP, type DialectRecursiveQueryStrategy as cQ, type DialectStandardQueryStrategy as cR, type DialectVectorPredicateStrategy as cS, type DropVectorIndexParams as cT, type EdgeExistsBetweenParams as cU, type ExtensionArrayItemType as cV, type ExtensionArrayProperty as cW, type ExtensionBooleanProperty as cX, type ExtensionEdgeIndex as cY, type ExtensionEmbeddingModifier as cZ, type ExtensionEnumProperty as c_, type ExtensionIndex as ca, type ValueType as cb, type PredicateExpression as cc, type VectorMetricType as cd, type Traversal as ce, type NodePredicate as cf, type ProjectedField as cg, type AggregateOrderSpec as ch, type GroupBySpec as ci, type RecursiveCyclePolicy as cj, type VectorSlotMap as ck, type RecordedReadBinding as cl, type SelectiveField as cm, type ComposableQuery as cn, type SetOperationType as co, type SetOperation as cp, type NodeRow as cq, type EdgeRow as cr, type VectorMetric as cs, ALL_FULLTEXT_MODES as ct, ALL_META_EDGE_NAMES as cu, BASE_CONTRIBUTION_OWNER as cv, type CheckUniqueBatchParams as cw, type CheckUniqueParams as cx, type ClaimIndexMaterializationParams as cy, type CompiledTemporaryStatementSql as cz, type NodeType as d, isTombstonedNodeRow as d$, type ExtensionNodeIndex as d0, type ExtensionNumberProperty as d1, type ExtensionObjectFieldProperty as d2, type ExtensionObjectProperty as d3, type ExtensionPropertyModifiers as d4, type ExtensionPropertyType as d5, type ExtensionSearchableModifier as d6, type ExtensionStringProperty as d7, type ExtensionUniqueConstraint as d8, type ExtensionUniqueWhere as d9, POSTGRES_MAX_BIND_PARAMETERS as dA, type RecordContributionMaterializationParams as dB, type RecordIndexMaterializationParams as dC, type RecordKindRemovalParams as dD, type RelationalIndexMethod as dE, type ReleaseIndexMaterializationClaimParams as dF, SQLITE_CAPABILITIES as dG, SQLITE_MAX_BIND_PARAMETERS as dH, type SqlCompilationBackend as dI, type TombstonedNodeRow as dJ, type UniqueRow as dK, type UpdateEdgeParams as dL, type UpdateNodeParams as dM, type UpsertEmbeddingBatchParams as dN, type UpsertEmbeddingBatchRow as dO, type UpsertEmbeddingParams as dP, type UpsertFulltextParams as dQ, VECTOR_CONTRIBUTION_PREFIX as dR, type VectorIndexType as dS, type VectorSearchParams as dT, type VectorSearchResult as dU, assertFiniteEmbedding as dV, assertVectorMinScore as dW, assertVectorSearchLimit as dX, buildFulltextCapabilities as dY, isLiveNodeRow as dZ, isSqlPlaceholder as d_, FULLTEXT_CONTRIBUTION_NAME as da, type FindEdgesByEndpointSetParams as db, type FindEdgesByKindParams as dc, type FindEdgesConnectedToParams as dd, type FindNodesByKindParams as de, type GraphReadBackend as df, type HardDeleteEdgeParams as dg, type HardDeleteNodeParams as dh, type HybridSearchParams as di, type HybridSearchRow as dj, type InListParameterOptions as dk, type IndexDeclarationBase as dl, type IndexMaterializationRow as dm, type IndexWhereLiteral as dn, type IndexWhereOp as dp, type IndexWhereOperand as dq, type InsertEdgeParams as dr, type InsertNodeParams as ds, type InsertSchemaParams as dt, type InsertUniqueParams as du, type KindRemovalRow as dv, type LiveNodeRow as dw, MODERN_SQLITE_MAX_BIND_PARAMETERS as dx, type MetaEdgeName as dy, POSTGRES_CAPABILITIES as dz, type AnyEdgeType as e, normalizeGraphAnalyticsCapabilities as e0, quoteIdentifier as e1, shortHash as e2, vectorMinScoreCondition as e3, vectorPhysicalName as e4, vectorScoreExpression as e5, GRAPH_EXTENSION_TOP_LEVEL_KEYS as e6, type GraphExtensionTopLevelKey as e7, type GraphDefaults as f, type EdgeIndexDeclaration as g, type NodeIndexDeclaration as h, type EdgeIndexConfig as i, type EdgeIndexDirection as j, type EdgeIndexWhereBuilder as k, type IndexOrigin as l, type IndexScope as m, type IndexWhereExpression as n, type IndexWhereFieldBuilder as o, type IndexWhereInput as p, type NodeIndexConfig as q, type NodeIndexWhereBuilder as r, type SystemColumnName as s, type VectorIndexDeclaration as t, type VectorIndexImplementation as u, type VectorIndexMetric as v, type VectorIndexParams as w, type VectorSlot as x, type SchemaVersionRow as y, type GraphBackend as z };
|