@decaf-ts/integrations 0.3.1 → 0.3.3

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 (418) 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/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
  120. package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -1
  121. package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
  122. package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -1
  123. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
  124. package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -1
  125. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
  126. package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -1
  127. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
  128. package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -1
  129. package/lib/cjs/keycloak/services/KeycloakService.cjs +16 -9
  130. package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -1
  131. package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
  132. package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -1
  133. package/lib/cjs/kibana/services/KibanaAuthService.cjs +3 -3
  134. package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -1
  135. package/lib/cjs/kibana/services/KibanaDashboardService.cjs +3 -3
  136. package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -1
  137. package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
  138. package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -1
  139. package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
  140. package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -1
  141. package/lib/cjs/kibana/services/KibanaService.cjs +16 -9
  142. package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -1
  143. package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
  144. package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -1
  145. package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
  146. package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -1
  147. package/lib/esm/graph/constants.js +106 -0
  148. package/lib/esm/graph/constants.js.map +1 -0
  149. package/lib/esm/graph/decorators.js +2 -0
  150. package/lib/esm/graph/decorators.js.map +1 -0
  151. package/lib/esm/graph/errors/GraphCycleError.js +15 -0
  152. package/lib/esm/graph/errors/GraphCycleError.js.map +1 -0
  153. package/lib/esm/graph/errors/GraphExecutionError.js +22 -0
  154. package/lib/esm/graph/errors/GraphExecutionError.js.map +1 -0
  155. package/lib/esm/graph/errors/GraphInputError.js +15 -0
  156. package/lib/esm/graph/errors/GraphInputError.js.map +1 -0
  157. package/lib/esm/graph/errors/GraphLoopLimitError.js +15 -0
  158. package/lib/esm/graph/errors/GraphLoopLimitError.js.map +1 -0
  159. package/lib/esm/graph/errors/GraphPinningError.js +15 -0
  160. package/lib/esm/graph/errors/GraphPinningError.js.map +1 -0
  161. package/lib/esm/graph/errors/GraphPortError.js +15 -0
  162. package/lib/esm/graph/errors/GraphPortError.js.map +1 -0
  163. package/lib/esm/graph/errors/GraphStoreError.js +15 -0
  164. package/lib/esm/graph/errors/GraphStoreError.js.map +1 -0
  165. package/lib/esm/graph/errors/GraphTopologyError.js +15 -0
  166. package/lib/esm/graph/errors/GraphTopologyError.js.map +1 -0
  167. package/lib/esm/graph/errors/index.js +14 -0
  168. package/lib/esm/graph/errors/index.js.map +1 -0
  169. package/lib/esm/graph/events/GraphExecutionEvent.js +2 -0
  170. package/lib/esm/graph/events/GraphExecutionEvent.js.map +1 -0
  171. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +35 -0
  172. package/lib/esm/graph/events/GraphExecutionEventEmitter.js.map +1 -0
  173. package/lib/esm/graph/events/GraphExecutionEventFactory.js +32 -0
  174. package/lib/esm/graph/events/GraphExecutionEventFactory.js.map +1 -0
  175. package/lib/esm/graph/events/GraphExecutionObserver.js +2 -0
  176. package/lib/esm/graph/events/GraphExecutionObserver.js.map +1 -0
  177. package/lib/esm/graph/events/index.js +10 -0
  178. package/lib/esm/graph/events/index.js.map +1 -0
  179. package/lib/esm/graph/execution/GraphExecutionContext.js +74 -0
  180. package/lib/esm/graph/execution/GraphExecutionContext.js.map +1 -0
  181. package/lib/esm/graph/execution/GraphExecutionEngine.js +400 -0
  182. package/lib/esm/graph/execution/GraphExecutionEngine.js.map +1 -0
  183. package/lib/esm/graph/execution/GraphExecutionFrame.js +27 -0
  184. package/lib/esm/graph/execution/GraphExecutionFrame.js.map +1 -0
  185. package/lib/esm/graph/execution/GraphExecutionResult.js +26 -0
  186. package/lib/esm/graph/execution/GraphExecutionResult.js.map +1 -0
  187. package/lib/esm/graph/execution/GraphNodeExecutor.js +2 -0
  188. package/lib/esm/graph/execution/GraphNodeExecutor.js.map +1 -0
  189. package/lib/esm/graph/execution/index.js +11 -0
  190. package/lib/esm/graph/execution/index.js.map +1 -0
  191. package/lib/esm/graph/index.js +57 -0
  192. package/lib/esm/graph/index.js.map +1 -0
  193. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +79 -0
  194. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js.map +1 -0
  195. package/lib/esm/graph/loops/GraphConditionEvaluator.js +58 -0
  196. package/lib/esm/graph/loops/GraphConditionEvaluator.js.map +1 -0
  197. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +11 -0
  198. package/lib/esm/graph/loops/GraphLoopExecutionContext.js.map +1 -0
  199. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +71 -0
  200. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js.map +1 -0
  201. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +72 -0
  202. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js.map +1 -0
  203. package/lib/esm/graph/loops/index.js +11 -0
  204. package/lib/esm/graph/loops/index.js.map +1 -0
  205. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +23 -0
  206. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js.map +1 -0
  207. package/lib/esm/graph/pinning/GraphPinningMetadata.js +15 -0
  208. package/lib/esm/graph/pinning/GraphPinningMetadata.js.map +1 -0
  209. package/lib/esm/graph/pinning/GraphPinningPolicy.js +29 -0
  210. package/lib/esm/graph/pinning/GraphPinningPolicy.js.map +1 -0
  211. package/lib/esm/graph/pinning/GraphPinningService.js +186 -0
  212. package/lib/esm/graph/pinning/GraphPinningService.js.map +1 -0
  213. package/lib/esm/graph/pinning/index.js +10 -0
  214. package/lib/esm/graph/pinning/index.js.map +1 -0
  215. package/lib/esm/graph/planning/GraphExecutionPlan.js +2 -0
  216. package/lib/esm/graph/planning/GraphExecutionPlan.js.map +1 -0
  217. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +7 -0
  218. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js.map +1 -0
  219. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +2 -0
  220. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js.map +1 -0
  221. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +2 -0
  222. package/lib/esm/graph/planning/GraphExecutionPlanNode.js.map +1 -0
  223. package/lib/esm/graph/planning/GraphExecutionPlanner.js +192 -0
  224. package/lib/esm/graph/planning/GraphExecutionPlanner.js.map +1 -0
  225. package/lib/esm/graph/planning/GraphRelationResolver.js +167 -0
  226. package/lib/esm/graph/planning/GraphRelationResolver.js.map +1 -0
  227. package/lib/esm/graph/planning/GraphTopology.js +52 -0
  228. package/lib/esm/graph/planning/GraphTopology.js.map +1 -0
  229. package/lib/esm/graph/planning/index.js +13 -0
  230. package/lib/esm/graph/planning/index.js.map +1 -0
  231. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +39 -0
  232. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js.map +1 -0
  233. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +22 -0
  234. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js.map +1 -0
  235. package/lib/esm/graph/registry/index.js +8 -0
  236. package/lib/esm/graph/registry/index.js.map +1 -0
  237. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  238. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js.map +1 -0
  239. package/lib/esm/graph/snapshots/index.js +7 -0
  240. package/lib/esm/graph/snapshots/index.js.map +1 -0
  241. package/lib/esm/graph/store/GraphCachedValue.js +2 -0
  242. package/lib/esm/graph/store/GraphCachedValue.js.map +1 -0
  243. package/lib/esm/graph/store/GraphValueKey.js +7 -0
  244. package/lib/esm/graph/store/GraphValueKey.js.map +1 -0
  245. package/lib/esm/graph/store/GraphValueStore.js +71 -0
  246. package/lib/esm/graph/store/GraphValueStore.js.map +1 -0
  247. package/lib/esm/graph/store/GraphValueStoreAdapter.js +2 -0
  248. package/lib/esm/graph/store/GraphValueStoreAdapter.js.map +1 -0
  249. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +64 -0
  250. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js.map +1 -0
  251. package/lib/esm/graph/store/index.js +11 -0
  252. package/lib/esm/graph/store/index.js.map +1 -0
  253. package/lib/esm/graph/types.js +2 -0
  254. package/lib/esm/graph/types.js.map +1 -0
  255. package/lib/esm/graph/validation/GraphDefinitionValidator.js +28 -0
  256. package/lib/esm/graph/validation/GraphDefinitionValidator.js.map +1 -0
  257. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +53 -0
  258. package/lib/esm/graph/validation/GraphPortSchemaResolver.js.map +1 -0
  259. package/lib/esm/graph/validation/GraphValueValidator.js +47 -0
  260. package/lib/esm/graph/validation/GraphValueValidator.js.map +1 -0
  261. package/lib/esm/graph/validation/index.js +9 -0
  262. package/lib/esm/graph/validation/index.js.map +1 -0
  263. package/lib/esm/index.js +3 -3
  264. package/lib/esm/keycloak/services/KeycloakAuthService.js +2 -2
  265. package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -1
  266. package/lib/esm/keycloak/services/KeycloakClientService.js +2 -2
  267. package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -1
  268. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +2 -2
  269. package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -1
  270. package/lib/esm/keycloak/services/KeycloakRealmService.js +2 -2
  271. package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -1
  272. package/lib/esm/keycloak/services/KeycloakRoleService.js +2 -2
  273. package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -1
  274. package/lib/esm/keycloak/services/KeycloakService.js +16 -9
  275. package/lib/esm/keycloak/services/KeycloakService.js.map +1 -1
  276. package/lib/esm/keycloak/services/KeycloakUserService.js +2 -2
  277. package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -1
  278. package/lib/esm/kibana/services/KibanaAuthService.js +3 -3
  279. package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -1
  280. package/lib/esm/kibana/services/KibanaDashboardService.js +3 -3
  281. package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -1
  282. package/lib/esm/kibana/services/KibanaDataViewService.js +2 -2
  283. package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -1
  284. package/lib/esm/kibana/services/KibanaRoleService.js +2 -2
  285. package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -1
  286. package/lib/esm/kibana/services/KibanaService.js +16 -9
  287. package/lib/esm/kibana/services/KibanaService.js.map +1 -1
  288. package/lib/esm/kibana/services/KibanaSpaceService.js +2 -2
  289. package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -1
  290. package/lib/esm/kibana/services/KibanaUserService.js +2 -2
  291. package/lib/esm/kibana/services/KibanaUserService.js.map +1 -1
  292. package/lib/types/graph/constants.d.cts +101 -0
  293. package/lib/types/graph/constants.d.mts +101 -0
  294. package/lib/types/graph/decorators.d.cts +6 -0
  295. package/lib/types/graph/decorators.d.mts +6 -0
  296. package/lib/types/graph/errors/GraphCycleError.d.cts +12 -0
  297. package/lib/types/graph/errors/GraphCycleError.d.mts +12 -0
  298. package/lib/types/graph/errors/GraphExecutionError.d.cts +19 -0
  299. package/lib/types/graph/errors/GraphExecutionError.d.mts +19 -0
  300. package/lib/types/graph/errors/GraphInputError.d.cts +12 -0
  301. package/lib/types/graph/errors/GraphInputError.d.mts +12 -0
  302. package/lib/types/graph/errors/GraphLoopLimitError.d.cts +12 -0
  303. package/lib/types/graph/errors/GraphLoopLimitError.d.mts +12 -0
  304. package/lib/types/graph/errors/GraphPinningError.d.cts +12 -0
  305. package/lib/types/graph/errors/GraphPinningError.d.mts +12 -0
  306. package/lib/types/graph/errors/GraphPortError.d.cts +12 -0
  307. package/lib/types/graph/errors/GraphPortError.d.mts +12 -0
  308. package/lib/types/graph/errors/GraphStoreError.d.cts +12 -0
  309. package/lib/types/graph/errors/GraphStoreError.d.mts +12 -0
  310. package/lib/types/graph/errors/GraphTopologyError.d.cts +12 -0
  311. package/lib/types/graph/errors/GraphTopologyError.d.mts +12 -0
  312. package/lib/types/graph/errors/index.d.cts +13 -0
  313. package/lib/types/graph/errors/index.d.mts +13 -0
  314. package/lib/types/graph/events/GraphExecutionEvent.d.cts +6 -0
  315. package/lib/types/graph/events/GraphExecutionEvent.d.mts +6 -0
  316. package/lib/types/graph/events/GraphExecutionEventEmitter.d.cts +26 -0
  317. package/lib/types/graph/events/GraphExecutionEventEmitter.d.mts +26 -0
  318. package/lib/types/graph/events/GraphExecutionEventFactory.d.cts +25 -0
  319. package/lib/types/graph/events/GraphExecutionEventFactory.d.mts +25 -0
  320. package/lib/types/graph/events/GraphExecutionObserver.d.cts +17 -0
  321. package/lib/types/graph/events/GraphExecutionObserver.d.mts +17 -0
  322. package/lib/types/graph/events/index.d.cts +9 -0
  323. package/lib/types/graph/events/index.d.mts +9 -0
  324. package/lib/types/graph/execution/GraphExecutionContext.d.cts +50 -0
  325. package/lib/types/graph/execution/GraphExecutionContext.d.mts +50 -0
  326. package/lib/types/graph/execution/GraphExecutionEngine.d.cts +112 -0
  327. package/lib/types/graph/execution/GraphExecutionEngine.d.mts +112 -0
  328. package/lib/types/graph/execution/GraphExecutionFrame.d.cts +29 -0
  329. package/lib/types/graph/execution/GraphExecutionFrame.d.mts +29 -0
  330. package/lib/types/graph/execution/GraphExecutionResult.d.cts +13 -0
  331. package/lib/types/graph/execution/GraphExecutionResult.d.mts +13 -0
  332. package/lib/types/graph/execution/GraphNodeExecutor.d.cts +23 -0
  333. package/lib/types/graph/execution/GraphNodeExecutor.d.mts +23 -0
  334. package/lib/types/graph/execution/index.d.cts +10 -0
  335. package/lib/types/graph/execution/index.d.mts +10 -0
  336. package/lib/types/graph/index.d.cts +52 -0
  337. package/lib/types/graph/index.d.mts +52 -0
  338. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.cts +27 -0
  339. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.mts +27 -0
  340. package/lib/types/graph/loops/GraphConditionEvaluator.d.cts +23 -0
  341. package/lib/types/graph/loops/GraphConditionEvaluator.d.mts +23 -0
  342. package/lib/types/graph/loops/GraphLoopExecutionContext.d.cts +15 -0
  343. package/lib/types/graph/loops/GraphLoopExecutionContext.d.mts +15 -0
  344. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.cts +22 -0
  345. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.mts +22 -0
  346. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.cts +26 -0
  347. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.mts +26 -0
  348. package/lib/types/graph/loops/index.d.cts +10 -0
  349. package/lib/types/graph/loops/index.d.mts +10 -0
  350. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.cts +21 -0
  351. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.mts +21 -0
  352. package/lib/types/graph/pinning/GraphPinningMetadata.d.cts +14 -0
  353. package/lib/types/graph/pinning/GraphPinningMetadata.d.mts +14 -0
  354. package/lib/types/graph/pinning/GraphPinningPolicy.d.cts +20 -0
  355. package/lib/types/graph/pinning/GraphPinningPolicy.d.mts +20 -0
  356. package/lib/types/graph/pinning/GraphPinningService.d.cts +59 -0
  357. package/lib/types/graph/pinning/GraphPinningService.d.mts +59 -0
  358. package/lib/types/graph/pinning/index.d.cts +9 -0
  359. package/lib/types/graph/pinning/index.d.mts +9 -0
  360. package/lib/types/graph/planning/GraphExecutionPlan.d.cts +21 -0
  361. package/lib/types/graph/planning/GraphExecutionPlan.d.mts +21 -0
  362. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.cts +21 -0
  363. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.mts +21 -0
  364. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.cts +13 -0
  365. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.mts +13 -0
  366. package/lib/types/graph/planning/GraphExecutionPlanNode.d.cts +20 -0
  367. package/lib/types/graph/planning/GraphExecutionPlanNode.d.mts +20 -0
  368. package/lib/types/graph/planning/GraphExecutionPlanner.d.cts +60 -0
  369. package/lib/types/graph/planning/GraphExecutionPlanner.d.mts +60 -0
  370. package/lib/types/graph/planning/GraphRelationResolver.d.cts +62 -0
  371. package/lib/types/graph/planning/GraphRelationResolver.d.mts +62 -0
  372. package/lib/types/graph/planning/GraphTopology.d.cts +23 -0
  373. package/lib/types/graph/planning/GraphTopology.d.mts +23 -0
  374. package/lib/types/graph/planning/index.d.cts +12 -0
  375. package/lib/types/graph/planning/index.d.mts +12 -0
  376. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.cts +25 -0
  377. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.mts +25 -0
  378. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.cts +21 -0
  379. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.mts +21 -0
  380. package/lib/types/graph/registry/index.d.cts +7 -0
  381. package/lib/types/graph/registry/index.d.mts +7 -0
  382. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.cts +10 -0
  383. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.mts +10 -0
  384. package/lib/types/graph/snapshots/index.d.cts +6 -0
  385. package/lib/types/graph/snapshots/index.d.mts +6 -0
  386. package/lib/types/graph/store/GraphCachedValue.d.cts +20 -0
  387. package/lib/types/graph/store/GraphCachedValue.d.mts +20 -0
  388. package/lib/types/graph/store/GraphValueKey.d.cts +18 -0
  389. package/lib/types/graph/store/GraphValueKey.d.mts +18 -0
  390. package/lib/types/graph/store/GraphValueStore.d.cts +41 -0
  391. package/lib/types/graph/store/GraphValueStore.d.mts +41 -0
  392. package/lib/types/graph/store/GraphValueStoreAdapter.d.cts +32 -0
  393. package/lib/types/graph/store/GraphValueStoreAdapter.d.mts +32 -0
  394. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.cts +33 -0
  395. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.mts +33 -0
  396. package/lib/types/graph/store/index.d.cts +10 -0
  397. package/lib/types/graph/store/index.d.mts +10 -0
  398. package/lib/types/graph/types.d.cts +197 -0
  399. package/lib/types/graph/types.d.mts +197 -0
  400. package/lib/types/graph/validation/GraphDefinitionValidator.d.cts +21 -0
  401. package/lib/types/graph/validation/GraphDefinitionValidator.d.mts +21 -0
  402. package/lib/types/graph/validation/GraphPortSchemaResolver.d.cts +39 -0
  403. package/lib/types/graph/validation/GraphPortSchemaResolver.d.mts +39 -0
  404. package/lib/types/graph/validation/GraphValueValidator.d.cts +27 -0
  405. package/lib/types/graph/validation/GraphValueValidator.d.mts +27 -0
  406. package/lib/types/graph/validation/index.d.cts +8 -0
  407. package/lib/types/graph/validation/index.d.mts +8 -0
  408. package/lib/types/index.d.cts +2 -2
  409. package/lib/types/index.d.mts +2 -2
  410. package/lib/types/keycloak/services/KeycloakService.d.cts +1 -0
  411. package/lib/types/keycloak/services/KeycloakService.d.mts +1 -0
  412. package/lib/types/keycloak/types.d.cts +1 -4
  413. package/lib/types/keycloak/types.d.mts +1 -4
  414. package/lib/types/kibana/services/KibanaService.d.cts +1 -0
  415. package/lib/types/kibana/services/KibanaService.d.mts +1 -0
  416. package/lib/types/kibana/types.d.cts +1 -4
  417. package/lib/types/kibana/types.d.mts +1 -4
  418. package/package.json +17 -3
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @module integrations/graph
3
+ * @summary Decaf Graph Execution Engine.
4
+ * @description Reference interpreter for Decaf graph workflows. Executes workflows declared with `@decaf-ts/ui-decorators/graph`, emits events through Decaf's Observable pipeline, supports structured loops, configurable value stores, and pinnable/cacheable nodes.
5
+ */
6
+ export * from "./constants.d.mts";
7
+ export * from "./types.d.mts";
8
+ export * from "./decorators.d.mts";
9
+ export * from "./errors/GraphExecutionError.d.mts";
10
+ export * from "./errors/GraphCycleError.d.mts";
11
+ export * from "./errors/GraphInputError.d.mts";
12
+ export * from "./errors/GraphLoopLimitError.d.mts";
13
+ export * from "./errors/GraphPinningError.d.mts";
14
+ export * from "./errors/GraphPortError.d.mts";
15
+ export * from "./errors/GraphStoreError.d.mts";
16
+ export * from "./errors/GraphTopologyError.d.mts";
17
+ export * from "./events/GraphExecutionEvent.d.mts";
18
+ export * from "./events/GraphExecutionObserver.d.mts";
19
+ export * from "./events/GraphExecutionEventEmitter.d.mts";
20
+ export * from "./events/GraphExecutionEventFactory.d.mts";
21
+ export * from "./execution/GraphExecutionContext.d.mts";
22
+ export * from "./execution/GraphNodeExecutor.d.mts";
23
+ export * from "./execution/GraphExecutionFrame.d.mts";
24
+ export * from "./execution/GraphExecutionResult.d.mts";
25
+ export * from "./execution/GraphExecutionEngine.d.mts";
26
+ export * from "./registry/GraphNodeExecutorRegistry.d.mts";
27
+ export * from "./registry/GraphNodeExecutorResolver.d.mts";
28
+ export * from "./store/GraphValueKey.d.mts";
29
+ export * from "./store/GraphCachedValue.d.mts";
30
+ export * from "./store/GraphValueStoreAdapter.d.mts";
31
+ export * from "./store/InMemoryGraphValueStoreAdapter.d.mts";
32
+ export * from "./store/GraphValueStore.d.mts";
33
+ export * from "./planning/GraphExecutionPlanNode.d.mts";
34
+ export * from "./planning/GraphExecutionPlanEdge.d.mts";
35
+ export * from "./planning/GraphExecutionPlanLayer.d.mts";
36
+ export * from "./planning/GraphExecutionPlan.d.mts";
37
+ export * from "./planning/GraphRelationResolver.d.mts";
38
+ export * from "./planning/GraphExecutionPlanner.d.mts";
39
+ export * from "./planning/GraphTopology.d.mts";
40
+ export * from "./validation/GraphDefinitionValidator.d.mts";
41
+ export * from "./validation/GraphPortSchemaResolver.d.mts";
42
+ export * from "./validation/GraphValueValidator.d.mts";
43
+ export * from "./loops/GraphConditionEvaluator.d.mts";
44
+ export * from "./loops/GraphLoopExecutionContext.d.mts";
45
+ export * from "./loops/ForeachGraphNodeExecutor.d.mts";
46
+ export * from "./loops/WhileGraphNodeExecutor.d.mts";
47
+ export * from "./loops/UntilGraphNodeExecutor.d.mts";
48
+ export * from "./pinning/GraphPinningMetadata.d.mts";
49
+ export * from "./pinning/GraphPinningPolicy.d.mts";
50
+ export * from "./pinning/GraphPinningDependencyResolver.d.mts";
51
+ export * from "./pinning/GraphPinningService.d.mts";
52
+ export * from "./snapshots/GraphExecutionSnapshotMapper.d.mts";
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @module integrations/graph/loops/ForeachGraphNodeExecutor
3
+ * @summary Foreach loop node executor.
4
+ * @description Executes a body workflow once per item in the input array, collecting results in order.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.cts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.cts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.cts";
9
+ import type { GraphExecutionValues } from "../types.d.cts";
10
+ /**
11
+ * Executor for `core.loop.foreach` nodes.
12
+ *
13
+ * Expects input:
14
+ * - `items`: array of values to iterate over
15
+ * - `state?`: optional initial state
16
+ *
17
+ * Produces output:
18
+ * - `results`: array of body outputs (in item order)
19
+ * - `state?`: final state
20
+ * - `iterations`: number of iterations executed
21
+ */
22
+ export declare class ForeachGraphNodeExecutor implements GraphNodeExecutor {
23
+ private readonly engine;
24
+ constructor(engine: GraphExecutionEngine);
25
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
26
+ private extractMetadata;
27
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @module integrations/graph/loops/ForeachGraphNodeExecutor
3
+ * @summary Foreach loop node executor.
4
+ * @description Executes a body workflow once per item in the input array, collecting results in order.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.mts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.mts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.mts";
9
+ import type { GraphExecutionValues } from "../types.d.mts";
10
+ /**
11
+ * Executor for `core.loop.foreach` nodes.
12
+ *
13
+ * Expects input:
14
+ * - `items`: array of values to iterate over
15
+ * - `state?`: optional initial state
16
+ *
17
+ * Produces output:
18
+ * - `results`: array of body outputs (in item order)
19
+ * - `state?`: final state
20
+ * - `iterations`: number of iterations executed
21
+ */
22
+ export declare class ForeachGraphNodeExecutor implements GraphNodeExecutor {
23
+ private readonly engine;
24
+ constructor(engine: GraphExecutionEngine);
25
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
26
+ private extractMetadata;
27
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @module integrations/graph/loops/GraphConditionEvaluator
3
+ * @summary Evaluator for built-in loop condition types.
4
+ * @description Supports safe, built-in condition types only. Does NOT evaluate arbitrary JavaScript expressions.
5
+ */
6
+ import type { GraphConditionDefinition } from "../types.d.cts";
7
+ /**
8
+ * Evaluates loop conditions using built-in comparison types.
9
+ */
10
+ export declare class GraphConditionEvaluator {
11
+ /**
12
+ * Evaluates a condition against the given state.
13
+ *
14
+ * @param condition - The condition definition.
15
+ * @param state - The current loop state.
16
+ * @returns `true` when the condition passes.
17
+ */
18
+ evaluate(condition: GraphConditionDefinition, state: unknown): boolean;
19
+ /**
20
+ * Resolves a value that may be a dotted path into the state object.
21
+ */
22
+ private resolveValue;
23
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @module integrations/graph/loops/GraphConditionEvaluator
3
+ * @summary Evaluator for built-in loop condition types.
4
+ * @description Supports safe, built-in condition types only. Does NOT evaluate arbitrary JavaScript expressions.
5
+ */
6
+ import type { GraphConditionDefinition } from "../types.d.mts";
7
+ /**
8
+ * Evaluates loop conditions using built-in comparison types.
9
+ */
10
+ export declare class GraphConditionEvaluator {
11
+ /**
12
+ * Evaluates a condition against the given state.
13
+ *
14
+ * @param condition - The condition definition.
15
+ * @param state - The current loop state.
16
+ * @returns `true` when the condition passes.
17
+ */
18
+ evaluate(condition: GraphConditionDefinition, state: unknown): boolean;
19
+ /**
20
+ * Resolves a value that may be a dotted path into the state object.
21
+ */
22
+ private resolveValue;
23
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @module integrations/graph/loops/GraphLoopExecutionContext
3
+ * @summary Context for loop node execution.
4
+ * @description Carries loop-specific metadata and iteration state during loop execution.
5
+ */
6
+ import type { GraphLoopMetadata } from "../types.d.cts";
7
+ /**
8
+ * Context for a single loop execution, carrying the loop metadata and
9
+ * current iteration index.
10
+ */
11
+ export declare class GraphLoopExecutionContext {
12
+ readonly iteration: number;
13
+ readonly metadata: GraphLoopMetadata;
14
+ constructor(iteration: number, metadata: GraphLoopMetadata);
15
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @module integrations/graph/loops/GraphLoopExecutionContext
3
+ * @summary Context for loop node execution.
4
+ * @description Carries loop-specific metadata and iteration state during loop execution.
5
+ */
6
+ import type { GraphLoopMetadata } from "../types.d.mts";
7
+ /**
8
+ * Context for a single loop execution, carrying the loop metadata and
9
+ * current iteration index.
10
+ */
11
+ export declare class GraphLoopExecutionContext {
12
+ readonly iteration: number;
13
+ readonly metadata: GraphLoopMetadata;
14
+ constructor(iteration: number, metadata: GraphLoopMetadata);
15
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @module integrations/graph/loops/UntilGraphNodeExecutor
3
+ * @summary Until loop node executor.
4
+ * @description Executes a body workflow at least once and repeats until a condition is true.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.cts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.cts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.cts";
9
+ import type { GraphExecutionValues } from "../types.d.cts";
10
+ /**
11
+ * Executor for `core.loop.until` nodes.
12
+ *
13
+ * Executes the body at least once, then checks the condition. Repeats until
14
+ * the condition evaluates to true.
15
+ */
16
+ export declare class UntilGraphNodeExecutor implements GraphNodeExecutor {
17
+ private readonly engine;
18
+ private readonly evaluator;
19
+ constructor(engine: GraphExecutionEngine);
20
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
21
+ private extractMetadata;
22
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @module integrations/graph/loops/UntilGraphNodeExecutor
3
+ * @summary Until loop node executor.
4
+ * @description Executes a body workflow at least once and repeats until a condition is true.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.mts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.mts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.mts";
9
+ import type { GraphExecutionValues } from "../types.d.mts";
10
+ /**
11
+ * Executor for `core.loop.until` nodes.
12
+ *
13
+ * Executes the body at least once, then checks the condition. Repeats until
14
+ * the condition evaluates to true.
15
+ */
16
+ export declare class UntilGraphNodeExecutor implements GraphNodeExecutor {
17
+ private readonly engine;
18
+ private readonly evaluator;
19
+ constructor(engine: GraphExecutionEngine);
20
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
21
+ private extractMetadata;
22
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module integrations/graph/loops/WhileGraphNodeExecutor
3
+ * @summary While loop node executor.
4
+ * @description Executes a body workflow repeatedly while a condition is true, enforcing a maximum iteration limit.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.cts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.cts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.cts";
9
+ import type { GraphExecutionValues } from "../types.d.cts";
10
+ /**
11
+ * Executor for `core.loop.while` nodes.
12
+ *
13
+ * Expects input:
14
+ * - `state`: initial state
15
+ *
16
+ * Produces output:
17
+ * - `state`: final state
18
+ * - `iterations`: number of iterations executed
19
+ */
20
+ export declare class WhileGraphNodeExecutor implements GraphNodeExecutor {
21
+ private readonly engine;
22
+ private readonly evaluator;
23
+ constructor(engine: GraphExecutionEngine);
24
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
25
+ private extractMetadata;
26
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module integrations/graph/loops/WhileGraphNodeExecutor
3
+ * @summary While loop node executor.
4
+ * @description Executes a body workflow repeatedly while a condition is true, enforcing a maximum iteration limit.
5
+ */
6
+ import type { GraphNodeExecutor } from "../execution/GraphNodeExecutor.d.mts";
7
+ import type { GraphExecutionContext } from "../execution/GraphExecutionContext.d.mts";
8
+ import type { GraphExecutionEngine } from "../execution/GraphExecutionEngine.d.mts";
9
+ import type { GraphExecutionValues } from "../types.d.mts";
10
+ /**
11
+ * Executor for `core.loop.while` nodes.
12
+ *
13
+ * Expects input:
14
+ * - `state`: initial state
15
+ *
16
+ * Produces output:
17
+ * - `state`: final state
18
+ * - `iterations`: number of iterations executed
19
+ */
20
+ export declare class WhileGraphNodeExecutor implements GraphNodeExecutor {
21
+ private readonly engine;
22
+ private readonly evaluator;
23
+ constructor(engine: GraphExecutionEngine);
24
+ execute(input: GraphExecutionValues, context: GraphExecutionContext): Promise<GraphExecutionValues>;
25
+ private extractMetadata;
26
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/graph/loops
3
+ * @summary Structured loop executors.
4
+ * @description Re-exports the condition evaluator, loop execution context, and foreach/while/until executors.
5
+ */
6
+ export * from "./GraphConditionEvaluator.d.cts";
7
+ export * from "./GraphLoopExecutionContext.d.cts";
8
+ export * from "./ForeachGraphNodeExecutor.d.cts";
9
+ export * from "./WhileGraphNodeExecutor.d.cts";
10
+ export * from "./UntilGraphNodeExecutor.d.cts";
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @module integrations/graph/loops
3
+ * @summary Structured loop executors.
4
+ * @description Re-exports the condition evaluator, loop execution context, and foreach/while/until executors.
5
+ */
6
+ export * from "./GraphConditionEvaluator.d.mts";
7
+ export * from "./GraphLoopExecutionContext.d.mts";
8
+ export * from "./ForeachGraphNodeExecutor.d.mts";
9
+ export * from "./WhileGraphNodeExecutor.d.mts";
10
+ export * from "./UntilGraphNodeExecutor.d.mts";
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningDependencyResolver
3
+ * @summary Resolves upstream dependency subtrees for pinning.
4
+ * @description When a node is pinned, all upstream nodes it depends on must also be pinned. This resolver computes the dependency set.
5
+ */
6
+ import type { GraphExecutionPlan } from "../planning/GraphExecutionPlan.d.cts";
7
+ /**
8
+ * Resolves the upstream dependency subtree of a node for pinning operations.
9
+ */
10
+ export declare class GraphPinningDependencyResolver {
11
+ /**
12
+ * Returns the set of upstream node ids that the given node depends on,
13
+ * excluding the workflow boundary.
14
+ */
15
+ getDependencies(plan: GraphExecutionPlan, nodeId: string): Set<string>;
16
+ /**
17
+ * Returns the full set of node ids to pin: the node itself plus all its
18
+ * upstream dependencies.
19
+ */
20
+ getPinSet(plan: GraphExecutionPlan, nodeId: string): Set<string>;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningDependencyResolver
3
+ * @summary Resolves upstream dependency subtrees for pinning.
4
+ * @description When a node is pinned, all upstream nodes it depends on must also be pinned. This resolver computes the dependency set.
5
+ */
6
+ import type { GraphExecutionPlan } from "../planning/GraphExecutionPlan.d.mts";
7
+ /**
8
+ * Resolves the upstream dependency subtree of a node for pinning operations.
9
+ */
10
+ export declare class GraphPinningDependencyResolver {
11
+ /**
12
+ * Returns the set of upstream node ids that the given node depends on,
13
+ * excluding the workflow boundary.
14
+ */
15
+ getDependencies(plan: GraphExecutionPlan, nodeId: string): Set<string>;
16
+ /**
17
+ * Returns the full set of node ids to pin: the node itself plus all its
18
+ * upstream dependencies.
19
+ */
20
+ getPinSet(plan: GraphExecutionPlan, nodeId: string): Set<string>;
21
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningMetadata
3
+ * @summary Pinning metadata defaults and helpers.
4
+ * @description Provides default pinning metadata values and a helper to check pinnability. The `GraphPinningMetadata` type itself is defined in `../types` and re-exported from the package root.
5
+ */
6
+ import type { GraphPinningMetadata } from "../types.d.cts";
7
+ /**
8
+ * Default pinning metadata applied when `@pinnable()` is used without options.
9
+ */
10
+ export declare const DEFAULT_PINNING_METADATA: GraphPinningMetadata;
11
+ /**
12
+ * Returns `true` when the given metadata allows pinning.
13
+ */
14
+ export declare function isPinnable(metadata: GraphPinningMetadata | undefined): boolean;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningMetadata
3
+ * @summary Pinning metadata defaults and helpers.
4
+ * @description Provides default pinning metadata values and a helper to check pinnability. The `GraphPinningMetadata` type itself is defined in `../types` and re-exported from the package root.
5
+ */
6
+ import type { GraphPinningMetadata } from "../types.d.mts";
7
+ /**
8
+ * Default pinning metadata applied when `@pinnable()` is used without options.
9
+ */
10
+ export declare const DEFAULT_PINNING_METADATA: GraphPinningMetadata;
11
+ /**
12
+ * Returns `true` when the given metadata allows pinning.
13
+ */
14
+ export declare function isPinnable(metadata: GraphPinningMetadata | undefined): boolean;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningPolicy
3
+ * @summary Decides whether a node can be pinned and whether pinned values should be used.
4
+ * @description Reads pinning metadata from plan nodes and enforces the pinning strategy.
5
+ */
6
+ import type { GraphExecutionPlanNode } from "../planning/GraphExecutionPlanNode.d.cts";
7
+ import type { GraphPinningMetadata } from "../types.d.cts";
8
+ /**
9
+ * Policy that decides pinning behaviour for a plan node.
10
+ */
11
+ export declare class GraphPinningPolicy {
12
+ /** Returns whether the node is allowed to be pinned. */
13
+ canPin(node: GraphExecutionPlanNode): boolean;
14
+ /** Returns whether the engine should attempt to use a pinned value for the node. */
15
+ shouldUsePinnedValue(node: GraphExecutionPlanNode): boolean;
16
+ /** Returns whether automatic pinning should occur after execution. */
17
+ shouldAutoPin(node: GraphExecutionPlanNode): boolean;
18
+ /** Extracts pinning metadata from a plan node. */
19
+ getPinningMetadata(node: GraphExecutionPlanNode): GraphPinningMetadata;
20
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @module integrations/graph/pinning/GraphPinningPolicy
3
+ * @summary Decides whether a node can be pinned and whether pinned values should be used.
4
+ * @description Reads pinning metadata from plan nodes and enforces the pinning strategy.
5
+ */
6
+ import type { GraphExecutionPlanNode } from "../planning/GraphExecutionPlanNode.d.mts";
7
+ import type { GraphPinningMetadata } from "../types.d.mts";
8
+ /**
9
+ * Policy that decides pinning behaviour for a plan node.
10
+ */
11
+ export declare class GraphPinningPolicy {
12
+ /** Returns whether the node is allowed to be pinned. */
13
+ canPin(node: GraphExecutionPlanNode): boolean;
14
+ /** Returns whether the engine should attempt to use a pinned value for the node. */
15
+ shouldUsePinnedValue(node: GraphExecutionPlanNode): boolean;
16
+ /** Returns whether automatic pinning should occur after execution. */
17
+ shouldAutoPin(node: GraphExecutionPlanNode): boolean;
18
+ /** Extracts pinning metadata from a plan node. */
19
+ getPinningMetadata(node: GraphExecutionPlanNode): GraphPinningMetadata;
20
+ }
@@ -0,0 +1,59 @@
1
+ import type { GraphExecutionPlanNode } from "../planning/GraphExecutionPlanNode.d.cts";
2
+ import type { GraphValueStore } from "../store/GraphValueStore.d.cts";
3
+ import type { GraphValueKey } from "../store/GraphValueKey.d.cts";
4
+ import type { GraphCachedValue } from "../store/GraphCachedValue.d.cts";
5
+ import type { GraphExecutionValues, GraphPinNodeOptions, GraphUnpinNodeOptions } from "../types.d.cts";
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphPinningPolicy } from "./GraphPinningPolicy.d.cts";
8
+ import type { GraphPinningDependencyResolver } from "./GraphPinningDependencyResolver.d.cts";
9
+ /**
10
+ * Service that manages pinning and unpinning of graph node values.
11
+ */
12
+ export declare class GraphPinningService {
13
+ private readonly store;
14
+ private readonly policy;
15
+ private readonly dependencyResolver;
16
+ constructor(store: GraphValueStore, policy: GraphPinningPolicy, dependencyResolver: GraphPinningDependencyResolver);
17
+ /**
18
+ * Pins a node and all its upstream dependencies.
19
+ *
20
+ * @throws {GraphPinningError} when the node or any dependency is not pinnable.
21
+ */
22
+ pinNode(options: GraphPinNodeOptions): Promise<void>;
23
+ /**
24
+ * Unpins a single node (does not unpin dependents in v1).
25
+ */
26
+ unpinNode(options: GraphUnpinNodeOptions): Promise<void>;
27
+ /**
28
+ * Reads a pinned value for a node, returning `undefined` when no valid
29
+ * pinned value exists.
30
+ */
31
+ readPinnedValue(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>, namespace?: string): Promise<GraphCachedValue | undefined>;
32
+ /**
33
+ * Creates a stable value key for a node.
34
+ */
35
+ createValueKey(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>, namespace?: string): GraphValueKey;
36
+ /**
37
+ * Computes a stable fingerprint for a node's inputs and dependencies.
38
+ */
39
+ computeFingerprint(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>): string;
40
+ /**
41
+ * Returns a topological ordering of the given node set.
42
+ */
43
+ private topologicalOrder;
44
+ /**
45
+ * Computes fingerprints for all upstream dependencies of a node.
46
+ */
47
+ private dependencyFingerprints;
48
+ /**
49
+ * Serializes a value with recursively sorted keys for stable hashing.
50
+ */
51
+ private stableSerialize;
52
+ /**
53
+ * Simple non-cryptographic hash for browser environments where
54
+ * `node:crypto` is unavailable. Produces a deterministic hex-like string
55
+ * from the input. This is NOT cryptographically secure but is sufficient
56
+ * for fingerprint-based cache keys.
57
+ */
58
+ private simpleHash;
59
+ }
@@ -0,0 +1,59 @@
1
+ import type { GraphExecutionPlanNode } from "../planning/GraphExecutionPlanNode.d.mts";
2
+ import type { GraphValueStore } from "../store/GraphValueStore.d.mts";
3
+ import type { GraphValueKey } from "../store/GraphValueKey.d.mts";
4
+ import type { GraphCachedValue } from "../store/GraphCachedValue.d.mts";
5
+ import type { GraphExecutionValues, GraphPinNodeOptions, GraphUnpinNodeOptions } from "../types.d.mts";
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphPinningPolicy } from "./GraphPinningPolicy.d.mts";
8
+ import type { GraphPinningDependencyResolver } from "./GraphPinningDependencyResolver.d.mts";
9
+ /**
10
+ * Service that manages pinning and unpinning of graph node values.
11
+ */
12
+ export declare class GraphPinningService {
13
+ private readonly store;
14
+ private readonly policy;
15
+ private readonly dependencyResolver;
16
+ constructor(store: GraphValueStore, policy: GraphPinningPolicy, dependencyResolver: GraphPinningDependencyResolver);
17
+ /**
18
+ * Pins a node and all its upstream dependencies.
19
+ *
20
+ * @throws {GraphPinningError} when the node or any dependency is not pinnable.
21
+ */
22
+ pinNode(options: GraphPinNodeOptions): Promise<void>;
23
+ /**
24
+ * Unpins a single node (does not unpin dependents in v1).
25
+ */
26
+ unpinNode(options: GraphUnpinNodeOptions): Promise<void>;
27
+ /**
28
+ * Reads a pinned value for a node, returning `undefined` when no valid
29
+ * pinned value exists.
30
+ */
31
+ readPinnedValue(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>, namespace?: string): Promise<GraphCachedValue | undefined>;
32
+ /**
33
+ * Creates a stable value key for a node.
34
+ */
35
+ createValueKey(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>, namespace?: string): GraphValueKey;
36
+ /**
37
+ * Computes a stable fingerprint for a node's inputs and dependencies.
38
+ */
39
+ computeFingerprint(workflow: GraphWorkflowDefinition, node: GraphExecutionPlanNode, inputs: GraphExecutionValues, dependencyFingerprints: Record<string, string>): string;
40
+ /**
41
+ * Returns a topological ordering of the given node set.
42
+ */
43
+ private topologicalOrder;
44
+ /**
45
+ * Computes fingerprints for all upstream dependencies of a node.
46
+ */
47
+ private dependencyFingerprints;
48
+ /**
49
+ * Serializes a value with recursively sorted keys for stable hashing.
50
+ */
51
+ private stableSerialize;
52
+ /**
53
+ * Simple non-cryptographic hash for browser environments where
54
+ * `node:crypto` is unavailable. Produces a deterministic hex-like string
55
+ * from the input. This is NOT cryptographically secure but is sufficient
56
+ * for fingerprint-based cache keys.
57
+ */
58
+ private simpleHash;
59
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @module integrations/graph/pinning
3
+ * @summary Graph pinning subsystem.
4
+ * @description Re-exports the pinning metadata, policy, dependency resolver, and service.
5
+ */
6
+ export * from "./GraphPinningMetadata.d.cts";
7
+ export * from "./GraphPinningPolicy.d.cts";
8
+ export * from "./GraphPinningDependencyResolver.d.cts";
9
+ export * from "./GraphPinningService.d.cts";
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @module integrations/graph/pinning
3
+ * @summary Graph pinning subsystem.
4
+ * @description Re-exports the pinning metadata, policy, dependency resolver, and service.
5
+ */
6
+ export * from "./GraphPinningMetadata.d.mts";
7
+ export * from "./GraphPinningPolicy.d.mts";
8
+ export * from "./GraphPinningDependencyResolver.d.mts";
9
+ export * from "./GraphPinningService.d.mts";
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphExecutionPlan
3
+ * @summary The complete execution plan for a workflow.
4
+ * @description Contains resolved nodes, edges, topological layers, and incoming/outgoing maps.
5
+ */
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphExecutionPlanNode } from "./GraphExecutionPlanNode.d.cts";
8
+ import type { GraphExecutionPlanEdge } from "./GraphExecutionPlanEdge.d.cts";
9
+ import type { GraphExecutionPlanLayer } from "./GraphExecutionPlanLayer.d.cts";
10
+ /**
11
+ * The resolved execution plan for a single workflow.
12
+ */
13
+ export interface GraphExecutionPlan {
14
+ workflow: GraphWorkflowDefinition;
15
+ workflowId: string;
16
+ nodes: GraphExecutionPlanNode[];
17
+ edges: GraphExecutionPlanEdge[];
18
+ layers: GraphExecutionPlanLayer[];
19
+ incomingByNode: Map<string, GraphExecutionPlanEdge[]>;
20
+ outgoingByNode: Map<string, GraphExecutionPlanEdge[]>;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphExecutionPlan
3
+ * @summary The complete execution plan for a workflow.
4
+ * @description Contains resolved nodes, edges, topological layers, and incoming/outgoing maps.
5
+ */
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphExecutionPlanNode } from "./GraphExecutionPlanNode.d.mts";
8
+ import type { GraphExecutionPlanEdge } from "./GraphExecutionPlanEdge.d.mts";
9
+ import type { GraphExecutionPlanLayer } from "./GraphExecutionPlanLayer.d.mts";
10
+ /**
11
+ * The resolved execution plan for a single workflow.
12
+ */
13
+ export interface GraphExecutionPlan {
14
+ workflow: GraphWorkflowDefinition;
15
+ workflowId: string;
16
+ nodes: GraphExecutionPlanNode[];
17
+ edges: GraphExecutionPlanEdge[];
18
+ layers: GraphExecutionPlanLayer[];
19
+ incomingByNode: Map<string, GraphExecutionPlanEdge[]>;
20
+ outgoingByNode: Map<string, GraphExecutionPlanEdge[]>;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/planning/GraphExecutionPlanEdge
3
+ * @summary Plan edge type for the execution plan.
4
+ * @description Represents a directed value route between two endpoints (node-to-node or node-to-workflow-boundary).
5
+ */
6
+ /**
7
+ * An edge in the execution plan representing a value route from a source
8
+ * port to a target port.
9
+ *
10
+ * `sourceNodeId` or `targetNodeId` may be {@link GRAPH_WORKFLOW_BOUNDARY} when
11
+ * the edge connects to the workflow boundary.
12
+ */
13
+ export interface GraphExecutionPlanEdge {
14
+ id: string;
15
+ sourceNodeId: string;
16
+ sourcePort: string;
17
+ targetNodeId: string;
18
+ targetPort: string;
19
+ label?: string;
20
+ metadata?: Record<string, unknown>;
21
+ }