@decaf-ts/integrations 0.3.1 → 0.3.2

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 (354) hide show
  1. package/dist/integrations.cjs +1 -1
  2. package/lib/cjs/graph/constants.cjs +94 -0
  3. package/lib/cjs/graph/constants.cjs.map +1 -0
  4. package/lib/cjs/graph/decorators.cjs +4 -0
  5. package/lib/cjs/graph/decorators.cjs.map +1 -0
  6. package/lib/cjs/graph/errors/GraphCycleError.cjs +20 -0
  7. package/lib/cjs/graph/errors/GraphCycleError.cjs.map +1 -0
  8. package/lib/cjs/graph/errors/GraphExecutionError.cjs +27 -0
  9. package/lib/cjs/graph/errors/GraphExecutionError.cjs.map +1 -0
  10. package/lib/cjs/graph/errors/GraphInputError.cjs +20 -0
  11. package/lib/cjs/graph/errors/GraphInputError.cjs.map +1 -0
  12. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs +20 -0
  13. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs.map +1 -0
  14. package/lib/cjs/graph/errors/GraphPinningError.cjs +20 -0
  15. package/lib/cjs/graph/errors/GraphPinningError.cjs.map +1 -0
  16. package/lib/cjs/graph/errors/GraphPortError.cjs +20 -0
  17. package/lib/cjs/graph/errors/GraphPortError.cjs.map +1 -0
  18. package/lib/cjs/graph/errors/GraphStoreError.cjs +20 -0
  19. package/lib/cjs/graph/errors/GraphStoreError.cjs.map +1 -0
  20. package/lib/cjs/graph/errors/GraphTopologyError.cjs +20 -0
  21. package/lib/cjs/graph/errors/GraphTopologyError.cjs.map +1 -0
  22. package/lib/cjs/graph/errors/index.cjs +31 -0
  23. package/lib/cjs/graph/errors/index.cjs.map +1 -0
  24. package/lib/cjs/graph/events/GraphExecutionEvent.cjs +4 -0
  25. package/lib/cjs/graph/events/GraphExecutionEvent.cjs.map +1 -0
  26. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs +40 -0
  27. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs.map +1 -0
  28. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs +37 -0
  29. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs.map +1 -0
  30. package/lib/cjs/graph/events/GraphExecutionObserver.cjs +4 -0
  31. package/lib/cjs/graph/events/GraphExecutionObserver.cjs.map +1 -0
  32. package/lib/cjs/graph/events/index.cjs +27 -0
  33. package/lib/cjs/graph/events/index.cjs.map +1 -0
  34. package/lib/cjs/graph/execution/GraphExecutionContext.cjs +79 -0
  35. package/lib/cjs/graph/execution/GraphExecutionContext.cjs.map +1 -0
  36. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs +405 -0
  37. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs.map +1 -0
  38. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs +32 -0
  39. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs.map +1 -0
  40. package/lib/cjs/graph/execution/GraphExecutionResult.cjs +30 -0
  41. package/lib/cjs/graph/execution/GraphExecutionResult.cjs.map +1 -0
  42. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs +4 -0
  43. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs.map +1 -0
  44. package/lib/cjs/graph/execution/index.cjs +28 -0
  45. package/lib/cjs/graph/execution/index.cjs.map +1 -0
  46. package/lib/cjs/graph/index.cjs +74 -0
  47. package/lib/cjs/graph/index.cjs.map +1 -0
  48. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs +84 -0
  49. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs.map +1 -0
  50. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs +63 -0
  51. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs.map +1 -0
  52. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs +16 -0
  53. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs.map +1 -0
  54. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs +76 -0
  55. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs.map +1 -0
  56. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs +77 -0
  57. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs.map +1 -0
  58. package/lib/cjs/graph/loops/index.cjs +28 -0
  59. package/lib/cjs/graph/loops/index.cjs.map +1 -0
  60. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs +28 -0
  61. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs.map +1 -0
  62. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs +20 -0
  63. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs.map +1 -0
  64. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs +34 -0
  65. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs.map +1 -0
  66. package/lib/cjs/graph/pinning/GraphPinningService.cjs +191 -0
  67. package/lib/cjs/graph/pinning/GraphPinningService.cjs.map +1 -0
  68. package/lib/cjs/graph/pinning/index.cjs +27 -0
  69. package/lib/cjs/graph/pinning/index.cjs.map +1 -0
  70. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs +4 -0
  71. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs.map +1 -0
  72. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs +4 -0
  73. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs.map +1 -0
  74. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs +4 -0
  75. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs.map +1 -0
  76. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs +4 -0
  77. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs.map +1 -0
  78. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs +197 -0
  79. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs.map +1 -0
  80. package/lib/cjs/graph/planning/GraphRelationResolver.cjs +172 -0
  81. package/lib/cjs/graph/planning/GraphRelationResolver.cjs.map +1 -0
  82. package/lib/cjs/graph/planning/GraphTopology.cjs +57 -0
  83. package/lib/cjs/graph/planning/GraphTopology.cjs.map +1 -0
  84. package/lib/cjs/graph/planning/index.cjs +30 -0
  85. package/lib/cjs/graph/planning/index.cjs.map +1 -0
  86. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs +44 -0
  87. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs.map +1 -0
  88. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs +27 -0
  89. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs.map +1 -0
  90. package/lib/cjs/graph/registry/index.cjs +25 -0
  91. package/lib/cjs/graph/registry/index.cjs.map +1 -0
  92. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs +53 -0
  93. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs.map +1 -0
  94. package/lib/cjs/graph/snapshots/index.cjs +24 -0
  95. package/lib/cjs/graph/snapshots/index.cjs.map +1 -0
  96. package/lib/cjs/graph/store/GraphCachedValue.cjs +4 -0
  97. package/lib/cjs/graph/store/GraphCachedValue.cjs.map +1 -0
  98. package/lib/cjs/graph/store/GraphValueKey.cjs +4 -0
  99. package/lib/cjs/graph/store/GraphValueKey.cjs.map +1 -0
  100. package/lib/cjs/graph/store/GraphValueStore.cjs +76 -0
  101. package/lib/cjs/graph/store/GraphValueStore.cjs.map +1 -0
  102. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs +4 -0
  103. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs.map +1 -0
  104. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs +69 -0
  105. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs.map +1 -0
  106. package/lib/cjs/graph/store/index.cjs +28 -0
  107. package/lib/cjs/graph/store/index.cjs.map +1 -0
  108. package/lib/cjs/graph/types.cjs +4 -0
  109. package/lib/cjs/graph/types.cjs.map +1 -0
  110. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs +33 -0
  111. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs.map +1 -0
  112. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs +58 -0
  113. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs.map +1 -0
  114. package/lib/cjs/graph/validation/GraphValueValidator.cjs +52 -0
  115. package/lib/cjs/graph/validation/GraphValueValidator.cjs.map +1 -0
  116. package/lib/cjs/graph/validation/index.cjs +26 -0
  117. package/lib/cjs/graph/validation/index.cjs.map +1 -0
  118. package/lib/cjs/index.cjs +3 -3
  119. package/lib/esm/graph/constants.js +106 -0
  120. package/lib/esm/graph/constants.js.map +1 -0
  121. package/lib/esm/graph/decorators.js +2 -0
  122. package/lib/esm/graph/decorators.js.map +1 -0
  123. package/lib/esm/graph/errors/GraphCycleError.js +15 -0
  124. package/lib/esm/graph/errors/GraphCycleError.js.map +1 -0
  125. package/lib/esm/graph/errors/GraphExecutionError.js +22 -0
  126. package/lib/esm/graph/errors/GraphExecutionError.js.map +1 -0
  127. package/lib/esm/graph/errors/GraphInputError.js +15 -0
  128. package/lib/esm/graph/errors/GraphInputError.js.map +1 -0
  129. package/lib/esm/graph/errors/GraphLoopLimitError.js +15 -0
  130. package/lib/esm/graph/errors/GraphLoopLimitError.js.map +1 -0
  131. package/lib/esm/graph/errors/GraphPinningError.js +15 -0
  132. package/lib/esm/graph/errors/GraphPinningError.js.map +1 -0
  133. package/lib/esm/graph/errors/GraphPortError.js +15 -0
  134. package/lib/esm/graph/errors/GraphPortError.js.map +1 -0
  135. package/lib/esm/graph/errors/GraphStoreError.js +15 -0
  136. package/lib/esm/graph/errors/GraphStoreError.js.map +1 -0
  137. package/lib/esm/graph/errors/GraphTopologyError.js +15 -0
  138. package/lib/esm/graph/errors/GraphTopologyError.js.map +1 -0
  139. package/lib/esm/graph/errors/index.js +14 -0
  140. package/lib/esm/graph/errors/index.js.map +1 -0
  141. package/lib/esm/graph/events/GraphExecutionEvent.js +2 -0
  142. package/lib/esm/graph/events/GraphExecutionEvent.js.map +1 -0
  143. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +35 -0
  144. package/lib/esm/graph/events/GraphExecutionEventEmitter.js.map +1 -0
  145. package/lib/esm/graph/events/GraphExecutionEventFactory.js +32 -0
  146. package/lib/esm/graph/events/GraphExecutionEventFactory.js.map +1 -0
  147. package/lib/esm/graph/events/GraphExecutionObserver.js +2 -0
  148. package/lib/esm/graph/events/GraphExecutionObserver.js.map +1 -0
  149. package/lib/esm/graph/events/index.js +10 -0
  150. package/lib/esm/graph/events/index.js.map +1 -0
  151. package/lib/esm/graph/execution/GraphExecutionContext.js +74 -0
  152. package/lib/esm/graph/execution/GraphExecutionContext.js.map +1 -0
  153. package/lib/esm/graph/execution/GraphExecutionEngine.js +400 -0
  154. package/lib/esm/graph/execution/GraphExecutionEngine.js.map +1 -0
  155. package/lib/esm/graph/execution/GraphExecutionFrame.js +27 -0
  156. package/lib/esm/graph/execution/GraphExecutionFrame.js.map +1 -0
  157. package/lib/esm/graph/execution/GraphExecutionResult.js +26 -0
  158. package/lib/esm/graph/execution/GraphExecutionResult.js.map +1 -0
  159. package/lib/esm/graph/execution/GraphNodeExecutor.js +2 -0
  160. package/lib/esm/graph/execution/GraphNodeExecutor.js.map +1 -0
  161. package/lib/esm/graph/execution/index.js +11 -0
  162. package/lib/esm/graph/execution/index.js.map +1 -0
  163. package/lib/esm/graph/index.js +57 -0
  164. package/lib/esm/graph/index.js.map +1 -0
  165. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +79 -0
  166. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js.map +1 -0
  167. package/lib/esm/graph/loops/GraphConditionEvaluator.js +58 -0
  168. package/lib/esm/graph/loops/GraphConditionEvaluator.js.map +1 -0
  169. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +11 -0
  170. package/lib/esm/graph/loops/GraphLoopExecutionContext.js.map +1 -0
  171. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +71 -0
  172. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js.map +1 -0
  173. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +72 -0
  174. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js.map +1 -0
  175. package/lib/esm/graph/loops/index.js +11 -0
  176. package/lib/esm/graph/loops/index.js.map +1 -0
  177. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +23 -0
  178. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js.map +1 -0
  179. package/lib/esm/graph/pinning/GraphPinningMetadata.js +15 -0
  180. package/lib/esm/graph/pinning/GraphPinningMetadata.js.map +1 -0
  181. package/lib/esm/graph/pinning/GraphPinningPolicy.js +29 -0
  182. package/lib/esm/graph/pinning/GraphPinningPolicy.js.map +1 -0
  183. package/lib/esm/graph/pinning/GraphPinningService.js +186 -0
  184. package/lib/esm/graph/pinning/GraphPinningService.js.map +1 -0
  185. package/lib/esm/graph/pinning/index.js +10 -0
  186. package/lib/esm/graph/pinning/index.js.map +1 -0
  187. package/lib/esm/graph/planning/GraphExecutionPlan.js +2 -0
  188. package/lib/esm/graph/planning/GraphExecutionPlan.js.map +1 -0
  189. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +7 -0
  190. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js.map +1 -0
  191. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +2 -0
  192. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js.map +1 -0
  193. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +2 -0
  194. package/lib/esm/graph/planning/GraphExecutionPlanNode.js.map +1 -0
  195. package/lib/esm/graph/planning/GraphExecutionPlanner.js +192 -0
  196. package/lib/esm/graph/planning/GraphExecutionPlanner.js.map +1 -0
  197. package/lib/esm/graph/planning/GraphRelationResolver.js +167 -0
  198. package/lib/esm/graph/planning/GraphRelationResolver.js.map +1 -0
  199. package/lib/esm/graph/planning/GraphTopology.js +52 -0
  200. package/lib/esm/graph/planning/GraphTopology.js.map +1 -0
  201. package/lib/esm/graph/planning/index.js +13 -0
  202. package/lib/esm/graph/planning/index.js.map +1 -0
  203. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +39 -0
  204. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js.map +1 -0
  205. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +22 -0
  206. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js.map +1 -0
  207. package/lib/esm/graph/registry/index.js +8 -0
  208. package/lib/esm/graph/registry/index.js.map +1 -0
  209. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  210. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js.map +1 -0
  211. package/lib/esm/graph/snapshots/index.js +7 -0
  212. package/lib/esm/graph/snapshots/index.js.map +1 -0
  213. package/lib/esm/graph/store/GraphCachedValue.js +2 -0
  214. package/lib/esm/graph/store/GraphCachedValue.js.map +1 -0
  215. package/lib/esm/graph/store/GraphValueKey.js +7 -0
  216. package/lib/esm/graph/store/GraphValueKey.js.map +1 -0
  217. package/lib/esm/graph/store/GraphValueStore.js +71 -0
  218. package/lib/esm/graph/store/GraphValueStore.js.map +1 -0
  219. package/lib/esm/graph/store/GraphValueStoreAdapter.js +2 -0
  220. package/lib/esm/graph/store/GraphValueStoreAdapter.js.map +1 -0
  221. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +64 -0
  222. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js.map +1 -0
  223. package/lib/esm/graph/store/index.js +11 -0
  224. package/lib/esm/graph/store/index.js.map +1 -0
  225. package/lib/esm/graph/types.js +2 -0
  226. package/lib/esm/graph/types.js.map +1 -0
  227. package/lib/esm/graph/validation/GraphDefinitionValidator.js +28 -0
  228. package/lib/esm/graph/validation/GraphDefinitionValidator.js.map +1 -0
  229. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +53 -0
  230. package/lib/esm/graph/validation/GraphPortSchemaResolver.js.map +1 -0
  231. package/lib/esm/graph/validation/GraphValueValidator.js +47 -0
  232. package/lib/esm/graph/validation/GraphValueValidator.js.map +1 -0
  233. package/lib/esm/graph/validation/index.js +9 -0
  234. package/lib/esm/graph/validation/index.js.map +1 -0
  235. package/lib/esm/index.js +3 -3
  236. package/lib/types/graph/constants.d.cts +101 -0
  237. package/lib/types/graph/constants.d.mts +101 -0
  238. package/lib/types/graph/decorators.d.cts +6 -0
  239. package/lib/types/graph/decorators.d.mts +6 -0
  240. package/lib/types/graph/errors/GraphCycleError.d.cts +12 -0
  241. package/lib/types/graph/errors/GraphCycleError.d.mts +12 -0
  242. package/lib/types/graph/errors/GraphExecutionError.d.cts +19 -0
  243. package/lib/types/graph/errors/GraphExecutionError.d.mts +19 -0
  244. package/lib/types/graph/errors/GraphInputError.d.cts +12 -0
  245. package/lib/types/graph/errors/GraphInputError.d.mts +12 -0
  246. package/lib/types/graph/errors/GraphLoopLimitError.d.cts +12 -0
  247. package/lib/types/graph/errors/GraphLoopLimitError.d.mts +12 -0
  248. package/lib/types/graph/errors/GraphPinningError.d.cts +12 -0
  249. package/lib/types/graph/errors/GraphPinningError.d.mts +12 -0
  250. package/lib/types/graph/errors/GraphPortError.d.cts +12 -0
  251. package/lib/types/graph/errors/GraphPortError.d.mts +12 -0
  252. package/lib/types/graph/errors/GraphStoreError.d.cts +12 -0
  253. package/lib/types/graph/errors/GraphStoreError.d.mts +12 -0
  254. package/lib/types/graph/errors/GraphTopologyError.d.cts +12 -0
  255. package/lib/types/graph/errors/GraphTopologyError.d.mts +12 -0
  256. package/lib/types/graph/errors/index.d.cts +13 -0
  257. package/lib/types/graph/errors/index.d.mts +13 -0
  258. package/lib/types/graph/events/GraphExecutionEvent.d.cts +6 -0
  259. package/lib/types/graph/events/GraphExecutionEvent.d.mts +6 -0
  260. package/lib/types/graph/events/GraphExecutionEventEmitter.d.cts +26 -0
  261. package/lib/types/graph/events/GraphExecutionEventEmitter.d.mts +26 -0
  262. package/lib/types/graph/events/GraphExecutionEventFactory.d.cts +25 -0
  263. package/lib/types/graph/events/GraphExecutionEventFactory.d.mts +25 -0
  264. package/lib/types/graph/events/GraphExecutionObserver.d.cts +17 -0
  265. package/lib/types/graph/events/GraphExecutionObserver.d.mts +17 -0
  266. package/lib/types/graph/events/index.d.cts +9 -0
  267. package/lib/types/graph/events/index.d.mts +9 -0
  268. package/lib/types/graph/execution/GraphExecutionContext.d.cts +50 -0
  269. package/lib/types/graph/execution/GraphExecutionContext.d.mts +50 -0
  270. package/lib/types/graph/execution/GraphExecutionEngine.d.cts +112 -0
  271. package/lib/types/graph/execution/GraphExecutionEngine.d.mts +112 -0
  272. package/lib/types/graph/execution/GraphExecutionFrame.d.cts +29 -0
  273. package/lib/types/graph/execution/GraphExecutionFrame.d.mts +29 -0
  274. package/lib/types/graph/execution/GraphExecutionResult.d.cts +13 -0
  275. package/lib/types/graph/execution/GraphExecutionResult.d.mts +13 -0
  276. package/lib/types/graph/execution/GraphNodeExecutor.d.cts +23 -0
  277. package/lib/types/graph/execution/GraphNodeExecutor.d.mts +23 -0
  278. package/lib/types/graph/execution/index.d.cts +10 -0
  279. package/lib/types/graph/execution/index.d.mts +10 -0
  280. package/lib/types/graph/index.d.cts +52 -0
  281. package/lib/types/graph/index.d.mts +52 -0
  282. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.cts +27 -0
  283. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.mts +27 -0
  284. package/lib/types/graph/loops/GraphConditionEvaluator.d.cts +23 -0
  285. package/lib/types/graph/loops/GraphConditionEvaluator.d.mts +23 -0
  286. package/lib/types/graph/loops/GraphLoopExecutionContext.d.cts +15 -0
  287. package/lib/types/graph/loops/GraphLoopExecutionContext.d.mts +15 -0
  288. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.cts +22 -0
  289. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.mts +22 -0
  290. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.cts +26 -0
  291. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.mts +26 -0
  292. package/lib/types/graph/loops/index.d.cts +10 -0
  293. package/lib/types/graph/loops/index.d.mts +10 -0
  294. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.cts +21 -0
  295. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.mts +21 -0
  296. package/lib/types/graph/pinning/GraphPinningMetadata.d.cts +14 -0
  297. package/lib/types/graph/pinning/GraphPinningMetadata.d.mts +14 -0
  298. package/lib/types/graph/pinning/GraphPinningPolicy.d.cts +20 -0
  299. package/lib/types/graph/pinning/GraphPinningPolicy.d.mts +20 -0
  300. package/lib/types/graph/pinning/GraphPinningService.d.cts +59 -0
  301. package/lib/types/graph/pinning/GraphPinningService.d.mts +59 -0
  302. package/lib/types/graph/pinning/index.d.cts +9 -0
  303. package/lib/types/graph/pinning/index.d.mts +9 -0
  304. package/lib/types/graph/planning/GraphExecutionPlan.d.cts +21 -0
  305. package/lib/types/graph/planning/GraphExecutionPlan.d.mts +21 -0
  306. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.cts +21 -0
  307. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.mts +21 -0
  308. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.cts +13 -0
  309. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.mts +13 -0
  310. package/lib/types/graph/planning/GraphExecutionPlanNode.d.cts +20 -0
  311. package/lib/types/graph/planning/GraphExecutionPlanNode.d.mts +20 -0
  312. package/lib/types/graph/planning/GraphExecutionPlanner.d.cts +60 -0
  313. package/lib/types/graph/planning/GraphExecutionPlanner.d.mts +60 -0
  314. package/lib/types/graph/planning/GraphRelationResolver.d.cts +62 -0
  315. package/lib/types/graph/planning/GraphRelationResolver.d.mts +62 -0
  316. package/lib/types/graph/planning/GraphTopology.d.cts +23 -0
  317. package/lib/types/graph/planning/GraphTopology.d.mts +23 -0
  318. package/lib/types/graph/planning/index.d.cts +12 -0
  319. package/lib/types/graph/planning/index.d.mts +12 -0
  320. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.cts +25 -0
  321. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.mts +25 -0
  322. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.cts +21 -0
  323. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.mts +21 -0
  324. package/lib/types/graph/registry/index.d.cts +7 -0
  325. package/lib/types/graph/registry/index.d.mts +7 -0
  326. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.cts +10 -0
  327. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.mts +10 -0
  328. package/lib/types/graph/snapshots/index.d.cts +6 -0
  329. package/lib/types/graph/snapshots/index.d.mts +6 -0
  330. package/lib/types/graph/store/GraphCachedValue.d.cts +20 -0
  331. package/lib/types/graph/store/GraphCachedValue.d.mts +20 -0
  332. package/lib/types/graph/store/GraphValueKey.d.cts +18 -0
  333. package/lib/types/graph/store/GraphValueKey.d.mts +18 -0
  334. package/lib/types/graph/store/GraphValueStore.d.cts +41 -0
  335. package/lib/types/graph/store/GraphValueStore.d.mts +41 -0
  336. package/lib/types/graph/store/GraphValueStoreAdapter.d.cts +32 -0
  337. package/lib/types/graph/store/GraphValueStoreAdapter.d.mts +32 -0
  338. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.cts +33 -0
  339. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.mts +33 -0
  340. package/lib/types/graph/store/index.d.cts +10 -0
  341. package/lib/types/graph/store/index.d.mts +10 -0
  342. package/lib/types/graph/types.d.cts +197 -0
  343. package/lib/types/graph/types.d.mts +197 -0
  344. package/lib/types/graph/validation/GraphDefinitionValidator.d.cts +21 -0
  345. package/lib/types/graph/validation/GraphDefinitionValidator.d.mts +21 -0
  346. package/lib/types/graph/validation/GraphPortSchemaResolver.d.cts +39 -0
  347. package/lib/types/graph/validation/GraphPortSchemaResolver.d.mts +39 -0
  348. package/lib/types/graph/validation/GraphValueValidator.d.cts +27 -0
  349. package/lib/types/graph/validation/GraphValueValidator.d.mts +27 -0
  350. package/lib/types/graph/validation/index.d.cts +8 -0
  351. package/lib/types/graph/validation/index.d.mts +8 -0
  352. package/lib/types/index.d.cts +2 -2
  353. package/lib/types/index.d.mts +2 -2
  354. package/package.json +17 -3
@@ -0,0 +1,62 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphRelationResolver
3
+ * @summary Normalizes workflow relations into execution edges.
4
+ * @description Resolves workflow boundary aliases, validates endpoints and ports, and produces stable edge IDs.
5
+ */
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphExecutionPlanEdge } from "./GraphExecutionPlanEdge.d.mts";
8
+ /**
9
+ * Resolves raw workflow relation metadata into normalized execution edges.
10
+ */
11
+ export declare class GraphRelationResolver {
12
+ /**
13
+ * Resolves all relations of a workflow into execution edges.
14
+ *
15
+ * @param workflow - The workflow definition.
16
+ * @returns Array of normalized edges.
17
+ * @throws {GraphTopologyError} when an endpoint is unknown or ambiguous.
18
+ * @throws {GraphPortError} when a referenced port is missing or unknown.
19
+ */
20
+ resolve(workflow: GraphWorkflowDefinition): GraphExecutionPlanEdge[];
21
+ /**
22
+ * Resolves a single relation into an edge.
23
+ */
24
+ private resolveRelation;
25
+ /**
26
+ * Resolves an endpoint (source or target) to a node id or the workflow boundary.
27
+ */
28
+ private resolveEndpoint;
29
+ /**
30
+ * Validates that a port exists on the given node or boundary.
31
+ */
32
+ private validatePort;
33
+ /**
34
+ * Builds the set of boundary aliases for a workflow.
35
+ */
36
+ private boundaryAliases;
37
+ /**
38
+ * Extracts port names from a list of port definitions.
39
+ */
40
+ private portNames;
41
+ /**
42
+ * Builds a map of node id -> { input ports, output ports }.
43
+ */
44
+ private buildNodePortMap;
45
+ /**
46
+ * Attempts to resolve a node's full definition from its metadata.
47
+ *
48
+ * Accepts either a decorated Model class/instance (resolved via
49
+ * `graphDefinitionOf`) or a plain `GraphNodeDefinition`-shaped object
50
+ * (useful for serialized workflows that inline node definitions).
51
+ */
52
+ private resolveNodeDefinition;
53
+ /**
54
+ * Returns `true` when a value looks like a raw {@link GraphNodeDefinition}
55
+ * (a plain object with a `ports` array and a `name` string).
56
+ */
57
+ private isRawDefinition;
58
+ /**
59
+ * Creates a stable edge id from its endpoints and ports.
60
+ */
61
+ private createEdgeId;
62
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphTopology
3
+ * @summary Utility helpers for graph topology analysis.
4
+ * @description Provides helper functions used by the planner and pinning dependency resolver.
5
+ */
6
+ import type { GraphExecutionPlanEdge } from "./GraphExecutionPlanEdge.d.cts";
7
+ /**
8
+ * Topology utility for traversing the execution plan's edges.
9
+ */
10
+ export declare class GraphTopology {
11
+ /**
12
+ * Returns the set of upstream node ids reachable from `nodeId` by following
13
+ * incoming edges. The workflow boundary node is excluded.
14
+ */
15
+ static upstreamNodes(nodeId: string, incomingByNode: Map<string, GraphExecutionPlanEdge[]>, includeBoundary?: boolean): Set<string>;
16
+ /**
17
+ * Returns the set of downstream node ids reachable from `nodeId` by following
18
+ * outgoing edges. The workflow boundary node is excluded.
19
+ */
20
+ static downstreamNodes(nodeId: string, outgoingByNode: Map<string, GraphExecutionPlanEdge[]>, includeBoundary?: boolean): Set<string>;
21
+ /** Returns whether a node id is the workflow boundary. */
22
+ static isBoundary(nodeId: string): boolean;
23
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphTopology
3
+ * @summary Utility helpers for graph topology analysis.
4
+ * @description Provides helper functions used by the planner and pinning dependency resolver.
5
+ */
6
+ import type { GraphExecutionPlanEdge } from "./GraphExecutionPlanEdge.d.mts";
7
+ /**
8
+ * Topology utility for traversing the execution plan's edges.
9
+ */
10
+ export declare class GraphTopology {
11
+ /**
12
+ * Returns the set of upstream node ids reachable from `nodeId` by following
13
+ * incoming edges. The workflow boundary node is excluded.
14
+ */
15
+ static upstreamNodes(nodeId: string, incomingByNode: Map<string, GraphExecutionPlanEdge[]>, includeBoundary?: boolean): Set<string>;
16
+ /**
17
+ * Returns the set of downstream node ids reachable from `nodeId` by following
18
+ * outgoing edges. The workflow boundary node is excluded.
19
+ */
20
+ static downstreamNodes(nodeId: string, outgoingByNode: Map<string, GraphExecutionPlanEdge[]>, includeBoundary?: boolean): Set<string>;
21
+ /** Returns whether a node id is the workflow boundary. */
22
+ static isBoundary(nodeId: string): boolean;
23
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @module integrations/graph/planning
3
+ * @summary Graph execution planning.
4
+ * @description Re-exports the execution plan types, relation resolver, and topological planner.
5
+ */
6
+ export * from "./GraphExecutionPlanNode.d.cts";
7
+ export * from "./GraphExecutionPlanEdge.d.cts";
8
+ export * from "./GraphExecutionPlanLayer.d.cts";
9
+ export * from "./GraphExecutionPlan.d.cts";
10
+ export * from "./GraphRelationResolver.d.cts";
11
+ export * from "./GraphExecutionPlanner.d.cts";
12
+ export * from "./GraphTopology.d.cts";
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @module integrations/graph/planning
3
+ * @summary Graph execution planning.
4
+ * @description Re-exports the execution plan types, relation resolver, and topological planner.
5
+ */
6
+ export * from "./GraphExecutionPlanNode.d.mts";
7
+ export * from "./GraphExecutionPlanEdge.d.mts";
8
+ export * from "./GraphExecutionPlanLayer.d.mts";
9
+ export * from "./GraphExecutionPlan.d.mts";
10
+ export * from "./GraphRelationResolver.d.mts";
11
+ export * from "./GraphExecutionPlanner.d.mts";
12
+ export * from "./GraphTopology.d.mts";
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @module integrations/graph/registry/GraphNodeExecutorRegistry
3
+ * @summary Registry for graph node executors.
4
+ * @description Maps node kinds to their executor implementations. The engine resolves executors by node kind at execution time.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.cts";
7
+ /**
8
+ * Registry that maps node `kind` strings to {@link GraphNodeExecutor}
9
+ * instances.
10
+ */
11
+ export declare class GraphNodeExecutorRegistry {
12
+ private readonly executors;
13
+ /** Registers an executor for the given node kind. */
14
+ register(kind: string, executor: GraphNodeExecutor): this;
15
+ /** Removes the executor for the given node kind. */
16
+ unregister(kind: string): this;
17
+ /** Returns whether an executor is registered for the given kind. */
18
+ has(kind: string): boolean;
19
+ /**
20
+ * Resolves the executor for the given node kind.
21
+ *
22
+ * @throws {GraphExecutionError} when no executor is registered for `kind`.
23
+ */
24
+ resolve(kind: string): GraphNodeExecutor;
25
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @module integrations/graph/registry/GraphNodeExecutorRegistry
3
+ * @summary Registry for graph node executors.
4
+ * @description Maps node kinds to their executor implementations. The engine resolves executors by node kind at execution time.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.mts";
7
+ /**
8
+ * Registry that maps node `kind` strings to {@link GraphNodeExecutor}
9
+ * instances.
10
+ */
11
+ export declare class GraphNodeExecutorRegistry {
12
+ private readonly executors;
13
+ /** Registers an executor for the given node kind. */
14
+ register(kind: string, executor: GraphNodeExecutor): this;
15
+ /** Removes the executor for the given node kind. */
16
+ unregister(kind: string): this;
17
+ /** Returns whether an executor is registered for the given kind. */
18
+ has(kind: string): boolean;
19
+ /**
20
+ * Resolves the executor for the given node kind.
21
+ *
22
+ * @throws {GraphExecutionError} when no executor is registered for `kind`.
23
+ */
24
+ resolve(kind: string): GraphNodeExecutor;
25
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/registry/GraphNodeExecutorResolver
3
+ * @summary Utility for resolving executors from a registry with fallback.
4
+ * @description Provides a helper that attempts to resolve an executor by kind, falling back to a default executor when the kind is not registered.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.cts";
7
+ import type { GraphNodeExecutorRegistry } from "./GraphNodeExecutorRegistry.d.cts";
8
+ /**
9
+ * Resolver that wraps a {@link GraphNodeExecutorRegistry} and optionally
10
+ * falls back to a default executor when a kind is not found.
11
+ */
12
+ export declare class GraphNodeExecutorResolver {
13
+ private readonly registry;
14
+ private readonly defaultExecutor?;
15
+ constructor(registry: GraphNodeExecutorRegistry, defaultExecutor?: GraphNodeExecutor);
16
+ /**
17
+ * Resolves the executor for `kind`, falling back to the default executor
18
+ * when provided.
19
+ */
20
+ resolve(kind: string): GraphNodeExecutor;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/registry/GraphNodeExecutorResolver
3
+ * @summary Utility for resolving executors from a registry with fallback.
4
+ * @description Provides a helper that attempts to resolve an executor by kind, falling back to a default executor when the kind is not registered.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.mts";
7
+ import type { GraphNodeExecutorRegistry } from "./GraphNodeExecutorRegistry.d.mts";
8
+ /**
9
+ * Resolver that wraps a {@link GraphNodeExecutorRegistry} and optionally
10
+ * falls back to a default executor when a kind is not found.
11
+ */
12
+ export declare class GraphNodeExecutorResolver {
13
+ private readonly registry;
14
+ private readonly defaultExecutor?;
15
+ constructor(registry: GraphNodeExecutorRegistry, defaultExecutor?: GraphNodeExecutor);
16
+ /**
17
+ * Resolves the executor for `kind`, falling back to the default executor
18
+ * when provided.
19
+ */
20
+ resolve(kind: string): GraphNodeExecutor;
21
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module integrations/graph/registry
3
+ * @summary Graph node executor registry and resolver.
4
+ * @description Re-exports the executor registry and resolver.
5
+ */
6
+ export * from "./GraphNodeExecutorRegistry.d.cts";
7
+ export * from "./GraphNodeExecutorResolver.d.cts";
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module integrations/graph/registry
3
+ * @summary Graph node executor registry and resolver.
4
+ * @description Re-exports the executor registry and resolver.
5
+ */
6
+ export * from "./GraphNodeExecutorRegistry.d.mts";
7
+ export * from "./GraphNodeExecutorResolver.d.mts";
@@ -0,0 +1,10 @@
1
+ import type { GraphExecutionResult, GraphExecutionSnapshotPatch } from "../types.d.cts";
2
+ /**
3
+ * Maps a {@link GraphExecutionResult} to a {@link GraphExecutionSnapshotPatch}.
4
+ */
5
+ export declare class GraphExecutionSnapshotMapper {
6
+ /**
7
+ * Creates a snapshot patch from an execution result.
8
+ */
9
+ map(result: GraphExecutionResult): GraphExecutionSnapshotPatch;
10
+ }
@@ -0,0 +1,10 @@
1
+ import type { GraphExecutionResult, GraphExecutionSnapshotPatch } from "../types.d.mts";
2
+ /**
3
+ * Maps a {@link GraphExecutionResult} to a {@link GraphExecutionSnapshotPatch}.
4
+ */
5
+ export declare class GraphExecutionSnapshotMapper {
6
+ /**
7
+ * Creates a snapshot patch from an execution result.
8
+ */
9
+ map(result: GraphExecutionResult): GraphExecutionSnapshotPatch;
10
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/graph/snapshots
3
+ * @summary Graph execution snapshot mapping.
4
+ * @description Re-exports the snapshot patch mapper.
5
+ */
6
+ export * from "./GraphExecutionSnapshotMapper.d.cts";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @module integrations/graph/snapshots
3
+ * @summary Graph execution snapshot mapping.
4
+ * @description Re-exports the snapshot patch mapper.
5
+ */
6
+ export * from "./GraphExecutionSnapshotMapper.d.mts";
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphCachedValue
3
+ * @summary A cached graph value with pinning metadata.
4
+ * @description Represents a node's output that has been cached (and optionally pinned) in the value store.
5
+ */
6
+ import type { GraphExecutionValues } from "../types.d.cts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.cts";
8
+ /**
9
+ * A value stored in the cache, including the outputs, pinning state, and
10
+ * timestamps for TTL-based expiry.
11
+ */
12
+ export interface GraphCachedValue {
13
+ key: GraphValueKey;
14
+ outputs: GraphExecutionValues;
15
+ pinned: boolean;
16
+ createdAt: string;
17
+ updatedAt: string;
18
+ expiresAt?: string;
19
+ metadata?: Record<string, unknown>;
20
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphCachedValue
3
+ * @summary A cached graph value with pinning metadata.
4
+ * @description Represents a node's output that has been cached (and optionally pinned) in the value store.
5
+ */
6
+ import type { GraphExecutionValues } from "../types.d.mts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.mts";
8
+ /**
9
+ * A value stored in the cache, including the outputs, pinning state, and
10
+ * timestamps for TTL-based expiry.
11
+ */
12
+ export interface GraphCachedValue {
13
+ key: GraphValueKey;
14
+ outputs: GraphExecutionValues;
15
+ pinned: boolean;
16
+ createdAt: string;
17
+ updatedAt: string;
18
+ expiresAt?: string;
19
+ metadata?: Record<string, unknown>;
20
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueKey
3
+ * @summary Stable key for cached graph values.
4
+ * @description Identifies a cached value in the store by workflow, node, fingerprint, and optional namespace/version.
5
+ */
6
+ /**
7
+ * Key used to read/write cached values in a {@link GraphValueStoreAdapter}.
8
+ *
9
+ * The `fingerprint` must change when meaningful inputs or dependencies change
10
+ * so stale values are never accidentally reused.
11
+ */
12
+ export interface GraphValueKey {
13
+ workflowId: string;
14
+ nodeId: string;
15
+ fingerprint: string;
16
+ namespace?: string;
17
+ version?: string;
18
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueKey
3
+ * @summary Stable key for cached graph values.
4
+ * @description Identifies a cached value in the store by workflow, node, fingerprint, and optional namespace/version.
5
+ */
6
+ /**
7
+ * Key used to read/write cached values in a {@link GraphValueStoreAdapter}.
8
+ *
9
+ * The `fingerprint` must change when meaningful inputs or dependencies change
10
+ * so stale values are never accidentally reused.
11
+ */
12
+ export interface GraphValueKey {
13
+ workflowId: string;
14
+ nodeId: string;
15
+ fingerprint: string;
16
+ namespace?: string;
17
+ version?: string;
18
+ }
@@ -0,0 +1,41 @@
1
+ import type { GraphExecutionValues } from "../types.d.cts";
2
+ import type { GraphValueStoreAdapter } from "./GraphValueStoreAdapter.d.cts";
3
+ import type { GraphValueKey } from "./GraphValueKey.d.cts";
4
+ import type { GraphCachedValue } from "./GraphCachedValue.d.cts";
5
+ /**
6
+ * Manages values during a single graph execution.
7
+ *
8
+ * Runtime values (workflow inputs, node outputs, workflow outputs) are kept in
9
+ * an in-memory map. Persistent cache and pinning operations are delegated to
10
+ * the configured {@link GraphValueStoreAdapter}.
11
+ */
12
+ export declare class GraphValueStore {
13
+ private readonly adapter;
14
+ private readonly runtimeValues;
15
+ /**
16
+ * @param adapter - The persistent adapter for cached/pinned values.
17
+ */
18
+ constructor(adapter: GraphValueStoreAdapter);
19
+ /** Seeds the workflow input values. */
20
+ seedWorkflowInputs(inputs: GraphExecutionValues): void;
21
+ /** Stores the outputs produced by a node. */
22
+ setNodeOutputs(nodeId: string, outputs: GraphExecutionValues): void;
23
+ /** Reads a single port value from a node's stored outputs. */
24
+ getPort(nodeId: string, port: string): unknown;
25
+ /** Returns whether a node has a value for the given port. */
26
+ hasPort(nodeId: string, port: string): boolean;
27
+ /** Sets a single workflow output port value. */
28
+ setWorkflowOutput(port: string, value: unknown): void;
29
+ /** Returns all workflow-level values (inputs merged with outputs). */
30
+ getWorkflowValues(): GraphExecutionValues;
31
+ /** Reads a cached value from the adapter. */
32
+ readCached(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
33
+ /** Writes a cached value through the adapter. */
34
+ writeCached(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
35
+ /** Deletes a cached value through the adapter. */
36
+ deleteCached(key: GraphValueKey): Promise<void>;
37
+ /** Returns a snapshot of all runtime values. */
38
+ snapshot(): Record<string, GraphExecutionValues>;
39
+ /** Returns the underlying adapter (used by the pinning service). */
40
+ getAdapter(): GraphValueStoreAdapter;
41
+ }
@@ -0,0 +1,41 @@
1
+ import type { GraphExecutionValues } from "../types.d.mts";
2
+ import type { GraphValueStoreAdapter } from "./GraphValueStoreAdapter.d.mts";
3
+ import type { GraphValueKey } from "./GraphValueKey.d.mts";
4
+ import type { GraphCachedValue } from "./GraphCachedValue.d.mts";
5
+ /**
6
+ * Manages values during a single graph execution.
7
+ *
8
+ * Runtime values (workflow inputs, node outputs, workflow outputs) are kept in
9
+ * an in-memory map. Persistent cache and pinning operations are delegated to
10
+ * the configured {@link GraphValueStoreAdapter}.
11
+ */
12
+ export declare class GraphValueStore {
13
+ private readonly adapter;
14
+ private readonly runtimeValues;
15
+ /**
16
+ * @param adapter - The persistent adapter for cached/pinned values.
17
+ */
18
+ constructor(adapter: GraphValueStoreAdapter);
19
+ /** Seeds the workflow input values. */
20
+ seedWorkflowInputs(inputs: GraphExecutionValues): void;
21
+ /** Stores the outputs produced by a node. */
22
+ setNodeOutputs(nodeId: string, outputs: GraphExecutionValues): void;
23
+ /** Reads a single port value from a node's stored outputs. */
24
+ getPort(nodeId: string, port: string): unknown;
25
+ /** Returns whether a node has a value for the given port. */
26
+ hasPort(nodeId: string, port: string): boolean;
27
+ /** Sets a single workflow output port value. */
28
+ setWorkflowOutput(port: string, value: unknown): void;
29
+ /** Returns all workflow-level values (inputs merged with outputs). */
30
+ getWorkflowValues(): GraphExecutionValues;
31
+ /** Reads a cached value from the adapter. */
32
+ readCached(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
33
+ /** Writes a cached value through the adapter. */
34
+ writeCached(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
35
+ /** Deletes a cached value through the adapter. */
36
+ deleteCached(key: GraphValueKey): Promise<void>;
37
+ /** Returns a snapshot of all runtime values. */
38
+ snapshot(): Record<string, GraphExecutionValues>;
39
+ /** Returns the underlying adapter (used by the pinning service). */
40
+ getAdapter(): GraphValueStoreAdapter;
41
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueStoreAdapter
3
+ * @summary Adapter interface for persistent graph value storage.
4
+ * @description Users provide implementations of this interface to control where cached/pinned values live (in-memory, database, Redis, file, etc.).
5
+ */
6
+ import type { GraphExecutionValues } from "../types.d.cts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.cts";
8
+ import type { GraphCachedValue } from "./GraphCachedValue.d.cts";
9
+ /**
10
+ * Adapter that persists cached and pinned graph values.
11
+ *
12
+ * The engine never assumes a specific storage backend; it always delegates to
13
+ * an adapter. The {@link InMemoryGraphValueStoreAdapter} is the default.
14
+ */
15
+ export interface GraphValueStoreAdapter {
16
+ /** Reads a cached value for the given key. */
17
+ read(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
18
+ /** Writes a cached value for the given key. */
19
+ write(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
20
+ /** Deletes a cached value for the given key. */
21
+ delete(key: GraphValueKey): Promise<void>;
22
+ /** Returns whether a cached value exists for the given key. */
23
+ has(key: GraphValueKey): Promise<boolean>;
24
+ /** Lists cached values matching a prefix of the key. */
25
+ list?(prefix: Partial<GraphValueKey>): Promise<GraphCachedValue[]>;
26
+ /** Clears all cached values for a run. */
27
+ clearRun?(runId: string): Promise<void>;
28
+ /** Reads the runtime values for a node in a run. */
29
+ readRuntimeValues?(runId: string, nodeId: string): Promise<GraphExecutionValues | undefined>;
30
+ /** Writes the runtime values for a node in a run. */
31
+ writeRuntimeValues?(runId: string, nodeId: string, values: GraphExecutionValues): Promise<void>;
32
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueStoreAdapter
3
+ * @summary Adapter interface for persistent graph value storage.
4
+ * @description Users provide implementations of this interface to control where cached/pinned values live (in-memory, database, Redis, file, etc.).
5
+ */
6
+ import type { GraphExecutionValues } from "../types.d.mts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.mts";
8
+ import type { GraphCachedValue } from "./GraphCachedValue.d.mts";
9
+ /**
10
+ * Adapter that persists cached and pinned graph values.
11
+ *
12
+ * The engine never assumes a specific storage backend; it always delegates to
13
+ * an adapter. The {@link InMemoryGraphValueStoreAdapter} is the default.
14
+ */
15
+ export interface GraphValueStoreAdapter {
16
+ /** Reads a cached value for the given key. */
17
+ read(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
18
+ /** Writes a cached value for the given key. */
19
+ write(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
20
+ /** Deletes a cached value for the given key. */
21
+ delete(key: GraphValueKey): Promise<void>;
22
+ /** Returns whether a cached value exists for the given key. */
23
+ has(key: GraphValueKey): Promise<boolean>;
24
+ /** Lists cached values matching a prefix of the key. */
25
+ list?(prefix: Partial<GraphValueKey>): Promise<GraphCachedValue[]>;
26
+ /** Clears all cached values for a run. */
27
+ clearRun?(runId: string): Promise<void>;
28
+ /** Reads the runtime values for a node in a run. */
29
+ readRuntimeValues?(runId: string, nodeId: string): Promise<GraphExecutionValues | undefined>;
30
+ /** Writes the runtime values for a node in a run. */
31
+ writeRuntimeValues?(runId: string, nodeId: string, values: GraphExecutionValues): Promise<void>;
32
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @module integrations/graph/store/InMemoryGraphValueStoreAdapter
3
+ * @summary Default in-memory value store adapter.
4
+ * @description Stores all cached values in a Map. Suitable for testing and single-process execution.
5
+ */
6
+ import type { GraphValueStoreAdapter } from "./GraphValueStoreAdapter.d.cts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.cts";
8
+ import type { GraphCachedValue } from "./GraphCachedValue.d.cts";
9
+ /**
10
+ * In-memory implementation of {@link GraphValueStoreAdapter}.
11
+ *
12
+ * Values are keyed by a serialized string combining namespace, workflowId,
13
+ * nodeId, version, and fingerprint.
14
+ */
15
+ export declare class InMemoryGraphValueStoreAdapter implements GraphValueStoreAdapter {
16
+ private readonly values;
17
+ /** @inheritDoc */
18
+ read(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
19
+ /** @inheritDoc */
20
+ write(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
21
+ /** @inheritDoc */
22
+ delete(key: GraphValueKey): Promise<void>;
23
+ /** @inheritDoc */
24
+ has(key: GraphValueKey): Promise<boolean>;
25
+ /** @inheritDoc */
26
+ list(prefix: Partial<GraphValueKey>): Promise<GraphCachedValue[]>;
27
+ /** @inheritDoc */
28
+ clearRun(runId: string): Promise<void>;
29
+ /**
30
+ * Serializes a key into a stable string used as the Map key.
31
+ */
32
+ private serializeKey;
33
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @module integrations/graph/store/InMemoryGraphValueStoreAdapter
3
+ * @summary Default in-memory value store adapter.
4
+ * @description Stores all cached values in a Map. Suitable for testing and single-process execution.
5
+ */
6
+ import type { GraphValueStoreAdapter } from "./GraphValueStoreAdapter.d.mts";
7
+ import type { GraphValueKey } from "./GraphValueKey.d.mts";
8
+ import type { GraphCachedValue } from "./GraphCachedValue.d.mts";
9
+ /**
10
+ * In-memory implementation of {@link GraphValueStoreAdapter}.
11
+ *
12
+ * Values are keyed by a serialized string combining namespace, workflowId,
13
+ * nodeId, version, and fingerprint.
14
+ */
15
+ export declare class InMemoryGraphValueStoreAdapter implements GraphValueStoreAdapter {
16
+ private readonly values;
17
+ /** @inheritDoc */
18
+ read(key: GraphValueKey): Promise<GraphCachedValue | undefined>;
19
+ /** @inheritDoc */
20
+ write(key: GraphValueKey, value: GraphCachedValue): Promise<void>;
21
+ /** @inheritDoc */
22
+ delete(key: GraphValueKey): Promise<void>;
23
+ /** @inheritDoc */
24
+ has(key: GraphValueKey): Promise<boolean>;
25
+ /** @inheritDoc */
26
+ list(prefix: Partial<GraphValueKey>): Promise<GraphCachedValue[]>;
27
+ /** @inheritDoc */
28
+ clearRun(runId: string): Promise<void>;
29
+ /**
30
+ * Serializes a key into a stable string used as the Map key.
31
+ */
32
+ private serializeKey;
33
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/graph/store
3
+ * @summary Graph value store, adapter, and key types.
4
+ * @description Re-exports the value store adapter interface, in-memory default, key/cached-value types, and the runtime store wrapper.
5
+ */
6
+ export * from "./GraphValueKey.d.cts";
7
+ export * from "./GraphCachedValue.d.cts";
8
+ export * from "./GraphValueStoreAdapter.d.cts";
9
+ export * from "./InMemoryGraphValueStoreAdapter.d.cts";
10
+ export * from "./GraphValueStore.d.cts";
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/graph/store
3
+ * @summary Graph value store, adapter, and key types.
4
+ * @description Re-exports the value store adapter interface, in-memory default, key/cached-value types, and the runtime store wrapper.
5
+ */
6
+ export * from "./GraphValueKey.d.mts";
7
+ export * from "./GraphCachedValue.d.mts";
8
+ export * from "./GraphValueStoreAdapter.d.mts";
9
+ export * from "./InMemoryGraphValueStoreAdapter.d.mts";
10
+ export * from "./GraphValueStore.d.mts";