@nosana/node 1.0.0-rc

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 (384) hide show
  1. package/README.md +92 -0
  2. package/dist/.env +7 -0
  3. package/dist/.env.dev +5 -0
  4. package/dist/.env.prd +4 -0
  5. package/dist/NodeManager/client/index.d.ts +4 -0
  6. package/dist/NodeManager/client/index.js +14 -0
  7. package/dist/NodeManager/configs/NodeConfigs.d.ts +14 -0
  8. package/dist/NodeManager/configs/NodeConfigs.js +32 -0
  9. package/dist/NodeManager/configs/__tests__/NodeConfigs.spec.d.ts +1 -0
  10. package/dist/NodeManager/configs/__tests__/NodeConfigs.spec.js +161 -0
  11. package/dist/NodeManager/configs/configs.d.ts +21 -0
  12. package/dist/NodeManager/configs/configs.js +23 -0
  13. package/dist/NodeManager/db/__tests__/index.spec.d.ts +1 -0
  14. package/dist/NodeManager/db/__tests__/index.spec.js +65 -0
  15. package/dist/NodeManager/db/index.d.ts +50 -0
  16. package/dist/NodeManager/db/index.js +64 -0
  17. package/dist/NodeManager/errors/NodeAlreadyActiveError.d.ts +3 -0
  18. package/dist/NodeManager/errors/NodeAlreadyActiveError.js +6 -0
  19. package/dist/NodeManager/index.d.ts +24 -0
  20. package/dist/NodeManager/index.js +317 -0
  21. package/dist/NodeManager/jobs/index.d.ts +6 -0
  22. package/dist/NodeManager/jobs/index.js +45 -0
  23. package/dist/NodeManager/monitoring/LogMonitoringRegistry.d.ts +9 -0
  24. package/dist/NodeManager/monitoring/LogMonitoringRegistry.js +23 -0
  25. package/dist/NodeManager/monitoring/log/NodeLog.d.ts +56 -0
  26. package/dist/NodeManager/monitoring/log/NodeLog.js +1357 -0
  27. package/dist/NodeManager/monitoring/log/console/ConsoleLogger.d.ts +20 -0
  28. package/dist/NodeManager/monitoring/log/console/ConsoleLogger.js +290 -0
  29. package/dist/NodeManager/monitoring/ping/PingHandler.d.ts +13 -0
  30. package/dist/NodeManager/monitoring/ping/PingHandler.js +68 -0
  31. package/dist/NodeManager/monitoring/proxy/loggingProxy.d.ts +15 -0
  32. package/dist/NodeManager/monitoring/proxy/loggingProxy.js +145 -0
  33. package/dist/NodeManager/monitoring/state/NodeState.d.ts +29 -0
  34. package/dist/NodeManager/monitoring/state/NodeState.js +680 -0
  35. package/dist/NodeManager/monitoring/state/classifyState.d.ts +14 -0
  36. package/dist/NodeManager/monitoring/state/classifyState.js +57 -0
  37. package/dist/NodeManager/monitoring/streaming/LogStreamer.d.ts +14 -0
  38. package/dist/NodeManager/monitoring/streaming/LogStreamer.js +58 -0
  39. package/dist/NodeManager/monitoring/streaming/StateStreamer.d.ts +15 -0
  40. package/dist/NodeManager/monitoring/streaming/StateStreamer.js +59 -0
  41. package/dist/NodeManager/node/Node.d.ts +44 -0
  42. package/dist/NodeManager/node/Node.js +321 -0
  43. package/dist/NodeManager/node/abort/NodeAbortController.d.ts +6 -0
  44. package/dist/NodeManager/node/abort/NodeAbortController.js +12 -0
  45. package/dist/NodeManager/node/abort/abortControllerSelector.d.ts +3 -0
  46. package/dist/NodeManager/node/abort/abortControllerSelector.js +13 -0
  47. package/dist/NodeManager/node/api/ApiEventEmitter.d.ts +8 -0
  48. package/dist/NodeManager/node/api/ApiEventEmitter.js +13 -0
  49. package/dist/NodeManager/node/api/ApiHandler.d.ts +28 -0
  50. package/dist/NodeManager/node/api/ApiHandler.js +193 -0
  51. package/dist/NodeManager/node/api/eventsource/index.d.ts +6 -0
  52. package/dist/NodeManager/node/api/eventsource/index.js +35 -0
  53. package/dist/NodeManager/node/api/middlewares/index.d.ts +5 -0
  54. package/dist/NodeManager/node/api/middlewares/index.js +7 -0
  55. package/dist/NodeManager/node/api/middlewares/rest/verifyBackendSignatureMiddleware.d.ts +3 -0
  56. package/dist/NodeManager/node/api/middlewares/rest/verifyBackendSignatureMiddleware.js +20 -0
  57. package/dist/NodeManager/node/api/middlewares/rest/verifyJobOwnerSignatureMiddleware.d.ts +5 -0
  58. package/dist/NodeManager/node/api/middlewares/rest/verifyJobOwnerSignatureMiddleware.js +28 -0
  59. package/dist/NodeManager/node/api/middlewares/ws/verifyWSJobOwnerSignatureMiddleware.d.ts +6 -0
  60. package/dist/NodeManager/node/api/middlewares/ws/verifyWSJobOwnerSignatureMiddleware.js +30 -0
  61. package/dist/NodeManager/node/api/middlewares/ws/verifyWSMiddleware.d.ts +6 -0
  62. package/dist/NodeManager/node/api/middlewares/ws/verifyWSMiddleware.js +20 -0
  63. package/dist/NodeManager/node/api/middlewares/ws/verifyWSNodeOrJobOwnerSignatureMiddleware.d.ts +6 -0
  64. package/dist/NodeManager/node/api/middlewares/ws/verifyWSNodeOrJobOwnerSignatureMiddleware.js +33 -0
  65. package/dist/NodeManager/node/api/routes/get/index.d.ts +6 -0
  66. package/dist/NodeManager/node/api/routes/get/index.js +6 -0
  67. package/dist/NodeManager/node/api/routes/get/job-definition.d.ts +5 -0
  68. package/dist/NodeManager/node/api/routes/get/job-definition.js +16 -0
  69. package/dist/NodeManager/node/api/routes/get/job-info/buildInfoObject.d.ts +17 -0
  70. package/dist/NodeManager/node/api/routes/get/job-info/buildInfoObject.js +15 -0
  71. package/dist/NodeManager/node/api/routes/get/job-info/job-info.d.ts +5 -0
  72. package/dist/NodeManager/node/api/routes/get/job-info/job-info.js +18 -0
  73. package/dist/NodeManager/node/api/routes/get/job-info/pollActiveJob.d.ts +6 -0
  74. package/dist/NodeManager/node/api/routes/get/job-info/pollActiveJob.js +42 -0
  75. package/dist/NodeManager/node/api/routes/get/job-operation-info.d.ts +28 -0
  76. package/dist/NodeManager/node/api/routes/get/job-operation-info.js +53 -0
  77. package/dist/NodeManager/node/api/routes/get/job-results.d.ts +5 -0
  78. package/dist/NodeManager/node/api/routes/get/job-results.js +15 -0
  79. package/dist/NodeManager/node/api/routes/get/node-info.d.ts +3 -0
  80. package/dist/NodeManager/node/api/routes/get/node-info.js +23 -0
  81. package/dist/NodeManager/node/api/routes/get/service-url.d.ts +5 -0
  82. package/dist/NodeManager/node/api/routes/get/service-url.js +27 -0
  83. package/dist/NodeManager/node/api/routes/index.d.ts +3 -0
  84. package/dist/NodeManager/node/api/routes/index.js +3 -0
  85. package/dist/NodeManager/node/api/routes/post/index.d.ts +4 -0
  86. package/dist/NodeManager/node/api/routes/post/index.js +4 -0
  87. package/dist/NodeManager/node/api/routes/post/job-definition.d.ts +6 -0
  88. package/dist/NodeManager/node/api/routes/post/job-definition.js +15 -0
  89. package/dist/NodeManager/node/api/routes/post/job-operation-actions.d.ts +24 -0
  90. package/dist/NodeManager/node/api/routes/post/job-operation-actions.js +79 -0
  91. package/dist/NodeManager/node/api/routes/post/node-validation.d.ts +4 -0
  92. package/dist/NodeManager/node/api/routes/post/node-validation.js +1783 -0
  93. package/dist/NodeManager/node/api/routes/post/service-stop.d.ts +5 -0
  94. package/dist/NodeManager/node/api/routes/post/service-stop.js +13 -0
  95. package/dist/NodeManager/node/api/routes/wss/index.d.ts +2 -0
  96. package/dist/NodeManager/node/api/routes/wss/index.js +2 -0
  97. package/dist/NodeManager/node/api/routes/wss/log.d.ts +14 -0
  98. package/dist/NodeManager/node/api/routes/wss/log.js +34 -0
  99. package/dist/NodeManager/node/api/routes/wss/status.d.ts +8 -0
  100. package/dist/NodeManager/node/api/routes/wss/status.js +11 -0
  101. package/dist/NodeManager/node/api/types/index.d.ts +12 -0
  102. package/dist/NodeManager/node/api/types/index.js +1 -0
  103. package/dist/NodeManager/node/balance/balanceHandler.d.ts +12 -0
  104. package/dist/NodeManager/node/balance/balanceHandler.js +52 -0
  105. package/dist/NodeManager/node/expiry/expiryHandler.d.ts +24 -0
  106. package/dist/NodeManager/node/expiry/expiryHandler.js +99 -0
  107. package/dist/NodeManager/node/grid/gridHandler.d.ts +19 -0
  108. package/dist/NodeManager/node/grid/gridHandler.js +168 -0
  109. package/dist/NodeManager/node/health/healthHandler.d.ts +16 -0
  110. package/dist/NodeManager/node/health/healthHandler.js +69 -0
  111. package/dist/NodeManager/node/job/JobRegistry.d.ts +14 -0
  112. package/dist/NodeManager/node/job/JobRegistry.js +48 -0
  113. package/dist/NodeManager/node/job/defination/JobDefinitionStrategy.d.ts +13 -0
  114. package/dist/NodeManager/node/job/defination/JobDefinitionStrategy.js +21 -0
  115. package/dist/NodeManager/node/job/defination/strategy/ApiJobDefinitionStrategy.d.ts +8 -0
  116. package/dist/NodeManager/node/job/defination/strategy/ApiJobDefinitionStrategy.js +40 -0
  117. package/dist/NodeManager/node/job/defination/strategy/ApiListenJobDefinitionStrategy.d.ts +9 -0
  118. package/dist/NodeManager/node/job/defination/strategy/ApiListenJobDefinitionStrategy.js +16 -0
  119. package/dist/NodeManager/node/job/defination/strategy/IpfsJobDefinitionStrategy.d.ts +7 -0
  120. package/dist/NodeManager/node/job/defination/strategy/IpfsJobDefinitionStrategy.js +13 -0
  121. package/dist/NodeManager/node/job/jobExternalUtil.d.ts +10 -0
  122. package/dist/NodeManager/node/job/jobExternalUtil.js +82 -0
  123. package/dist/NodeManager/node/job/jobHandler.d.ts +43 -0
  124. package/dist/NodeManager/node/job/jobHandler.js +193 -0
  125. package/dist/NodeManager/node/job/result/ResultReturnStrategy.d.ts +13 -0
  126. package/dist/NodeManager/node/job/result/ResultReturnStrategy.js +21 -0
  127. package/dist/NodeManager/node/job/result/startegy/ApiListenResultReturnStrategy.d.ts +8 -0
  128. package/dist/NodeManager/node/job/result/startegy/ApiListenResultReturnStrategy.js +22 -0
  129. package/dist/NodeManager/node/job/result/startegy/ApiResultReturnStrategy.d.ts +8 -0
  130. package/dist/NodeManager/node/job/result/startegy/ApiResultReturnStrategy.js +42 -0
  131. package/dist/NodeManager/node/key/keyHandler.d.ts +16 -0
  132. package/dist/NodeManager/node/key/keyHandler.js +74 -0
  133. package/dist/NodeManager/node/market/marketHandler.d.ts +30 -0
  134. package/dist/NodeManager/node/market/marketHandler.js +137 -0
  135. package/dist/NodeManager/node/register/index.d.ts +16 -0
  136. package/dist/NodeManager/node/register/index.js +88 -0
  137. package/dist/NodeManager/node/resource/definition/index.d.ts +2 -0
  138. package/dist/NodeManager/node/resource/definition/index.js +2 -0
  139. package/dist/NodeManager/node/resource/helpers/createHFArgs.d.ts +6 -0
  140. package/dist/NodeManager/node/resource/helpers/createHFArgs.js +26 -0
  141. package/dist/NodeManager/node/resource/helpers/createOllamaArgs.d.ts +2 -0
  142. package/dist/NodeManager/node/resource/helpers/createOllamaArgs.js +20 -0
  143. package/dist/NodeManager/node/resource/helpers/createResourceName.d.ts +2 -0
  144. package/dist/NodeManager/node/resource/helpers/createResourceName.js +18 -0
  145. package/dist/NodeManager/node/resource/helpers/createS3Args.d.ts +7 -0
  146. package/dist/NodeManager/node/resource/helpers/createS3Args.js +32 -0
  147. package/dist/NodeManager/node/resource/helpers/hasDockerVolume.d.ts +2 -0
  148. package/dist/NodeManager/node/resource/helpers/hasDockerVolume.js +3 -0
  149. package/dist/NodeManager/node/resource/helpers/hoursSunceDate.d.ts +1 -0
  150. package/dist/NodeManager/node/resource/helpers/hoursSunceDate.js +3 -0
  151. package/dist/NodeManager/node/resource/helpers/repoTagsContainsImage.d.ts +1 -0
  152. package/dist/NodeManager/node/resource/helpers/repoTagsContainsImage.js +13 -0
  153. package/dist/NodeManager/node/resource/image/imageManager.d.ts +13 -0
  154. package/dist/NodeManager/node/resource/image/imageManager.js +66 -0
  155. package/dist/NodeManager/node/resource/resourceManager.d.ts +21 -0
  156. package/dist/NodeManager/node/resource/resourceManager.js +57 -0
  157. package/dist/NodeManager/node/resource/volume/volumeManager.d.ts +20 -0
  158. package/dist/NodeManager/node/resource/volume/volumeManager.js +228 -0
  159. package/dist/NodeManager/node/run/runHandler.d.ts +18 -0
  160. package/dist/NodeManager/node/run/runHandler.js +139 -0
  161. package/dist/NodeManager/node/specs/specsHandler.d.ts +17 -0
  162. package/dist/NodeManager/node/specs/specsHandler.js +135 -0
  163. package/dist/NodeManager/node/specs/type.d.ts +15 -0
  164. package/dist/NodeManager/node/specs/type.js +1 -0
  165. package/dist/NodeManager/node/stake/StakeHandler.d.ts +22 -0
  166. package/dist/NodeManager/node/stake/StakeHandler.js +111 -0
  167. package/dist/NodeManager/node/task/TaskManager.d.ts +267 -0
  168. package/dist/NodeManager/node/task/TaskManager.js +480 -0
  169. package/dist/NodeManager/node/task/TaskManagerRegistry.d.ts +49 -0
  170. package/dist/NodeManager/node/task/TaskManagerRegistry.js +68 -0
  171. package/dist/NodeManager/node/task/executions/createDependencyMap.d.ts +18 -0
  172. package/dist/NodeManager/node/task/executions/createDependencyMap.js +32 -0
  173. package/dist/NodeManager/node/task/executions/createExecutionPlan.d.ts +14 -0
  174. package/dist/NodeManager/node/task/executions/createExecutionPlan.js +36 -0
  175. package/dist/NodeManager/node/task/executions/createOperationMap.d.ts +11 -0
  176. package/dist/NodeManager/node/task/executions/createOperationMap.js +34 -0
  177. package/dist/NodeManager/node/task/executions/validateExecutionPlan.d.ts +12 -0
  178. package/dist/NodeManager/node/task/executions/validateExecutionPlan.js +48 -0
  179. package/dist/NodeManager/node/task/globalStore/finalizeEnv.d.ts +2 -0
  180. package/dist/NodeManager/node/task/globalStore/finalizeEnv.js +30 -0
  181. package/dist/NodeManager/node/task/globalStore/getByPath.d.ts +2 -0
  182. package/dist/NodeManager/node/task/globalStore/getByPath.js +12 -0
  183. package/dist/NodeManager/node/task/globalStore/index.d.ts +9 -0
  184. package/dist/NodeManager/node/task/globalStore/index.js +9 -0
  185. package/dist/NodeManager/node/task/globalStore/interpolate.d.ts +2 -0
  186. package/dist/NodeManager/node/task/globalStore/interpolate.js +16 -0
  187. package/dist/NodeManager/node/task/globalStore/interpolateOperation.d.ts +3 -0
  188. package/dist/NodeManager/node/task/globalStore/interpolateOperation.js +221 -0
  189. package/dist/NodeManager/node/task/globalStore/resolveLiteralsInString.d.ts +2 -0
  190. package/dist/NodeManager/node/task/globalStore/resolveLiteralsInString.js +7 -0
  191. package/dist/NodeManager/node/task/globalStore/setDefaults.d.ts +4 -0
  192. package/dist/NodeManager/node/task/globalStore/setDefaults.js +65 -0
  193. package/dist/NodeManager/node/task/globalStore/setHost.d.ts +2 -0
  194. package/dist/NodeManager/node/task/globalStore/setHost.js +9 -0
  195. package/dist/NodeManager/node/task/globalStore/setResult.d.ts +2 -0
  196. package/dist/NodeManager/node/task/globalStore/setResult.js +10 -0
  197. package/dist/NodeManager/node/task/globalStore/setResults.d.ts +2 -0
  198. package/dist/NodeManager/node/task/globalStore/setResults.js +9 -0
  199. package/dist/NodeManager/node/task/globalStore/stanatizeArrays.d.ts +2 -0
  200. package/dist/NodeManager/node/task/globalStore/stanatizeArrays.js +14 -0
  201. package/dist/NodeManager/node/task/globalStore/transformCollections.d.ts +13 -0
  202. package/dist/NodeManager/node/task/globalStore/transformCollections.js +152 -0
  203. package/dist/NodeManager/node/task/helpers/createDefaultOpState.d.ts +2 -0
  204. package/dist/NodeManager/node/task/helpers/createDefaultOpState.js +20 -0
  205. package/dist/NodeManager/node/task/helpers/createInitialFlow.d.ts +8 -0
  206. package/dist/NodeManager/node/task/helpers/createInitialFlow.js +24 -0
  207. package/dist/NodeManager/node/task/loggers/logManager.d.ts +8 -0
  208. package/dist/NodeManager/node/task/loggers/logManager.js +54 -0
  209. package/dist/NodeManager/node/task/operations/getOperationsInfos.d.ts +6 -0
  210. package/dist/NodeManager/node/task/operations/getOperationsInfos.js +33 -0
  211. package/dist/NodeManager/node/task/operations/moveTaskManagerGroupOperation.d.ts +2 -0
  212. package/dist/NodeManager/node/task/operations/moveTaskManagerGroupOperation.js +65 -0
  213. package/dist/NodeManager/node/task/operations/restartTaskManagerGroupOperation.d.ts +10 -0
  214. package/dist/NodeManager/node/task/operations/restartTaskManagerGroupOperation.js +37 -0
  215. package/dist/NodeManager/node/task/operations/restartTaskManagerOperation.d.ts +14 -0
  216. package/dist/NodeManager/node/task/operations/restartTaskManagerOperation.js +117 -0
  217. package/dist/NodeManager/node/task/operations/runTaskManagerOperation.d.ts +21 -0
  218. package/dist/NodeManager/node/task/operations/runTaskManagerOperation.js +488 -0
  219. package/dist/NodeManager/node/task/operations/stopAllTaskManagerOperations.d.ts +21 -0
  220. package/dist/NodeManager/node/task/operations/stopAllTaskManagerOperations.js +54 -0
  221. package/dist/NodeManager/node/task/operations/stopTaskManagerGroupOperation.d.ts +10 -0
  222. package/dist/NodeManager/node/task/operations/stopTaskManagerGroupOperation.js +43 -0
  223. package/dist/NodeManager/node/task/operations/stopTaskManagerOperation.d.ts +14 -0
  224. package/dist/NodeManager/node/task/operations/stopTaskManagerOperation.js +137 -0
  225. package/dist/NodeManager/node/utils/convertFromBytes.d.ts +4 -0
  226. package/dist/NodeManager/node/utils/convertFromBytes.js +11 -0
  227. package/dist/NodeManager/node/utils/extractLogsAndResultsFromLogBuffer.d.ts +7 -0
  228. package/dist/NodeManager/node/utils/extractLogsAndResultsFromLogBuffer.js +34 -0
  229. package/dist/NodeManager/node/utils/extractResultsFromLogs.d.ts +18 -0
  230. package/dist/NodeManager/node/utils/extractResultsFromLogs.js +37 -0
  231. package/dist/NodeManager/node/utils/generateRandomId.d.ts +1 -0
  232. package/dist/NodeManager/node/utils/generateRandomId.js +3 -0
  233. package/dist/NodeManager/node/utils/multiProgressBarReporter.d.ts +16 -0
  234. package/dist/NodeManager/node/utils/multiProgressBarReporter.js +22 -0
  235. package/dist/NodeManager/node/utils/poll.d.ts +5 -0
  236. package/dist/NodeManager/node/utils/poll.js +25 -0
  237. package/dist/NodeManager/node/utils/progressBarReporter.d.ts +9 -0
  238. package/dist/NodeManager/node/utils/progressBarReporter.js +28 -0
  239. package/dist/NodeManager/provider/ContainerStateManager.d.ts +24 -0
  240. package/dist/NodeManager/provider/ContainerStateManager.js +122 -0
  241. package/dist/NodeManager/provider/ExposedPortHealthCheck.d.ts +29 -0
  242. package/dist/NodeManager/provider/ExposedPortHealthCheck.js +183 -0
  243. package/dist/NodeManager/provider/Provider.d.ts +70 -0
  244. package/dist/NodeManager/provider/Provider.js +457 -0
  245. package/dist/NodeManager/provider/__tests__/Provider.spec.d.ts +1 -0
  246. package/dist/NodeManager/provider/__tests__/Provider.spec.js +337 -0
  247. package/dist/NodeManager/provider/containerOrchestration/docker/dockerExtended/index.d.ts +6 -0
  248. package/dist/NodeManager/provider/containerOrchestration/docker/dockerExtended/index.js +45 -0
  249. package/dist/NodeManager/provider/containerOrchestration/docker/index.d.ts +43 -0
  250. package/dist/NodeManager/provider/containerOrchestration/docker/index.js +366 -0
  251. package/dist/NodeManager/provider/containerOrchestration/docker/utils/createServerObject.d.ts +5 -0
  252. package/dist/NodeManager/provider/containerOrchestration/docker/utils/createServerObject.js +15 -0
  253. package/dist/NodeManager/provider/containerOrchestration/docker/utils/deadline.d.ts +1 -0
  254. package/dist/NodeManager/provider/containerOrchestration/docker/utils/deadline.js +15 -0
  255. package/dist/NodeManager/provider/containerOrchestration/docker/utils/repoTagsContainsImage.d.ts +1 -0
  256. package/dist/NodeManager/provider/containerOrchestration/docker/utils/repoTagsContainsImage.js +13 -0
  257. package/dist/NodeManager/provider/containerOrchestration/interface.d.ts +53 -0
  258. package/dist/NodeManager/provider/containerOrchestration/interface.js +1 -0
  259. package/dist/NodeManager/provider/containerOrchestration/podman/index.d.ts +11 -0
  260. package/dist/NodeManager/provider/containerOrchestration/podman/index.js +69 -0
  261. package/dist/NodeManager/provider/containerOrchestration/podman/utils/createPodmanRunOptions.d.ts +103 -0
  262. package/dist/NodeManager/provider/containerOrchestration/podman/utils/createPodmanRunOptions.js +66 -0
  263. package/dist/NodeManager/provider/containerOrchestration/selectContainerOrchestration.d.ts +2 -0
  264. package/dist/NodeManager/provider/containerOrchestration/selectContainerOrchestration.js +11 -0
  265. package/dist/NodeManager/provider/types.d.ts +18 -0
  266. package/dist/NodeManager/provider/types.js +1 -0
  267. package/dist/NodeManager/provider/utils/parseBuffer.d.ts +4 -0
  268. package/dist/NodeManager/provider/utils/parseBuffer.js +19 -0
  269. package/dist/NodeManager/repository/NodeRepository.d.ts +53 -0
  270. package/dist/NodeManager/repository/NodeRepository.js +153 -0
  271. package/dist/NodeManager/sdk/index.d.ts +9 -0
  272. package/dist/NodeManager/sdk/index.js +146 -0
  273. package/dist/NodeManager/types/index.d.ts +27 -0
  274. package/dist/NodeManager/types/index.js +1 -0
  275. package/dist/NodeManager/utils/convertFromBytes.d.ts +4 -0
  276. package/dist/NodeManager/utils/convertFromBytes.js +11 -0
  277. package/dist/NodeManager/utils/expose-util.d.ts +14 -0
  278. package/dist/NodeManager/utils/expose-util.js +88 -0
  279. package/dist/NodeManager/utils/jobDefinitionParser.d.ts +12 -0
  280. package/dist/NodeManager/utils/jobDefinitionParser.js +31 -0
  281. package/dist/NodeManager/utils/ops-util.d.ts +3 -0
  282. package/dist/NodeManager/utils/ops-util.js +19 -0
  283. package/dist/NodeManager/utils/timeoutPromiseWrapper.d.ts +1 -0
  284. package/dist/NodeManager/utils/timeoutPromiseWrapper.js +27 -0
  285. package/dist/NodeManager/utils/utils.d.ts +39 -0
  286. package/dist/NodeManager/utils/utils.js +107 -0
  287. package/dist/NodeManager/utils/wslCheck.d.ts +14 -0
  288. package/dist/NodeManager/utils/wslCheck.js +54 -0
  289. package/dist/cli/address/__tests__/command.spec.d.ts +1 -0
  290. package/dist/cli/address/__tests__/command.spec.js +33 -0
  291. package/dist/cli/address/action.d.ts +4 -0
  292. package/dist/cli/address/action.js +4 -0
  293. package/dist/cli/address/command.d.ts +2 -0
  294. package/dist/cli/address/command.js +9 -0
  295. package/dist/cli/createNosanaCli.d.ts +2 -0
  296. package/dist/cli/createNosanaCli.js +32 -0
  297. package/dist/cli/index.d.ts +1 -0
  298. package/dist/cli/index.js +16 -0
  299. package/dist/cli/node/__tests__/index.spec.d.ts +1 -0
  300. package/dist/cli/node/__tests__/index.spec.js +10 -0
  301. package/dist/cli/node/index.d.ts +5 -0
  302. package/dist/cli/node/index.js +12 -0
  303. package/dist/cli/node/prune/action.d.ts +4 -0
  304. package/dist/cli/node/prune/action.js +18 -0
  305. package/dist/cli/node/prune/command.d.ts +2 -0
  306. package/dist/cli/node/prune/command.js +10 -0
  307. package/dist/cli/node/run/__tests__/command.spec.d.ts +1 -0
  308. package/dist/cli/node/run/__tests__/command.spec.js +38 -0
  309. package/dist/cli/node/run/action.d.ts +3 -0
  310. package/dist/cli/node/run/action.js +82 -0
  311. package/dist/cli/node/run/command.d.ts +3 -0
  312. package/dist/cli/node/run/command.js +17 -0
  313. package/dist/cli/node/run/generateDeploymentEndpointsTable.d.ts +2 -0
  314. package/dist/cli/node/run/generateDeploymentEndpointsTable.js +45 -0
  315. package/dist/cli/node/start/__tests__/command.spec.d.ts +1 -0
  316. package/dist/cli/node/start/__tests__/command.spec.js +39 -0
  317. package/dist/cli/node/start/action.d.ts +4 -0
  318. package/dist/cli/node/start/action.js +48 -0
  319. package/dist/cli/node/start/command.d.ts +3 -0
  320. package/dist/cli/node/start/command.js +19 -0
  321. package/dist/cli/sharedOptions/--api.d.ts +2 -0
  322. package/dist/cli/sharedOptions/--api.js +2 -0
  323. package/dist/cli/sharedOptions/--format.d.ts +2 -0
  324. package/dist/cli/sharedOptions/--format.js +4 -0
  325. package/dist/cli/sharedOptions/--gpu.d.ts +2 -0
  326. package/dist/cli/sharedOptions/--gpu.js +12 -0
  327. package/dist/cli/sharedOptions/--network.d.ts +2 -0
  328. package/dist/cli/sharedOptions/--network.js +4 -0
  329. package/dist/cli/sharedOptions/--port.d.ts +2 -0
  330. package/dist/cli/sharedOptions/--port.js +2 -0
  331. package/dist/cli/sharedOptions/--rpc.d.ts +2 -0
  332. package/dist/cli/sharedOptions/--rpc.js +2 -0
  333. package/dist/cli/sharedOptions/--timeout.d.ts +2 -0
  334. package/dist/cli/sharedOptions/--timeout.js +12 -0
  335. package/dist/cli/sharedOptions/--verbose.d.ts +2 -0
  336. package/dist/cli/sharedOptions/--verbose.js +2 -0
  337. package/dist/cli/sharedOptions/--wallet.d.ts +2 -0
  338. package/dist/cli/sharedOptions/--wallet.js +2 -0
  339. package/dist/cli/sharedOptions/index.d.ts +7 -0
  340. package/dist/cli/sharedOptions/index.js +8 -0
  341. package/dist/index.d.ts +3 -0
  342. package/dist/index.js +7 -0
  343. package/dist/output-formatter/OutputFormatter.d.ts +61 -0
  344. package/dist/output-formatter/OutputFormatter.js +58 -0
  345. package/dist/output-formatter/OutputFormatterFactory.d.ts +4 -0
  346. package/dist/output-formatter/OutputFormatterFactory.js +18 -0
  347. package/dist/output-formatter/__mocks__/outputEvents.mock.d.ts +42 -0
  348. package/dist/output-formatter/__mocks__/outputEvents.mock.js +45 -0
  349. package/dist/output-formatter/__mocks__/outputFormatter.mock.d.ts +0 -0
  350. package/dist/output-formatter/__mocks__/outputFormatter.mock.js +21 -0
  351. package/dist/output-formatter/__tests__/OutputFormatter.spec.d.ts +1 -0
  352. package/dist/output-formatter/__tests__/OutputFormatter.spec.js +34 -0
  353. package/dist/output-formatter/__tests__/OutputFormatterFactory.spec.d.ts +1 -0
  354. package/dist/output-formatter/__tests__/OutputFormatterFactory.spec.js +26 -0
  355. package/dist/output-formatter/__tests__/outputFormatSelector.spec.d.ts +1 -0
  356. package/dist/output-formatter/__tests__/outputFormatSelector.spec.js +21 -0
  357. package/dist/output-formatter/json/JsonOutputEventHandlers.d.ts +8 -0
  358. package/dist/output-formatter/json/JsonOutputEventHandlers.js +191 -0
  359. package/dist/output-formatter/json/JsonOutputFormatter.d.ts +47 -0
  360. package/dist/output-formatter/json/JsonOutputFormatter.js +12 -0
  361. package/dist/output-formatter/json/__tests__/JsonOutputFormatter.spec.d.ts +1 -0
  362. package/dist/output-formatter/json/__tests__/JsonOutputFormatter.spec.js +36 -0
  363. package/dist/output-formatter/outputEvents.d.ts +213 -0
  364. package/dist/output-formatter/outputEvents.js +63 -0
  365. package/dist/output-formatter/outputFormatArgumentParser.d.ts +1 -0
  366. package/dist/output-formatter/outputFormatArgumentParser.js +10 -0
  367. package/dist/output-formatter/outputFormatSelector.d.ts +15 -0
  368. package/dist/output-formatter/outputFormatSelector.js +23 -0
  369. package/dist/output-formatter/text/TextOutputEventHandlers.d.ts +7 -0
  370. package/dist/output-formatter/text/TextOutputEventHandlers.js +128 -0
  371. package/dist/output-formatter/text/TextOutputFormatter.d.ts +6 -0
  372. package/dist/output-formatter/text/TextOutputFormatter.js +7 -0
  373. package/dist/output-formatter/text/VerboseTextOutputEventHandlers.d.ts +7 -0
  374. package/dist/output-formatter/text/VerboseTextOutputEventHandlers.js +138 -0
  375. package/dist/output-formatter/text/VerboseTextOutputFormatter.d.ts +6 -0
  376. package/dist/output-formatter/text/VerboseTextOutputFormatter.js +7 -0
  377. package/dist/output-formatter/text/__tests__/TextOutputFormatter.spec.d.ts +1 -0
  378. package/dist/output-formatter/text/__tests__/TextOutputFormatter.spec.js +25 -0
  379. package/dist/static/index.d.ts +7 -0
  380. package/dist/static/index.js +12 -0
  381. package/dist/version/index.d.ts +1 -0
  382. package/dist/version/index.js +47 -0
  383. package/npm-shrinkwrap.json +9928 -0
  384. package/package.json +102 -0
@@ -0,0 +1,317 @@
1
+ import { BasicNode } from './node/Node.js';
2
+ import { createLoggingProxy } from './monitoring/proxy/loggingProxy.js';
3
+ import { state } from './monitoring/state/NodeState.js';
4
+ import { stateStreaming } from './monitoring/streaming/StateStreamer.js';
5
+ import { log } from './monitoring/log/NodeLog.js';
6
+ import { logStreaming } from './monitoring/streaming/LogStreamer.js';
7
+ import { consoleLogging } from './monitoring/log/console/ConsoleLogger.js';
8
+ import { validateCLIVersion } from '../version/index.js';
9
+ import { configs } from './configs/configs.js';
10
+ import { getSDK } from './sdk/index.js';
11
+ import { ping } from './monitoring/ping/PingHandler.js';
12
+ import { LogMonitoringRegistry } from './monitoring/LogMonitoringRegistry.js';
13
+ import { checkWSLStatus } from './utils/wslCheck.js';
14
+ export default class NodeManager {
15
+ constructor(options) {
16
+ this.exiting = false;
17
+ this.inJobLoop = false;
18
+ this.node = createLoggingProxy(new BasicNode(options));
19
+ /**
20
+ * the node class makes the api but we pass the api to the NodeManager class
21
+ * because we want the api to be independent from nodes restarts
22
+ */
23
+ this.apiHandler = this.node.api();
24
+ this.handleProcessExit();
25
+ }
26
+ async init() {
27
+ /**
28
+ * setup state that any instance can listen to, state produced from the node via logging proxies.
29
+ * set up node state processing, observers can connect to it and received state
30
+ * updates of the node.
31
+ */
32
+ state(this.node.node());
33
+ /**
34
+ * this is one of the subscriber to @function state(),
35
+ * this sends states over websockets to the job poster or external services
36
+ */
37
+ stateStreaming(this.node.node());
38
+ /**
39
+ * set up log listening, any instance can listen to log produces from the node
40
+ * the logs are produces from the log proxy
41
+ */
42
+ log();
43
+ /**
44
+ * this is one of the subscriber to @function log(),
45
+ * the send the log over websocket to job poster or any external service
46
+ */
47
+ logStreaming(this.node.node());
48
+ /**
49
+ * this is one of the subscriber to @function log()
50
+ * this prints the logs to the console.
51
+ */
52
+ consoleLogging();
53
+ /**
54
+ * start
55
+ *
56
+ * this includes setting up everything in the node including
57
+ * the node api, initializing everything that needs to be initialized
58
+ */
59
+ await this.node.start();
60
+ if (!this.node.isOnboarded) {
61
+ await this.node.register();
62
+ }
63
+ /**
64
+ * start the api of the node and register all the routes of the nodes,
65
+ * we call this here in the init so the api survives restarts between jobs
66
+ */
67
+ if (!this.inJobLoop) {
68
+ await this.apiHandler.preventMultipleApiStarts();
69
+ await this.apiHandler.start();
70
+ /**
71
+ * ping
72
+ *
73
+ * make a call to the backend per interval to show live ness to the backend
74
+ */
75
+ await ping();
76
+ }
77
+ }
78
+ async start(marketArg) {
79
+ this.exiting = false;
80
+ if (this.inJobLoop) {
81
+ await validateCLIVersion();
82
+ }
83
+ /**
84
+ * maintenance
85
+ */
86
+ await this.node.maintenance();
87
+ /**
88
+ * specs
89
+ *
90
+ * this retrieves specs from the node to ensure it can run the jobs.
91
+ * It gets the GPUs, CPUs, and internet speed.
92
+ *
93
+ * if the specs fails restart the system
94
+ */
95
+ if (!(await this.node.specs())) {
96
+ /**
97
+ * start
98
+ *
99
+ * recursively start the the process again by calling the restart function
100
+ */
101
+ return await this.restart(marketArg);
102
+ }
103
+ /**
104
+ * WSL check
105
+ * - Shows warning message for all WSL hosts
106
+ * - Throws WSLBlockedError after December 15, 2025 to prevent queue joining
107
+ */
108
+ checkWSLStatus(this.node.getSystemEnvironment());
109
+ /**
110
+ * grid
111
+ *
112
+ * if no market was supplied, we will register on the grid and get
113
+ * market and access key recommened for our PC based on specs result
114
+ */
115
+ let market = marketArg;
116
+ if (!market || !market.length) {
117
+ market = await this.node.recommend();
118
+ }
119
+ /**
120
+ * setup
121
+ *
122
+ * this sets up everything need, downloads needed resources ...
123
+ */
124
+ await this.node.setup(market);
125
+ /**
126
+ * healthcheck
127
+ *
128
+ * this checks the health of the container tech,
129
+ * the connectivity, and every other critical system.
130
+ */
131
+ if (!(await this.node.healthcheck(market))) {
132
+ /**
133
+ * start
134
+ *
135
+ * recursively start the the process again by calling the restart function
136
+ */
137
+ return await this.restart(marketArg);
138
+ }
139
+ /**
140
+ * this variable was added to know when the node has gone past the setup/checks stages
141
+ * and is now starting job work and queueing,
142
+ * this is mainly put that we want to report error and end the node only when it hasn't passed
143
+ * these stages else we want to restart the node process on error
144
+ */
145
+ this.inJobLoop = true;
146
+ if (!(await this.node.isApiActive())) {
147
+ throw new Error('Node API is detected offline');
148
+ }
149
+ /**
150
+ * pending
151
+ *
152
+ * This checks for pending jobs that were assigned to the node.
153
+ * If the node was shut down and did not pick up a job,
154
+ *
155
+ * NT: If there is no pending job it is sent to the queue
156
+ */
157
+ if (!(await this.node.pending())) {
158
+ /**
159
+ * queue
160
+ *
161
+ * Enter the queue to wait for a job since we have no pending jobs.
162
+ */
163
+ await this.node.queue(market);
164
+ }
165
+ /**
166
+ *
167
+ * This starts two parallel tasks:
168
+ * 1. monitorMarket() - Watches for market removal and can trigger a restart.
169
+ * 2. run() - Waits for and executes the actual job when assigned.
170
+ *
171
+ * Whichever completes first determines the flow:
172
+ * - If a job is received and run() completes, the node proceeds normally.
173
+ * - If monitorMarket() detects no activity within a timeout, it triggers a restart.
174
+ *
175
+ * NT: run() is the primary job execution path. monitorMarket() is a background safeguard.
176
+ */
177
+ await Promise.race([this.node.monitorMarket(), this.node.run()]);
178
+ /**
179
+ * start
180
+ *
181
+ * recursively start the the process again by calling the restart function
182
+ */
183
+ return await this.restart(marketArg);
184
+ }
185
+ async stop() {
186
+ this.exiting = true;
187
+ try {
188
+ /**
189
+ * stop api
190
+ *
191
+ * we want to stop the api server, we only do this on complete shutdown and not
192
+ * restarts after jobs
193
+ */
194
+ await this.apiHandler.stop();
195
+ }
196
+ catch (error) { }
197
+ /**
198
+ * check if the node exists then stop the node, this will involve killing and cleaning
199
+ * the processes.
200
+ */
201
+ if (this.node) {
202
+ await this.node.stop();
203
+ }
204
+ state(this.node.node()).clear();
205
+ stateStreaming(this.node.node()).clear();
206
+ logStreaming(this.node.node()).clear();
207
+ this.exiting = false;
208
+ }
209
+ /**
210
+ * clean is different from stop as it does not stop the API
211
+ * it doesn't quit a job or leave a market, it just clears instances from the handlers
212
+ */
213
+ async clean() {
214
+ this.exiting = true;
215
+ /**
216
+ * check if the node exists then clean the processes.
217
+ */
218
+ if (this.node) {
219
+ await this.node.clean();
220
+ }
221
+ stateStreaming(this.node.node()).clear();
222
+ logStreaming(this.node.node()).clear();
223
+ this.exiting = false;
224
+ }
225
+ async restart(marketArg) {
226
+ if (this.exiting)
227
+ return;
228
+ this.exiting = true;
229
+ // this.node.exit();
230
+ /**
231
+ * clean
232
+ *
233
+ * clean the node, clear up data, clean processes and operations
234
+ */
235
+ await this.clean();
236
+ /**
237
+ * delay
238
+ *
239
+ * put a delay of seconds to space out restarting
240
+ */
241
+ await this.node.restartDelay(10);
242
+ /**
243
+ * start
244
+ *
245
+ * start the process of this manager
246
+ */
247
+ await this.start(marketArg);
248
+ }
249
+ async delay(sec) {
250
+ await this.node.restartDelay(sec);
251
+ }
252
+ async error() {
253
+ if (this.exiting)
254
+ return;
255
+ this.exiting = true;
256
+ this.node.exit();
257
+ }
258
+ /**
259
+ * Set up handling for process exit signals
260
+ */
261
+ handleProcessExit() {
262
+ const exitHandler = async () => {
263
+ LogMonitoringRegistry.getInstance().setLoggable(true);
264
+ if (this.exiting)
265
+ return;
266
+ this.exiting = true;
267
+ this.node.exit();
268
+ await this.stop();
269
+ process.exit();
270
+ };
271
+ process.on('SIGINT', exitHandler); // Handle Ctrl+C
272
+ process.on('SIGTERM', exitHandler); // Handle termination signals
273
+ // log crashes
274
+ process.on('unhandledRejection', async (reason, p) => {
275
+ try {
276
+ const e = reason;
277
+ await reportError({
278
+ error_type: 'unhandledRejection',
279
+ error_name: e.name,
280
+ error_message: e.message,
281
+ error_stack: e.stack ?? e.trace,
282
+ });
283
+ }
284
+ catch (_) { }
285
+ });
286
+ process.on('uncaughtException', async (reason) => {
287
+ try {
288
+ const e = reason;
289
+ await reportError({
290
+ error_type: 'uncaughtException',
291
+ error_name: e.name,
292
+ error_message: e.message,
293
+ error_stack: e.stack ?? e.trace,
294
+ });
295
+ }
296
+ catch (_) { }
297
+ });
298
+ }
299
+ }
300
+ const reportError = async (data) => {
301
+ const nosana = getSDK();
302
+ const response = await fetch(`${configs().backendUrl}/errors/report`, {
303
+ method: 'POST',
304
+ headers: {
305
+ Authorization: await nosana.authorization.generate(configs().signMessage, {
306
+ includeTime: true,
307
+ }),
308
+ 'Content-Type': 'application/json',
309
+ },
310
+ body: JSON.stringify({
311
+ address: nosana.solana.provider.wallet.publicKey.toString(),
312
+ ...data,
313
+ }),
314
+ });
315
+ const responseBody = await response.json();
316
+ return responseBody;
317
+ };
@@ -0,0 +1,6 @@
1
+ import { Job } from '@nosana/sdk';
2
+ import 'rpc-websockets/dist/lib/client.js';
3
+ import { PublicKey } from '@solana/web3.js';
4
+ export declare const EMPTY_ADDRESS: PublicKey;
5
+ export declare const waitForJobCompletion: (jobAddress: PublicKey) => Promise<Job>;
6
+ export declare const waitForJobRunOrCompletion: (jobAddress: PublicKey) => Promise<Job>;
@@ -0,0 +1,45 @@
1
+ import { mapJob } from '@nosana/sdk';
2
+ import 'rpc-websockets/dist/lib/client.js';
3
+ import { PublicKey } from '@solana/web3.js';
4
+ import { getSDK } from '../sdk/index.js';
5
+ export const EMPTY_ADDRESS = new PublicKey('11111111111111111111111111111111');
6
+ const POLLING_INTERVAL = 10000;
7
+ export const waitForJobCompletion = async (jobAddress) => {
8
+ const nosana = getSDK();
9
+ await nosana.jobs.loadNosanaJobs();
10
+ return new Promise((resolve) => {
11
+ const subscriptionId = nosana.jobs.connection.onAccountChange(jobAddress, (accountInfo) => {
12
+ const jobAccount = nosana.jobs.jobs.coder.accounts.decode(nosana.jobs.jobs.account.jobAccount.idlAccount.name, accountInfo.data);
13
+ if (jobAccount.state >= 2) {
14
+ nosana.jobs.connection.removeProgramAccountChangeListener(subscriptionId);
15
+ resolve(mapJob(jobAccount));
16
+ }
17
+ }, 'confirmed');
18
+ });
19
+ };
20
+ export const waitForJobRunOrCompletion = async (jobAddress) => {
21
+ const nosana = getSDK();
22
+ await nosana.jobs.loadNosanaJobs();
23
+ const getJobRunningPromise = new Promise((resolve) => {
24
+ const checkCondition = async () => {
25
+ const job = await nosana.jobs.get(jobAddress);
26
+ if (job.state === 'RUNNING') {
27
+ resolve(job);
28
+ }
29
+ else {
30
+ setTimeout(checkCondition, POLLING_INTERVAL);
31
+ }
32
+ };
33
+ checkCondition();
34
+ });
35
+ const jobCompletionPromise = new Promise((resolve) => {
36
+ const subscriptionId = nosana.jobs.connection.onAccountChange(jobAddress, (accountInfo) => {
37
+ const jobAccount = nosana.jobs.jobs.coder.accounts.decode(nosana.jobs.jobs.account.jobAccount.idlAccount.name, accountInfo.data);
38
+ if (jobAccount.state >= 2) {
39
+ nosana.jobs.connection.removeProgramAccountChangeListener(subscriptionId);
40
+ resolve(mapJob(jobAccount));
41
+ }
42
+ }, 'confirmed');
43
+ });
44
+ return Promise.race([getJobRunningPromise, jobCompletionPromise]);
45
+ };
@@ -0,0 +1,9 @@
1
+ export declare class LogMonitoringRegistry {
2
+ private static instance;
3
+ private registry;
4
+ static getInstance(): LogMonitoringRegistry;
5
+ setLoggable(state: boolean): void;
6
+ getLoggable(): boolean;
7
+ setSkipLog(state: boolean): void;
8
+ getSkipLog(): boolean;
9
+ }
@@ -0,0 +1,23 @@
1
+ export class LogMonitoringRegistry {
2
+ constructor() {
3
+ this.registry = new Map();
4
+ }
5
+ static getInstance() {
6
+ if (!LogMonitoringRegistry.instance) {
7
+ LogMonitoringRegistry.instance = new LogMonitoringRegistry();
8
+ }
9
+ return LogMonitoringRegistry.instance;
10
+ }
11
+ setLoggable(state) {
12
+ this.registry.set('loggable', state);
13
+ }
14
+ getLoggable() {
15
+ return this.registry.get('loggable') ?? true;
16
+ }
17
+ setSkipLog(state) {
18
+ this.registry.set('skiplog', state) ?? true;
19
+ }
20
+ getSkipLog() {
21
+ return this.registry.get('skiplog') ?? false;
22
+ }
23
+ }
@@ -0,0 +1,56 @@
1
+ export interface LogObserver {
2
+ isNodeObserver(): boolean;
3
+ update(log: NodeLogEntry, isNode?: boolean): void;
4
+ }
5
+ export declare const log: () => NodeLog;
6
+ export interface NodeLogEntryPending {
7
+ isPending: boolean;
8
+ expecting: string | undefined;
9
+ }
10
+ export interface NodeLogEntry {
11
+ log: string;
12
+ method: string;
13
+ type: string;
14
+ pending?: NodeLogEntryPending;
15
+ timestamp: number;
16
+ job: string | undefined;
17
+ payload?: any;
18
+ }
19
+ declare class NodeLog {
20
+ private observers;
21
+ private shared;
22
+ private job;
23
+ constructor();
24
+ addObserver(observer: LogObserver): void;
25
+ removeObserver(observer: LogObserver): void;
26
+ private notifyObservers;
27
+ private addLog;
28
+ private addFlog;
29
+ private process;
30
+ private handleRecommend;
31
+ private handleResourceManager;
32
+ private handleSpecs;
33
+ private handleRegister;
34
+ private handleExpiryHandler;
35
+ private handleContainerCheckHandler;
36
+ private handleStakeHandler;
37
+ private handleHealthHandler;
38
+ private handleProvider;
39
+ private handleNodeRepository;
40
+ private handleJobExternalUtil;
41
+ private handleHealthy;
42
+ private handlePullImage;
43
+ private handleCreateNetwork;
44
+ private handleRunContainer;
45
+ private handleRunFlowContainer;
46
+ private handleApiHandler;
47
+ private handleMarketHandler;
48
+ private handleExit;
49
+ private handleClean;
50
+ private handleStop;
51
+ private handleRestart;
52
+ private handlePending;
53
+ private handleJobHandler;
54
+ private handleFlowHandler;
55
+ }
56
+ export {};