@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.
Files changed (307) hide show
  1. package/dist/backend/drizzle/indexes.cjs +9 -9
  2. package/dist/backend/drizzle/indexes.d.cts +1 -1
  3. package/dist/backend/drizzle/indexes.d.ts +1 -1
  4. package/dist/backend/drizzle/indexes.js +5 -5
  5. package/dist/backend/index.cjs +50 -50
  6. package/dist/backend/index.d.cts +3 -3
  7. package/dist/backend/index.d.ts +3 -3
  8. package/dist/backend/index.js +11 -11
  9. package/dist/backend/postgres/index.cjs +26 -26
  10. package/dist/backend/postgres/index.d.cts +6 -5
  11. package/dist/backend/postgres/index.d.ts +6 -5
  12. package/dist/backend/postgres/index.js +13 -13
  13. package/dist/backend/postgres/pglite-store.cjs +32 -33
  14. package/dist/backend/postgres/pglite-store.cjs.map +1 -1
  15. package/dist/backend/postgres/pglite-store.d.cts +7 -7
  16. package/dist/backend/postgres/pglite-store.d.ts +7 -7
  17. package/dist/backend/postgres/pglite-store.js +28 -29
  18. package/dist/backend/postgres/pglite-store.js.map +1 -1
  19. package/dist/backend/postgres/pglite.cjs +15 -15
  20. package/dist/backend/postgres/pglite.d.cts +3 -2
  21. package/dist/backend/postgres/pglite.d.ts +3 -2
  22. package/dist/backend/postgres/pglite.js +14 -14
  23. package/dist/backend/sqlite/index.cjs +23 -23
  24. package/dist/backend/sqlite/index.d.cts +7 -6
  25. package/dist/backend/sqlite/index.d.ts +7 -6
  26. package/dist/backend/sqlite/index.js +11 -11
  27. package/dist/backend/sqlite/libsql.cjs +17 -17
  28. package/dist/backend/sqlite/libsql.cjs.map +1 -1
  29. package/dist/backend/sqlite/libsql.d.cts +3 -2
  30. package/dist/backend/sqlite/libsql.d.ts +3 -2
  31. package/dist/backend/sqlite/libsql.js +13 -13
  32. package/dist/backend/sqlite/libsql.js.map +1 -1
  33. package/dist/backend/sqlite/local-store.cjs +33 -34
  34. package/dist/backend/sqlite/local-store.cjs.map +1 -1
  35. package/dist/backend/sqlite/local-store.d.cts +8 -7
  36. package/dist/backend/sqlite/local-store.d.ts +8 -7
  37. package/dist/backend/sqlite/local-store.js +29 -30
  38. package/dist/backend/sqlite/local-store.js.map +1 -1
  39. package/dist/backend/sqlite/local.cjs +16 -16
  40. package/dist/backend/sqlite/local.d.cts +3 -2
  41. package/dist/backend/sqlite/local.d.ts +3 -2
  42. package/dist/backend/sqlite/local.js +14 -14
  43. package/dist/{chunk-2OOY4OYT.js → chunk-2L54C2C2.js} +4 -4
  44. package/dist/{chunk-2OOY4OYT.js.map → chunk-2L54C2C2.js.map} +1 -1
  45. package/dist/{chunk-4WYFRACU.js → chunk-42PYUGLS.js} +58 -4
  46. package/dist/chunk-42PYUGLS.js.map +1 -0
  47. package/dist/{chunk-EQOQOT55.js → chunk-4GUBTVPV.js} +4 -5
  48. package/dist/chunk-4GUBTVPV.js.map +1 -0
  49. package/dist/{chunk-ZIRC2U6G.js → chunk-4GUTQPVO.js} +102 -16
  50. package/dist/chunk-4GUTQPVO.js.map +1 -0
  51. package/dist/{chunk-OYJSYDIH.js → chunk-4MB3AQAQ.js} +13 -3
  52. package/dist/chunk-4MB3AQAQ.js.map +1 -0
  53. package/dist/{chunk-5Q3P6OIC.cjs → chunk-4MEWSUVM.cjs} +12 -12
  54. package/dist/chunk-4MEWSUVM.cjs.map +1 -0
  55. package/dist/{chunk-VC26BUNP.js → chunk-4QIKLIGG.js} +17 -5
  56. package/dist/chunk-4QIKLIGG.js.map +1 -0
  57. package/dist/chunk-4SZ6XPTG.cjs +12 -0
  58. package/dist/{chunk-VGMNGWBR.cjs.map → chunk-4SZ6XPTG.cjs.map} +1 -1
  59. package/dist/{chunk-UZLEQFTV.js → chunk-55ITBQJI.js} +4 -4
  60. package/dist/chunk-55ITBQJI.js.map +1 -0
  61. package/dist/{chunk-JOYPNY33.js → chunk-5EKPX6QU.js} +9 -9
  62. package/dist/{chunk-JOYPNY33.js.map → chunk-5EKPX6QU.js.map} +1 -1
  63. package/dist/{chunk-TRC646QQ.cjs → chunk-5GAONX5G.cjs} +7 -7
  64. package/dist/{chunk-TRC646QQ.cjs.map → chunk-5GAONX5G.cjs.map} +1 -1
  65. package/dist/{chunk-M4GYQF2H.js → chunk-6DCB664D.js} +7 -4
  66. package/dist/chunk-6DCB664D.js.map +1 -0
  67. package/dist/{chunk-64LERBFM.cjs → chunk-6RYPD3NJ.cjs} +75 -65
  68. package/dist/chunk-6RYPD3NJ.cjs.map +1 -0
  69. package/dist/{chunk-5AERZSHC.cjs → chunk-7PF2L3H6.cjs} +4 -4
  70. package/dist/{chunk-5AERZSHC.cjs.map → chunk-7PF2L3H6.cjs.map} +1 -1
  71. package/dist/chunk-B3F2D3SP.cjs +12 -0
  72. package/dist/{chunk-U3YRCZ5L.cjs.map → chunk-B3F2D3SP.cjs.map} +1 -1
  73. package/dist/{chunk-Z3WIL6S3.js → chunk-BGYJW37L.js} +5 -5
  74. package/dist/{chunk-Z3WIL6S3.js.map → chunk-BGYJW37L.js.map} +1 -1
  75. package/dist/{chunk-DMZEVJGL.cjs → chunk-BNS75YNF.cjs} +12 -13
  76. package/dist/chunk-BNS75YNF.cjs.map +1 -0
  77. package/dist/{chunk-KTBTSHU6.cjs → chunk-C4F7VJ5D.cjs} +13 -3
  78. package/dist/chunk-C4F7VJ5D.cjs.map +1 -0
  79. package/dist/{chunk-L2BYRYHC.js → chunk-CBKG6HEP.js} +43 -33
  80. package/dist/chunk-CBKG6HEP.js.map +1 -0
  81. package/dist/{chunk-CVK4T34X.cjs → chunk-CPEL3YIR.cjs} +22 -22
  82. package/dist/{chunk-CVK4T34X.cjs.map → chunk-CPEL3YIR.cjs.map} +1 -1
  83. package/dist/{chunk-O2GZM7UK.cjs → chunk-D54WH24V.cjs} +62 -7
  84. package/dist/chunk-D54WH24V.cjs.map +1 -0
  85. package/dist/{chunk-33PAKPED.cjs → chunk-D56XG4EI.cjs} +53 -41
  86. package/dist/chunk-D56XG4EI.cjs.map +1 -0
  87. package/dist/{chunk-O3USVVWS.js → chunk-DK2S42XB.js} +3 -3
  88. package/dist/{chunk-O3USVVWS.js.map → chunk-DK2S42XB.js.map} +1 -1
  89. package/dist/{chunk-HHBKGPEI.js → chunk-DXEEHSGN.js} +517 -26
  90. package/dist/chunk-DXEEHSGN.js.map +1 -0
  91. package/dist/{chunk-UJRWOV5B.js → chunk-EFEOOCJ3.js} +5 -5
  92. package/dist/{chunk-UJRWOV5B.js.map → chunk-EFEOOCJ3.js.map} +1 -1
  93. package/dist/{chunk-ECU53PMN.cjs → chunk-EKFUG4G7.cjs} +5 -5
  94. package/dist/chunk-EKFUG4G7.cjs.map +1 -0
  95. package/dist/{chunk-FSCJOTHF.cjs → chunk-EQ7JKLZO.cjs} +10 -10
  96. package/dist/{chunk-FSCJOTHF.cjs.map → chunk-EQ7JKLZO.cjs.map} +1 -1
  97. package/dist/{chunk-AQR6BHB3.cjs → chunk-F4NHQHEZ.cjs} +10 -10
  98. package/dist/{chunk-AQR6BHB3.cjs.map → chunk-F4NHQHEZ.cjs.map} +1 -1
  99. package/dist/{chunk-2G6ZEGYO.js → chunk-FL5UQRES.js} +4 -4
  100. package/dist/{chunk-2G6ZEGYO.js.map → chunk-FL5UQRES.js.map} +1 -1
  101. package/dist/{chunk-ZP2KPDNN.js → chunk-FLEQ2HBK.js} +3 -3
  102. package/dist/{chunk-ZP2KPDNN.js.map → chunk-FLEQ2HBK.js.map} +1 -1
  103. package/dist/{chunk-RAWG2FEU.js → chunk-FQ7ZPOTZ.js} +264 -18
  104. package/dist/chunk-FQ7ZPOTZ.js.map +1 -0
  105. package/dist/{chunk-O7XVCLXW.cjs → chunk-H7VE3FL4.cjs} +577 -82
  106. package/dist/chunk-H7VE3FL4.cjs.map +1 -0
  107. package/dist/{chunk-JNXZQBN3.js → chunk-ID4WXTKL.js} +1039 -482
  108. package/dist/chunk-ID4WXTKL.js.map +1 -0
  109. package/dist/{chunk-ZGOUVMVS.js → chunk-ISLPNELU.js} +17 -5
  110. package/dist/chunk-ISLPNELU.js.map +1 -0
  111. package/dist/{chunk-I73ATSAH.cjs → chunk-IX64T5OL.cjs} +4 -4
  112. package/dist/{chunk-I73ATSAH.cjs.map → chunk-IX64T5OL.cjs.map} +1 -1
  113. package/dist/{chunk-XDMPDUKL.cjs → chunk-J2ICGNHO.cjs} +8 -9
  114. package/dist/chunk-J2ICGNHO.cjs.map +1 -0
  115. package/dist/{chunk-KDRF3NR2.cjs → chunk-J7LXTUTP.cjs} +295 -201
  116. package/dist/chunk-J7LXTUTP.cjs.map +1 -0
  117. package/dist/{chunk-AO2WPYFZ.cjs → chunk-JQXSZHF2.cjs} +14 -4
  118. package/dist/chunk-JQXSZHF2.cjs.map +1 -0
  119. package/dist/{chunk-UTTW2Q3M.cjs → chunk-JXUTCSXX.cjs} +197 -133
  120. package/dist/chunk-JXUTCSXX.cjs.map +1 -0
  121. package/dist/{chunk-GT7NEXSU.js → chunk-KCO5EFJU.js} +3 -3
  122. package/dist/{chunk-GT7NEXSU.js.map → chunk-KCO5EFJU.js.map} +1 -1
  123. package/dist/{chunk-ARN3ZODS.cjs → chunk-KKYELPZ2.cjs} +6 -6
  124. package/dist/{chunk-ARN3ZODS.cjs.map → chunk-KKYELPZ2.cjs.map} +1 -1
  125. package/dist/{chunk-7Y6BV3TK.cjs → chunk-KMXWZLQX.cjs} +100 -100
  126. package/dist/{chunk-7Y6BV3TK.cjs.map → chunk-KMXWZLQX.cjs.map} +1 -1
  127. package/dist/{chunk-CDYRPI5U.js → chunk-MIJKEVV7.js} +4 -4
  128. package/dist/{chunk-CDYRPI5U.js.map → chunk-MIJKEVV7.js.map} +1 -1
  129. package/dist/{chunk-FFQGI67R.cjs → chunk-NAAMUYMS.cjs} +56 -44
  130. package/dist/chunk-NAAMUYMS.cjs.map +1 -0
  131. package/dist/{chunk-6TJ6PKPS.cjs → chunk-OOA273IJ.cjs} +27 -27
  132. package/dist/{chunk-6TJ6PKPS.cjs.map → chunk-OOA273IJ.cjs.map} +1 -1
  133. package/dist/{chunk-F2KVJ6FF.cjs → chunk-P7GTYOLB.cjs} +203 -117
  134. package/dist/chunk-P7GTYOLB.cjs.map +1 -0
  135. package/dist/{chunk-42XYPKZU.js → chunk-PVUI6KGR.js} +67 -3
  136. package/dist/chunk-PVUI6KGR.js.map +1 -0
  137. package/dist/{chunk-L5AUCL5P.js → chunk-Q6EDCUXV.js} +274 -14
  138. package/dist/chunk-Q6EDCUXV.js.map +1 -0
  139. package/dist/{chunk-ZPCKPLMX.cjs → chunk-QB6VMOJ2.cjs} +8 -8
  140. package/dist/{chunk-ZPCKPLMX.cjs.map → chunk-QB6VMOJ2.cjs.map} +1 -1
  141. package/dist/{chunk-3RPQDGUE.cjs → chunk-QC4MCOFV.cjs} +5 -5
  142. package/dist/{chunk-3RPQDGUE.cjs.map → chunk-QC4MCOFV.cjs.map} +1 -1
  143. package/dist/{chunk-4XRP2N6B.js → chunk-QLUXRWKL.js} +3 -3
  144. package/dist/{chunk-4XRP2N6B.js.map → chunk-QLUXRWKL.js.map} +1 -1
  145. package/dist/{chunk-OM6RIOA5.cjs → chunk-QR24DJDF.cjs} +13 -13
  146. package/dist/{chunk-OM6RIOA5.cjs.map → chunk-QR24DJDF.cjs.map} +1 -1
  147. package/dist/{chunk-YPVQYM3L.js → chunk-QRNYDV5Z.js} +138 -31
  148. package/dist/chunk-QRNYDV5Z.js.map +1 -0
  149. package/dist/{chunk-ZOHCFYXE.js → chunk-QT6V3YRH.js} +3 -3
  150. package/dist/{chunk-ZOHCFYXE.js.map → chunk-QT6V3YRH.js.map} +1 -1
  151. package/dist/{chunk-5C75HQYQ.js → chunk-RFRM3Q5K.js} +17 -5
  152. package/dist/chunk-RFRM3Q5K.js.map +1 -0
  153. package/dist/{chunk-NXIZL7ZZ.js → chunk-RUQS6M7G.js} +6 -6
  154. package/dist/chunk-RUQS6M7G.js.map +1 -0
  155. package/dist/{chunk-CI5NPLXX.js → chunk-S3ZRKJHY.js} +3 -3
  156. package/dist/{chunk-CI5NPLXX.js.map → chunk-S3ZRKJHY.js.map} +1 -1
  157. package/dist/{chunk-3V6D5DEC.js → chunk-S4KQ5LV4.js} +3 -3
  158. package/dist/{chunk-3V6D5DEC.js.map → chunk-S4KQ5LV4.js.map} +1 -1
  159. package/dist/{chunk-CTWZPYJW.js → chunk-TKORQCG4.js} +108 -15
  160. package/dist/chunk-TKORQCG4.js.map +1 -0
  161. package/dist/{chunk-2HKIID5K.js → chunk-TKP5T34P.js} +4 -5
  162. package/dist/chunk-TKP5T34P.js.map +1 -0
  163. package/dist/{chunk-X2XOQZT3.cjs → chunk-U5W4LKZV.cjs} +13 -9
  164. package/dist/chunk-U5W4LKZV.cjs.map +1 -0
  165. package/dist/{chunk-BLBG2VZ5.cjs → chunk-UCQ3BFSY.cjs} +372 -110
  166. package/dist/chunk-UCQ3BFSY.cjs.map +1 -0
  167. package/dist/{chunk-CUPJL6TS.js → chunk-V34A6R5V.js} +13 -4
  168. package/dist/chunk-V34A6R5V.js.map +1 -0
  169. package/dist/{chunk-LQLVJWUH.js → chunk-VTN3C3CH.js} +7 -7
  170. package/dist/chunk-VTN3C3CH.js.map +1 -0
  171. package/dist/{chunk-FY4VY5EV.cjs → chunk-VVQM4CZD.cjs} +20 -20
  172. package/dist/chunk-VVQM4CZD.cjs.map +1 -0
  173. package/dist/{chunk-LDCWO5B6.js → chunk-WDAVPX46.js} +3 -3
  174. package/dist/{chunk-LDCWO5B6.js.map → chunk-WDAVPX46.js.map} +1 -1
  175. package/dist/{chunk-5GV4JQNA.cjs → chunk-WDBXJOU5.cjs} +55 -43
  176. package/dist/chunk-WDBXJOU5.cjs.map +1 -0
  177. package/dist/{chunk-FMPZPOUD.js → chunk-WUFASQUO.js} +3 -3
  178. package/dist/{chunk-FMPZPOUD.js.map → chunk-WUFASQUO.js.map} +1 -1
  179. package/dist/{chunk-5ZPRE4CV.cjs → chunk-YDWLUT5V.cjs} +237 -130
  180. package/dist/chunk-YDWLUT5V.cjs.map +1 -0
  181. package/dist/{chunk-CVNGKTHO.js → chunk-YMTXMPV6.js} +4 -4
  182. package/dist/{chunk-CVNGKTHO.js.map → chunk-YMTXMPV6.js.map} +1 -1
  183. package/dist/{chunk-NDQLPKBX.cjs → chunk-YOALGKRE.cjs} +2092 -1535
  184. package/dist/chunk-YOALGKRE.cjs.map +1 -0
  185. package/dist/{chunk-OMQ2NBOR.cjs → chunk-Z3WO6MND.cjs} +27 -27
  186. package/dist/{chunk-OMQ2NBOR.cjs.map → chunk-Z3WO6MND.cjs.map} +1 -1
  187. package/dist/{chunk-V2GZBPY2.cjs → chunk-ZI6VQSZA.cjs} +310 -61
  188. package/dist/chunk-ZI6VQSZA.cjs.map +1 -0
  189. package/dist/{chunk-ZBV4LQD2.cjs → chunk-ZTAJL4DT.cjs} +4 -4
  190. package/dist/{chunk-ZBV4LQD2.cjs.map → chunk-ZTAJL4DT.cjs.map} +1 -1
  191. package/dist/core/index.cjs +27 -28
  192. package/dist/core/index.d.cts +5 -5
  193. package/dist/core/index.d.ts +5 -5
  194. package/dist/core/index.js +7 -8
  195. package/dist/{ddl-3unqC-kg.d.cts → ddl-BG4J805L.d.cts} +3 -3
  196. package/dist/{ddl-Bc4Dl8fu.d.ts → ddl-CgiS9QLj.d.ts} +3 -3
  197. package/dist/{define-graph-DBFnc7u_.d.ts → define-graph-BGrJahvp.d.ts} +1 -1
  198. package/dist/{define-graph-Byslw2OO.d.cts → define-graph-alREY2wj.d.cts} +1 -1
  199. package/dist/graph-extension/index.cjs +19 -20
  200. package/dist/graph-extension/index.d.cts +4 -4
  201. package/dist/graph-extension/index.d.ts +4 -4
  202. package/dist/graph-extension/index.js +4 -5
  203. package/dist/graph-merge/index.cjs +103 -104
  204. package/dist/graph-merge/index.cjs.map +1 -1
  205. package/dist/graph-merge/index.d.cts +9 -8
  206. package/dist/graph-merge/index.d.ts +9 -8
  207. package/dist/graph-merge/index.js +23 -24
  208. package/dist/graph-merge/index.js.map +1 -1
  209. package/dist/{index-DHXw7QAl.d.cts → index-BBxZCUdu.d.ts} +37 -7
  210. package/dist/{index-DQzVJBHa.d.ts → index-C3y_98iN.d.cts} +37 -7
  211. package/dist/index.cjs +209 -202
  212. package/dist/index.cjs.map +1 -1
  213. package/dist/index.d.cts +13 -13
  214. package/dist/index.d.ts +13 -13
  215. package/dist/index.js +33 -34
  216. package/dist/index.js.map +1 -1
  217. package/dist/indexes/index.cjs +13 -13
  218. package/dist/indexes/index.d.cts +4 -4
  219. package/dist/indexes/index.d.ts +4 -4
  220. package/dist/indexes/index.js +6 -6
  221. package/dist/interchange/index.cjs +50 -41
  222. package/dist/interchange/index.cjs.map +1 -1
  223. package/dist/interchange/index.d.cts +11 -11
  224. package/dist/interchange/index.d.ts +11 -11
  225. package/dist/interchange/index.js +24 -15
  226. package/dist/interchange/index.js.map +1 -1
  227. package/dist/{manager-U9_zopqr.d.cts → manager-KS7CGQQT.d.cts} +44 -6
  228. package/dist/{manager-Dl0-er1G.d.ts → manager-YoLEfcc1.d.ts} +44 -6
  229. package/dist/{materialize-indexes-BM3u0aXE.d.ts → materialize-indexes-Bhhyb1B3.d.ts} +1 -1
  230. package/dist/{materialize-indexes-DzMCetZe.d.cts → materialize-indexes-OHRWypW6.d.cts} +1 -1
  231. package/dist/{postgres-DpJqtbSX.d.cts → postgres-DpkW3R5Y.d.cts} +1 -1
  232. package/dist/{postgres-C5-WMKFA.d.ts → postgres-DwqyIniy.d.ts} +1 -1
  233. package/dist/profiler/index.d.cts +10 -9
  234. package/dist/profiler/index.d.ts +10 -9
  235. package/dist/provenance/index.cjs +38 -38
  236. package/dist/provenance/index.cjs.map +1 -1
  237. package/dist/provenance/index.d.cts +7 -7
  238. package/dist/provenance/index.d.ts +7 -7
  239. package/dist/provenance/index.js +8 -8
  240. package/dist/provenance/index.js.map +1 -1
  241. package/dist/schema/index.cjs +40 -41
  242. package/dist/schema/index.d.cts +7 -7
  243. package/dist/schema/index.d.ts +7 -7
  244. package/dist/schema/index.js +13 -14
  245. package/dist/{searchable-B4mUXZT6.d.cts → searchable-CIZL8Hyw.d.cts} +2 -2
  246. package/dist/{searchable-C7jmPNLT.d.ts → searchable-DLWEfC4a.d.ts} +2 -2
  247. package/dist/{sqlite-Ch5tSYQY.d.ts → sqlite-DY0WODUK.d.cts} +1 -1
  248. package/dist/{sqlite-Da7jiYu9.d.cts → sqlite-L-VIRzqA.d.ts} +1 -1
  249. package/dist/{store-view-DdwBNjZQ.d.ts → store-view-66p92IPi.d.ts} +1974 -1751
  250. package/dist/{store-view-D1F6KqsE.d.cts → store-view-A85FFRnk.d.cts} +1974 -1751
  251. package/dist/{temporal-CMpigMCW.d.cts → temporal-BNbjXqer.d.cts} +1 -1
  252. package/dist/{temporal-BtrTYTiB.d.ts → temporal-Bob6Nfbp.d.ts} +1 -1
  253. package/dist/{types-Dh-EgT-w.d.cts → types-Ch9a0Dx6.d.cts} +483 -20
  254. package/dist/{types-Dh-EgT-w.d.ts → types-Ch9a0Dx6.d.ts} +483 -20
  255. package/dist/{types-D2rU5Taq.d.ts → types-ClCzT-dT.d.ts} +1 -1
  256. package/dist/{types-G4sVM-76.d.cts → types-DeORZhxn.d.cts} +1 -1
  257. package/dist/{where-DbZ9XDOI.d.cts → where-DPw52ksb.d.cts} +1 -1
  258. package/dist/{where-B8Y21kig.d.ts → where-kWUZPvEA.d.ts} +1 -1
  259. package/package.json +1 -1
  260. package/dist/chunk-2HKIID5K.js.map +0 -1
  261. package/dist/chunk-33PAKPED.cjs.map +0 -1
  262. package/dist/chunk-42XYPKZU.js.map +0 -1
  263. package/dist/chunk-4WYFRACU.js.map +0 -1
  264. package/dist/chunk-5C75HQYQ.js.map +0 -1
  265. package/dist/chunk-5GV4JQNA.cjs.map +0 -1
  266. package/dist/chunk-5Q3P6OIC.cjs.map +0 -1
  267. package/dist/chunk-5ZPRE4CV.cjs.map +0 -1
  268. package/dist/chunk-64LERBFM.cjs.map +0 -1
  269. package/dist/chunk-AO2WPYFZ.cjs.map +0 -1
  270. package/dist/chunk-BLBG2VZ5.cjs.map +0 -1
  271. package/dist/chunk-CTWZPYJW.js.map +0 -1
  272. package/dist/chunk-CUPJL6TS.js.map +0 -1
  273. package/dist/chunk-DMZEVJGL.cjs.map +0 -1
  274. package/dist/chunk-ECU53PMN.cjs.map +0 -1
  275. package/dist/chunk-EQOQOT55.js.map +0 -1
  276. package/dist/chunk-F2KVJ6FF.cjs.map +0 -1
  277. package/dist/chunk-F7TDKSVB.cjs +0 -61
  278. package/dist/chunk-F7TDKSVB.cjs.map +0 -1
  279. package/dist/chunk-FFQGI67R.cjs.map +0 -1
  280. package/dist/chunk-FY4VY5EV.cjs.map +0 -1
  281. package/dist/chunk-HHBKGPEI.js.map +0 -1
  282. package/dist/chunk-JNXZQBN3.js.map +0 -1
  283. package/dist/chunk-KDRF3NR2.cjs.map +0 -1
  284. package/dist/chunk-KTBTSHU6.cjs.map +0 -1
  285. package/dist/chunk-L2BYRYHC.js.map +0 -1
  286. package/dist/chunk-L5AUCL5P.js.map +0 -1
  287. package/dist/chunk-LQLVJWUH.js.map +0 -1
  288. package/dist/chunk-M4GYQF2H.js.map +0 -1
  289. package/dist/chunk-NDQLPKBX.cjs.map +0 -1
  290. package/dist/chunk-NXIZL7ZZ.js.map +0 -1
  291. package/dist/chunk-O2GZM7UK.cjs.map +0 -1
  292. package/dist/chunk-O7XVCLXW.cjs.map +0 -1
  293. package/dist/chunk-OYJSYDIH.js.map +0 -1
  294. package/dist/chunk-RAWG2FEU.js.map +0 -1
  295. package/dist/chunk-RXOAXO3R.js +0 -59
  296. package/dist/chunk-RXOAXO3R.js.map +0 -1
  297. package/dist/chunk-U3YRCZ5L.cjs +0 -12
  298. package/dist/chunk-UTTW2Q3M.cjs.map +0 -1
  299. package/dist/chunk-UZLEQFTV.js.map +0 -1
  300. package/dist/chunk-V2GZBPY2.cjs.map +0 -1
  301. package/dist/chunk-VC26BUNP.js.map +0 -1
  302. package/dist/chunk-VGMNGWBR.cjs +0 -12
  303. package/dist/chunk-X2XOQZT3.cjs.map +0 -1
  304. package/dist/chunk-XDMPDUKL.cjs.map +0 -1
  305. package/dist/chunk-YPVQYM3L.js.map +0 -1
  306. package/dist/chunk-ZGOUVMVS.js.map +0 -1
  307. 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; PostgreSQL's wire protocol caps it at 65535.
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.removeKinds()` and `store.materializeRemovals()` can persist
3088
- * removal status. Mirrors the focused-bootstrap rationale documented
3089
- * on `ensureIndexMaterializationsTable` — the full `bootstrapTables`
3090
- * touches every base table and risks Postgres SHARE-lock deadlock
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
- trustedImport?: <T>(this: void, fn: (session: TrustedImportSession) => Promise<T>) => Promise<T>;
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 VectorOperationBackend = Pick<GraphBackend, "upsertEmbedding" | "upsertEmbeddingBatch" | "deleteEmbedding" | "vectorSearch" | "createVectorIndex" | "dropVectorIndex">;
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
- * PostgreSQL's wire-protocol bound-parameter ceiling (a 16-bit count). Single
3615
- * source of truth for {@link POSTGRES_CAPABILITIES} and the Postgres backend's
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 = 65535;
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 AggregateExpr as $, type AdapterBackend as A, type BackendCapabilities as B, type IndexEntity as C, type DeleteBehavior as D, type EdgeRegistration as E, type FulltextStrategy as F, type GraphExtension as G, type SerializedMetaEdge as H, type IndexDeclaration as I, type JsonPointer as J, type KindEntity as K, type SerializedOntologyRelation as L, type SerializedClosures as M, type NodeRegistration as N, type OntologyRelation as O, type SchemaHash as P, type QueryAst as Q, type RelationalIndexDeclaration as R, type SqlDialect as S, type TemporalMode as T, type NullCheckOp as U, type VectorStrategy as V, type JsonSchema as W, type SerializedOntology as X, type SerializedUniqueConstraint as Y, type InferenceType as Z, type EdgeType as _, type NodeType as a, type RawStatementExecutionBackend as a$, type FieldRef as a0, type ComparisonOp as a1, type AggregateComparisonPredicate as a2, type TraversalDirection as a3, type AdapterBackendTransactions as a4, type BackendIdentity as a5, type BackendLifecycle as a6, type BackendMaintenance as a7, type BackendTransactions as a8, CURRENT_GRAPH_EXTENSION_VERSION as a9, type GraphEntityReadBackend as aA, type GraphEntityWriteBackend as aB, type GraphExtensionVersion as aC, type GraphLifecycleBackend as aD, type HybridFusionOptions as aE, type IndexMaterializationBackend as aF, type IntentSql as aG, type JsonPointerFor as aH, type JsonPointerInput as aI, type JsonPointerSegment as aJ, type JsonPointerSegments as aK, type JsonPointerSegmentsFor as aL, type JsonValue as aM, type KindAnnotations as aN, LEGACY_GRAPH_EXTENSION_VERSION as aO, MAX_JSON_POINTER_DEPTH as aP, type MetaEdge as aQ, type MetaEdgeProperties as aR, type NodeEntityReadBackend as aS, type NodeEntityWriteBackend as aT, type NodeId as aU, type NodeProps as aV, type OrderSpec as aW, type ParameterRef as aX, Placeholder as aY, type QueryExecutionBackend as aZ, type RawQueryExecutionBackend as a_, type Cardinality as aa, type Collation as ab, type CommitSchemaVersionExpected as ac, type CommitSchemaVersionParams as ad, type CompiledRowsSql as ae, type CompiledSelectSql as af, type CompiledStatementSql as ag, type ContributionMaterializationBackend as ah, DEFAULT_SQL_SCHEMA as ai, type DeleteFulltextBatchParams as aj, type EdgeEntityReadBackend as ak, type EdgeEntityWriteBackend as al, type EdgeId as am, type EdgeProps as an, type EdgeTypeWithEndpoints as ao, type EndpointExistence as ap, type ExternalRecordedReadSource as aq, type FilteredApproximateSearch as ar, type FilteredApproximateSearchMode as as, type FulltextBatchRow as at, type FulltextCapabilities as au, type FulltextOperationBackend as av, type FulltextQueryMode as aw, type FulltextSearchParams as ax, type FulltextSearchResult as ay, type GraphAnalyticsCapabilities as az, type AnyEdgeType as b, type VectorMetricType as b$, type RecordedRelationOptions as b0, type RemovalMaterializationBackend as b1, type RenderedSql as b2, type ResolveJsonPointer as b3, type ResolveJsonPointerSegments as b4, type ResolvedSqlTableNames as b5, type RowProps as b6, type SchemaCommitBackend as b7, type SchemaReadBackend as b8, type SetActiveVersionParams as b9, buildVectorCapabilities as bA, createSqlSchema as bB, fts5Strategy as bC, isEdgeType as bD, isEdgeTypeWithEndpoints as bE, isMetaEdge as bF, isNodeType as bG, isSqlFragment as bH, joinJsonPointers as bI, jsonPointer as bJ, normalizeJsonPointer as bK, parseJsonPointer as bL, recordedRelation as bM, renderPostgres as bN, renderSql as bO, renderSqlInline as bP, renderSqlite as bQ, rowPropsToJsonText as bR, rowPropsToObject as bS, sql as bT, tsvectorStrategy as bU, type ExtensionNodeDef as bV, type ExtensionEdgeDef as bW, type ExtensionOntologyRelation as bX, type ExtensionIndex as bY, type ValueType as bZ, type PredicateExpression as b_, type SortDirection as ba, type SqlChunk as bb, type SqlFragment as bc, type SqlIdentifierChunk as bd, type SqlIntent as be, type SqlParameterChunk as bf, type SqlPlaceholderChunk as bg, SqlSchema as bh, type SqlTableNames as bi, type SqlTag as bj, type SqlTextChunk as bk, type StrategyTableContribution as bl, type TableContribution as bm, type TransactionBackend as bn, type TransactionOptions as bo, type TransactionReadBackend as bp, type TraversalExpansion as bq, type TrustedImportSession as br, type UniqueConstraint as bs, type UniqueConstraintBackend as bt, type UniquenessScope as bu, type UpsertFulltextBatchParams as bv, type VectorCapabilities as bw, type VectorOperationBackend as bx, asEdgeId as by, asNodeId as bz, type GraphDefaults as c, type FindNodesByKindParams as c$, type Traversal as c0, type NodePredicate as c1, type ProjectedField as c2, type AggregateOrderSpec as c3, type GroupBySpec as c4, type RecursiveCyclePolicy as c5, type NodeRow as c6, type EdgeRow as c7, type VectorSlotMap as c8, type RecordedReadBinding as c9, type DialectAdapter as cA, type DialectCapabilities as cB, type DialectRecursiveQueryStrategy as cC, type DialectStandardQueryStrategy as cD, type DialectVectorPredicateStrategy as cE, type DropVectorIndexParams as cF, type EdgeExistsBetweenParams as cG, type ExtensionArrayItemType as cH, type ExtensionArrayProperty as cI, type ExtensionBooleanProperty as cJ, type ExtensionEdgeIndex as cK, type ExtensionEmbeddingModifier as cL, type ExtensionEnumProperty as cM, type ExtensionIndexWhere as cN, type ExtensionNodeIndex as cO, type ExtensionNumberProperty as cP, type ExtensionObjectFieldProperty as cQ, type ExtensionObjectProperty as cR, type ExtensionPropertyModifiers as cS, type ExtensionPropertyType as cT, type ExtensionSearchableModifier as cU, type ExtensionStringProperty as cV, type ExtensionUniqueConstraint as cW, type ExtensionUniqueWhere as cX, FULLTEXT_CONTRIBUTION_NAME as cY, type FindEdgesByKindParams as cZ, type FindEdgesConnectedToParams as c_, type SelectiveField as ca, type ComposableQuery as cb, type SetOperationType as cc, type SetOperation as cd, type VectorMetric as ce, ALL_FULLTEXT_MODES as cf, ALL_META_EDGE_NAMES as cg, BASE_CONTRIBUTION_OWNER as ch, type CheckUniqueBatchParams as ci, type CheckUniqueParams as cj, type ClaimIndexMaterializationParams as ck, type CompiledTemporaryStatementSql as cl, type ContributionMaterializationIdentity as cm, type ContributionMaterializationRow as cn, type CountEdgesByKindParams as co, type CountEdgesFromParams as cp, type CountNodesByKindParams as cq, type CreateVectorIndexParams as cr, D1_MAX_BIND_PARAMETERS as cs, DURABLE_OBJECT_MAX_BIND_PARAMETERS as ct, type DeleteEdgeParams as cu, type DeleteEdgesBatchParams as cv, type DeleteEmbeddingParams as cw, type DeleteFulltextParams as cx, type DeleteNodeParams as cy, type DeleteUniqueParams as cz, type EdgeIndexDeclaration as d, type GraphReadBackend as d0, type HardDeleteEdgeParams as d1, type HardDeleteNodeParams as d2, type HybridSearchParams as d3, type HybridSearchRow as d4, type IndexDeclarationBase as d5, type IndexMaterializationRow as d6, type IndexWhereLiteral as d7, type IndexWhereOp as d8, type IndexWhereOperand as d9, type UpsertFulltextParams as dA, VECTOR_CONTRIBUTION_PREFIX as dB, type VectorIndexType as dC, type VectorSearchParams as dD, type VectorSearchResult as dE, assertFiniteEmbedding as dF, assertVectorMinScore as dG, assertVectorSearchLimit as dH, buildFulltextCapabilities as dI, isLiveNodeRow as dJ, isSqlPlaceholder as dK, isTombstonedNodeRow as dL, normalizeGraphAnalyticsCapabilities as dM, quoteIdentifier as dN, shortHash as dO, vectorMinScoreCondition as dP, vectorPhysicalName as dQ, vectorScoreExpression as dR, GRAPH_EXTENSION_TOP_LEVEL_KEYS as dS, type GraphExtensionTopLevelKey as dT, type InsertEdgeParams as da, type InsertNodeParams as db, type InsertSchemaParams as dc, type InsertUniqueParams as dd, type KindRemovalRow as de, type LiveNodeRow as df, MODERN_SQLITE_MAX_BIND_PARAMETERS as dg, type MetaEdgeName as dh, POSTGRES_CAPABILITIES as di, POSTGRES_MAX_BIND_PARAMETERS as dj, type RecordContributionMaterializationParams as dk, type RecordIndexMaterializationParams as dl, type RecordKindRemovalParams as dm, type RelationalIndexMethod as dn, type ReleaseIndexMaterializationClaimParams as dp, SQLITE_CAPABILITIES as dq, SQLITE_MAX_BIND_PARAMETERS as dr, type SqlCompilationBackend as ds, type TombstonedNodeRow as dt, type UniqueRow as du, type UpdateEdgeParams as dv, type UpdateNodeParams as dw, type UpsertEmbeddingBatchParams as dx, type UpsertEmbeddingBatchRow as dy, type UpsertEmbeddingParams as dz, type NodeIndexDeclaration as e, type EdgeIndexConfig as f, type EdgeIndexDirection as g, type EdgeIndexWhereBuilder as h, type IndexOrigin as i, type IndexScope as j, type IndexWhereExpression as k, type IndexWhereFieldBuilder as l, type IndexWhereInput as m, type NodeIndexConfig as n, type NodeIndexWhereBuilder as o, type SystemColumnName as p, type VectorIndexDeclaration as q, type VectorIndexImplementation as r, type VectorIndexMetric as s, type VectorIndexParams as t, type VectorSlot as u, type SchemaVersionRow as v, type GraphBackend as w, type SerializedSchema as x, type SerializedNodeDef as y, type SerializedEdgeDef as z };
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 };