@matter/node 0.16.0-alpha.0-20251006-3fe1e7c57 → 0.16.0-alpha.0-20251013-89bb7099d

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 (573) hide show
  1. package/dist/cjs/behavior/Behavior.d.ts +4 -0
  2. package/dist/cjs/behavior/Behavior.d.ts.map +1 -1
  3. package/dist/cjs/behavior/Behavior.js +7 -1
  4. package/dist/cjs/behavior/Behavior.js.map +1 -1
  5. package/dist/cjs/behavior/Events.js +2 -2
  6. package/dist/cjs/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  7. package/dist/cjs/behavior/internal/BehaviorBacking.js +67 -3
  8. package/dist/cjs/behavior/internal/BehaviorBacking.js.map +1 -1
  9. package/dist/cjs/behavior/state/managed/Datasource.d.ts +4 -9
  10. package/dist/cjs/behavior/state/managed/Datasource.d.ts.map +1 -1
  11. package/dist/cjs/behavior/state/managed/Datasource.js +9 -12
  12. package/dist/cjs/behavior/state/managed/Datasource.js.map +1 -1
  13. package/dist/cjs/behavior/state/managed/NameResolver.d.ts.map +1 -1
  14. package/dist/cjs/behavior/state/managed/NameResolver.js.map +1 -1
  15. package/dist/cjs/behavior/state/managed/values/ValueCaster.d.ts +3 -2
  16. package/dist/cjs/behavior/state/managed/values/ValueCaster.d.ts.map +1 -1
  17. package/dist/cjs/behavior/state/managed/values/ValueCaster.js +16 -3
  18. package/dist/cjs/behavior/state/managed/values/ValueCaster.js.map +1 -1
  19. package/dist/cjs/behavior/system/commissioning/CommissioningClient.d.ts +12 -5
  20. package/dist/cjs/behavior/system/commissioning/CommissioningClient.d.ts.map +1 -1
  21. package/dist/cjs/behavior/system/commissioning/CommissioningClient.js +17 -1
  22. package/dist/cjs/behavior/system/commissioning/CommissioningClient.js.map +1 -1
  23. package/dist/cjs/behavior/system/commissioning/CommissioningServer.d.ts.map +1 -1
  24. package/dist/cjs/behavior/system/commissioning/CommissioningServer.js +2 -1
  25. package/dist/cjs/behavior/system/commissioning/CommissioningServer.js.map +1 -1
  26. package/dist/cjs/behavior/system/controller/ControllerBehavior.d.ts.map +1 -1
  27. package/dist/cjs/behavior/system/controller/ControllerBehavior.js +0 -4
  28. package/dist/cjs/behavior/system/controller/ControllerBehavior.js.map +1 -1
  29. package/dist/cjs/behavior/system/http/HttpInterface.d.ts +36 -0
  30. package/dist/cjs/behavior/system/http/HttpInterface.d.ts.map +1 -0
  31. package/dist/cjs/behavior/system/http/HttpInterface.js +282 -0
  32. package/dist/cjs/behavior/system/http/HttpInterface.js.map +6 -0
  33. package/dist/cjs/behavior/system/http/HttpServer.d.ts +30 -0
  34. package/dist/cjs/behavior/system/http/HttpServer.d.ts.map +1 -0
  35. package/dist/cjs/behavior/system/http/HttpServer.js +51 -0
  36. package/dist/cjs/behavior/system/http/HttpServer.js.map +6 -0
  37. package/dist/cjs/behavior/system/http/index.d.ts +8 -0
  38. package/dist/cjs/behavior/system/http/index.d.ts.map +1 -0
  39. package/dist/cjs/behavior/system/http/index.js +25 -0
  40. package/dist/cjs/behavior/system/http/index.js.map +6 -0
  41. package/dist/cjs/behavior/system/index/IndexBehavior.d.ts +4 -4
  42. package/dist/cjs/behavior/system/index/IndexBehavior.d.ts.map +1 -1
  43. package/dist/cjs/behavior/system/index/IndexBehavior.js +9 -4
  44. package/dist/cjs/behavior/system/index/IndexBehavior.js.map +1 -1
  45. package/dist/cjs/behavior/system/index.d.ts +4 -0
  46. package/dist/cjs/behavior/system/index.d.ts.map +1 -1
  47. package/dist/cjs/behavior/system/index.js +4 -0
  48. package/dist/cjs/behavior/system/index.js.map +1 -1
  49. package/dist/cjs/behavior/system/mqtt/MqttInterface.d.ts +22 -0
  50. package/dist/cjs/behavior/system/mqtt/MqttInterface.d.ts.map +1 -0
  51. package/dist/cjs/behavior/system/mqtt/MqttInterface.js +351 -0
  52. package/dist/cjs/behavior/system/mqtt/MqttInterface.js.map +6 -0
  53. package/dist/cjs/behavior/system/mqtt/MqttServer.d.ts +36 -0
  54. package/dist/cjs/behavior/system/mqtt/MqttServer.d.ts.map +1 -0
  55. package/dist/cjs/behavior/system/mqtt/MqttServer.js +55 -0
  56. package/dist/cjs/behavior/system/mqtt/MqttServer.js.map +6 -0
  57. package/dist/cjs/behavior/system/mqtt/index.d.ts +8 -0
  58. package/dist/cjs/behavior/system/mqtt/index.d.ts.map +1 -0
  59. package/dist/cjs/behavior/system/mqtt/index.js +25 -0
  60. package/dist/cjs/behavior/system/mqtt/index.js.map +6 -0
  61. package/dist/cjs/behavior/system/network/NetworkClient.d.ts +32 -3
  62. package/dist/cjs/behavior/system/network/NetworkClient.d.ts.map +1 -1
  63. package/dist/cjs/behavior/system/network/NetworkClient.js +100 -18
  64. package/dist/cjs/behavior/system/network/NetworkClient.js.map +1 -1
  65. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.d.ts +2 -1
  66. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.d.ts.map +1 -1
  67. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.js +7 -5
  68. package/dist/cjs/behavior/system/product-description/ProductDescriptionServer.js.map +1 -1
  69. package/dist/cjs/behavior/system/remote/RemoteInterface.d.ts +41 -0
  70. package/dist/cjs/behavior/system/remote/RemoteInterface.d.ts.map +1 -0
  71. package/dist/cjs/behavior/system/remote/RemoteInterface.js +105 -0
  72. package/dist/cjs/behavior/system/remote/RemoteInterface.js.map +6 -0
  73. package/dist/cjs/behavior/system/remote/RemoteServer.d.ts +61 -0
  74. package/dist/cjs/behavior/system/remote/RemoteServer.d.ts.map +1 -0
  75. package/dist/cjs/behavior/system/remote/RemoteServer.js +118 -0
  76. package/dist/cjs/behavior/system/remote/RemoteServer.js.map +6 -0
  77. package/dist/cjs/behavior/system/remote/api/Api.d.ts +36 -0
  78. package/dist/cjs/behavior/system/remote/api/Api.d.ts.map +1 -0
  79. package/dist/cjs/behavior/system/remote/api/Api.js +157 -0
  80. package/dist/cjs/behavior/system/remote/api/Api.js.map +6 -0
  81. package/dist/cjs/behavior/system/remote/api/ApiPath.d.ts +32 -0
  82. package/dist/cjs/behavior/system/remote/api/ApiPath.d.ts.map +1 -0
  83. package/dist/cjs/behavior/system/remote/api/ApiPath.js +101 -0
  84. package/dist/cjs/behavior/system/remote/api/ApiPath.js.map +6 -0
  85. package/dist/cjs/behavior/system/remote/api/ApiResource.d.ts +102 -0
  86. package/dist/cjs/behavior/system/remote/api/ApiResource.d.ts.map +1 -0
  87. package/dist/cjs/behavior/system/remote/api/ApiResource.js +123 -0
  88. package/dist/cjs/behavior/system/remote/api/ApiResource.js.map +6 -0
  89. package/dist/cjs/behavior/system/remote/api/Envelope.d.ts +53 -0
  90. package/dist/cjs/behavior/system/remote/api/Envelope.d.ts.map +1 -0
  91. package/dist/cjs/behavior/system/remote/api/Envelope.js +107 -0
  92. package/dist/cjs/behavior/system/remote/api/Envelope.js.map +6 -0
  93. package/dist/cjs/behavior/system/remote/api/LocalResponse.d.ts +28 -0
  94. package/dist/cjs/behavior/system/remote/api/LocalResponse.d.ts.map +1 -0
  95. package/dist/cjs/behavior/system/remote/api/LocalResponse.js +22 -0
  96. package/dist/cjs/behavior/system/remote/api/LocalResponse.js.map +6 -0
  97. package/dist/cjs/behavior/system/remote/api/RemoteRequest.d.ts +43 -0
  98. package/dist/cjs/behavior/system/remote/api/RemoteRequest.d.ts.map +1 -0
  99. package/dist/cjs/behavior/system/remote/api/RemoteRequest.js +55 -0
  100. package/dist/cjs/behavior/system/remote/api/RemoteRequest.js.map +6 -0
  101. package/dist/cjs/behavior/system/remote/api/RemoteResponse.d.ts +38 -0
  102. package/dist/cjs/behavior/system/remote/api/RemoteResponse.d.ts.map +1 -0
  103. package/dist/cjs/behavior/system/remote/api/RemoteResponse.js +65 -0
  104. package/dist/cjs/behavior/system/remote/api/RemoteResponse.js.map +6 -0
  105. package/dist/cjs/behavior/system/remote/api/index.d.ts +13 -0
  106. package/dist/cjs/behavior/system/remote/api/index.d.ts.map +1 -0
  107. package/dist/cjs/behavior/system/remote/api/index.js +30 -0
  108. package/dist/cjs/behavior/system/remote/api/index.js.map +6 -0
  109. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.d.ts +22 -0
  110. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.d.ts.map +1 -0
  111. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.js +69 -0
  112. package/dist/cjs/behavior/system/remote/api/resources/BehaviorResource.js.map +6 -0
  113. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.d.ts +25 -0
  114. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.d.ts.map +1 -0
  115. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.js +76 -0
  116. package/dist/cjs/behavior/system/remote/api/resources/ChangesResource.js.map +6 -0
  117. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.d.ts +26 -0
  118. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.d.ts.map +1 -0
  119. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.js +83 -0
  120. package/dist/cjs/behavior/system/remote/api/resources/CommandResource.js.map +6 -0
  121. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.d.ts +22 -0
  122. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.d.ts.map +1 -0
  123. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.js +52 -0
  124. package/dist/cjs/behavior/system/remote/api/resources/EndpointContainerResource.js.map +6 -0
  125. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.d.ts +34 -0
  126. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.d.ts.map +1 -0
  127. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.js +78 -0
  128. package/dist/cjs/behavior/system/remote/api/resources/EndpointResource.js.map +6 -0
  129. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.d.ts +20 -0
  130. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.d.ts.map +1 -0
  131. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.js +74 -0
  132. package/dist/cjs/behavior/system/remote/api/resources/NodeResource.js.map +6 -0
  133. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.d.ts +28 -0
  134. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.d.ts.map +1 -0
  135. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.js +123 -0
  136. package/dist/cjs/behavior/system/remote/api/resources/PropertyResource.js.map +6 -0
  137. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.d.ts +22 -0
  138. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.d.ts.map +1 -0
  139. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.js +74 -0
  140. package/dist/cjs/behavior/system/remote/api/resources/ServerNodeResource.js.map +6 -0
  141. package/dist/cjs/behavior/system/remote/api/resources/index.d.ts +13 -0
  142. package/dist/cjs/behavior/system/remote/api/resources/index.d.ts.map +1 -0
  143. package/dist/cjs/behavior/system/remote/api/resources/index.js +30 -0
  144. package/dist/cjs/behavior/system/remote/api/resources/index.js.map +6 -0
  145. package/dist/cjs/behavior/system/remote/index.d.ts +9 -0
  146. package/dist/cjs/behavior/system/remote/index.d.ts.map +1 -0
  147. package/dist/cjs/behavior/system/remote/index.js +26 -0
  148. package/dist/cjs/behavior/system/remote/index.js.map +6 -0
  149. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.d.ts.map +1 -1
  150. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.js +1 -2
  151. package/dist/cjs/behavior/system/subscriptions/SubscriptionsServer.js.map +1 -1
  152. package/dist/cjs/behavior/system/websocket/WebSocketInterface.d.ts +16 -0
  153. package/dist/cjs/behavior/system/websocket/WebSocketInterface.d.ts.map +1 -0
  154. package/dist/cjs/behavior/system/websocket/WebSocketInterface.js +171 -0
  155. package/dist/cjs/behavior/system/websocket/WebSocketInterface.js.map +6 -0
  156. package/dist/cjs/behavior/system/websocket/WebSocketServer.d.ts +30 -0
  157. package/dist/cjs/behavior/system/websocket/WebSocketServer.d.ts.map +1 -0
  158. package/dist/cjs/behavior/system/websocket/WebSocketServer.js +51 -0
  159. package/dist/cjs/behavior/system/websocket/WebSocketServer.js.map +6 -0
  160. package/dist/cjs/behavior/system/websocket/index.d.ts +8 -0
  161. package/dist/cjs/behavior/system/websocket/index.d.ts.map +1 -0
  162. package/dist/cjs/behavior/system/websocket/index.js +25 -0
  163. package/dist/cjs/behavior/system/websocket/index.js.map +6 -0
  164. package/dist/cjs/endpoint/Agent.js +1 -1
  165. package/dist/cjs/endpoint/Agent.js.map +1 -1
  166. package/dist/cjs/endpoint/Endpoint.d.ts.map +1 -1
  167. package/dist/cjs/endpoint/Endpoint.js +6 -4
  168. package/dist/cjs/endpoint/Endpoint.js.map +1 -1
  169. package/dist/cjs/endpoint/properties/Behaviors.d.ts +4 -0
  170. package/dist/cjs/endpoint/properties/Behaviors.d.ts.map +1 -1
  171. package/dist/cjs/endpoint/properties/Behaviors.js +11 -2
  172. package/dist/cjs/endpoint/properties/Behaviors.js.map +1 -1
  173. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.d.ts +20 -0
  174. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.d.ts.map +1 -0
  175. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.js +56 -0
  176. package/dist/cjs/endpoint/properties/ClientNodeEndpoints.js.map +6 -0
  177. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts +4 -0
  178. package/dist/cjs/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  179. package/dist/cjs/endpoint/properties/EndpointInitializer.js +6 -0
  180. package/dist/cjs/endpoint/properties/EndpointInitializer.js.map +1 -1
  181. package/dist/cjs/endpoint/properties/Endpoints.d.ts +1 -0
  182. package/dist/cjs/endpoint/properties/Endpoints.d.ts.map +1 -1
  183. package/dist/cjs/endpoint/properties/Endpoints.js +3 -0
  184. package/dist/cjs/endpoint/properties/Endpoints.js.map +1 -1
  185. package/dist/cjs/endpoint/type/EndpointType.d.ts +2 -0
  186. package/dist/cjs/endpoint/type/EndpointType.d.ts.map +1 -1
  187. package/dist/cjs/endpoint/type/EndpointType.js +5 -0
  188. package/dist/cjs/endpoint/type/EndpointType.js.map +2 -2
  189. package/dist/cjs/node/ClientNode.d.ts +4 -2
  190. package/dist/cjs/node/ClientNode.d.ts.map +1 -1
  191. package/dist/cjs/node/ClientNode.js +6 -2
  192. package/dist/cjs/node/ClientNode.js.map +1 -1
  193. package/dist/cjs/node/Node.js +1 -1
  194. package/dist/cjs/node/NodeLifecycle.d.ts +1 -1
  195. package/dist/cjs/node/NodeLifecycle.d.ts.map +1 -1
  196. package/dist/cjs/node/NodeLifecycle.js +1 -1
  197. package/dist/cjs/node/NodeLifecycle.js.map +1 -1
  198. package/dist/cjs/node/client/ClientEndpointInitializer.d.ts +2 -0
  199. package/dist/cjs/node/client/ClientEndpointInitializer.d.ts.map +1 -1
  200. package/dist/cjs/node/client/ClientEndpointInitializer.js +33 -0
  201. package/dist/cjs/node/client/ClientEndpointInitializer.js.map +1 -1
  202. package/dist/cjs/node/client/ClientEventEmitter.d.ts +3 -3
  203. package/dist/cjs/node/client/ClientEventEmitter.d.ts.map +1 -1
  204. package/dist/cjs/node/client/ClientNodeInteraction.d.ts +1 -0
  205. package/dist/cjs/node/client/ClientNodeInteraction.d.ts.map +1 -1
  206. package/dist/cjs/node/client/ClientNodeInteraction.js +6 -0
  207. package/dist/cjs/node/client/ClientNodeInteraction.js.map +1 -1
  208. package/dist/cjs/node/client/ClientStructure.d.ts +2 -0
  209. package/dist/cjs/node/client/ClientStructure.d.ts.map +1 -1
  210. package/dist/cjs/node/client/ClientStructure.js +18 -5
  211. package/dist/cjs/node/client/ClientStructure.js.map +1 -1
  212. package/dist/cjs/node/client/Peers.d.ts +6 -0
  213. package/dist/cjs/node/client/Peers.d.ts.map +1 -1
  214. package/dist/cjs/node/client/Peers.js +55 -3
  215. package/dist/cjs/node/client/Peers.js.map +2 -2
  216. package/dist/cjs/node/index.d.ts +1 -0
  217. package/dist/cjs/node/index.d.ts.map +1 -1
  218. package/dist/cjs/node/index.js +1 -0
  219. package/dist/cjs/node/index.js.map +1 -1
  220. package/dist/cjs/node/integration/ChangeNotificationService.d.ts +56 -0
  221. package/dist/cjs/node/integration/ChangeNotificationService.d.ts.map +1 -0
  222. package/dist/cjs/node/integration/ChangeNotificationService.js +93 -0
  223. package/dist/cjs/node/integration/ChangeNotificationService.js.map +6 -0
  224. package/dist/cjs/node/{server → integration}/ProtocolService.d.ts +15 -0
  225. package/dist/cjs/node/integration/ProtocolService.d.ts.map +1 -0
  226. package/dist/cjs/node/{server → integration}/ProtocolService.js +26 -51
  227. package/dist/cjs/node/integration/ProtocolService.js.map +6 -0
  228. package/dist/cjs/node/integration/StateStream.d.ts +87 -0
  229. package/dist/cjs/node/integration/StateStream.d.ts.map +1 -0
  230. package/dist/cjs/node/integration/StateStream.js +276 -0
  231. package/dist/cjs/node/integration/StateStream.js.map +6 -0
  232. package/dist/cjs/node/integration/index.d.ts +9 -0
  233. package/dist/cjs/node/integration/index.d.ts.map +1 -0
  234. package/dist/cjs/node/integration/index.js +26 -0
  235. package/dist/cjs/node/integration/index.js.map +6 -0
  236. package/dist/cjs/node/server/OnlineServerInteraction.d.ts +1 -0
  237. package/dist/cjs/node/server/OnlineServerInteraction.d.ts.map +1 -1
  238. package/dist/cjs/node/server/OnlineServerInteraction.js +4 -1
  239. package/dist/cjs/node/server/OnlineServerInteraction.js.map +1 -1
  240. package/dist/cjs/node/server/ServerEnvironment.d.ts.map +1 -1
  241. package/dist/cjs/node/server/ServerEnvironment.js +6 -0
  242. package/dist/cjs/node/server/ServerEnvironment.js.map +1 -1
  243. package/dist/cjs/node/server/ServerSubscription.d.ts.map +1 -1
  244. package/dist/cjs/node/server/ServerSubscription.js +2 -2
  245. package/dist/cjs/node/server/index.d.ts +0 -1
  246. package/dist/cjs/node/server/index.d.ts.map +1 -1
  247. package/dist/cjs/node/server/index.js +0 -1
  248. package/dist/cjs/node/server/index.js.map +1 -1
  249. package/dist/cjs/storage/client/ClientNodeStores.d.ts.map +1 -1
  250. package/dist/cjs/storage/client/ClientNodeStores.js.map +1 -1
  251. package/dist/esm/behavior/Behavior.d.ts +4 -0
  252. package/dist/esm/behavior/Behavior.d.ts.map +1 -1
  253. package/dist/esm/behavior/Behavior.js +7 -1
  254. package/dist/esm/behavior/Behavior.js.map +1 -1
  255. package/dist/esm/behavior/Events.js +2 -2
  256. package/dist/esm/behavior/internal/BehaviorBacking.d.ts.map +1 -1
  257. package/dist/esm/behavior/internal/BehaviorBacking.js +70 -4
  258. package/dist/esm/behavior/internal/BehaviorBacking.js.map +1 -1
  259. package/dist/esm/behavior/state/managed/Datasource.d.ts +4 -9
  260. package/dist/esm/behavior/state/managed/Datasource.d.ts.map +1 -1
  261. package/dist/esm/behavior/state/managed/Datasource.js +9 -13
  262. package/dist/esm/behavior/state/managed/Datasource.js.map +1 -1
  263. package/dist/esm/behavior/state/managed/NameResolver.d.ts.map +1 -1
  264. package/dist/esm/behavior/state/managed/NameResolver.js.map +1 -1
  265. package/dist/esm/behavior/state/managed/values/ValueCaster.d.ts +3 -2
  266. package/dist/esm/behavior/state/managed/values/ValueCaster.d.ts.map +1 -1
  267. package/dist/esm/behavior/state/managed/values/ValueCaster.js +16 -3
  268. package/dist/esm/behavior/state/managed/values/ValueCaster.js.map +1 -1
  269. package/dist/esm/behavior/system/commissioning/CommissioningClient.d.ts +12 -5
  270. package/dist/esm/behavior/system/commissioning/CommissioningClient.d.ts.map +1 -1
  271. package/dist/esm/behavior/system/commissioning/CommissioningClient.js +19 -1
  272. package/dist/esm/behavior/system/commissioning/CommissioningClient.js.map +1 -1
  273. package/dist/esm/behavior/system/commissioning/CommissioningServer.d.ts.map +1 -1
  274. package/dist/esm/behavior/system/commissioning/CommissioningServer.js +2 -1
  275. package/dist/esm/behavior/system/commissioning/CommissioningServer.js.map +1 -1
  276. package/dist/esm/behavior/system/controller/ControllerBehavior.d.ts.map +1 -1
  277. package/dist/esm/behavior/system/controller/ControllerBehavior.js +0 -5
  278. package/dist/esm/behavior/system/controller/ControllerBehavior.js.map +1 -1
  279. package/dist/esm/behavior/system/http/HttpInterface.d.ts +36 -0
  280. package/dist/esm/behavior/system/http/HttpInterface.d.ts.map +1 -0
  281. package/dist/esm/behavior/system/http/HttpInterface.js +273 -0
  282. package/dist/esm/behavior/system/http/HttpInterface.js.map +6 -0
  283. package/dist/esm/behavior/system/http/HttpServer.d.ts +30 -0
  284. package/dist/esm/behavior/system/http/HttpServer.d.ts.map +1 -0
  285. package/dist/esm/behavior/system/http/HttpServer.js +31 -0
  286. package/dist/esm/behavior/system/http/HttpServer.js.map +6 -0
  287. package/dist/esm/behavior/system/http/index.d.ts +8 -0
  288. package/dist/esm/behavior/system/http/index.d.ts.map +1 -0
  289. package/dist/esm/behavior/system/http/index.js +8 -0
  290. package/dist/esm/behavior/system/http/index.js.map +6 -0
  291. package/dist/esm/behavior/system/index/IndexBehavior.d.ts +4 -4
  292. package/dist/esm/behavior/system/index/IndexBehavior.d.ts.map +1 -1
  293. package/dist/esm/behavior/system/index/IndexBehavior.js +9 -4
  294. package/dist/esm/behavior/system/index/IndexBehavior.js.map +1 -1
  295. package/dist/esm/behavior/system/index.d.ts +4 -0
  296. package/dist/esm/behavior/system/index.d.ts.map +1 -1
  297. package/dist/esm/behavior/system/index.js +4 -0
  298. package/dist/esm/behavior/system/index.js.map +1 -1
  299. package/dist/esm/behavior/system/mqtt/MqttInterface.d.ts +22 -0
  300. package/dist/esm/behavior/system/mqtt/MqttInterface.d.ts.map +1 -0
  301. package/dist/esm/behavior/system/mqtt/MqttInterface.js +341 -0
  302. package/dist/esm/behavior/system/mqtt/MqttInterface.js.map +6 -0
  303. package/dist/esm/behavior/system/mqtt/MqttServer.d.ts +36 -0
  304. package/dist/esm/behavior/system/mqtt/MqttServer.d.ts.map +1 -0
  305. package/dist/esm/behavior/system/mqtt/MqttServer.js +35 -0
  306. package/dist/esm/behavior/system/mqtt/MqttServer.js.map +6 -0
  307. package/dist/esm/behavior/system/mqtt/index.d.ts +8 -0
  308. package/dist/esm/behavior/system/mqtt/index.d.ts.map +1 -0
  309. package/dist/esm/behavior/system/mqtt/index.js +8 -0
  310. package/dist/esm/behavior/system/mqtt/index.js.map +6 -0
  311. package/dist/esm/behavior/system/network/NetworkClient.d.ts +32 -3
  312. package/dist/esm/behavior/system/network/NetworkClient.d.ts.map +1 -1
  313. package/dist/esm/behavior/system/network/NetworkClient.js +101 -19
  314. package/dist/esm/behavior/system/network/NetworkClient.js.map +1 -1
  315. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.d.ts +2 -1
  316. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.d.ts.map +1 -1
  317. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.js +8 -6
  318. package/dist/esm/behavior/system/product-description/ProductDescriptionServer.js.map +1 -1
  319. package/dist/esm/behavior/system/remote/RemoteInterface.d.ts +41 -0
  320. package/dist/esm/behavior/system/remote/RemoteInterface.d.ts.map +1 -0
  321. package/dist/esm/behavior/system/remote/RemoteInterface.js +85 -0
  322. package/dist/esm/behavior/system/remote/RemoteInterface.js.map +6 -0
  323. package/dist/esm/behavior/system/remote/RemoteServer.d.ts +61 -0
  324. package/dist/esm/behavior/system/remote/RemoteServer.d.ts.map +1 -0
  325. package/dist/esm/behavior/system/remote/RemoteServer.js +98 -0
  326. package/dist/esm/behavior/system/remote/RemoteServer.js.map +6 -0
  327. package/dist/esm/behavior/system/remote/api/Api.d.ts +36 -0
  328. package/dist/esm/behavior/system/remote/api/Api.d.ts.map +1 -0
  329. package/dist/esm/behavior/system/remote/api/Api.js +137 -0
  330. package/dist/esm/behavior/system/remote/api/Api.js.map +6 -0
  331. package/dist/esm/behavior/system/remote/api/ApiPath.d.ts +32 -0
  332. package/dist/esm/behavior/system/remote/api/ApiPath.d.ts.map +1 -0
  333. package/dist/esm/behavior/system/remote/api/ApiPath.js +81 -0
  334. package/dist/esm/behavior/system/remote/api/ApiPath.js.map +6 -0
  335. package/dist/esm/behavior/system/remote/api/ApiResource.d.ts +102 -0
  336. package/dist/esm/behavior/system/remote/api/ApiResource.d.ts.map +1 -0
  337. package/dist/esm/behavior/system/remote/api/ApiResource.js +103 -0
  338. package/dist/esm/behavior/system/remote/api/ApiResource.js.map +6 -0
  339. package/dist/esm/behavior/system/remote/api/Envelope.d.ts +53 -0
  340. package/dist/esm/behavior/system/remote/api/Envelope.d.ts.map +1 -0
  341. package/dist/esm/behavior/system/remote/api/Envelope.js +87 -0
  342. package/dist/esm/behavior/system/remote/api/Envelope.js.map +6 -0
  343. package/dist/esm/behavior/system/remote/api/LocalResponse.d.ts +28 -0
  344. package/dist/esm/behavior/system/remote/api/LocalResponse.d.ts.map +1 -0
  345. package/dist/esm/behavior/system/remote/api/LocalResponse.js +6 -0
  346. package/dist/esm/behavior/system/remote/api/LocalResponse.js.map +6 -0
  347. package/dist/esm/behavior/system/remote/api/RemoteRequest.d.ts +43 -0
  348. package/dist/esm/behavior/system/remote/api/RemoteRequest.d.ts.map +1 -0
  349. package/dist/esm/behavior/system/remote/api/RemoteRequest.js +35 -0
  350. package/dist/esm/behavior/system/remote/api/RemoteRequest.js.map +6 -0
  351. package/dist/esm/behavior/system/remote/api/RemoteResponse.d.ts +38 -0
  352. package/dist/esm/behavior/system/remote/api/RemoteResponse.d.ts.map +1 -0
  353. package/dist/esm/behavior/system/remote/api/RemoteResponse.js +45 -0
  354. package/dist/esm/behavior/system/remote/api/RemoteResponse.js.map +6 -0
  355. package/dist/esm/behavior/system/remote/api/index.d.ts +13 -0
  356. package/dist/esm/behavior/system/remote/api/index.d.ts.map +1 -0
  357. package/dist/esm/behavior/system/remote/api/index.js +13 -0
  358. package/dist/esm/behavior/system/remote/api/index.js.map +6 -0
  359. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.d.ts +22 -0
  360. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.d.ts.map +1 -0
  361. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.js +49 -0
  362. package/dist/esm/behavior/system/remote/api/resources/BehaviorResource.js.map +6 -0
  363. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.d.ts +25 -0
  364. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.d.ts.map +1 -0
  365. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.js +56 -0
  366. package/dist/esm/behavior/system/remote/api/resources/ChangesResource.js.map +6 -0
  367. package/dist/esm/behavior/system/remote/api/resources/CommandResource.d.ts +26 -0
  368. package/dist/esm/behavior/system/remote/api/resources/CommandResource.d.ts.map +1 -0
  369. package/dist/esm/behavior/system/remote/api/resources/CommandResource.js +63 -0
  370. package/dist/esm/behavior/system/remote/api/resources/CommandResource.js.map +6 -0
  371. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.d.ts +22 -0
  372. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.d.ts.map +1 -0
  373. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.js +32 -0
  374. package/dist/esm/behavior/system/remote/api/resources/EndpointContainerResource.js.map +6 -0
  375. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.d.ts +34 -0
  376. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.d.ts.map +1 -0
  377. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.js +58 -0
  378. package/dist/esm/behavior/system/remote/api/resources/EndpointResource.js.map +6 -0
  379. package/dist/esm/behavior/system/remote/api/resources/NodeResource.d.ts +20 -0
  380. package/dist/esm/behavior/system/remote/api/resources/NodeResource.d.ts.map +1 -0
  381. package/dist/esm/behavior/system/remote/api/resources/NodeResource.js +54 -0
  382. package/dist/esm/behavior/system/remote/api/resources/NodeResource.js.map +6 -0
  383. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.d.ts +28 -0
  384. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.d.ts.map +1 -0
  385. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.js +103 -0
  386. package/dist/esm/behavior/system/remote/api/resources/PropertyResource.js.map +6 -0
  387. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.d.ts +22 -0
  388. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.d.ts.map +1 -0
  389. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.js +54 -0
  390. package/dist/esm/behavior/system/remote/api/resources/ServerNodeResource.js.map +6 -0
  391. package/dist/esm/behavior/system/remote/api/resources/index.d.ts +13 -0
  392. package/dist/esm/behavior/system/remote/api/resources/index.d.ts.map +1 -0
  393. package/dist/esm/behavior/system/remote/api/resources/index.js +13 -0
  394. package/dist/esm/behavior/system/remote/api/resources/index.js.map +6 -0
  395. package/dist/esm/behavior/system/remote/index.d.ts +9 -0
  396. package/dist/esm/behavior/system/remote/index.d.ts.map +1 -0
  397. package/dist/esm/behavior/system/remote/index.js +9 -0
  398. package/dist/esm/behavior/system/remote/index.js.map +6 -0
  399. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.d.ts.map +1 -1
  400. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.js +1 -2
  401. package/dist/esm/behavior/system/subscriptions/SubscriptionsServer.js.map +1 -1
  402. package/dist/esm/behavior/system/websocket/WebSocketInterface.d.ts +16 -0
  403. package/dist/esm/behavior/system/websocket/WebSocketInterface.d.ts.map +1 -0
  404. package/dist/esm/behavior/system/websocket/WebSocketInterface.js +151 -0
  405. package/dist/esm/behavior/system/websocket/WebSocketInterface.js.map +6 -0
  406. package/dist/esm/behavior/system/websocket/WebSocketServer.d.ts +30 -0
  407. package/dist/esm/behavior/system/websocket/WebSocketServer.d.ts.map +1 -0
  408. package/dist/esm/behavior/system/websocket/WebSocketServer.js +31 -0
  409. package/dist/esm/behavior/system/websocket/WebSocketServer.js.map +6 -0
  410. package/dist/esm/behavior/system/websocket/index.d.ts +8 -0
  411. package/dist/esm/behavior/system/websocket/index.d.ts.map +1 -0
  412. package/dist/esm/behavior/system/websocket/index.js +8 -0
  413. package/dist/esm/behavior/system/websocket/index.js.map +6 -0
  414. package/dist/esm/endpoint/Agent.js +1 -1
  415. package/dist/esm/endpoint/Agent.js.map +1 -1
  416. package/dist/esm/endpoint/Endpoint.d.ts.map +1 -1
  417. package/dist/esm/endpoint/Endpoint.js +7 -4
  418. package/dist/esm/endpoint/Endpoint.js.map +1 -1
  419. package/dist/esm/endpoint/properties/Behaviors.d.ts +4 -0
  420. package/dist/esm/endpoint/properties/Behaviors.d.ts.map +1 -1
  421. package/dist/esm/endpoint/properties/Behaviors.js +11 -2
  422. package/dist/esm/endpoint/properties/Behaviors.js.map +1 -1
  423. package/dist/esm/endpoint/properties/ClientNodeEndpoints.d.ts +20 -0
  424. package/dist/esm/endpoint/properties/ClientNodeEndpoints.d.ts.map +1 -0
  425. package/dist/esm/endpoint/properties/ClientNodeEndpoints.js +36 -0
  426. package/dist/esm/endpoint/properties/ClientNodeEndpoints.js.map +6 -0
  427. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts +4 -0
  428. package/dist/esm/endpoint/properties/EndpointInitializer.d.ts.map +1 -1
  429. package/dist/esm/endpoint/properties/EndpointInitializer.js +6 -0
  430. package/dist/esm/endpoint/properties/EndpointInitializer.js.map +1 -1
  431. package/dist/esm/endpoint/properties/Endpoints.d.ts +1 -0
  432. package/dist/esm/endpoint/properties/Endpoints.d.ts.map +1 -1
  433. package/dist/esm/endpoint/properties/Endpoints.js +3 -0
  434. package/dist/esm/endpoint/properties/Endpoints.js.map +1 -1
  435. package/dist/esm/endpoint/type/EndpointType.d.ts +2 -0
  436. package/dist/esm/endpoint/type/EndpointType.d.ts.map +1 -1
  437. package/dist/esm/endpoint/type/EndpointType.js +5 -0
  438. package/dist/esm/endpoint/type/EndpointType.js.map +2 -2
  439. package/dist/esm/node/ClientNode.d.ts +4 -2
  440. package/dist/esm/node/ClientNode.d.ts.map +1 -1
  441. package/dist/esm/node/ClientNode.js +6 -2
  442. package/dist/esm/node/ClientNode.js.map +1 -1
  443. package/dist/esm/node/Node.js +1 -1
  444. package/dist/esm/node/NodeLifecycle.d.ts +1 -1
  445. package/dist/esm/node/NodeLifecycle.d.ts.map +1 -1
  446. package/dist/esm/node/NodeLifecycle.js +1 -1
  447. package/dist/esm/node/NodeLifecycle.js.map +1 -1
  448. package/dist/esm/node/client/ClientEndpointInitializer.d.ts +2 -0
  449. package/dist/esm/node/client/ClientEndpointInitializer.d.ts.map +1 -1
  450. package/dist/esm/node/client/ClientEndpointInitializer.js +33 -0
  451. package/dist/esm/node/client/ClientEndpointInitializer.js.map +1 -1
  452. package/dist/esm/node/client/ClientEventEmitter.d.ts +3 -3
  453. package/dist/esm/node/client/ClientEventEmitter.d.ts.map +1 -1
  454. package/dist/esm/node/client/ClientNodeInteraction.d.ts +1 -0
  455. package/dist/esm/node/client/ClientNodeInteraction.d.ts.map +1 -1
  456. package/dist/esm/node/client/ClientNodeInteraction.js +6 -0
  457. package/dist/esm/node/client/ClientNodeInteraction.js.map +1 -1
  458. package/dist/esm/node/client/ClientStructure.d.ts +2 -0
  459. package/dist/esm/node/client/ClientStructure.d.ts.map +1 -1
  460. package/dist/esm/node/client/ClientStructure.js +18 -5
  461. package/dist/esm/node/client/ClientStructure.js.map +1 -1
  462. package/dist/esm/node/client/Peers.d.ts +6 -0
  463. package/dist/esm/node/client/Peers.d.ts.map +1 -1
  464. package/dist/esm/node/client/Peers.js +57 -5
  465. package/dist/esm/node/client/Peers.js.map +1 -1
  466. package/dist/esm/node/index.d.ts +1 -0
  467. package/dist/esm/node/index.d.ts.map +1 -1
  468. package/dist/esm/node/index.js +1 -0
  469. package/dist/esm/node/index.js.map +1 -1
  470. package/dist/esm/node/integration/ChangeNotificationService.d.ts +56 -0
  471. package/dist/esm/node/integration/ChangeNotificationService.d.ts.map +1 -0
  472. package/dist/esm/node/integration/ChangeNotificationService.js +73 -0
  473. package/dist/esm/node/integration/ChangeNotificationService.js.map +6 -0
  474. package/dist/esm/node/{server → integration}/ProtocolService.d.ts +15 -0
  475. package/dist/esm/node/integration/ProtocolService.d.ts.map +1 -0
  476. package/dist/esm/node/{server → integration}/ProtocolService.js +26 -52
  477. package/dist/esm/node/integration/ProtocolService.js.map +6 -0
  478. package/dist/esm/node/integration/StateStream.d.ts +87 -0
  479. package/dist/esm/node/integration/StateStream.d.ts.map +1 -0
  480. package/dist/esm/node/integration/StateStream.js +256 -0
  481. package/dist/esm/node/integration/StateStream.js.map +6 -0
  482. package/dist/esm/node/integration/index.d.ts +9 -0
  483. package/dist/esm/node/integration/index.d.ts.map +1 -0
  484. package/dist/esm/node/integration/index.js +9 -0
  485. package/dist/esm/node/integration/index.js.map +6 -0
  486. package/dist/esm/node/server/OnlineServerInteraction.d.ts +1 -0
  487. package/dist/esm/node/server/OnlineServerInteraction.d.ts.map +1 -1
  488. package/dist/esm/node/server/OnlineServerInteraction.js +4 -1
  489. package/dist/esm/node/server/OnlineServerInteraction.js.map +1 -1
  490. package/dist/esm/node/server/ServerEnvironment.d.ts.map +1 -1
  491. package/dist/esm/node/server/ServerEnvironment.js +7 -1
  492. package/dist/esm/node/server/ServerEnvironment.js.map +1 -1
  493. package/dist/esm/node/server/ServerSubscription.d.ts.map +1 -1
  494. package/dist/esm/node/server/ServerSubscription.js +2 -2
  495. package/dist/esm/node/server/index.d.ts +0 -1
  496. package/dist/esm/node/server/index.d.ts.map +1 -1
  497. package/dist/esm/node/server/index.js +0 -1
  498. package/dist/esm/node/server/index.js.map +1 -1
  499. package/dist/esm/storage/client/ClientNodeStores.d.ts.map +1 -1
  500. package/dist/esm/storage/client/ClientNodeStores.js.map +1 -1
  501. package/package.json +7 -7
  502. package/src/behavior/Behavior.ts +8 -1
  503. package/src/behavior/Events.ts +2 -2
  504. package/src/behavior/internal/BehaviorBacking.ts +82 -2
  505. package/src/behavior/state/managed/Datasource.ts +20 -26
  506. package/src/behavior/state/managed/NameResolver.ts +1 -1
  507. package/src/behavior/state/managed/values/ValueCaster.ts +21 -5
  508. package/src/behavior/system/commissioning/CommissioningClient.ts +34 -6
  509. package/src/behavior/system/commissioning/CommissioningServer.ts +2 -3
  510. package/src/behavior/system/controller/ControllerBehavior.ts +0 -7
  511. package/src/behavior/system/http/HttpInterface.ts +326 -0
  512. package/src/behavior/system/http/HttpServer.ts +32 -0
  513. package/src/behavior/system/http/index.ts +8 -0
  514. package/src/behavior/system/index/IndexBehavior.ts +14 -6
  515. package/src/behavior/system/index.ts +4 -0
  516. package/src/behavior/system/mqtt/MqttInterface.ts +414 -0
  517. package/src/behavior/system/mqtt/MqttServer.ts +38 -0
  518. package/src/behavior/system/mqtt/index.ts +8 -0
  519. package/src/behavior/system/network/NetworkClient.ts +124 -24
  520. package/src/behavior/system/product-description/ProductDescriptionServer.ts +7 -5
  521. package/src/behavior/system/remote/RemoteInterface.ts +119 -0
  522. package/src/behavior/system/remote/RemoteServer.ts +132 -0
  523. package/src/behavior/system/remote/api/Api.ts +179 -0
  524. package/src/behavior/system/remote/api/ApiPath.ts +101 -0
  525. package/src/behavior/system/remote/api/ApiResource.ts +169 -0
  526. package/src/behavior/system/remote/api/Envelope.ts +112 -0
  527. package/src/behavior/system/remote/api/LocalResponse.ts +37 -0
  528. package/src/behavior/system/remote/api/RemoteRequest.ts +88 -0
  529. package/src/behavior/system/remote/api/RemoteResponse.ts +83 -0
  530. package/src/behavior/system/remote/api/index.ts +13 -0
  531. package/src/behavior/system/remote/api/resources/BehaviorResource.ts +66 -0
  532. package/src/behavior/system/remote/api/resources/ChangesResource.ts +75 -0
  533. package/src/behavior/system/remote/api/resources/CommandResource.ts +91 -0
  534. package/src/behavior/system/remote/api/resources/EndpointContainerResource.ts +45 -0
  535. package/src/behavior/system/remote/api/resources/EndpointResource.ts +75 -0
  536. package/src/behavior/system/remote/api/resources/NodeResource.ts +71 -0
  537. package/src/behavior/system/remote/api/resources/PropertyResource.ts +124 -0
  538. package/src/behavior/system/remote/api/resources/ServerNodeResource.ts +63 -0
  539. package/src/behavior/system/remote/api/resources/index.ts +13 -0
  540. package/src/behavior/system/remote/index.ts +9 -0
  541. package/src/behavior/system/subscriptions/SubscriptionsServer.ts +1 -2
  542. package/src/behavior/system/websocket/WebSocketInterface.ts +127 -0
  543. package/src/behavior/system/websocket/WebSocketServer.ts +32 -0
  544. package/src/behavior/system/websocket/index.ts +8 -0
  545. package/src/endpoint/Agent.ts +1 -1
  546. package/src/endpoint/Endpoint.ts +10 -4
  547. package/src/endpoint/properties/Behaviors.ts +15 -2
  548. package/src/endpoint/properties/ClientNodeEndpoints.ts +38 -0
  549. package/src/endpoint/properties/EndpointInitializer.ts +7 -0
  550. package/src/endpoint/properties/Endpoints.ts +4 -0
  551. package/src/endpoint/type/EndpointType.ts +3 -0
  552. package/src/node/ClientNode.ts +7 -2
  553. package/src/node/Node.ts +1 -1
  554. package/src/node/NodeLifecycle.ts +1 -1
  555. package/src/node/client/ClientEndpointInitializer.ts +38 -0
  556. package/src/node/client/ClientEventEmitter.ts +5 -5
  557. package/src/node/client/ClientNodeInteraction.ts +7 -0
  558. package/src/node/client/ClientStructure.ts +23 -5
  559. package/src/node/client/Peers.ts +71 -5
  560. package/src/node/index.ts +1 -0
  561. package/src/node/integration/ChangeNotificationService.ts +122 -0
  562. package/src/node/{server → integration}/ProtocolService.ts +32 -74
  563. package/src/node/integration/StateStream.ts +474 -0
  564. package/src/node/integration/index.ts +9 -0
  565. package/src/node/server/OnlineServerInteraction.ts +5 -1
  566. package/src/node/server/ServerEnvironment.ts +9 -1
  567. package/src/node/server/ServerSubscription.ts +6 -6
  568. package/src/node/server/index.ts +0 -1
  569. package/src/storage/client/ClientNodeStores.ts +4 -0
  570. package/dist/cjs/node/server/ProtocolService.d.ts.map +0 -1
  571. package/dist/cjs/node/server/ProtocolService.js.map +0 -6
  572. package/dist/esm/node/server/ProtocolService.d.ts.map +0 -1
  573. package/dist/esm/node/server/ProtocolService.js.map +0 -6
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behavior/system/index.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { RemoteInterface } from "../remote/RemoteInterface.js";
7
+ /**
8
+ * MQTT remote interface.
9
+ *
10
+ * Currently publishes a read-only feed. Will address TODOs if there is real-world use.
11
+ *
12
+ * TODO - events
13
+ * TODO - clean out topics from previous runs that are no longer relevant, e.g. deleted endpoint, removed attrs, etc.
14
+ * TODO - TLV serialiation/deserialization
15
+ */
16
+ export declare class MqttInterface extends RemoteInterface {
17
+ #private;
18
+ static protocol: string;
19
+ protected start(): Promise<void>;
20
+ protected stop(): Promise<void>;
21
+ }
22
+ //# sourceMappingURL=MqttInterface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MqttInterface.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/mqtt/MqttInterface.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuBH,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAI/D;;;;;;;;GAQG;AACH,qBAAa,aAAc,SAAQ,eAAe;;IAC9C,OAAgB,QAAQ,SAAU;cAMT,KAAK;cA0BL,IAAI;CA+OhC"}
@@ -0,0 +1,341 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import {
7
+ Abort,
8
+ asJson,
9
+ Base64,
10
+ Bytes,
11
+ decamelize,
12
+ InternalError,
13
+ MqttService,
14
+ Mutex,
15
+ NotImplementedError
16
+ } from "#general";
17
+ import { any, Metatype } from "#model";
18
+ import { StateStream } from "#node/integration/StateStream.js";
19
+ import { StatusResponse } from "#types";
20
+ import { Api } from "../remote/api/Api.js";
21
+ import { ApiPath } from "../remote/api/ApiPath.js";
22
+ import { Envelope } from "../remote/api/Envelope.js";
23
+ import { RemoteResponse } from "../remote/api/RemoteResponse.js";
24
+ import { RemoteInterface } from "../remote/RemoteInterface.js";
25
+ const LOG_FACILITY = "MQTT";
26
+ class MqttInterface extends RemoteInterface {
27
+ static protocol = "mqtt";
28
+ #endpoint;
29
+ #mutex = new Mutex(this);
30
+ #retainedTopics = /* @__PURE__ */ new Map();
31
+ async start() {
32
+ this.#endpoint = await this.env.get(MqttService).connect({
33
+ address: this.address,
34
+ environment: this.node.env,
35
+ will: {
36
+ topic: this.root.at("status").toString(),
37
+ payload: "offline"
38
+ },
39
+ onUp: (endpoint) => {
40
+ if (!this.#endpoint) {
41
+ this.#endpoint = endpoint;
42
+ }
43
+ return this.#publish({
44
+ topic: this.root.at("status").toString(),
45
+ payload: "online"
46
+ });
47
+ }
48
+ });
49
+ this.addWorker(this.#listen(), "mqtt listener");
50
+ this.addWorker(this.#feed(), "mqtt feeder");
51
+ }
52
+ async stop() {
53
+ await this.#mutex.then();
54
+ await this.#mqtt?.close();
55
+ }
56
+ /**
57
+ * A background process that handles incoming MQTT messages.
58
+ */
59
+ async #listen() {
60
+ await Abort.race(this.abort, this.node.construction);
61
+ if (Abort.is(this.abort)) {
62
+ return;
63
+ }
64
+ let topic = this.root.toString();
65
+ if (topic !== "") {
66
+ topic += "/#";
67
+ } else {
68
+ topic = "#";
69
+ }
70
+ for await (const message of this.#mqtt.subscribe(`${topic}`, { noLocal: true, abort: this.abort })) {
71
+ if (message.retain) {
72
+ continue;
73
+ }
74
+ const relativeTopic = this.root.subpathFor(new ApiPath(message.topic));
75
+ if (!relativeTopic) {
76
+ continue;
77
+ }
78
+ await this.#respond(relativeTopic, message);
79
+ }
80
+ }
81
+ async #respond(topic, message) {
82
+ let response;
83
+ const via = message.correlationData ? Bytes.toHex(message.correlationData) : message.responseTopic;
84
+ try {
85
+ await this.node.act("MQTT listener", async (agent) => {
86
+ if (topic.toString() === "call") {
87
+ response = await this.#call(message);
88
+ return;
89
+ }
90
+ const resource = await Api.resourceFor(agent, topic);
91
+ if (resource === void 0) {
92
+ throw new StatusResponse.NotFoundError(`No resource at subtopic ${topic}`);
93
+ }
94
+ const schema = resource.schema;
95
+ if (!schema) {
96
+ throw new NotImplementedError();
97
+ }
98
+ const input = payloadToJs(schema, message.payload);
99
+ if (resource.isInvocable) {
100
+ Api.logRequest(LOG_FACILITY, via, "invoke", topic.toString());
101
+ let value = await resource.invoke({ js: input });
102
+ const responseSchema = schema.responseModel;
103
+ if (responseSchema) {
104
+ value ??= new Envelope({ supervisor: resource.supervisorFor(responseSchema), js: null });
105
+ response = { kind: "value", value };
106
+ }
107
+ } else {
108
+ Api.logRequest(LOG_FACILITY, via, "update", topic.toString());
109
+ await resource.patch(input ?? { js: null });
110
+ }
111
+ });
112
+ } catch (e) {
113
+ response = Api.errorResponseOf(LOG_FACILITY, via, e);
114
+ }
115
+ if (!response) {
116
+ response = { kind: "ok" };
117
+ }
118
+ response.id = via;
119
+ Api.logResponse(LOG_FACILITY, RemoteResponse(response));
120
+ if (message.responseTopic) {
121
+ await this.#publish({
122
+ topic: message.responseTopic,
123
+ correlationData: message.correlationData,
124
+ payload: asJson(response)
125
+ });
126
+ }
127
+ }
128
+ /**
129
+ * Specialized handling for "call" topic to support full {@link RemoteRequest}/{@link RemoteResponse} interaction.
130
+ */
131
+ async #call(message) {
132
+ const request = parseJsonPayload(message.payload);
133
+ const response = await Api.execute(LOG_FACILITY, this.node, request, this.abort);
134
+ if (response.kind === "subscription") {
135
+ await response.stream.return?.();
136
+ throw new StatusResponse.InvalidSubscriptionError(
137
+ "Subscription via RPC is not supported, use MQTT instead"
138
+ );
139
+ }
140
+ return response;
141
+ }
142
+ /**
143
+ * A background process that continuously updates MQTT topics.
144
+ */
145
+ async #feed() {
146
+ const stream = StateStream(this.node, { abort: this.abort });
147
+ for await (const change of stream) {
148
+ await this.#mutex.produce(async () => {
149
+ switch (change.kind) {
150
+ case "update":
151
+ await this.#publishUpdate(change);
152
+ break;
153
+ case "delete":
154
+ await this.#publishDelete(change);
155
+ }
156
+ });
157
+ }
158
+ }
159
+ /**
160
+ * Publish attribute values for state changes.
161
+ */
162
+ async #publishUpdate({ node, endpoint, behavior, changes }) {
163
+ let nodeTopics = this.#retainedTopics.get(node.id);
164
+ if (nodeTopics === void 0) {
165
+ this.#retainedTopics.set(node.id, nodeTopics = /* @__PURE__ */ new Map());
166
+ }
167
+ let endpointTopics = nodeTopics.get(endpoint.number);
168
+ if (endpointTopics === void 0) {
169
+ nodeTopics.set(endpoint.number, endpointTopics = /* @__PURE__ */ new Set());
170
+ }
171
+ const behaviorRoot = this.#nodeRoot(node.id).at([endpoint.number.toString(), decamelize(behavior.id)]);
172
+ for (const name in changes) {
173
+ const value = changes[name];
174
+ const schema = behavior.schema?.conformant.properties.for(name);
175
+ const payload = jsToPayload(schema ?? any, value);
176
+ const topic = behaviorRoot.at([name]).toString();
177
+ endpointTopics.add(topic);
178
+ await this.#publish({
179
+ topic,
180
+ payload,
181
+ retain: true
182
+ });
183
+ }
184
+ }
185
+ /**
186
+ * Delete all published topics for an endpoint or node that has disappeared.
187
+ */
188
+ async #publishDelete(change) {
189
+ const nodeTopics = this.#retainedTopics.get(change.node.id);
190
+ if (!nodeTopics) {
191
+ return;
192
+ }
193
+ const deleteEndpoint = async (endpoint) => {
194
+ const topics = nodeTopics.get(endpoint);
195
+ if (!topics) {
196
+ return;
197
+ }
198
+ for (const topic of topics) {
199
+ await this.#publish({
200
+ topic,
201
+ payload: null,
202
+ retain: true
203
+ });
204
+ }
205
+ nodeTopics.delete(endpoint);
206
+ };
207
+ if (change.endpoint === change.node) {
208
+ for (const number of nodeTopics.keys()) {
209
+ await deleteEndpoint(number);
210
+ }
211
+ this.#retainedTopics.delete(change.node.id);
212
+ } else {
213
+ await deleteEndpoint(change.endpoint.number);
214
+ }
215
+ }
216
+ /**
217
+ * Obtain the root path for a node.
218
+ *
219
+ * This will either be the root path for the server or a subpath for peers.
220
+ */
221
+ #nodeRoot(id) {
222
+ if (id === this.node.id) {
223
+ return this.root;
224
+ }
225
+ return this.root.at(["peers", id]);
226
+ }
227
+ /**
228
+ * Safe access to the MQTT endpoint.
229
+ */
230
+ get #mqtt() {
231
+ if (this.#endpoint === void 0) {
232
+ throw new InternalError("MQTT endpoint missing");
233
+ }
234
+ return this.#endpoint;
235
+ }
236
+ /**
237
+ * Publish a message.
238
+ *
239
+ * Default QOS is 2.
240
+ */
241
+ #publish(message) {
242
+ if (this.abort.aborted) {
243
+ throw new InternalError("MQTT publish after abort");
244
+ }
245
+ if (message.qos === void 0) {
246
+ message.qos = 2;
247
+ }
248
+ return this.#mqtt.publish(message);
249
+ }
250
+ }
251
+ function payloadToJs(schema, payload) {
252
+ if (payload === null) {
253
+ return null;
254
+ }
255
+ const length = typeof payload === "string" ? payload.length : payload.byteLength;
256
+ if (!length) {
257
+ return null;
258
+ }
259
+ let js;
260
+ switch (schema.effectiveMetatype) {
261
+ case Metatype.any:
262
+ js = payload;
263
+ break;
264
+ case Metatype.object:
265
+ case Metatype.array:
266
+ case Metatype.bitmap:
267
+ js = parseJsonPayload(payload);
268
+ break;
269
+ case Metatype.bytes:
270
+ if (typeof payload === "string") {
271
+ try {
272
+ js = Base64.decode(payload);
273
+ } catch (e) {
274
+ if (e instanceof SyntaxError) {
275
+ throw new StatusResponse.InvalidDataTypeError(
276
+ `Value is not binary or a base64 string: ${e.message}`
277
+ );
278
+ }
279
+ }
280
+ break;
281
+ }
282
+ js = payload;
283
+ break;
284
+ default:
285
+ if (Bytes.isBytes(payload)) {
286
+ try {
287
+ payload = Bytes.toString(payload);
288
+ } catch (e) {
289
+ if (e instanceof TypeError) {
290
+ throw new StatusResponse.InvalidDataTypeError(
291
+ `Value is not a valid UTF-8 string: ${e.message}`
292
+ );
293
+ }
294
+ }
295
+ }
296
+ js = payload;
297
+ break;
298
+ }
299
+ return js;
300
+ }
301
+ function jsToPayload(schema, js) {
302
+ if (js === void 0 || js === null || js === "") {
303
+ return Bytes.empty;
304
+ }
305
+ switch (schema.effectiveMetatype) {
306
+ case Metatype.object:
307
+ case Metatype.array:
308
+ case Metatype.bitmap:
309
+ return asJson(js);
310
+ case Metatype.bytes:
311
+ if (Bytes.isBytes(js)) {
312
+ return js;
313
+ }
314
+ return Bytes.fromString(js.toString());
315
+ default:
316
+ if (Bytes.isBytes(js)) {
317
+ return js;
318
+ }
319
+ return js.toString();
320
+ }
321
+ }
322
+ function parseJsonPayload(payload) {
323
+ if (payload === null) {
324
+ throw new StatusResponse.InvalidDataTypeError("Empty payload where JSON expected");
325
+ }
326
+ if (Bytes.isBytes(payload)) {
327
+ payload = Bytes.toString(payload);
328
+ }
329
+ try {
330
+ return JSON.parse(payload);
331
+ } catch (e) {
332
+ if (e instanceof SyntaxError) {
333
+ throw new StatusResponse.InvalidDataTypeError(`Payload is not valid JSON: ${e.message}`);
334
+ }
335
+ throw e;
336
+ }
337
+ }
338
+ export {
339
+ MqttInterface
340
+ };
341
+ //# sourceMappingURL=MqttInterface.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/behavior/system/mqtt/MqttInterface.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { RemoteServer } from "../remote/RemoteServer.js";
7
+ import { MqttInterface } from "./MqttInterface.js";
8
+ /**
9
+ * Allows control of a Matter node via an MQTT broker.
10
+ *
11
+ * The broker must support MQTT version 5.
12
+ */
13
+ export declare class MqttServer extends RemoteServer {
14
+ static readonly id = "mqtt";
15
+ static readonly interfaceType: typeof MqttInterface;
16
+ }
17
+ export declare namespace MqttServer {
18
+ class State extends RemoteServer.State {
19
+ /**
20
+ * The MQTT broker address.
21
+ *
22
+ * Supported protocols:
23
+ *
24
+ * - mqtt
25
+ * - mqtts
26
+ * - mqtt+ws (MQTT over web sockets)
27
+ * - mqtt+wss
28
+ * - mqtt+unix (MQTT over UNIX socket)
29
+ * - mqtts+unix
30
+ *
31
+ * If present, the path portion of the address adds a prefix to the topics registered by the server.
32
+ */
33
+ address: string;
34
+ }
35
+ }
36
+ //# sourceMappingURL=MqttServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MqttServer.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/mqtt/MqttServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,YAAY;IACxC,gBAAyB,EAAE,UAAU;IACrC,gBAAyB,aAAa,uBAAiB;CAC1D;AAED,yBAAiB,UAAU,CAAC;IACxB,MAAa,KAAM,SAAQ,YAAY,CAAC,KAAK;QACzC;;;;;;;;;;;;;WAaG;QACM,OAAO,SAAkC;KACrD;CACJ"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { RemoteServer } from "../remote/RemoteServer.js";
7
+ import { MqttInterface } from "./MqttInterface.js";
8
+ class MqttServer extends RemoteServer {
9
+ static id = "mqtt";
10
+ static interfaceType = MqttInterface;
11
+ }
12
+ ((MqttServer2) => {
13
+ class State extends RemoteServer.State {
14
+ /**
15
+ * The MQTT broker address.
16
+ *
17
+ * Supported protocols:
18
+ *
19
+ * - mqtt
20
+ * - mqtts
21
+ * - mqtt+ws (MQTT over web sockets)
22
+ * - mqtt+wss
23
+ * - mqtt+unix (MQTT over UNIX socket)
24
+ * - mqtts+unix
25
+ *
26
+ * If present, the path portion of the address adds a prefix to the topics registered by the server.
27
+ */
28
+ address = "mqtt:localhost/matter/{node}";
29
+ }
30
+ MqttServer2.State = State;
31
+ })(MqttServer || (MqttServer = {}));
32
+ export {
33
+ MqttServer
34
+ };
35
+ //# sourceMappingURL=MqttServer.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/behavior/system/mqtt/MqttServer.ts"],
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAOvB,MAAM,mBAAmB,aAAa;AAAA,EACzC,OAAyB,KAAK;AAAA,EAC9B,OAAyB,gBAAgB;AAC7C;AAAA,CAEO,CAAUA,gBAAV;AAAA,EACI,MAAM,cAAc,aAAa,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAejC,UAAU;AAAA,EACvB;AAhBO,EAAAA,YAAM;AAAA,GADA;",
5
+ "names": ["MqttServer"]
6
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export * from "./MqttInterface.js";
7
+ export * from "./MqttServer.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/mqtt/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export * from "./MqttInterface.js";
7
+ export * from "./MqttServer.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/behavior/system/mqtt/index.ts"],
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,cAAc;AACd,cAAc;",
5
+ "names": []
6
+ }
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { Observable } from "#general";
6
7
  import { DatatypeModel } from "#model";
7
8
  import { Subscribe } from "#protocol";
8
9
  import { CaseAuthenticatedTag } from "#types";
@@ -12,7 +13,15 @@ export declare class NetworkClient extends NetworkBehavior {
12
13
  #private;
13
14
  internal: NetworkClient.Internal;
14
15
  state: NetworkClient.State;
16
+ events: NetworkClient.Events;
17
+ initialize(): void;
15
18
  startup(): Promise<void>;
19
+ /**
20
+ * Manually activate the subscription for the node, if not already active. This will fail if the node is disabled.
21
+ *
22
+ * If you want to disable subscription, set the isDisabled state to true or set autoSubscribe to false.
23
+ */
24
+ subscribe(): Promise<void>;
16
25
  /**
17
26
  * Define logical schema for fields that should persist.
18
27
  */
@@ -21,21 +30,37 @@ export declare class NetworkClient extends NetworkBehavior {
21
30
  export declare namespace NetworkClient {
22
31
  class Internal extends NetworkBehavior.Internal {
23
32
  runtime?: ClientNetworkRuntime;
33
+ /**
34
+ * Contains the subscription target state. It will also be true if a subscription is in the process of being
35
+ * established, or we wait for the node to be rediscovered.
36
+ */
37
+ subscriptionActivated: boolean;
38
+ /** The ID of the current active default subscription, if any */
39
+ defaultSubscriptionId?: number;
24
40
  }
25
41
  class State extends NetworkBehavior.State {
26
42
  /**
27
- * A subscription installed when the node is first commissioned and when the service is restarted.
43
+ * This subscription defines the default set of attributes and events to which the node will automatically
44
+ * subscribe when started, if autoSubscribe is true.
28
45
  *
29
46
  * The default subscription is a wildcard for all attributes of the node. You can set to undefined or filter
30
47
  * the fields and values but only values selected by this subscription will update automatically.
31
48
  *
32
49
  * Set to null to disable automatic subscription.
33
50
  */
34
- startupSubscription?: Subscribe | null;
51
+ defaultSubscription?: Subscribe;
35
52
  /**
36
- * If true, the matter.js will not perform network communication with the node.
53
+ * Represents the current operational network state of the node. When true the node is enabled and operational.
54
+ * When false the node is disabled and not operational.
55
+ *
56
+ * This state can be changed at any time to enable or disable the node.
37
57
  */
38
58
  isDisabled: boolean;
59
+ /**
60
+ * If true, automatically subscribe to the provided default subscription (or all attributes and events) when
61
+ * the node is started. If false, do not automatically subscribe.
62
+ */
63
+ autoSubscribe: boolean;
39
64
  /**
40
65
  * Case Authenticated Tags (CATs) to use for operational CASE sessions with this node.
41
66
  *
@@ -45,5 +70,9 @@ export declare namespace NetworkClient {
45
70
  */
46
71
  caseAuthenticatedTags?: CaseAuthenticatedTag[];
47
72
  }
73
+ class Events extends NetworkBehavior.Events {
74
+ autoSubscribe$Changed: Observable<[value: boolean, oldValue: boolean], void>;
75
+ defaultSubscription$Changed: Observable<[value: Subscribe | undefined, oldValue: Subscribe | undefined], void>;
76
+ }
48
77
  }
49
78
  //# sourceMappingURL=NetworkClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkClient.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/network/NetworkClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AAErD,OAAO,EAA8B,SAAS,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,aAAc,SAAQ,eAAe;;IACtC,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC;IACjC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;IAEpB,OAAO;IA4BtB;;OAEG;IACH,gBAAyB,MAAM,gBA+B5B;CACN;AAED,yBAAiB,aAAa,CAAC;IAC3B,MAAa,QAAS,SAAQ,eAAe,CAAC,QAAQ;QAC1C,OAAO,CAAC,EAAE,oBAAoB,CAAC;KAC1C;IAED,MAAa,KAAM,SAAQ,eAAe,CAAC,KAAK;QAC5C;;;;;;;WAOG;QACH,mBAAmB,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;QAEvC;;WAEG;QACH,UAAU,UAAS;QAEnB;;;;;;WAMG;QACH,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAClD;CACJ"}
1
+ {"version":3,"file":"NetworkClient.d.ts","sourceRoot":"","sources":["../../../../../src/behavior/system/network/NetworkClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAuB,UAAU,EAAmC,MAAM,UAAU,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAgB,MAAM,QAAQ,CAAC;AAGrD,OAAO,EAA0D,SAAS,EAAE,MAAM,WAAW,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,qBAAa,aAAc,SAAQ,eAAe;;IACtC,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC;IACjC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;IAC3B,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;IAE5B,UAAU;IAKJ,OAAO;IAqBtB;;;;OAIG;IACH,SAAS;IA4DT;;OAEG;IACH,gBAAyB,MAAM,gBAwC5B;CACN;AAED,yBAAiB,aAAa,CAAC;IAC3B,MAAa,QAAS,SAAQ,eAAe,CAAC,QAAQ;QAC1C,OAAO,CAAC,EAAE,oBAAoB,CAAC;QAEvC;;;WAGG;QACH,qBAAqB,UAAS;QAE9B,gEAAgE;QAChE,qBAAqB,CAAC,EAAE,MAAM,CAAC;KAClC;IAED,MAAa,KAAM,SAAQ,eAAe,CAAC,KAAK;QAC5C;;;;;;;;WAQG;QACH,mBAAmB,CAAC,EAAE,SAAS,CAAC;QAEhC;;;;;WAKG;QACH,UAAU,UAAS;QAEnB;;;WAGG;QACH,aAAa,UAAS;QAEtB;;;;;;WAMG;QACH,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;KAClD;IAED,MAAa,MAAO,SAAQ,eAAe,CAAC,MAAM;QAC9C,qBAAqB,wDAAyD;QAC9E,2BAA2B,oFAAqF;KACnH;CACJ"}