isy-nodejs 1.0.2-alpha.4 → 1.0.3-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/dist/esm/CodeGeneration/{NodeFactory.js → CodeFactory.js} +18 -7
  2. package/dist/esm/CodeGeneration/CodeFactory.js.map +1 -0
  3. package/dist/esm/CodeGeneration/EnumFactory.js +1 -1
  4. package/dist/esm/CodeGeneration/EnumFactory.js.map +1 -1
  5. package/dist/esm/CodeGeneration/NodeClassFactory.js +156 -146
  6. package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
  7. package/dist/esm/Converters.js +16 -6
  8. package/dist/esm/Converters.js.map +1 -1
  9. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +4 -2
  10. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -1
  11. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +4 -2
  12. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -1
  13. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +5 -3
  14. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -1
  15. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +4 -2
  16. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -1
  17. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +4 -2
  18. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -1
  19. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +7 -5
  20. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -1
  21. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +8 -6
  22. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -1
  23. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +9 -7
  24. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -1
  25. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +8 -6
  26. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -1
  27. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +4 -2
  28. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -1
  29. package/dist/esm/Devices/Insteon/Generated/DoorLock.js +3 -1
  30. package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -1
  31. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +3 -1
  32. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -1
  33. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +4 -2
  34. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -1
  35. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +3 -1
  36. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -1
  37. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +5 -3
  38. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -1
  39. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +5 -3
  40. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -1
  41. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +12 -10
  42. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -1
  43. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +10 -8
  44. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -1
  45. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +3 -1
  46. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -1
  47. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +4 -2
  48. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -1
  49. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +4 -2
  50. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -1
  51. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +9 -7
  52. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -1
  53. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +7 -5
  54. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -1
  55. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +4 -2
  56. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -1
  57. package/dist/esm/Devices/Insteon/Generated/Pir2844.js +6 -4
  58. package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -1
  59. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +5 -3
  60. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -1
  61. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +6 -4
  62. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -1
  63. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +6 -4
  64. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -1
  65. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +7 -5
  66. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -1
  67. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +8 -6
  68. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -1
  69. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +6 -4
  70. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -1
  71. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +6 -4
  72. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -1
  73. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +3 -1
  74. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -1
  75. package/dist/esm/Devices/Insteon/Generated/Siren.js +5 -3
  76. package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -1
  77. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +3 -1
  78. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -1
  79. package/dist/esm/Devices/Insteon/Generated/TempLinc.js +8 -6
  80. package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -1
  81. package/dist/esm/Devices/Insteon/Generated/Thermostat.js +8 -6
  82. package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -1
  83. package/dist/esm/Devices/Insteon/Generated/X10.js +3 -1
  84. package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -1
  85. package/dist/esm/Devices/Lutron/Generated/LoadShed.js +4 -2
  86. package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -1
  87. package/dist/esm/Devices/UDI/Generated/Channel.js +3 -1
  88. package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -1
  89. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +3 -1
  90. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -1
  91. package/dist/esm/Devices/UDI/Generated/Main.js +3 -1
  92. package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -1
  93. package/dist/esm/Devices/UDI/Generated/PulseCounter.js +3 -1
  94. package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -1
  95. package/dist/esm/Devices/UDI/Generated/Relay.js +3 -1
  96. package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -1
  97. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +3 -1
  98. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -1
  99. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +8 -2
  100. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -1
  101. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +4 -2
  102. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -1
  103. package/dist/esm/ISY.js +59 -34
  104. package/dist/esm/ISY.js.map +1 -1
  105. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js +1 -1
  106. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
  107. package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
  108. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
  109. package/dist/esm/Matter/Bridge/Server.js +6 -6
  110. package/dist/esm/Matter/Bridge/Server.js.map +1 -1
  111. package/dist/esm/Matter/Mappings/Insteon.js +37 -13
  112. package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
  113. package/dist/esm/{Model/ClusterMap.js → Matter/Mappings/MappingRegistry.js} +12 -7
  114. package/dist/esm/Matter/Mappings/MappingRegistry.js.map +1 -0
  115. package/dist/esm/Model/ClassDefinition.js +7 -5
  116. package/dist/esm/Model/ClassDefinition.js.map +1 -1
  117. package/dist/esm/types/CodeGeneration/{NodeFactory.d.ts → CodeFactory.d.ts} +1 -1
  118. package/dist/esm/types/CodeGeneration/{NodeFactory.d.ts.map → CodeFactory.d.ts.map} +1 -1
  119. package/dist/esm/types/CodeGeneration/EnumFactory.d.ts +1 -1
  120. package/dist/esm/types/CodeGeneration/EnumFactory.d.ts.map +1 -1
  121. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts +19 -3
  122. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
  123. package/dist/esm/types/Converters.d.ts +12 -6
  124. package/dist/esm/types/Converters.d.ts.map +1 -1
  125. package/dist/esm/types/Devices/EndpointFor.d.ts +1 -1
  126. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -1
  127. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -1
  128. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -1
  129. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -1
  130. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -1
  131. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -1
  132. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -1
  133. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -1
  134. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -1
  135. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -1
  136. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -1
  137. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -1
  138. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -1
  139. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -1
  140. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -1
  141. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -1
  142. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -1
  143. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -1
  144. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -1
  145. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -1
  146. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -1
  147. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -1
  148. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +6 -6
  149. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -1
  150. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +3 -3
  151. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -1
  152. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -1
  153. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -1
  154. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -1
  155. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +3 -3
  156. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -1
  157. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +3 -3
  158. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -1
  159. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +6 -6
  160. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -1
  161. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -1
  162. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -1
  163. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -1
  164. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -1
  165. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -1
  166. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -1
  167. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -1
  168. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -1
  169. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +2 -2
  170. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -1
  171. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -1
  172. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -1
  173. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -1
  174. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -1
  175. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -1
  176. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -1
  177. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +16 -9
  178. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -1
  179. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +15 -15
  180. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -1
  181. package/dist/esm/types/ISY.d.ts +6 -2
  182. package/dist/esm/types/ISY.d.ts.map +1 -1
  183. package/dist/esm/types/ISYNode.d.ts +1 -1
  184. package/dist/esm/types/ISYNode.d.ts.map +1 -1
  185. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -1
  186. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
  187. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts +1 -1
  188. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
  189. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
  190. package/dist/esm/types/Matter/Bridge/Server.d.ts +0 -1
  191. package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
  192. package/dist/esm/types/Matter/Mappings/Insteon.d.ts +3 -1
  193. package/dist/esm/types/Matter/Mappings/Insteon.d.ts.map +1 -1
  194. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts +144 -0
  195. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts.map +1 -0
  196. package/dist/esm/types/Model/ClassDefinition.d.ts +9 -623
  197. package/dist/esm/types/Model/ClassDefinition.d.ts.map +1 -1
  198. package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
  199. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  200. package/package.json +4 -2
  201. package/src/CodeGeneration/{NodeFactory.ts → CodeFactory.ts} +18 -2
  202. package/src/CodeGeneration/EnumFactory.ts +5 -4
  203. package/src/CodeGeneration/NodeClassFactory.ts +266 -241
  204. package/src/Converters.ts +16 -10
  205. package/src/Devices/Brultech/Generated/Channel.ts +3 -1
  206. package/src/Devices/Brultech/Generated/Main.ts +3 -1
  207. package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +4 -2
  208. package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +4 -2
  209. package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +5 -3
  210. package/src/Devices/Insteon/Generated/BinaryAlarm.ts +4 -2
  211. package/src/Devices/Insteon/Generated/BinaryControl.ts +4 -2
  212. package/src/Devices/Insteon/Generated/DimmerLamp.ts +7 -5
  213. package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +8 -6
  214. package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +9 -7
  215. package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +8 -6
  216. package/src/Devices/Insteon/Generated/DimmerSwitch.ts +4 -2
  217. package/src/Devices/Insteon/Generated/DoorLock.ts +3 -1
  218. package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +3 -1
  219. package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +4 -2
  220. package/src/Devices/Insteon/Generated/EzrainInput.ts +3 -1
  221. package/src/Devices/Insteon/Generated/EzrainOutput.ts +12 -10
  222. package/src/Devices/Insteon/Generated/FanLincMotor.ts +5 -3
  223. package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +12 -10
  224. package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +10 -8
  225. package/src/Devices/Insteon/Generated/ImeterSolo.ts +3 -1
  226. package/src/Devices/Insteon/Generated/IrLincTx.ts +4 -2
  227. package/src/Devices/Insteon/Generated/KeypadButton.ts +4 -2
  228. package/src/Devices/Insteon/Generated/KeypadDimmer.ts +9 -7
  229. package/src/Devices/Insteon/Generated/KeypadRelay.ts +18 -16
  230. package/src/Devices/Insteon/Generated/OnOffControl.ts +7 -5
  231. package/src/Devices/Insteon/Generated/Pir2844.ts +6 -4
  232. package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +5 -3
  233. package/src/Devices/Insteon/Generated/Pir2844c.ts +6 -4
  234. package/src/Devices/Insteon/Generated/RelayLamp.ts +9 -7
  235. package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +10 -8
  236. package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +12 -10
  237. package/src/Devices/Insteon/Generated/RelaySwitch.ts +6 -4
  238. package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +6 -4
  239. package/src/Devices/Insteon/Generated/RemoteLinc2.ts +3 -1
  240. package/src/Devices/Insteon/Generated/Siren.ts +5 -3
  241. package/src/Devices/Insteon/Generated/SirenAlert.ts +3 -1
  242. package/src/Devices/Insteon/Generated/TempLinc.ts +8 -6
  243. package/src/Devices/Insteon/Generated/Thermostat.ts +8 -6
  244. package/src/Devices/Insteon/Generated/X10.ts +3 -1
  245. package/src/Devices/Lutron/Generated/LoadShed.ts +4 -2
  246. package/src/Devices/NCD/Generated/Relay.ts +4 -2
  247. package/src/Devices/Poly/Generated/MatterBridge.ts +3 -1
  248. package/src/Devices/Scene/Generated/Scene.ts +10 -8
  249. package/src/Devices/UDI/Generated/Channel.ts +3 -1
  250. package/src/Devices/UDI/Generated/Em3MainChannel.ts +3 -1
  251. package/src/Devices/UDI/Generated/Main.ts +3 -1
  252. package/src/Devices/UDI/Generated/PulseCounter.ts +3 -1
  253. package/src/Devices/UDI/Generated/Relay.ts +3 -1
  254. package/src/Devices/UDI/Generated/TemperatureSensor.ts +3 -1
  255. package/src/Devices/ZWave/Generated/ColorSwitch.ts +19 -7
  256. package/src/Devices/ZWave/Generated/DimmerSwitch.ts +13 -11
  257. package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +4 -2
  258. package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +11 -9
  259. package/src/ISY.ts +58 -25
  260. package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +1 -1
  261. package/src/Matter/Behaviors/ISYClusterBehavior.ts +2 -1
  262. package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +2 -1
  263. package/src/Matter/Bridge/Server.ts +10 -6
  264. package/src/Matter/Mappings/Insteon.ts +41 -26
  265. package/src/{Model/ClusterMap.ts → Matter/Mappings/MappingRegistry.ts} +26 -14
  266. package/src/Model/ClassDefinition.ts +16 -10
  267. package/src/Utils.ts +1 -1
  268. package/dist/esm/CodeGeneration/NodeFactory.js.map +0 -1
  269. package/dist/esm/Model/ClusterMap.js.map +0 -1
  270. package/dist/esm/types/Model/ClusterMap.d.ts +0 -101
  271. package/dist/esm/types/Model/ClusterMap.d.ts.map +0 -1
@@ -17,14 +17,16 @@ import { ISYBridgedDeviceBehavior } from '../Behaviors/ISYBridgedDeviceBehavior.
17
17
  import { ISYDimmableBehavior, ISYOnOffBehavior } from '../Behaviors/Insteon/ISYOnOffBehavior.js';
18
18
  import '../Mappings/Insteon.js';
19
19
  import type { ISYNode } from '../../ISYNode.js';
20
- import { MappingRegistry, type DeviceToClusterMap } from '../../Model/ClusterMap.js';
20
+
21
21
  import { Options } from '../../Definitions/ZWave/index.js';
22
22
  import { InsteonBaseDevice } from '../../Devices/Insteon/InsteonBaseDevice.js';
23
23
  import { DimmerLamp } from '../../Devices/Insteon/Generated/DimmerLamp.js';
24
24
  import { Family } from '../../Definitions/index.js';
25
25
  import { RelayLamp } from '../../Devices/Insteon/index.js';
26
26
  import type { DeviceTypeDefinition } from '@project-chip/matter.js/device';
27
+ import { MappingRegistry } from '../Mappings/MappingRegistry.js';
27
28
  import type { BridgedISYNodeInformationServer } from '../../Devices/EndpointFor.js';
29
+ import { BasicInformation } from '@project-chip/matter.js/cluster';
28
30
 
29
31
 
30
32
  // #region Interfaces (1)
@@ -226,7 +228,7 @@ export async function createMatterServer(isy?: ISY, config?: Config): Promise<Se
226
228
  if (deviceOptions?.exclude) {
227
229
  continue;
228
230
  }
229
- let serialNumber = `${device.address.replaceAll(' ', '_').replaceAll('.', '_')}`;
231
+ let uniqueId = `${device.address.replaceAll(' ', '_').replaceAll('.', '_')}`;
230
232
  if (device.enabled) {
231
233
  //const name = `OnOff ${isASocket ? "Socket" : "Light"} ${i}`;
232
234
 
@@ -257,7 +259,7 @@ export async function createMatterServer(isy?: ISY, config?: Config): Promise<Se
257
259
  logger.info(`Device ${device.label} (${device.address}) with NodeDefId = ${device.nodeDefId} mapped to ${deviceType.name}`);
258
260
  //@ts-ignore
259
261
  const endpoint = new Endpoint(baseBehavior, {
260
- id: serialNumber,
262
+ id: uniqueId,
261
263
  isyNode: {
262
264
  address: device.address
263
265
  },
@@ -274,10 +276,12 @@ export async function createMatterServer(isy?: ISY, config?: Config): Promise<Se
274
276
  softwareVersion: Number(device.version),
275
277
  softwareVersionString: `v.${device.version}`,
276
278
 
277
- serialNumber: serialNumber,
279
+ serialNumber: device.address,
278
280
  reachable: true,
279
- uniqueId: device.address
280
- }
281
+ uniqueId: uniqueId
282
+
283
+ },
284
+
281
285
  });
282
286
 
283
287
  await aggregator.add(endpoint);
@@ -1,21 +1,14 @@
1
1
 
2
- import { DriverType } from '../../Definitions/Global/Drivers.js';
3
- import { Family, type t } from '../../Definitions/Global/Families.js';
4
- import * as Insteon from '../../Devices/Insteon/index.js';
5
- import { Devices } from '../../Devices/index.js';
6
- import { MappingRegistry, type DeviceToClusterMap, type EndpointMapping, type FamilyToClusterMap } from '../../Model/ClusterMap.js';
2
+ import { Family } from '../../Definitions/Global/Families.js';
3
+ import * as Insteon from '../../Devices/Insteon/index.js';
4
+
7
5
 
8
6
  //import InsteonMap from "./Insteon.json";
9
7
 
10
- import { Converter } from '../../Converters.js';
11
- import type { InsteonRelaySwitchDevice } from '../../Devices/Insteon/InsteonRelaySwitchDevice.js';
12
- import { DimmerSwitchDevice, GenericSwitchDevice, OnOffLightSwitchDevice, OnOffLightDevice, DimmableLightDevice } from '@matter/node/devices';
13
- import type { Identity } from '@matter/general';
14
- import { SwitchServer } from '@matter/node/behaviors';
15
- import type { Device } from '@project-chip/matter.js/device';
16
- import type { MutableEndpoint } from '@matter/node';
8
+ import { OnOffLightDevice, DimmableLightDevice } from '@matter/node/devices';
9
+ import { add, MappingRegistry, type EndpointMapping, type FamilyToClusterMap } from './MappingRegistry.js';
17
10
 
18
- const map: FamilyToClusterMap<Family.Insteon> = {
11
+ export const map: FamilyToClusterMap<Family.Insteon> = {
19
12
  Family: Family.Insteon,
20
13
 
21
14
  RelayLamp: {
@@ -23,11 +16,10 @@ const map: FamilyToClusterMap<Family.Insteon> = {
23
16
  mapping: {
24
17
  OnOff: {
25
18
  attributes: {
26
- onOff: { driver: 'ST', converter: 'LevelFrom0To255.Boolean' }
19
+ onOff: { driver: 'ST', converter: 'Percent.Boolean' }
27
20
  },
28
21
  commands: { on: 'DON' }
29
22
  }
30
-
31
23
  }
32
24
  },
33
25
  RelayLampSwitch: {
@@ -35,12 +27,12 @@ const map: FamilyToClusterMap<Family.Insteon> = {
35
27
  mapping: {
36
28
  OnOff: {
37
29
  attributes: {
38
- onOff: { driver: 'ST', converter: 'LevelFrom0To255.Boolean' }
30
+ onOff: { driver: 'ST', converter: 'Percent.Boolean' }
39
31
  },
40
32
  commands: { on: 'DON' }
41
33
  }
42
34
  }
43
- ,},
35
+ },
44
36
  DimmerLamp: {
45
37
  deviceType: DimmableLightDevice,
46
38
  // @ts-ignore
@@ -48,16 +40,16 @@ const map: FamilyToClusterMap<Family.Insteon> = {
48
40
  // @ts-ignore
49
41
  OnOff: {
50
42
  attributes: {
51
- onOff: { driver: 'ST', converter: 'LevelFrom0To255.Boolean' }
43
+ onOff: { driver: 'ST', converter: 'Percent.Boolean' }
52
44
  },
53
45
  commands: { on: 'DON' }
54
46
  },
55
47
  LevelControl: {
56
48
  // @ts-ignore
57
49
  attributes: {
58
- currentLevel: { driver: 'ST', converter: 'LevelFrom0To255.LightingLevel' },
59
- startUpCurrentLevel: { driver: 'OL', converter: 'LevelFrom0To255.LightingLevel' },
60
- onLevel: { driver: 'OL', converter: 'LevelFrom0To255.LightingLevel' }
50
+ currentLevel: { driver: 'ST', converter: 'Percent.LightingLevel' },
51
+ startUpCurrentLevel: { driver: 'OL', converter: 'Percent.LightingLevel' },
52
+ onLevel: { driver: 'OL', converter: 'Percent.LightingLevel' }
61
53
  },
62
54
  commands: { setLevel: { command: 'DON' } }
63
55
  }
@@ -67,20 +59,19 @@ const map: FamilyToClusterMap<Family.Insteon> = {
67
59
  deviceType: DimmableLightDevice,
68
60
  // @ts-ignore
69
61
  mapping: {
70
-
71
62
  // @ts-ignore
72
63
  OnOff: {
73
64
  attributes: {
74
- onOff: { driver: 'ST', converter: 'LevelFrom0To255.Boolean' }
65
+ onOff: { driver: 'ST', converter: 'Percent.Boolean' }
75
66
  },
76
67
  commands: { on: 'DON' }
77
68
  },
78
69
  LevelControl: {
79
70
  // @ts-ignore
80
71
  attributes: {
81
- currentLevel: { driver: 'ST', converter: 'LevelFrom0To255.LightingLevel' },
82
- startUpCurrentLevel: { driver: 'OL', converter: 'LevelFrom0To255.LightingLevel' },
83
- onLevel: { driver: 'OL', converter: 'LevelFrom0To255.LightingLevel' }
72
+ currentLevel: { driver: 'ST', converter: 'Percent.LightingLevel' },
73
+ startUpCurrentLevel: { driver: 'OL', converter: 'Percent.LightingLevel' },
74
+ onLevel: { driver: 'OL', converter: 'Percent.LightingLevel' }
84
75
  },
85
76
  commands: { setLevel: { command: 'DON' } }
86
77
  }
@@ -88,5 +79,29 @@ const map: FamilyToClusterMap<Family.Insteon> = {
88
79
  }
89
80
  };
90
81
 
82
+ /*let newMap = add(map, Insteon.DimmerLamp.Node, {
83
+ deviceType: DimmableLightDevice,
84
+ // @ts-ignore
85
+ mapping: {
86
+ // @ts-ignore
87
+ OnOff: {
88
+ attributes: {
89
+ onOff: { driver: 'ST', converter: 'Percent.Boolean' ,
90
+ },
91
+ commands: { on: 'DON' }
92
+ },
93
+ //@ts-ignore
94
+ LevelControl: {
95
+ // @ts-ignore
96
+ attributes: {
97
+ currentLevel: { driver: 'ST', converter: 'Percent.LightingLevel' },
98
+ startUpCurrentLevel: { driver: 'OL', converter: 'Percent.LightingLevel' },
99
+ onLevel: { driver: 'OL', converter: 'Percent.LightingLevel' }
100
+ },
101
+ commands: { setLevel: { command: 'DON' } }
102
+ }
103
+ }
104
+ }});*/
105
+
91
106
 
92
107
  MappingRegistry.register(map);
@@ -1,20 +1,21 @@
1
1
  import * as Clusters from '@project-chip/matter.js/cluster';
2
2
 
3
- import type { Converter } from '../Converters.js';
4
- import { DriverType } from '../Definitions/Global/Drivers.js';
5
- import { Devices, Insteon } from '../Devices/index.js';
3
+ import type { Converter } from '../../Converters.js';
4
+ import { DriverType } from '../../Definitions/Global/Drivers.js';
5
+ import { Devices, Insteon } from '../../Devices/index.js';
6
6
 
7
7
  import { ClusterBehavior, MutableEndpoint, SupportedBehaviors } from '@matter/main';
8
8
  import type { OnOffLightDevice } from '@matter/main/devices';
9
9
  import { BridgedDeviceBasicInformationBehavior } from '@matter/node/behaviors';
10
10
  import type { DeviceTypeDefinition } from '@project-chip/matter.js/device';
11
- import { Family } from '../Definitions/index.js';
12
- import { NodeFactory } from '../Devices/NodeFactory.js';
13
- import { CommandsOf, DriversOf, ISYNode } from '../ISYNode.js';
14
- import { ISYBridgedDeviceBehavior } from '../Matter/Behaviors/ISYBridgedDeviceBehavior.js';
15
- import { ISYOnOffBehavior } from '../Matter/Behaviors/Insteon/ISYOnOffBehavior.js';
16
- import type { PickOfType, Remove } from '../Utils.js';
17
- import { ClusterType } from './ClusterType.js';
11
+ import { Family } from '../../Definitions/index.js';
12
+ import { NodeFactory } from '../../Devices/NodeFactory.js';
13
+ import { CommandsOf, DriversOf, ISYNode } from '../../ISYNode.js';
14
+ import { ISYBridgedDeviceBehavior } from '../Behaviors/ISYBridgedDeviceBehavior.js';
15
+ import { ISYOnOffBehavior } from '../Behaviors/Insteon/ISYOnOffBehavior.js';
16
+ import type { PathsWithLimit, PickOfType, Remove } from '../../Utils.js';
17
+ import { ClusterType } from '../../Model/ClusterType.js';
18
+ import type { Constructor } from '../../Devices/Constructor.js';
18
19
 
19
20
  // #region Type aliases (16)
20
21
 
@@ -117,9 +118,20 @@ export type EndpointMapping1<A extends MutableEndpoint, K> = {
117
118
  commands?: SBCommandMapping<A['behaviors'], K>;
118
119
  };
119
120
  //@ts-ignore
120
- export type FamilyToClusterMap<T extends Family.Insteon | Family.ZWave | Family.ZigBee> = { Family: T } & {
121
+
122
+ type SupportedFamily = Family.Insteon | Family.ZWave | Family.ZigBee;
123
+ export type FamilyToClusterMap<T extends SupportedFamily> = { Family: T } & {
121
124
  [Type in Extract<keyof Devices.Insteon, `${string}Node`> as Remove<Type, 'Node'>]?: DeviceToClusterMap<InstanceType<Devices.Insteon[Type]>, MutableEndpoint>;
122
125
  };
126
+
127
+
128
+ export function add<const F extends SupportedFamily, const T extends ISYNode<F>, const D extends MutableEndpoint> (familyToClusterMap: FamilyToClusterMap<F>, deviceClass: Constructor<T>, mapping: DeviceToClusterMap<T, D> )
129
+ {
130
+ const map = {};
131
+ map[deviceClass.name] = mapping;
132
+
133
+ return {...map,...familyToClusterMap};
134
+ }
123
135
  export type SBAttributeMapping<SB extends SupportedBehaviors, D> = {
124
136
  [K in keyof SB]: Partial<Record<any, DriversOf<D> | { driver: DriversOf<D>; converter?: string }>>;
125
137
  };
@@ -149,7 +161,7 @@ export class MappingRegistry {
149
161
 
150
162
  // #region Public Static Methods (3)
151
163
 
152
- public static getMapping<T extends ISYNode<any, any, any, any>>(device: T): DeviceToClusterMap<T, MutableEndpoint> {
164
+ public static getMapping<const T extends ISYNode>(device: T): DeviceToClusterMap<T, MutableEndpoint> {
153
165
  let m = this.cache[device.address];
154
166
  if (!m) {
155
167
  if (MappingRegistry.map.has(device.family)) {
@@ -180,7 +192,7 @@ export class MappingRegistry {
180
192
  return m;
181
193
  }
182
194
 
183
- public static getMappingForBehavior<T extends ISYNode<any, any, any, any>, B extends ClusterBehavior>(device: T, behavior: B): BehaviorMapping<B, T> {
195
+ public static getMappingForBehavior<T extends ISYNode<any, any, any, any>, const B extends ClusterBehavior>(device: T, behavior: B): BehaviorMapping<B, T> {
184
196
  //var m = MappingRegistry.getMapping(device);
185
197
 
186
198
  //return m[behavior.cluster.name];
@@ -189,7 +201,7 @@ export class MappingRegistry {
189
201
  }
190
202
  }
191
203
  //@ts-ignore
192
- public static register(map: Partial<FamilyToClusterMap<any>> | { [x in Paths<typeof Devices>]: DeviceToClusterMap<any, any> }) {
204
+ public static register<const T extends Family.Insteon | Family.ZWave | Family.ZigBee>(map: Partial<FamilyToClusterMap<T>> | { [x in PathsWithLimit<typeof Devices,1>]: DeviceToClusterMap<any, any> }) {
193
205
  if ('Family' in map) {
194
206
  let regMap: Map<string, DeviceToClusterMap<any, any>>;
195
207
  if (!MappingRegistry.map.has(map.Family)) {
@@ -136,6 +136,8 @@ function buildNodeClassDefinitions<T extends Family>(nodeDefs: NodeDef[], family
136
136
  return map;
137
137
  }
138
138
 
139
+ export type NCD = NodeClassDefinition<Family>;
140
+
139
141
  export class NodeClassDefinition<T extends Family> {
140
142
  // #region Properties (11)
141
143
 
@@ -370,15 +372,17 @@ export class NodeClassDefinition<T extends Family> {
370
372
  }
371
373
 
372
374
  export type DataTypeDefinition =
373
- | {
375
+ {
374
376
  uom: UnitOfMeasure;
375
377
  serverUom?: UnitOfMeasure;
376
378
  enum: false;
379
+ indexId?: string;
377
380
  min: number;
378
381
  max: number;
379
382
  step?: number;
380
383
  precision?: number;
381
- }
384
+ returnType?: string;
385
+ }
382
386
  | {
383
387
  uom: UnitOfMeasure;
384
388
  enum: true;
@@ -386,15 +390,15 @@ export type DataTypeDefinition =
386
390
  values: {
387
391
  [x: number]: string;
388
392
  };
393
+ returnType?: string;
389
394
  };
390
395
 
391
396
  export abstract class NodeMemberDefinition<TId extends string> {
392
397
  // #region Properties (7)
393
398
 
394
399
  public classDef: NodeClassDefinition<any>;
395
- public dataType: {
396
- [x in keyof typeof UnitOfMeasure]?: DataTypeDefinition;
397
- };
400
+ public dataType: DataTypeDefinition[];
401
+
398
402
  public editorId: string;
399
403
  public hidden: boolean;
400
404
  public id: TId;
@@ -409,7 +413,7 @@ export abstract class NodeMemberDefinition<TId extends string> {
409
413
  this.classDef = classDef;
410
414
  if (def) {
411
415
  this.editorId = def.editor;
412
- this.dataType = {};
416
+ this.dataType = [];
413
417
 
414
418
  var r = this.parseEditorId(def.editor);
415
419
  if (r) this.applyEditorDef({ id: def.editor, range: r });
@@ -430,12 +434,13 @@ export abstract class NodeMemberDefinition<TId extends string> {
430
434
 
431
435
  public applyEditorDef(e: EditorDef) {
432
436
  if (e.id === this.editorId) {
433
- var d = {};
437
+ var d = [];
434
438
  for (const rangeDef of toArray(e.range)) {
439
+ let dt = {} as DataTypeDefinition;
435
440
  if ('subset' in rangeDef) {
436
- d[rangeDef.uom]= { uom: rangeDef.uom, indexId: rangeDef.nls, ...this.#parseSubset(e) };
441
+ dt = { uom: rangeDef.uom, indexId: rangeDef.nls, ...this.#parseSubset(e) };
437
442
  } else {
438
- d[rangeDef.uom] = {
443
+ dt = {
439
444
  uom: rangeDef.uom,
440
445
  enum: false,
441
446
  min: rangeDef.min,
@@ -448,8 +453,9 @@ export abstract class NodeMemberDefinition<TId extends string> {
448
453
  }
449
454
  if(rangeDef.uom === UnitOfMeasure.Index)
450
455
  {
451
- d[rangeDef.uom].enum = true;
456
+ dt.enum = true;
452
457
  }
458
+ d.push(dt);
453
459
 
454
460
  }
455
461
  this.dataType = d;
package/src/Utils.ts CHANGED
@@ -34,7 +34,7 @@ export type RelaxTypes<V> =
34
34
  }
35
35
  : V;
36
36
 
37
- type p = Prev[10];
37
+
38
38
  export type Join<K, P> =
39
39
  K extends string | number ?
40
40
  P extends string | number ?
@@ -1 +0,0 @@
1
- {"version":3,"file":"NodeFactory.js","sourceRoot":"","sources":["../../../src/CodeGeneration/NodeFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClusterMap.js","sourceRoot":"","sources":["../../../src/Model/ClusterMap.ts"],"names":[],"mappings":"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"}
@@ -1,101 +0,0 @@
1
- import * as Clusters from '@project-chip/matter.js/cluster';
2
- import type { Converter } from '../Converters.js';
3
- import { Devices } from '../Devices/index.js';
4
- import { ClusterBehavior, MutableEndpoint, SupportedBehaviors } from '@matter/main';
5
- import { Family } from '../Definitions/index.js';
6
- import { CommandsOf, DriversOf, ISYNode } from '../ISYNode.js';
7
- import type { PickOfType, Remove } from '../Utils.js';
8
- export type AttributeMapping<B, D> = B extends {
9
- cluster: {
10
- attributes: infer E extends {
11
- [K in string]: Clusters.ClusterType.Attribute;
12
- };
13
- };
14
- } ? Partial<Record<keyof E, keyof DriversOf<D> | {
15
- driver: keyof DriversOf<D>;
16
- converter?: Converter.KnownConverters;
17
- }>> : never;
18
- export type BehaviorMapping<B extends {
19
- cluster?: any;
20
- }, T extends ISYNode<any, any, any, any>> = {
21
- attributes?: AttributeMapping<B, T>;
22
- commands?: CommandMapping<B, T>;
23
- };
24
- export type ClusterAttributeMapping<A, K> = {
25
- [key in keyof Clusters.ClusterType.AttributesOf<A>]?: {
26
- driver: Extract<keyof DriversOf<K>, string>;
27
- converter?: (value: any) => any;
28
- } | Extract<keyof DriversOf<K>, string>;
29
- };
30
- export type ClusterCommandMapping<A, K> = {
31
- [key in keyof Clusters.ClusterType.CommandsOf<A>]?: {
32
- command: keyof CommandsOf<K>;
33
- parameters?: parameterMapping;
34
- } | keyof CommandsOf<K>;
35
- };
36
- export type ClusterMapping<A, K> = {
37
- attributes: ClusterAttributeMapping<A, K>;
38
- commands: ClusterCommandMapping<A, K>;
39
- };
40
- export type CommandMapping<B, D> = B extends ({
41
- cluster: {
42
- commands: infer E extends {
43
- [K in string]: Clusters.ClusterType.Command;
44
- };
45
- };
46
- }) ? Partial<Record<keyof E, keyof CommandsOf<D> | {
47
- command: keyof CommandsOf<D>;
48
- parameters?: parameterMapping;
49
- }>> : never;
50
- export type DeviceToClusterMap<T extends ISYNode<Family, any, any, any>, D extends MutableEndpoint> = {
51
- deviceType: D;
52
- mapping: EndpointMapping<D, T>;
53
- };
54
- export type EndpointMapping<A extends MutableEndpoint, D extends ISYNode<Family, any, any, any>> = {
55
- [K in StringKeys<PickOfType<A['behaviors'], ClusterBehavior>> as Capitalize<K>]?: A['behaviors'][K] extends ClusterBehavior ? BehaviorMapping<A['behaviors'][K], D> : undefined;
56
- };
57
- export type EndpointMapping1<A extends MutableEndpoint, K> = {
58
- attributes?: SBAttributeMapping<A['behaviors'], K>;
59
- commands?: SBCommandMapping<A['behaviors'], K>;
60
- };
61
- export type FamilyToClusterMap<T extends Family.Insteon | Family.ZWave | Family.ZigBee> = {
62
- Family: T;
63
- } & {
64
- [Type in Extract<keyof Devices.Insteon, `${string}Node`> as Remove<Type, 'Node'>]?: DeviceToClusterMap<InstanceType<Devices.Insteon[Type]>, MutableEndpoint>;
65
- };
66
- export type SBAttributeMapping<SB extends SupportedBehaviors, D> = {
67
- [K in keyof SB]: Partial<Record<any, DriversOf<D> | {
68
- driver: DriversOf<D>;
69
- converter?: string;
70
- }>>;
71
- };
72
- export type SBCommandMapping<SB extends SupportedBehaviors, D> = {
73
- [K in Capitalize<keyof SB>]?: SB[Uncapitalize<K>] extends {
74
- cluster: {
75
- commands: any;
76
- };
77
- } ? Partial<Record<string, CommandsOf<D> | {
78
- driver: DriversOf<D>;
79
- converter?: string;
80
- }>> : never;
81
- };
82
- type StringKeys<T> = Extract<keyof T, string>;
83
- export type parameterMapping = {
84
- [key: string]: {
85
- parameter: string;
86
- converter?: string;
87
- };
88
- };
89
- export declare class MappingRegistry {
90
- static map: Map<Family, Map<string, DeviceToClusterMap<ISYNode, MutableEndpoint>>>;
91
- static cache: {
92
- [x: string]: DeviceToClusterMap<ISYNode, MutableEndpoint>;
93
- };
94
- static getMapping<T extends ISYNode<any, any, any, any>>(device: T): DeviceToClusterMap<T, MutableEndpoint>;
95
- static getMappingForBehavior<T extends ISYNode<any, any, any, any>, B extends ClusterBehavior>(device: T, behavior: B): BehaviorMapping<B, T>;
96
- static register(map: Partial<FamilyToClusterMap<any>> | {
97
- [x in Paths<typeof Devices>]: DeviceToClusterMap<any, any>;
98
- }): void;
99
- }
100
- export {};
101
- //# sourceMappingURL=ClusterMap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClusterMap.d.ts","sourceRoot":"","sources":["../../../../src/Model/ClusterMap.ts"],"names":[],"mappings":"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"}