isy-nodejs 1.0.2-alpha.3 → 1.0.2-alpha.4

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 (417) hide show
  1. package/dist/esm/CodeGeneration/NodeClassFactory.js +76 -33
  2. package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
  3. package/dist/esm/CodeGeneration/NodeFactory.js +245 -0
  4. package/dist/esm/CodeGeneration/NodeFactory.js.map +1 -0
  5. package/dist/esm/Converters.js +15 -1
  6. package/dist/esm/Converters.js.map +1 -1
  7. package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
  8. package/dist/esm/Definitions/Global/Events.js.map +1 -1
  9. package/dist/esm/Devices/ISYDevice.js +0 -33
  10. package/dist/esm/Devices/ISYDevice.js.map +1 -1
  11. package/dist/esm/Devices/ISYDeviceNode.js +2 -2
  12. package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
  13. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +49 -0
  14. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -0
  15. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +54 -0
  16. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -0
  17. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +54 -0
  18. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -0
  19. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +46 -0
  20. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -0
  21. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +46 -0
  22. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -0
  23. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +75 -0
  24. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -0
  25. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +78 -0
  26. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -0
  27. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +80 -0
  28. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -0
  29. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +74 -0
  30. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -0
  31. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +40 -0
  32. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -0
  33. package/dist/esm/Devices/Insteon/Generated/DoorLock.js +45 -0
  34. package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -0
  35. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +42 -0
  36. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -0
  37. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +47 -0
  38. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -0
  39. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +42 -0
  40. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -0
  41. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +49 -0
  42. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -0
  43. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +53 -0
  44. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -0
  45. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +93 -0
  46. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -0
  47. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +81 -0
  48. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -0
  49. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +49 -0
  50. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -0
  51. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +39 -0
  52. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -0
  53. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +46 -0
  54. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -0
  55. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +78 -0
  56. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -0
  57. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +56 -0
  58. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -0
  59. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +39 -0
  60. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -0
  61. package/dist/esm/Devices/Insteon/Generated/Pir2844.js +64 -0
  62. package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -0
  63. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +50 -0
  64. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -0
  65. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +64 -0
  66. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -0
  67. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +54 -0
  68. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -0
  69. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +56 -0
  70. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -0
  71. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +58 -0
  72. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -0
  73. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +42 -0
  74. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -0
  75. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +44 -0
  76. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -0
  77. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +42 -0
  78. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -0
  79. package/dist/esm/Devices/Insteon/Generated/Siren.js +66 -0
  80. package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -0
  81. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +35 -0
  82. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -0
  83. package/dist/esm/Devices/Insteon/Generated/TempLinc.js +83 -0
  84. package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -0
  85. package/dist/esm/Devices/Insteon/Generated/Thermostat.js +83 -0
  86. package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -0
  87. package/dist/esm/Devices/Insteon/Generated/X10.js +49 -0
  88. package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -0
  89. package/dist/esm/Devices/Insteon/Generated/index.js +39 -0
  90. package/dist/esm/Devices/Insteon/Generated/index.js.map +1 -0
  91. package/dist/esm/Devices/Insteon/InsteonBaseDevice.js +3 -4
  92. package/dist/esm/Devices/Insteon/InsteonBaseDevice.js.map +1 -1
  93. package/dist/esm/Devices/Insteon/InsteonFanDevice.js +2 -2
  94. package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -1
  95. package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
  96. package/dist/esm/Devices/Insteon/KeypadButton.js +11 -11
  97. package/dist/esm/Devices/Insteon/KeypadButton.js.map +1 -1
  98. package/dist/esm/Devices/Insteon/index.js +16 -29
  99. package/dist/esm/Devices/Insteon/index.js.map +1 -1
  100. package/dist/esm/Devices/Lutron/Generated/LoadShed.js +45 -0
  101. package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -0
  102. package/dist/esm/Devices/NodeFactory.js +45 -8
  103. package/dist/esm/Devices/NodeFactory.js.map +1 -1
  104. package/dist/esm/Devices/Scene/index.js +2 -2
  105. package/dist/esm/Devices/Scene/index.js.map +1 -1
  106. package/dist/esm/Devices/UDI/Generated/Channel.js +42 -0
  107. package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -0
  108. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +54 -0
  109. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -0
  110. package/dist/esm/Devices/UDI/Generated/Main.js +45 -0
  111. package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -0
  112. package/dist/esm/Devices/UDI/Generated/PulseCounter.js +46 -0
  113. package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -0
  114. package/dist/esm/Devices/UDI/Generated/Relay.js +45 -0
  115. package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -0
  116. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +38 -0
  117. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -0
  118. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +57 -0
  119. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -0
  120. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +65 -0
  121. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -0
  122. package/dist/esm/Devices/ZWave/Generated/index.js +3 -0
  123. package/dist/esm/Devices/ZWave/Generated/index.js.map +1 -0
  124. package/dist/esm/Devices/ZWave/index.js +1 -0
  125. package/dist/esm/Devices/ZWave/index.js.map +1 -1
  126. package/dist/esm/Devices/index.js +9 -3
  127. package/dist/esm/Devices/index.js.map +1 -1
  128. package/dist/esm/ISY.js +13 -8
  129. package/dist/esm/ISY.js.map +1 -1
  130. package/dist/esm/ISYDevice.js +7 -1
  131. package/dist/esm/ISYDevice.js.map +1 -1
  132. package/dist/esm/ISYNode.js +13 -4
  133. package/dist/esm/ISYNode.js.map +1 -1
  134. package/dist/esm/ISYScene.js +13 -12
  135. package/dist/esm/ISYScene.js.map +1 -1
  136. package/dist/esm/Matter/Behaviors/BehaviorRegistry.js +13 -0
  137. package/dist/esm/Matter/Behaviors/BehaviorRegistry.js.map +1 -0
  138. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +3 -0
  139. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
  140. package/dist/esm/Matter/Bridge/Server.js +65 -56
  141. package/dist/esm/Matter/Bridge/Server.js.map +1 -1
  142. package/dist/esm/Matter/Mappings/Insteon.js +28 -10
  143. package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
  144. package/dist/esm/Model/ClassDefinition.js +22 -3
  145. package/dist/esm/Model/ClassDefinition.js.map +1 -1
  146. package/dist/esm/Model/ClusterMap.js +45 -19
  147. package/dist/esm/Model/ClusterMap.js.map +1 -1
  148. package/dist/esm/Model/NodeInfo.js +1 -1
  149. package/dist/esm/Model/NodeInfo.js.map +1 -1
  150. package/dist/esm/Utils.js.map +1 -1
  151. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts +6 -3
  152. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
  153. package/dist/esm/types/CodeGeneration/NodeFactory.d.ts +75 -0
  154. package/dist/esm/types/CodeGeneration/NodeFactory.d.ts.map +1 -0
  155. package/dist/esm/types/Converters.d.ts +9 -3
  156. package/dist/esm/types/Converters.d.ts.map +1 -1
  157. package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
  158. package/dist/esm/types/Definitions/Global/Events.d.ts +2 -2
  159. package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
  160. package/dist/esm/types/Devices/DeviceMap.d.ts +1 -1
  161. package/dist/esm/types/Devices/DeviceMap.d.ts.map +1 -1
  162. package/dist/esm/types/Devices/EndpointFor.d.ts +7 -5
  163. package/dist/esm/types/Devices/EndpointFor.d.ts.map +1 -1
  164. package/dist/esm/types/Devices/ISYDevice.d.ts.map +1 -1
  165. package/dist/esm/types/Devices/ISYDeviceNode.d.ts +5 -13
  166. package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
  167. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts +76 -0
  168. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -0
  169. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts +88 -0
  170. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -0
  171. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts +88 -0
  172. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -0
  173. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts +64 -0
  174. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -0
  175. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts +64 -0
  176. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -0
  177. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts +144 -0
  178. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -0
  179. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts +150 -0
  180. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -0
  181. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts +156 -0
  182. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -0
  183. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts +138 -0
  184. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -0
  185. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts +51 -0
  186. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -0
  187. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts +64 -0
  188. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -0
  189. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts +52 -0
  190. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -0
  191. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts +70 -0
  192. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -0
  193. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts +52 -0
  194. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -0
  195. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts +76 -0
  196. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -0
  197. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts +88 -0
  198. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -0
  199. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts +168 -0
  200. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -0
  201. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts +142 -0
  202. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -0
  203. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts +71 -0
  204. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -0
  205. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts +51 -0
  206. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -0
  207. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts +64 -0
  208. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -0
  209. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts +150 -0
  210. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -0
  211. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +94 -0
  212. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -0
  213. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +44 -0
  214. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -0
  215. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts +98 -0
  216. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -0
  217. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts +76 -0
  218. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -0
  219. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts +98 -0
  220. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -0
  221. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +88 -0
  222. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -0
  223. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +94 -0
  224. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -0
  225. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +100 -0
  226. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -0
  227. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts +57 -0
  228. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -0
  229. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts +63 -0
  230. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -0
  231. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts +52 -0
  232. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -0
  233. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts +109 -0
  234. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -0
  235. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts +37 -0
  236. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -0
  237. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts +148 -0
  238. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -0
  239. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts +148 -0
  240. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -0
  241. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts +76 -0
  242. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -0
  243. package/dist/esm/types/Devices/Insteon/Generated/index.d.ts +39 -0
  244. package/dist/esm/types/Devices/Insteon/Generated/index.d.ts.map +1 -0
  245. package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts +4 -10
  246. package/dist/esm/types/Devices/Insteon/InsteonBaseDevice.d.ts.map +1 -1
  247. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +22 -28
  248. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
  249. package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +3 -3
  250. package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
  251. package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts +1 -1
  252. package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts.map +1 -1
  253. package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
  254. package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts +19 -19
  255. package/dist/esm/types/Devices/Insteon/KeypadButton.d.ts.map +1 -1
  256. package/dist/esm/types/Devices/Insteon/index.d.ts +6 -42
  257. package/dist/esm/types/Devices/Insteon/index.d.ts.map +1 -1
  258. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts +64 -0
  259. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -0
  260. package/dist/esm/types/Devices/NodeFactory.d.ts +18 -7
  261. package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
  262. package/dist/esm/types/Devices/Scene/index.d.ts +2 -1
  263. package/dist/esm/types/Devices/Scene/index.d.ts.map +1 -1
  264. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts +51 -0
  265. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -0
  266. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts +72 -0
  267. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -0
  268. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts +59 -0
  269. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -0
  270. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts +58 -0
  271. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -0
  272. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts +64 -0
  273. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -0
  274. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts +44 -0
  275. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -0
  276. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +90 -0
  277. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -0
  278. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +124 -0
  279. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -0
  280. package/dist/esm/types/Devices/ZWave/Generated/index.d.ts +3 -0
  281. package/dist/esm/types/Devices/ZWave/Generated/index.d.ts.map +1 -0
  282. package/dist/esm/types/Devices/ZWave/index.d.ts.map +1 -1
  283. package/dist/esm/types/Devices/index.d.ts +7 -21
  284. package/dist/esm/types/Devices/index.d.ts.map +1 -1
  285. package/dist/esm/types/ISY.d.ts.map +1 -1
  286. package/dist/esm/types/ISYDevice.d.ts +19 -28
  287. package/dist/esm/types/ISYDevice.d.ts.map +1 -1
  288. package/dist/esm/types/ISYNode.d.ts +25 -8
  289. package/dist/esm/types/ISYNode.d.ts.map +1 -1
  290. package/dist/esm/types/ISYScene.d.ts +5 -6
  291. package/dist/esm/types/ISYScene.d.ts.map +1 -1
  292. package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts +11 -0
  293. package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts.map +1 -0
  294. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -4
  295. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
  296. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +5 -4
  297. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
  298. package/dist/esm/types/Matter/Bridge/Server.d.ts +1 -1
  299. package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
  300. package/dist/esm/types/Model/ClassDefinition.d.ts +6 -2
  301. package/dist/esm/types/Model/ClassDefinition.d.ts.map +1 -1
  302. package/dist/esm/types/Model/ClusterMap.d.ts +12 -21
  303. package/dist/esm/types/Model/ClusterMap.d.ts.map +1 -1
  304. package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
  305. package/dist/esm/types/Utils.d.ts +18 -0
  306. package/dist/esm/types/Utils.d.ts.map +1 -1
  307. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  308. package/package.json +2 -2
  309. package/src/CodeGeneration/NodeClassFactory.ts +144 -39
  310. package/src/CodeGeneration/NodeFactory.ts +341 -0
  311. package/src/Converters.ts +23 -3
  312. package/src/Definitions/Global/Drivers.ts +1 -0
  313. package/src/Definitions/Global/Events.ts +3 -3
  314. package/src/Devices/Brultech/Generated/Channel.ts +8 -6
  315. package/src/Devices/Brultech/Generated/Main.ts +9 -9
  316. package/src/Devices/DeviceMap.ts +1 -1
  317. package/src/Devices/ISYDevice.ts +8 -57
  318. package/src/Devices/ISYDeviceNode.ts +143 -166
  319. package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +13 -21
  320. package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +18 -29
  321. package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +18 -29
  322. package/src/Devices/Insteon/Generated/BinaryAlarm.ts +14 -17
  323. package/src/Devices/Insteon/Generated/BinaryControl.ts +14 -17
  324. package/src/Devices/Insteon/Generated/DimmerLamp.ts +25 -51
  325. package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +36 -64
  326. package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +31 -60
  327. package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +24 -47
  328. package/src/Devices/Insteon/Generated/DimmerSwitch.ts +13 -14
  329. package/src/Devices/Insteon/Generated/DoorLock.ts +11 -15
  330. package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +12 -11
  331. package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +12 -18
  332. package/src/Devices/Insteon/Generated/EzrainInput.ts +12 -11
  333. package/src/Devices/Insteon/Generated/EzrainOutput.ts +20 -28
  334. package/src/Devices/Insteon/Generated/FanLincMotor.ts +15 -27
  335. package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +19 -39
  336. package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +17 -33
  337. package/src/Devices/Insteon/Generated/ImeterSolo.ts +11 -15
  338. package/src/Devices/Insteon/Generated/IrLincTx.ts +10 -12
  339. package/src/Devices/Insteon/Generated/{KeypadButtonAdv.ts → KeypadButton.ts} +23 -26
  340. package/src/Devices/Insteon/Generated/KeypadDimmer.ts +30 -57
  341. package/src/Devices/Insteon/Generated/KeypadRelay.ts +30 -43
  342. package/src/Devices/Insteon/Generated/OnOffControl.ts +15 -12
  343. package/src/Devices/Insteon/Generated/Pir2844.ts +15 -20
  344. package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +16 -23
  345. package/src/Devices/Insteon/Generated/Pir2844c.ts +15 -20
  346. package/src/Devices/Insteon/Generated/RelayLamp.ts +29 -41
  347. package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +29 -42
  348. package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +24 -39
  349. package/src/Devices/Insteon/Generated/RelaySwitch.ts +14 -17
  350. package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +15 -20
  351. package/src/Devices/Insteon/Generated/RemoteLinc2.ts +12 -11
  352. package/src/Devices/Insteon/Generated/Siren.ts +18 -29
  353. package/src/Devices/Insteon/Generated/SirenAlert.ts +11 -8
  354. package/src/Devices/Insteon/Generated/TempLinc.ts +18 -36
  355. package/src/Devices/Insteon/Generated/Thermostat.ts +18 -36
  356. package/src/Devices/Insteon/Generated/X10.ts +13 -21
  357. package/src/Devices/Insteon/Generated/index.ts +38 -0
  358. package/src/Devices/Insteon/InsteonBaseDevice.ts +5 -4
  359. package/src/Devices/Insteon/InsteonFanDevice.ts +3 -4
  360. package/src/Devices/Insteon/InsteonRelayDevice.ts +1 -0
  361. package/src/Devices/Insteon/KeypadButton.ts +31 -31
  362. package/src/Devices/Insteon/index.ts +18 -26
  363. package/src/Devices/Lutron/Generated/LoadShed.ts +11 -15
  364. package/src/Devices/NCD/Generated/Relay.ts +12 -18
  365. package/src/Devices/NodeFactory.ts +67 -13
  366. package/src/Devices/Poly/Generated/MatterBridge.ts +84 -0
  367. package/src/Devices/Scene/Generated/Scene.ts +33 -65
  368. package/src/Devices/Scene/index.ts +2 -1
  369. package/src/Devices/UDI/Generated/Channel.ts +8 -6
  370. package/src/Devices/UDI/Generated/Em3MainChannel.ts +8 -6
  371. package/src/Devices/UDI/Generated/Main.ts +9 -9
  372. package/src/Devices/UDI/Generated/PulseCounter.ts +8 -6
  373. package/src/Devices/UDI/Generated/Relay.ts +11 -15
  374. package/src/Devices/UDI/Generated/TemperatureSensor.ts +8 -6
  375. package/src/Devices/ZWave/Generated/ColorSwitch.ts +16 -24
  376. package/src/Devices/ZWave/Generated/DimmerSwitch.ts +25 -49
  377. package/src/Devices/ZWave/Generated/index.ts +2 -0
  378. package/src/Devices/ZWave/index.ts +5 -1
  379. package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +12 -18
  380. package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +17 -33
  381. package/src/Devices/index.ts +17 -12
  382. package/src/ISY.ts +8 -2
  383. package/src/ISYDevice.ts +68 -57
  384. package/src/ISYNode.ts +32 -8
  385. package/src/ISYScene.ts +31 -28
  386. package/src/Matter/Behaviors/BehaviorRegistry.ts +26 -0
  387. package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +6 -0
  388. package/src/Matter/Bridge/Server.ts +39 -15
  389. package/src/Matter/Mappings/Insteon.ts +39 -14
  390. package/src/Model/ClassDefinition.ts +34 -4
  391. package/src/Model/ClusterMap.ts +73 -57
  392. package/src/Model/NodeInfo.ts +1 -1
  393. package/src/Utils.ts +38 -0
  394. package/tsconfig.json +7 -1
  395. package/src/Devices/Insteon/Generated/AlertModuleSirenAdv.ts +0 -123
  396. package/src/Devices/Insteon/Generated/BallastRelayLampSwitchAdv.ts +0 -123
  397. package/src/Devices/Insteon/Generated/BinaryAlarmAdv.ts +0 -91
  398. package/src/Devices/Insteon/Generated/BinaryControlAdv.ts +0 -91
  399. package/src/Devices/Insteon/Generated/DimmerLampSwitchAdv.ts +0 -207
  400. package/src/Devices/Insteon/Generated/DimmerLampSwitchLedAdv.ts +0 -215
  401. package/src/Devices/Insteon/Generated/DimmerMotorSwitchAdv.ts +0 -191
  402. package/src/Devices/Insteon/Generated/DimmerSwitchOnlyAdv.ts +0 -73
  403. package/src/Devices/Insteon/Generated/Ezio2x4InputAdv.ts +0 -75
  404. package/src/Devices/Insteon/Generated/EzrainInputAdv.ts +0 -75
  405. package/src/Devices/Insteon/Generated/KeypadDimmerAdv.ts +0 -207
  406. package/src/Devices/Insteon/Generated/KeypadRelayAdv.ts +0 -131
  407. package/src/Devices/Insteon/Generated/OnOffControlAdv.ts +0 -65
  408. package/src/Devices/Insteon/Generated/Pir2844Adv.ts +0 -139
  409. package/src/Devices/Insteon/Generated/Pir2844OnOffAdv.ts +0 -107
  410. package/src/Devices/Insteon/Generated/Pir2844cAdv.ts +0 -139
  411. package/src/Devices/Insteon/Generated/RelayLampOnlyAdv.ts +0 -123
  412. package/src/Devices/Insteon/Generated/RelayLampSwitchAdv.ts +0 -131
  413. package/src/Devices/Insteon/Generated/RelayLampSwitchLedAdv.ts +0 -139
  414. package/src/Devices/Insteon/Generated/RelaySwitchOnlyAdv.ts +0 -81
  415. package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQueryAdv.ts +0 -89
  416. package/src/Devices/Insteon/Generated/RemoteLinc2Adv.ts +0 -75
  417. package/src/Devices/Insteon/Generated/SirenArm.ts +0 -55
@@ -3,7 +3,7 @@
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
6
- import type { ISY } from "../../../ISY.js";
6
+ import { ISY } from "../../../ISY.js";
7
7
  import type { ISYNode } from "../../../ISYNode.js";
8
8
  import { Base } from "../index.js";
9
9
  import { ISYDeviceNode } from "../../ISYDeviceNode.js";
@@ -12,33 +12,28 @@ import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
14
 
15
- export const nodeDefId = "BinaryControl";
15
+ const nodeDefId = "BinaryControl";
16
16
 
17
17
  type Commands = BinaryControl.Commands;
18
18
  type Drivers = BinaryControl.Drivers;
19
19
 
20
20
  export class BinaryControlNode extends Base<Drivers, Commands> implements BinaryControl.Interface {
21
- public readonly commands = {
21
+ public override readonly commands = {
22
22
  QUERY: this.query,
23
23
  BEEP: this.beep,
24
24
  WDU: this.writeChanges
25
25
  };
26
- static nodeDefId = "BinaryControl";
27
- declare readonly nodeDefId: "BinaryControl";
26
+ static override nodeDefId = "BinaryControl";
27
+ static override implements = ["BinaryControl", "SirenAlert", "SirenArm"];
28
+ declare readonly nodeDefId: "BinaryControl" | "BinaryControl_ADV";
28
29
  constructor (isy: ISY, nodeInfo: NodeInfo) {
29
30
  super(isy, nodeInfo);
30
31
  this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
31
32
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
32
33
  }
33
- async query() {
34
- return this.sendCommand("QUERY");
35
- }
36
- async beep(value?: number) {
37
- return this.sendCommand("BEEP", { value: value });
38
- }
39
- async writeChanges() {
40
- return this.sendCommand("WDU");
41
- }
34
+ async query() { return this.sendCommand("QUERY"); }
35
+ async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
36
+ async writeChanges() { return this.sendCommand("WDU"); }
42
37
  public get status(): Insteon.OnLevelRelay {
43
38
  return this.drivers.ST?.value;
44
39
  }
@@ -48,13 +43,15 @@ export class BinaryControlNode extends Base<Drivers, Commands> implements Binary
48
43
  }
49
44
 
50
45
  NodeFactory.register(BinaryControlNode);
46
+ NodeFactory.register(BinaryControlNode, "BinaryControl_ADV");
51
47
 
52
48
  export namespace BinaryControl {
53
49
  export interface Interface extends Omit<InstanceType<typeof BinaryControlNode>, keyof ISYDeviceNode<any, any, any, any>> {
54
- nodeDefId: "BinaryControl";
50
+ nodeDefId: "BinaryControl" | "BinaryControl_ADV";
55
51
  }
56
- export function is(node: ISYNode<any, any, any, any>): node is BinaryControlNode {
57
- return node.nodeDefId === nodeDefId;
52
+ export function is(node: ISYNode<any, any, any, any>): node is BinaryControlNode { return ["BinaryControl", "BinaryControl_ADV"].includes(node.nodeDefId); }
53
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is BinaryControlNode {
54
+ return ["BinaryControl", "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "KeypadRelay", "KeypadRelay_ADV", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl_ADV"].includes(node.nodeDefId);
58
55
  }
59
56
  export function create(isy: ISY, nodeInfo: NodeInfo) {
60
57
  return new BinaryControlNode(isy, nodeInfo);
@@ -3,7 +3,7 @@
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
6
- import type { ISY } from "../../../ISY.js";
6
+ import { ISY } from "../../../ISY.js";
7
7
  import type { ISYNode } from "../../../ISYNode.js";
8
8
  import { Base } from "../index.js";
9
9
  import { ISYDeviceNode } from "../../ISYDeviceNode.js";
@@ -12,13 +12,13 @@ import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
14
 
15
- export const nodeDefId = "DimmerLampOnly";
15
+ const nodeDefId = "DimmerLampOnly";
16
16
 
17
17
  type Commands = DimmerLamp.Commands;
18
18
  type Drivers = DimmerLamp.Drivers;
19
19
 
20
20
  export class DimmerLampNode extends Base<Drivers, Commands> implements DimmerLamp.Interface {
21
- public readonly commands = {
21
+ public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
24
24
  DFOF: this.fastOff,
@@ -34,7 +34,8 @@ export class DimmerLampNode extends Base<Drivers, Commands> implements DimmerLam
34
34
  RR: this.updateRampRate,
35
35
  WDU: this.writeChanges
36
36
  };
37
- static nodeDefId = "DimmerLampOnly";
37
+ static override nodeDefId = "DimmerLampOnly";
38
+ static override implements = ["DimmerLampOnly", "IRLincTx", "SirenAlert", "SirenArm"];
38
39
  declare readonly nodeDefId: "DimmerLampOnly";
39
40
  constructor (isy: ISY, nodeInfo: NodeInfo) {
40
41
  super(isy, nodeInfo);
@@ -43,55 +44,27 @@ export class DimmerLampNode extends Base<Drivers, Commands> implements DimmerLam
43
44
  this.drivers.RR = Driver.create("RR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
44
45
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
45
46
  }
46
- async on(value?: number) {
47
- return this.sendCommand("DON", { value: value });
48
- }
49
- async off() {
50
- return this.sendCommand("DOF");
51
- }
52
- async fastOff() {
53
- return this.sendCommand("DFOF");
54
- }
55
- async fastOn() {
56
- return this.sendCommand("DFON");
57
- }
58
- async brighten() {
59
- return this.sendCommand("BRT");
60
- }
61
- async dim() {
62
- return this.sendCommand("DIM");
63
- }
64
- async fadeUp() {
65
- return this.sendCommand("FDUP");
66
- }
67
- async fadeDown() {
68
- return this.sendCommand("FDDOWN");
69
- }
70
- async fadeStop() {
71
- return this.sendCommand("FDSTOP");
72
- }
73
- async query() {
74
- return this.sendCommand("QUERY");
75
- }
76
- async beep(value?: number) {
77
- return this.sendCommand("BEEP", { value: value });
78
- }
79
- async updateOnLevel(value: number) {
80
- return this.sendCommand("OL", { value: value });
81
- }
82
- async updateRampRate(value: number) {
83
- return this.sendCommand("RR", { value: value });
84
- }
85
- async writeChanges() {
86
- return this.sendCommand("WDU");
87
- }
47
+ async on(value?: number) { return this.sendCommand("DON", { value: value }); }
48
+ async off() { return this.sendCommand("DOF"); }
49
+ async fastOff() { return this.sendCommand("DFOF"); }
50
+ async fastOn() { return this.sendCommand("DFON"); }
51
+ async brighten() { return this.sendCommand("BRT"); }
52
+ async dim() { return this.sendCommand("DIM"); }
53
+ async fadeUp() { return this.sendCommand("FDUP"); }
54
+ async fadeDown() { return this.sendCommand("FDDOWN"); }
55
+ async fadeStop() { return this.sendCommand("FDSTOP"); }
56
+ async query() { return this.sendCommand("QUERY"); }
57
+ async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
58
+ async updateOnLevel(value: number) { return this.sendCommand("OL", { value: value }); }
59
+ async updateRampRate(value: Insteon.RampRate) { return this.sendCommand("RR", { value: value }); }
60
+ async writeChanges() { return this.sendCommand("WDU"); }
88
61
  public get status(): number {
89
62
  return this.drivers.ST?.value;
90
63
  }
91
64
  public get onLevel(): number {
92
65
  return this.drivers.OL?.value;
93
66
  }
94
- public get rampRate(): number {
67
+ public get rampRate(): Insteon.RampRate {
95
68
  return this.drivers.RR?.value;
96
69
  }
97
70
  public get responding(): Insteon.Error {
@@ -105,8 +78,9 @@ export namespace DimmerLamp {
105
78
  export interface Interface extends Omit<InstanceType<typeof DimmerLampNode>, keyof ISYDeviceNode<any, any, any, any>> {
106
79
  nodeDefId: "DimmerLampOnly";
107
80
  }
108
- export function is(node: ISYNode<any, any, any, any>): node is DimmerLampNode {
109
- return node.nodeDefId === nodeDefId;
81
+ export function is(node: ISYNode<any, any, any, any>): node is DimmerLampNode { return ["DimmerLampOnly"].includes(node.nodeDefId); }
82
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is DimmerLampNode {
83
+ return ["DimmerLampOnly", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV"].includes(node.nodeDefId);
110
84
  }
111
85
  export function create(isy: ISY, nodeInfo: NodeInfo) {
112
86
  return new DimmerLampNode(isy, nodeInfo);
@@ -161,7 +135,7 @@ export namespace DimmerLamp {
161
135
  label: "On Level";
162
136
  name: "updateOnLevel";
163
137
  };
164
- RR: ((value: number) => Promise<boolean>) & {
138
+ RR: ((value: Insteon.RampRate) => Promise<boolean>) & {
165
139
  label: "Ramp Rate";
166
140
  name: "updateRampRate";
167
141
  };
@@ -185,7 +159,7 @@ export namespace DimmerLamp {
185
159
  };
186
160
  RR: {
187
161
  uom: UnitOfMeasure.Index;
188
- value: number;
162
+ value: Insteon.RampRate;
189
163
  label: "Ramp Rate";
190
164
  name: "rampRate";
191
165
  };
@@ -1,9 +1,9 @@
1
- /* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
2
-
1
+ /* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
2
+
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
6
- import type { ISY } from "../../../ISY.js";
6
+ import { ISY } from "../../../ISY.js";
7
7
  import type { ISYNode } from "../../../ISYNode.js";
8
8
  import { Base } from "../index.js";
9
9
  import { ISYDeviceNode } from "../../ISYDeviceNode.js";
@@ -11,15 +11,14 @@ import { Driver } from "../../../Definitions/Global/Drivers.js";
11
11
  import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
- import { validateHeaderName } from 'http';
15
-
16
- export const nodeDefId = "DimmerLampSwitch";
17
-
14
+
15
+ const nodeDefId = "DimmerLampSwitch";
16
+
18
17
  type Commands = DimmerLampSwitch.Commands;
19
18
  type Drivers = DimmerLampSwitch.Drivers;
20
-
19
+
21
20
  export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements DimmerLampSwitch.Interface {
22
- public readonly commands = {
21
+ public override readonly commands = {
23
22
  DON: this.on,
24
23
  DOF: this.off,
25
24
  DFOF: this.fastOff,
@@ -36,8 +35,9 @@ export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements Dim
36
35
  BL: this.backlight,
37
36
  WDU: this.writeChanges
38
37
  };
39
- static nodeDefId = "DimmerLampSwitch";
40
- declare readonly nodeDefId: "DimmerLampSwitch";
38
+ static override nodeDefId = "DimmerLampSwitch";
39
+ static override implements = ["DimmerLampSwitch", "DimmerSwitchOnly", "DimmerSwitchOnly_ADV", "DimmerLampOnly", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
40
+ declare readonly nodeDefId: "DimmerLampSwitch" | "DimmerLampSwitch_ADV";
41
41
  constructor (isy: ISY, nodeInfo: NodeInfo) {
42
42
  super(isy, nodeInfo);
43
43
  this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
@@ -45,73 +45,45 @@ export class DimmerLampSwitchNode extends Base<Drivers, Commands> implements Dim
45
45
  this.drivers.RR = Driver.create("RR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
46
46
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
47
47
  }
48
- async on(value?: number) {
49
- return this.sendCommand("DON", { value: value });
50
- }
51
- async off() {
52
- return this.sendCommand("DOF");
53
- }
54
- async fastOff() {
55
- return this.sendCommand("DFOF");
56
- }
57
- async fastOn() {
58
- return this.sendCommand("DFON");
59
- }
60
- async brighten() {
61
- return this.sendCommand("BRT");
62
- }
63
- async dim() {
64
- return this.sendCommand("DIM");
65
- }
66
- async fadeUp() {
67
- return this.sendCommand("FDUP");
68
- }
69
- async fadeDown() {
70
- return this.sendCommand("FDDOWN");
71
- }
72
- async fadeStop() {
73
- return this.sendCommand("FDSTOP");
74
- }
75
- async query() {
76
- return this.sendCommand("QUERY");
77
- }
78
- async beep(value?: number) {
79
- return this.sendCommand("BEEP", { value: value });
80
- }
81
- async updateOnLevel(value: number) {
82
- return this.sendCommand("OL", { value: value });
83
- }
84
- async updateRampRate(value: number) {
85
- return this.sendCommand("RR", { value: value });
86
- }
87
- async backlight(value: number) {
88
- return this.sendCommand("BL", { value: value });
89
- }
90
- async writeChanges() {
91
- return this.sendCommand("WDU");
92
- }
48
+ async on(value?: number) { return this.sendCommand("DON", { value: value }); }
49
+ async off() { return this.sendCommand("DOF"); }
50
+ async fastOff() { return this.sendCommand("DFOF"); }
51
+ async fastOn() { return this.sendCommand("DFON"); }
52
+ async brighten() { return this.sendCommand("BRT"); }
53
+ async dim() { return this.sendCommand("DIM"); }
54
+ async fadeUp() { return this.sendCommand("FDUP"); }
55
+ async fadeDown() { return this.sendCommand("FDDOWN"); }
56
+ async fadeStop() { return this.sendCommand("FDSTOP"); }
57
+ async query() { return this.sendCommand("QUERY"); }
58
+ async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
59
+ async updateOnLevel(value: number) { return this.sendCommand("OL", { value: value }); }
60
+ async updateRampRate(value: Insteon.RampRate) { return this.sendCommand("RR", { value: value }); }
61
+ async backlight(value: number) { return this.sendCommand("BL", { value: value }); }
62
+ async writeChanges() { return this.sendCommand("WDU"); }
93
63
  public get status(): number {
94
64
  return this.drivers.ST?.value;
95
65
  }
96
66
  public get onLevel(): number {
97
67
  return this.drivers.OL?.value;
98
68
  }
99
- public get rampRate(): number {
69
+ public get rampRate(): Insteon.RampRate {
100
70
  return this.drivers.RR?.value;
101
71
  }
102
72
  public get responding(): Insteon.Error {
103
73
  return this.drivers.ERR?.value;
104
74
  }
105
75
  }
106
-
76
+
107
77
  NodeFactory.register(DimmerLampSwitchNode);
108
-
78
+ NodeFactory.register(DimmerLampSwitchNode, "DimmerLampSwitch_ADV");
79
+
109
80
  export namespace DimmerLampSwitch {
110
81
  export interface Interface extends Omit<InstanceType<typeof DimmerLampSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
111
- nodeDefId: "DimmerLampSwitch";
82
+ nodeDefId: "DimmerLampSwitch" | "DimmerLampSwitch_ADV";
112
83
  }
113
- export function is(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchNode {
114
- return node.nodeDefId === nodeDefId;
84
+ export function is(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchNode { return ["DimmerLampSwitch", "DimmerLampSwitch_ADV"].includes(node.nodeDefId); }
85
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchNode {
86
+ return ["DimmerLampSwitch", "DimmerLampSwitch_ADV"].includes(node.nodeDefId);
115
87
  }
116
88
  export function create(isy: ISY, nodeInfo: NodeInfo) {
117
89
  return new DimmerLampSwitchNode(isy, nodeInfo);
@@ -166,7 +138,7 @@ export namespace DimmerLampSwitch {
166
138
  label: "On Level";
167
139
  name: "updateOnLevel";
168
140
  };
169
- RR: ((value: number) => Promise<boolean>) & {
141
+ RR: ((value: Insteon.RampRate) => Promise<boolean>) & {
170
142
  label: "Ramp Rate";
171
143
  name: "updateRampRate";
172
144
  };
@@ -194,7 +166,7 @@ export namespace DimmerLampSwitch {
194
166
  };
195
167
  RR: {
196
168
  uom: UnitOfMeasure.Index;
197
- value: number;
169
+ value: Insteon.RampRate;
198
170
  label: "Ramp Rate";
199
171
  name: "rampRate";
200
172
  };
@@ -3,7 +3,7 @@
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
6
- import type { ISY } from "../../../ISY.js";
6
+ import { ISY } from "../../../ISY.js";
7
7
  import type { ISYNode } from "../../../ISYNode.js";
8
8
  import { Base } from "../index.js";
9
9
  import { ISYDeviceNode } from "../../ISYDeviceNode.js";
@@ -12,13 +12,13 @@ import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
14
 
15
- export const nodeDefId = "DimmerLampSwitchLED";
15
+ const nodeDefId = "DimmerLampSwitchLED";
16
16
 
17
17
  type Commands = DimmerLampSwitchLed.Commands;
18
18
  type Drivers = DimmerLampSwitchLed.Drivers;
19
19
 
20
20
  export class DimmerLampSwitchLedNode extends Base<Drivers, Commands> implements DimmerLampSwitchLed.Interface {
21
- public readonly commands = {
21
+ public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
24
24
  DFOF: this.fastOff,
@@ -36,8 +36,9 @@ export class DimmerLampSwitchLedNode extends Base<Drivers, Commands> implements
36
36
  BL: this.backlight,
37
37
  WDU: this.writeChanges
38
38
  };
39
- static nodeDefId = "DimmerLampSwitchLED";
40
- declare readonly nodeDefId: "DimmerLampSwitchLED";
39
+ static override nodeDefId = "DimmerLampSwitchLED";
40
+ static override implements = ["DimmerLampSwitchLED", "DimmerSwitchOnly", "DimmerSwitchOnly_ADV", "DimmerLampOnly", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
41
+ declare readonly nodeDefId: "DimmerLampSwitchLED" | "DimmerLampSwitchLED_ADV";
41
42
  constructor (isy: ISY, nodeInfo: NodeInfo) {
42
43
  super(isy, nodeInfo);
43
44
  this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
@@ -45,61 +46,29 @@ export class DimmerLampSwitchLedNode extends Base<Drivers, Commands> implements
45
46
  this.drivers.RR = Driver.create("RR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
46
47
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
47
48
  }
48
- async on(value?: number) {
49
- return this.sendCommand("DON", { value: value });
50
- }
51
- async off() {
52
- return this.sendCommand("DOF");
53
- }
54
- async fastOff() {
55
- return this.sendCommand("DFOF");
56
- }
57
- async fastOn() {
58
- return this.sendCommand("DFON");
59
- }
60
- async brighten() {
61
- return this.sendCommand("BRT");
62
- }
63
- async dim() {
64
- return this.sendCommand("DIM");
65
- }
66
- async fadeUp() {
67
- return this.sendCommand("FDUP");
68
- }
69
- async fadeDown() {
70
- return this.sendCommand("FDDOWN");
71
- }
72
- async fadeStop() {
73
- return this.sendCommand("FDSTOP");
74
- }
75
- async query() {
76
- return this.sendCommand("QUERY");
77
- }
78
- async beep(value?: number) {
79
- return this.sendCommand("BEEP", { value: value });
80
- }
81
- async updateOnLevel(value: number) {
82
- return this.sendCommand("OL", { value: value });
83
- }
84
- async updateRampRate(value: number) {
85
- return this.sendCommand("RR", { value: value });
86
- }
87
- async led(value: number) {
88
- return this.sendCommand("LED", { value: value });
89
- }
90
- async backlight(value: number) {
91
- return this.sendCommand("BL", { value: value });
92
- }
93
- async writeChanges() {
94
- return this.sendCommand("WDU");
95
- }
49
+ async on(value?: number) { return this.sendCommand("DON", { value: value }); }
50
+ async off() { return this.sendCommand("DOF"); }
51
+ async fastOff() { return this.sendCommand("DFOF"); }
52
+ async fastOn() { return this.sendCommand("DFON"); }
53
+ async brighten() { return this.sendCommand("BRT"); }
54
+ async dim() { return this.sendCommand("DIM"); }
55
+ async fadeUp() { return this.sendCommand("FDUP"); }
56
+ async fadeDown() { return this.sendCommand("FDDOWN"); }
57
+ async fadeStop() { return this.sendCommand("FDSTOP"); }
58
+ async query() { return this.sendCommand("QUERY"); }
59
+ async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
60
+ async updateOnLevel(value: number) { return this.sendCommand("OL", { value: value }); }
61
+ async updateRampRate(value: Insteon.RampRate) { return this.sendCommand("RR", { value: value }); }
62
+ async led(value: Insteon.I3RgbLed) { return this.sendCommand("LED", { value: value }); }
63
+ async backlight(value: number) { return this.sendCommand("BL", { value: value }); }
64
+ async writeChanges() { return this.sendCommand("WDU"); }
96
65
  public get status(): number {
97
66
  return this.drivers.ST?.value;
98
67
  }
99
68
  public get onLevel(): number {
100
69
  return this.drivers.OL?.value;
101
70
  }
102
- public get rampRate(): number {
71
+ public get rampRate(): Insteon.RampRate {
103
72
  return this.drivers.RR?.value;
104
73
  }
105
74
  public get responding(): Insteon.Error {
@@ -108,13 +77,15 @@ export class DimmerLampSwitchLedNode extends Base<Drivers, Commands> implements
108
77
  }
109
78
 
110
79
  NodeFactory.register(DimmerLampSwitchLedNode);
80
+ NodeFactory.register(DimmerLampSwitchLedNode, "DimmerLampSwitchLED_ADV");
111
81
 
112
82
  export namespace DimmerLampSwitchLed {
113
83
  export interface Interface extends Omit<InstanceType<typeof DimmerLampSwitchLedNode>, keyof ISYDeviceNode<any, any, any, any>> {
114
- nodeDefId: "DimmerLampSwitchLED";
84
+ nodeDefId: "DimmerLampSwitchLED" | "DimmerLampSwitchLED_ADV";
115
85
  }
116
- export function is(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchLedNode {
117
- return node.nodeDefId === nodeDefId;
86
+ export function is(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchLedNode { return ["DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV"].includes(node.nodeDefId); }
87
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is DimmerLampSwitchLedNode {
88
+ return ["DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV"].includes(node.nodeDefId);
118
89
  }
119
90
  export function create(isy: ISY, nodeInfo: NodeInfo) {
120
91
  return new DimmerLampSwitchLedNode(isy, nodeInfo);
@@ -169,11 +140,11 @@ export namespace DimmerLampSwitchLed {
169
140
  label: "On Level";
170
141
  name: "updateOnLevel";
171
142
  };
172
- RR: ((value: number) => Promise<boolean>) & {
143
+ RR: ((value: Insteon.RampRate) => Promise<boolean>) & {
173
144
  label: "Ramp Rate";
174
145
  name: "updateRampRate";
175
146
  };
176
- LED: ((value: number) => Promise<boolean>) & {
147
+ LED: ((value: Insteon.I3RgbLed) => Promise<boolean>) & {
177
148
  label: "LED";
178
149
  name: "led";
179
150
  };
@@ -201,7 +172,7 @@ export namespace DimmerLampSwitchLed {
201
172
  };
202
173
  RR: {
203
174
  uom: UnitOfMeasure.Index;
204
- value: number;
175
+ value: Insteon.RampRate;
205
176
  label: "Ramp Rate";
206
177
  name: "rampRate";
207
178
  };
@@ -3,7 +3,7 @@
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
6
- import type { ISY } from "../../../ISY.js";
6
+ import { ISY } from "../../../ISY.js";
7
7
  import type { ISYNode } from "../../../ISYNode.js";
8
8
  import { Base } from "../index.js";
9
9
  import { ISYDeviceNode } from "../../ISYDeviceNode.js";
@@ -12,13 +12,13 @@ import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
14
 
15
- export const nodeDefId = "DimmerMotorSwitch";
15
+ const nodeDefId = "DimmerMotorSwitch";
16
16
 
17
17
  type Commands = DimmerMotorSwitch.Commands;
18
18
  type Drivers = DimmerMotorSwitch.Drivers;
19
19
 
20
20
  export class DimmerMotorSwitchNode extends Base<Drivers, Commands> implements DimmerMotorSwitch.Interface {
21
- public readonly commands = {
21
+ public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
24
24
  DFOF: this.fastOff,
@@ -33,8 +33,9 @@ export class DimmerMotorSwitchNode extends Base<Drivers, Commands> implements Di
33
33
  BL: this.backlight,
34
34
  WDU: this.writeChanges
35
35
  };
36
- static nodeDefId = "DimmerMotorSwitch";
37
- declare readonly nodeDefId: "DimmerMotorSwitch";
36
+ static override nodeDefId = "DimmerMotorSwitch";
37
+ static override implements = ["DimmerMotorSwitch", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
38
+ declare readonly nodeDefId: "DimmerMotorSwitch" | "DimmerMotorSwitch_ADV";
38
39
  constructor (isy: ISY, nodeInfo: NodeInfo) {
39
40
  super(isy, nodeInfo);
40
41
  this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
@@ -42,45 +43,19 @@ export class DimmerMotorSwitchNode extends Base<Drivers, Commands> implements Di
42
43
  this.drivers.DUR = Driver.create("DUR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.DurationInSeconds, label: "Max Duration", name: "maxDuration" });
43
44
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
44
45
  }
45
- async on(value?: number) {
46
- return this.sendCommand("DON", { value: value });
47
- }
48
- async off() {
49
- return this.sendCommand("DOF");
50
- }
51
- async fastOff() {
52
- return this.sendCommand("DFOF");
53
- }
54
- async fastOn() {
55
- return this.sendCommand("DFON");
56
- }
57
- async fadeUp() {
58
- return this.sendCommand("FDUP");
59
- }
60
- async fadeDown() {
61
- return this.sendCommand("FDDOWN");
62
- }
63
- async fadeStop() {
64
- return this.sendCommand("FDSTOP");
65
- }
66
- async query() {
67
- return this.sendCommand("QUERY");
68
- }
69
- async beep(value?: number) {
70
- return this.sendCommand("BEEP", { value: value });
71
- }
72
- async updateOnLevel(value: number) {
73
- return this.sendCommand("OL", { value: value });
74
- }
75
- async updateMaxDuration(value: number) {
76
- return this.sendCommand("DUR", { value: value });
77
- }
78
- async backlight(value: number) {
79
- return this.sendCommand("BL", { value: value });
80
- }
81
- async writeChanges() {
82
- return this.sendCommand("WDU");
83
- }
46
+ async on(value?: number) { return this.sendCommand("DON", { value: value }); }
47
+ async off() { return this.sendCommand("DOF"); }
48
+ async fastOff() { return this.sendCommand("DFOF"); }
49
+ async fastOn() { return this.sendCommand("DFON"); }
50
+ async fadeUp() { return this.sendCommand("FDUP"); }
51
+ async fadeDown() { return this.sendCommand("FDDOWN"); }
52
+ async fadeStop() { return this.sendCommand("FDSTOP"); }
53
+ async query() { return this.sendCommand("QUERY"); }
54
+ async beep(value?: number) { return this.sendCommand("BEEP", { value: value }); }
55
+ async updateOnLevel(value: number) { return this.sendCommand("OL", { value: value }); }
56
+ async updateMaxDuration(value: number) { return this.sendCommand("DUR", { value: value }); }
57
+ async backlight(value: number) { return this.sendCommand("BL", { value: value }); }
58
+ async writeChanges() { return this.sendCommand("WDU"); }
84
59
  public get status(): number {
85
60
  return this.drivers.ST?.value;
86
61
  }
@@ -96,13 +71,15 @@ export class DimmerMotorSwitchNode extends Base<Drivers, Commands> implements Di
96
71
  }
97
72
 
98
73
  NodeFactory.register(DimmerMotorSwitchNode);
74
+ NodeFactory.register(DimmerMotorSwitchNode, "DimmerMotorSwitch_ADV");
99
75
 
100
76
  export namespace DimmerMotorSwitch {
101
77
  export interface Interface extends Omit<InstanceType<typeof DimmerMotorSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
102
- nodeDefId: "DimmerMotorSwitch";
78
+ nodeDefId: "DimmerMotorSwitch" | "DimmerMotorSwitch_ADV";
103
79
  }
104
- export function is(node: ISYNode<any, any, any, any>): node is DimmerMotorSwitchNode {
105
- return node.nodeDefId === nodeDefId;
80
+ export function is(node: ISYNode<any, any, any, any>): node is DimmerMotorSwitchNode { return ["DimmerMotorSwitch", "DimmerMotorSwitch_ADV"].includes(node.nodeDefId); }
81
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is DimmerMotorSwitchNode {
82
+ return ["DimmerMotorSwitch", "DimmerMotorSwitch_ADV"].includes(node.nodeDefId);
106
83
  }
107
84
  export function create(isy: ISY, nodeInfo: NodeInfo) {
108
85
  return new DimmerMotorSwitchNode(isy, nodeInfo);