isy-nodejs 1.0.7-alpha.0 → 1.0.9-alpha.1

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 (456) hide show
  1. package/dist/esm/CodeGeneration/CodeFactory.js +12 -6
  2. package/dist/esm/CodeGeneration/CodeFactory.js.map +1 -1
  3. package/dist/esm/CodeGeneration/NodeClassFactory.js +16 -7
  4. package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
  5. package/dist/esm/Definitions/Global/Commands.js +6 -7
  6. package/dist/esm/Definitions/Global/Commands.js.map +1 -1
  7. package/dist/esm/Definitions/Global/Drivers.js +36 -23
  8. package/dist/esm/Definitions/Global/Drivers.js.map +1 -1
  9. package/dist/esm/Definitions/Insteon/generated/Boolean.js +10 -0
  10. package/dist/esm/Definitions/Insteon/generated/Boolean.js.map +1 -1
  11. package/dist/esm/Definitions/Insteon/generated/Error.js +10 -0
  12. package/dist/esm/Definitions/Insteon/generated/Error.js.map +1 -1
  13. package/dist/esm/Definitions/Insteon/generated/Lock.js +26 -0
  14. package/dist/esm/Definitions/Insteon/generated/Lock.js.map +1 -1
  15. package/dist/esm/Definitions/Insteon/generated/OnLevelRelay.js +10 -0
  16. package/dist/esm/Definitions/Insteon/generated/OnLevelRelay.js.map +1 -1
  17. package/{src/Devices/ISYMultiNodeDevice.ts → dist/esm/Devices/CompositeDevice.js} +108 -9
  18. package/dist/esm/Devices/CompositeDevice.js.map +1 -0
  19. package/dist/esm/Devices/DeviceFactory.js +1 -1
  20. package/dist/esm/Devices/DeviceFactory.js.map +1 -1
  21. package/dist/esm/Devices/ISYDeviceNode.js +1 -0
  22. package/dist/esm/Devices/ISYDeviceNode.js.map +1 -1
  23. package/dist/esm/Devices/ISYMultiNodeDevice.js +25 -1
  24. package/dist/esm/Devices/ISYMultiNodeDevice.js.map +1 -1
  25. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +6 -6
  26. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -1
  27. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +6 -6
  28. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -1
  29. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +6 -6
  30. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -1
  31. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +6 -6
  32. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -1
  33. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +6 -6
  34. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -1
  35. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +8 -8
  36. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -1
  37. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +8 -8
  38. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -1
  39. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +8 -8
  40. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -1
  41. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +8 -8
  42. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -1
  43. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +5 -5
  44. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -1
  45. package/dist/esm/Devices/Insteon/Generated/DoorLock.js +6 -6
  46. package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -1
  47. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +6 -6
  48. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -1
  49. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +6 -6
  50. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -1
  51. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +6 -6
  52. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -1
  53. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +6 -6
  54. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -1
  55. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +6 -6
  56. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -1
  57. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +14 -14
  58. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -1
  59. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +12 -12
  60. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -1
  61. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +7 -7
  62. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -1
  63. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +5 -5
  64. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -1
  65. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +6 -6
  66. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -1
  67. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +8 -8
  68. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -1
  69. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +6 -6
  70. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -1
  71. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +6 -6
  72. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -1
  73. package/dist/esm/Devices/Insteon/Generated/Pir2844.js +10 -10
  74. package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -1
  75. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +6 -6
  76. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -1
  77. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +10 -10
  78. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -1
  79. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +6 -6
  80. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -1
  81. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +6 -6
  82. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -1
  83. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +6 -6
  84. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -1
  85. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +5 -5
  86. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -1
  87. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +5 -5
  88. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -1
  89. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +6 -6
  90. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -1
  91. package/dist/esm/Devices/Insteon/Generated/Siren.js +9 -9
  92. package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -1
  93. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +5 -5
  94. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -1
  95. package/dist/esm/Devices/Insteon/Generated/TempLinc.js +12 -12
  96. package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -1
  97. package/dist/esm/Devices/Insteon/Generated/Thermostat.js +12 -12
  98. package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -1
  99. package/dist/esm/Devices/Insteon/Generated/X10.js +6 -6
  100. package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -1
  101. package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js +20 -11
  102. package/dist/esm/Devices/Insteon/InsteonDeviceFactory.js.map +1 -1
  103. package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js +2 -4
  104. package/dist/esm/Devices/Insteon/InsteonDimmableDevice.js.map +1 -1
  105. package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js +2 -2
  106. package/dist/esm/Devices/Insteon/InsteonDimmerOutletDevice.js.map +1 -1
  107. package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js +20 -7
  108. package/dist/esm/Devices/Insteon/InsteonDoorWindowSensorDevice.js.map +1 -1
  109. package/dist/esm/Devices/Insteon/InsteonFanDevice.js +15 -34
  110. package/dist/esm/Devices/Insteon/InsteonFanDevice.js.map +1 -1
  111. package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js +14 -13
  112. package/dist/esm/Devices/Insteon/InsteonOnOffOutletDevice.js.map +1 -1
  113. package/dist/esm/Devices/Insteon/InsteonRelayDevice.js +0 -16
  114. package/dist/esm/Devices/Insteon/InsteonRelayDevice.js.map +1 -1
  115. package/dist/esm/Devices/Insteon/index.js +10 -11
  116. package/dist/esm/Devices/Insteon/index.js.map +1 -1
  117. package/dist/esm/Devices/Lutron/Generated/LoadShed.js +6 -6
  118. package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -1
  119. package/dist/esm/Devices/NodeFactory.js.map +1 -1
  120. package/dist/esm/Devices/UDI/Generated/Channel.js +7 -7
  121. package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -1
  122. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +10 -10
  123. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -1
  124. package/dist/esm/Devices/UDI/Generated/Main.js +7 -7
  125. package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -1
  126. package/dist/esm/Devices/UDI/Generated/PulseCounter.js +8 -8
  127. package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -1
  128. package/dist/esm/Devices/UDI/Generated/Relay.js +6 -6
  129. package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -1
  130. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +6 -6
  131. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -1
  132. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +9 -9
  133. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -1
  134. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +6 -6
  135. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -1
  136. package/dist/esm/Devices/ZigBee/ZWaveBaseDevice.js +9 -0
  137. package/dist/esm/Devices/ZigBee/ZWaveBaseDevice.js.map +1 -0
  138. package/dist/esm/Devices/ZigBee/ZigBeeBase.js +9 -0
  139. package/dist/esm/Devices/ZigBee/ZigBeeBase.js.map +1 -0
  140. package/dist/esm/Devices/ZigBee/index.js +3 -0
  141. package/dist/esm/Devices/ZigBee/index.js.map +1 -0
  142. package/dist/esm/ISY.js +19 -3
  143. package/dist/esm/ISY.js.map +1 -1
  144. package/dist/esm/ISYNode.js.map +1 -1
  145. package/dist/esm/Matter/Behaviors/BehaviorRegistry.js +37 -5
  146. package/dist/esm/Matter/Behaviors/BehaviorRegistry.js.map +1 -1
  147. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js +1 -1
  148. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
  149. package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js +6 -1
  150. package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
  151. package/dist/esm/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.js +24 -0
  152. package/dist/esm/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.js.map +1 -0
  153. package/dist/esm/Matter/Behaviors/Insteon/ISYDimmableBehavior.js +23 -0
  154. package/dist/esm/Matter/Behaviors/Insteon/ISYDimmableBehavior.js.map +1 -0
  155. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js +4 -4
  156. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
  157. package/dist/esm/Matter/Behaviors/Insteon/IdentifyBehavior.js +23 -0
  158. package/dist/esm/Matter/Behaviors/Insteon/IdentifyBehavior.js.map +1 -0
  159. package/dist/esm/Matter/Behaviors/Insteon/RelayOnOffBehavior.js +24 -0
  160. package/dist/esm/Matter/Behaviors/Insteon/RelayOnOffBehavior.js.map +1 -0
  161. package/dist/esm/Matter/Behaviors/Insteon/index.js +4 -0
  162. package/dist/esm/Matter/Behaviors/Insteon/index.js.map +1 -0
  163. package/dist/esm/Matter/Behaviors/index.js +6 -0
  164. package/dist/esm/Matter/Behaviors/index.js.map +1 -0
  165. package/dist/esm/Matter/Bridge/Server.js +23 -11
  166. package/dist/esm/Matter/Bridge/Server.js.map +1 -1
  167. package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
  168. package/dist/esm/Matter/Mappings/MappingRegistry.js +5 -4
  169. package/dist/esm/Matter/Mappings/MappingRegistry.js.map +1 -1
  170. package/dist/esm/Matter/Mappings/index.js +1 -0
  171. package/dist/esm/Matter/Mappings/index.js.map +1 -1
  172. package/dist/esm/Registry.js +77 -0
  173. package/dist/esm/Registry.js.map +1 -0
  174. package/dist/esm/Utils.js +12 -0
  175. package/dist/esm/Utils.js.map +1 -1
  176. package/dist/esm/types/CodeGeneration/CodeFactory.d.ts +6 -5
  177. package/dist/esm/types/CodeGeneration/CodeFactory.d.ts.map +1 -1
  178. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
  179. package/dist/esm/types/Definitions/Global/Commands.d.ts +4 -4
  180. package/dist/esm/types/Definitions/Global/Commands.d.ts.map +1 -1
  181. package/dist/esm/types/Definitions/Global/Drivers.d.ts +10 -8
  182. package/dist/esm/types/Definitions/Global/Drivers.d.ts.map +1 -1
  183. package/dist/esm/types/Definitions/Global/Events.d.ts +3 -3
  184. package/dist/esm/types/Definitions/Global/Events.d.ts.map +1 -1
  185. package/dist/esm/types/Definitions/Insteon/generated/Boolean.d.ts +4 -0
  186. package/dist/esm/types/Definitions/Insteon/generated/Boolean.d.ts.map +1 -1
  187. package/dist/esm/types/Definitions/Insteon/generated/Error.d.ts +4 -0
  188. package/dist/esm/types/Definitions/Insteon/generated/Error.d.ts.map +1 -1
  189. package/dist/esm/types/Definitions/Insteon/generated/Lock.d.ts +6 -0
  190. package/dist/esm/types/Definitions/Insteon/generated/Lock.d.ts.map +1 -1
  191. package/dist/esm/types/Definitions/Insteon/generated/OnLevelRelay.d.ts +4 -0
  192. package/dist/esm/types/Definitions/Insteon/generated/OnLevelRelay.d.ts.map +1 -1
  193. package/dist/esm/types/Devices/CompositeDevice.d.ts +64 -0
  194. package/dist/esm/types/Devices/CompositeDevice.d.ts.map +1 -0
  195. package/dist/esm/types/Devices/EndpointFor.d.ts +3 -2
  196. package/dist/esm/types/Devices/EndpointFor.d.ts.map +1 -1
  197. package/dist/esm/types/Devices/ISYDeviceNode.d.ts +4 -1
  198. package/dist/esm/types/Devices/ISYDeviceNode.d.ts.map +1 -1
  199. package/dist/esm/types/Devices/ISYMultiNodeDevice.d.ts +25 -1
  200. package/dist/esm/types/Devices/ISYMultiNodeDevice.d.ts.map +1 -1
  201. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts +2 -3
  202. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -1
  203. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts +2 -3
  204. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -1
  205. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts +2 -3
  206. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -1
  207. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts +2 -3
  208. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -1
  209. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts +2 -3
  210. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -1
  211. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts +2 -3
  212. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -1
  213. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts +2 -3
  214. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -1
  215. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts +2 -3
  216. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -1
  217. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts +2 -3
  218. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -1
  219. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts +2 -3
  220. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -1
  221. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts +2 -3
  222. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -1
  223. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts +2 -3
  224. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -1
  225. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts +2 -3
  226. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -1
  227. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts +2 -3
  228. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -1
  229. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts +2 -3
  230. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -1
  231. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts +2 -3
  232. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -1
  233. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts +2 -3
  234. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -1
  235. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts +2 -3
  236. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -1
  237. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts +2 -3
  238. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -1
  239. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts +2 -3
  240. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -1
  241. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts +2 -3
  242. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -1
  243. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts +2 -3
  244. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -1
  245. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +2 -3
  246. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -1
  247. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +2 -3
  248. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -1
  249. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts +2 -3
  250. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -1
  251. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts +2 -3
  252. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -1
  253. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts +2 -3
  254. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -1
  255. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +2 -3
  256. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -1
  257. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +2 -3
  258. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -1
  259. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +2 -3
  260. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -1
  261. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts +2 -3
  262. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -1
  263. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts +2 -3
  264. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -1
  265. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts +2 -3
  266. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -1
  267. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts +2 -3
  268. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -1
  269. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts +2 -3
  270. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -1
  271. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts +2 -3
  272. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -1
  273. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts +2 -3
  274. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -1
  275. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts +2 -3
  276. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -1
  277. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +8 -6
  278. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts.map +1 -1
  279. package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts +7 -2
  280. package/dist/esm/types/Devices/Insteon/InsteonDeviceFactory.d.ts.map +1 -1
  281. package/dist/esm/types/Devices/Insteon/InsteonDimmableDevice.d.ts +2 -2
  282. package/dist/esm/types/Devices/Insteon/InsteonDimmableDevice.d.ts.map +1 -1
  283. package/dist/esm/types/Devices/Insteon/InsteonDimmerOutletDevice.d.ts +2 -2
  284. package/dist/esm/types/Devices/Insteon/InsteonDimmerOutletDevice.d.ts.map +1 -1
  285. package/dist/esm/types/Devices/Insteon/InsteonDoorWindowSensorDevice.d.ts +17 -5
  286. package/dist/esm/types/Devices/Insteon/InsteonDoorWindowSensorDevice.d.ts.map +1 -1
  287. package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts +17 -16
  288. package/dist/esm/types/Devices/Insteon/InsteonFanDevice.d.ts.map +1 -1
  289. package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts +1 -1
  290. package/dist/esm/types/Devices/Insteon/InsteonLeakSensorDevice.d.ts.map +1 -1
  291. package/dist/esm/types/Devices/Insteon/InsteonOnOffOutletDevice.d.ts +14 -7
  292. package/dist/esm/types/Devices/Insteon/InsteonOnOffOutletDevice.d.ts.map +1 -1
  293. package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts +0 -1
  294. package/dist/esm/types/Devices/Insteon/InsteonRelayDevice.d.ts.map +1 -1
  295. package/dist/esm/types/Devices/Insteon/index.d.ts +10 -11
  296. package/dist/esm/types/Devices/Insteon/index.d.ts.map +1 -1
  297. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts +2 -3
  298. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -1
  299. package/dist/esm/types/Devices/NodeFactory.d.ts +1 -1
  300. package/dist/esm/types/Devices/NodeFactory.d.ts.map +1 -1
  301. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts +2 -3
  302. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -1
  303. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts +2 -3
  304. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -1
  305. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts +2 -3
  306. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -1
  307. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts +2 -3
  308. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -1
  309. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts +2 -3
  310. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -1
  311. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts +2 -3
  312. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -1
  313. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +2 -3
  314. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -1
  315. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +2 -3
  316. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -1
  317. package/dist/esm/types/Devices/ZigBee/ZWaveBaseDevice.d.ts +10 -0
  318. package/dist/esm/types/Devices/ZigBee/ZWaveBaseDevice.d.ts.map +1 -0
  319. package/dist/esm/types/Devices/ZigBee/ZigBeeBase.d.ts +10 -0
  320. package/dist/esm/types/Devices/ZigBee/ZigBeeBase.d.ts.map +1 -0
  321. package/dist/esm/types/Devices/ZigBee/index.d.ts +2 -0
  322. package/dist/esm/types/Devices/ZigBee/index.d.ts.map +1 -0
  323. package/dist/esm/types/ISY.d.ts.map +1 -1
  324. package/dist/esm/types/ISYDevice.d.ts +3 -5
  325. package/dist/esm/types/ISYDevice.d.ts.map +1 -1
  326. package/dist/esm/types/ISYNode.d.ts +32 -25
  327. package/dist/esm/types/ISYNode.d.ts.map +1 -1
  328. package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts +9 -5
  329. package/dist/esm/types/Matter/Behaviors/BehaviorRegistry.d.ts.map +1 -1
  330. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts +8 -5
  331. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
  332. package/dist/esm/types/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.d.ts +321 -0
  333. package/dist/esm/types/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.d.ts.map +1 -0
  334. package/dist/esm/types/Matter/Behaviors/Insteon/ISYDimmableBehavior.d.ts +42 -0
  335. package/dist/esm/types/Matter/Behaviors/Insteon/ISYDimmableBehavior.d.ts.map +1 -0
  336. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts +4 -4
  337. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
  338. package/dist/esm/types/Matter/Behaviors/Insteon/IdentifyBehavior.d.ts +24 -0
  339. package/dist/esm/types/Matter/Behaviors/Insteon/IdentifyBehavior.d.ts.map +1 -0
  340. package/dist/esm/types/Matter/Behaviors/Insteon/RelayOnOffBehavior.d.ts +241 -0
  341. package/dist/esm/types/Matter/Behaviors/Insteon/RelayOnOffBehavior.d.ts.map +1 -0
  342. package/dist/esm/types/Matter/Behaviors/Insteon/index.d.ts +4 -0
  343. package/dist/esm/types/Matter/Behaviors/Insteon/index.d.ts.map +1 -0
  344. package/dist/esm/types/Matter/Behaviors/index.d.ts +6 -0
  345. package/dist/esm/types/Matter/Behaviors/index.d.ts.map +1 -0
  346. package/dist/esm/types/Matter/Bridge/Server.d.ts +1 -0
  347. package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
  348. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts +4173 -42
  349. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts.map +1 -1
  350. package/dist/esm/types/Matter/Mappings/index.d.ts +1 -0
  351. package/dist/esm/types/Matter/Mappings/index.d.ts.map +1 -1
  352. package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
  353. package/dist/esm/types/Registry.d.ts +37 -0
  354. package/dist/esm/types/Registry.d.ts.map +1 -0
  355. package/dist/esm/types/Utils.d.ts +13 -0
  356. package/dist/esm/types/Utils.d.ts.map +1 -1
  357. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  358. package/package.json +2 -2
  359. package/src/CodeGeneration/CodeFactory.ts +16 -8
  360. package/src/CodeGeneration/NodeClassFactory.ts +7 -9
  361. package/src/Definitions/Global/Commands.ts +16 -13
  362. package/src/Definitions/Global/Drivers.ts +56 -36
  363. package/src/Definitions/Global/Events.ts +4 -4
  364. package/src/Definitions/Insteon/generated/Boolean.ts +9 -0
  365. package/src/Definitions/Insteon/generated/Error.ts +9 -0
  366. package/src/Definitions/Insteon/generated/Lock.ts +28 -0
  367. package/src/Definitions/Insteon/generated/OnLevelRelay.ts +11 -0
  368. package/src/Devices/Brultech/Generated/Channel.ts +8 -9
  369. package/src/Devices/Brultech/Generated/Main.ts +11 -12
  370. package/src/Devices/CompositeDevice.ts +277 -0
  371. package/src/Devices/DeviceFactory.ts +1 -1
  372. package/src/Devices/ISYDeviceNode.ts +8 -2
  373. package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +7 -8
  374. package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +7 -8
  375. package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +7 -8
  376. package/src/Devices/Insteon/Generated/BinaryAlarm.ts +7 -8
  377. package/src/Devices/Insteon/Generated/BinaryControl.ts +7 -8
  378. package/src/Devices/Insteon/Generated/DimmerLamp.ts +9 -10
  379. package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +9 -10
  380. package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +9 -10
  381. package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +9 -10
  382. package/src/Devices/Insteon/Generated/DimmerSwitch.ts +6 -7
  383. package/src/Devices/Insteon/Generated/DoorLock.ts +7 -8
  384. package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +7 -8
  385. package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +7 -8
  386. package/src/Devices/Insteon/Generated/EzrainInput.ts +7 -8
  387. package/src/Devices/Insteon/Generated/EzrainOutput.ts +7 -8
  388. package/src/Devices/Insteon/Generated/FanLincMotor.ts +7 -8
  389. package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +15 -16
  390. package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +13 -14
  391. package/src/Devices/Insteon/Generated/ImeterSolo.ts +8 -9
  392. package/src/Devices/Insteon/Generated/IrLincTx.ts +6 -7
  393. package/src/Devices/Insteon/Generated/KeypadButton.ts +7 -8
  394. package/src/Devices/Insteon/Generated/KeypadDimmer.ts +9 -10
  395. package/src/Devices/Insteon/Generated/KeypadRelay.ts +7 -8
  396. package/src/Devices/Insteon/Generated/OnOffControl.ts +7 -8
  397. package/src/Devices/Insteon/Generated/Pir2844.ts +11 -12
  398. package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +7 -8
  399. package/src/Devices/Insteon/Generated/Pir2844c.ts +11 -12
  400. package/src/Devices/Insteon/Generated/RelayLamp.ts +7 -8
  401. package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +7 -8
  402. package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +7 -8
  403. package/src/Devices/Insteon/Generated/RelaySwitch.ts +6 -7
  404. package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +6 -7
  405. package/src/Devices/Insteon/Generated/RemoteLinc2.ts +7 -8
  406. package/src/Devices/Insteon/Generated/Siren.ts +10 -11
  407. package/src/Devices/Insteon/Generated/SirenAlert.ts +6 -7
  408. package/src/Devices/Insteon/Generated/TempLinc.ts +13 -14
  409. package/src/Devices/Insteon/Generated/Thermostat.ts +13 -14
  410. package/src/Devices/Insteon/Generated/X10.ts +7 -8
  411. package/src/Devices/Insteon/InsteonDeviceFactory.ts +26 -12
  412. package/src/Devices/Insteon/InsteonDimmableDevice.ts +4 -4
  413. package/src/Devices/Insteon/InsteonDimmerOutletDevice.ts +3 -2
  414. package/src/Devices/Insteon/InsteonDoorWindowSensorDevice.ts +30 -7
  415. package/src/Devices/Insteon/InsteonFanDevice.ts +21 -36
  416. package/src/Devices/Insteon/InsteonOnOffOutletDevice.ts +16 -15
  417. package/src/Devices/Insteon/InsteonRelayDevice.ts +2 -3
  418. package/src/Devices/Insteon/index.ts +10 -14
  419. package/src/Devices/Lutron/Generated/LoadShed.ts +7 -8
  420. package/src/Devices/NCD/Generated/Relay.ts +19 -23
  421. package/src/Devices/NodeFactory.ts +1 -1
  422. package/src/Devices/Poly/Generated/MatterBridge.ts +6 -7
  423. package/src/Devices/Scene/Generated/Scene.ts +5 -6
  424. package/src/Devices/UDI/Generated/Channel.ts +8 -9
  425. package/src/Devices/UDI/Generated/Em3MainChannel.ts +11 -12
  426. package/src/Devices/UDI/Generated/Main.ts +8 -9
  427. package/src/Devices/UDI/Generated/PulseCounter.ts +9 -10
  428. package/src/Devices/UDI/Generated/Relay.ts +7 -8
  429. package/src/Devices/UDI/Generated/TemperatureSensor.ts +7 -8
  430. package/src/Devices/ZWave/Generated/ColorSwitch.ts +17 -18
  431. package/src/Devices/ZWave/Generated/DimmerSwitch.ts +7 -8
  432. package/src/Devices/ZigBee/ZigBeeBase.ts +22 -0
  433. package/src/Devices/ZigBee/index.ts +13 -0
  434. package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +22 -20
  435. package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +92 -76
  436. package/src/ISY.ts +27 -5
  437. package/src/ISYDevice.ts +4 -3
  438. package/src/ISYNode.ts +48 -32
  439. package/src/Matter/Behaviors/BehaviorRegistry.ts +44 -8
  440. package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +1 -1
  441. package/src/Matter/Behaviors/ISYClusterBehavior.ts +15 -6
  442. package/src/Matter/Behaviors/Insteon/DimmerLevelControlBehavior.ts +30 -0
  443. package/src/Matter/Behaviors/Insteon/IdentifyBehavior.ts +26 -0
  444. package/src/Matter/Behaviors/Insteon/RelayOnOffBehavior.ts +34 -0
  445. package/src/Matter/Behaviors/Insteon/index.ts +3 -0
  446. package/src/Matter/Behaviors/index.ts +6 -0
  447. package/src/Matter/Bridge/Server.ts +94 -85
  448. package/src/Matter/Mappings/Insteon.ts +3 -3
  449. package/src/Matter/Mappings/MappingRegistry.ts +29 -40
  450. package/src/Matter/Mappings/index.ts +3 -1
  451. package/src/Registry.ts +112 -0
  452. package/src/Utils.ts +29 -0
  453. package/src/Devices/Insteon/DimmerLampSwitch.ts +0 -207
  454. package/src/Devices/Insteon/InsteonRelaySwitchDevice.ts +0 -11
  455. package/src/Devices/Insteon/RelayLampSwitch.ts +0 -132
  456. package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +0 -66
@@ -17,19 +17,19 @@ const nodeDefId = "KeypadButton";
17
17
  type Commands = KeypadButton.Commands;
18
18
  type Drivers = KeypadButton.Drivers;
19
19
 
20
- export class KeypadButtonNode extends Base<Drivers, Commands> implements KeypadButton.Interface {
20
+ class KeypadButtonNode extends Base<Drivers, Commands> implements KeypadButton.Interface {
21
21
  public override readonly commands = {
22
22
  QUERY: this.query,
23
23
  BL: this.backlight,
24
24
  WDU: this.writeChanges
25
25
  };
26
26
  static override nodeDefId = "KeypadButton";
27
- static override implements = ["KeypadButton", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "SirenAlert", "SirenArm"];
28
- declare readonly nodeDefId: "KeypadButton" | "KeypadButton_ADV";
27
+ static override implements = ['KeypadButton', "EZIO2x4_Input", "EZIO2x4_Input_ADV", "SirenAlert", "SirenArm"];
28
+ declare readonly nodeDefId: 'KeypadButton' | "KeypadButton_ADV";
29
29
  constructor (isy: ISY, nodeInfo: NodeInfo) {
30
30
  super(isy, nodeInfo);
31
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
32
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
31
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
32
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
33
33
  }
34
34
  async query() { return this.sendCommand("QUERY"); }
35
35
  async backlight(value: Insteon.Backlight) { return this.sendCommand("BL", value); }
@@ -47,13 +47,12 @@ NodeFactory.register(KeypadButtonNode, "KeypadButton_ADV");
47
47
 
48
48
  export namespace KeypadButton {
49
49
  export interface Interface extends Omit<InstanceType<typeof KeypadButtonNode>, keyof ISYDeviceNode<any, any, any, any>> {
50
- nodeDefId: "KeypadButton" | "KeypadButton_ADV";
51
50
  }
52
51
  export function is(node: ISYNode<any, any, any, any>): node is KeypadButtonNode {
53
- return ["KeypadButton", "KeypadButton_ADV"].includes(node.nodeDefId);
52
+ return ['KeypadButton', "KeypadButton_ADV"].includes(node.nodeDefId);
54
53
  }
55
54
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadButtonNode {
56
- return ["KeypadButton", "KeypadRelay", "KeypadRelay_ADV", "KeypadButton_ADV"].includes(node.nodeDefId);
55
+ return ['KeypadButton', "KeypadRelay", "KeypadRelay_ADV", "KeypadButton_ADV"].includes(node.nodeDefId);
57
56
  }
58
57
  export function create(isy: ISY, nodeInfo: NodeInfo) {
59
58
  return new KeypadButtonNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "KeypadDimmer";
17
17
  type Commands = KeypadDimmer.Commands;
18
18
  type Drivers = KeypadDimmer.Drivers;
19
19
 
20
- export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadDimmer.Interface {
20
+ class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadDimmer.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -36,14 +36,14 @@ export class KeypadDimmerNode extends Base<Drivers, Commands> implements KeypadD
36
36
  WDU: this.writeChanges
37
37
  };
38
38
  static override nodeDefId = "KeypadDimmer";
39
- static override implements = ["KeypadDimmer", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
40
- declare readonly nodeDefId: "KeypadDimmer" | "KeypadDimmer_ADV";
39
+ static override implements = ['KeypadDimmer', "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
40
+ declare readonly nodeDefId: 'KeypadDimmer' | "KeypadDimmer_ADV";
41
41
  constructor (isy: ISY, nodeInfo: NodeInfo) {
42
42
  super(isy, nodeInfo);
43
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
44
- this.drivers.OL = Driver.create("OL", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "On Level", name: "onLevel" });
45
- this.drivers.RR = Driver.create("RR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
46
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
43
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
44
+ this.drivers.OL = Driver.create("OL", this, nodeInfo.state['OL'], { uom: UnitOfMeasure.Percent, label: "On Level", name: "onLevel" });
45
+ this.drivers.RR = Driver.create("RR", this, nodeInfo.state['RR'], { uom: UnitOfMeasure.Index, label: "Ramp Rate", name: "rampRate" });
46
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
47
47
  }
48
48
  async on(value?: number) { return this.sendCommand("DON", value); }
49
49
  async off() { return this.sendCommand("DOF"); }
@@ -79,13 +79,12 @@ NodeFactory.register(KeypadDimmerNode, "KeypadDimmer_ADV");
79
79
 
80
80
  export namespace KeypadDimmer {
81
81
  export interface Interface extends Omit<InstanceType<typeof KeypadDimmerNode>, keyof ISYDeviceNode<any, any, any, any>> {
82
- nodeDefId: "KeypadDimmer" | "KeypadDimmer_ADV";
83
82
  }
84
83
  export function is(node: ISYNode<any, any, any, any>): node is KeypadDimmerNode {
85
- return ["KeypadDimmer", "KeypadDimmer_ADV"].includes(node.nodeDefId);
84
+ return ['KeypadDimmer', "KeypadDimmer_ADV"].includes(node.nodeDefId);
86
85
  }
87
86
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadDimmerNode {
88
- return ["KeypadDimmer", "KeypadDimmer_ADV"].includes(node.nodeDefId);
87
+ return ['KeypadDimmer', "KeypadDimmer_ADV"].includes(node.nodeDefId);
89
88
  }
90
89
  export function create(isy: ISY, nodeInfo: NodeInfo) {
91
90
  return new KeypadDimmerNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "KeypadRelay";
17
17
  type Commands = KeypadRelay.Commands;
18
18
  type Drivers = KeypadRelay.Drivers;
19
19
 
20
- export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRelay.Interface {
20
+ class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRelay.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -29,12 +29,12 @@ export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRe
29
29
  WDU: this.writeChanges
30
30
  };
31
31
  static override nodeDefId = "KeypadRelay";
32
- static override implements = ["KeypadRelay", "IRLincTx", "KeypadButton", "KeypadButton_ADV", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
33
- declare readonly nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
32
+ static override implements = ['KeypadRelay', "IRLincTx", "KeypadButton", "KeypadButton_ADV", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
33
+ declare readonly nodeDefId: 'KeypadRelay' | "KeypadRelay_ADV";
34
34
  constructor (isy: ISY, nodeInfo: NodeInfo) {
35
35
  super(isy, nodeInfo);
36
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
36
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
40
40
  async off() { return this.sendCommand("DOF"); }
@@ -57,13 +57,12 @@ NodeFactory.register(KeypadRelayNode, "KeypadRelay_ADV");
57
57
 
58
58
  export namespace KeypadRelay {
59
59
  export interface Interface extends Omit<InstanceType<typeof KeypadRelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
60
- nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
61
60
  }
62
61
  export function is(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
63
- return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
62
+ return ['KeypadRelay', "KeypadRelay_ADV"].includes(node.nodeDefId);
64
63
  }
65
64
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
66
- return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
65
+ return ['KeypadRelay', "KeypadRelay_ADV"].includes(node.nodeDefId);
67
66
  }
68
67
  export function create(isy: ISY, nodeInfo: NodeInfo) {
69
68
  return new KeypadRelayNode(isy, nodeInfo);
@@ -17,15 +17,15 @@ const nodeDefId = "OnOffControl";
17
17
  type Commands = OnOffControl.Commands;
18
18
  type Drivers = OnOffControl.Drivers;
19
19
 
20
- export class OnOffControlNode extends Base<Drivers, Commands> implements OnOffControl.Interface {
20
+ class OnOffControlNode extends Base<Drivers, Commands> implements OnOffControl.Interface {
21
21
  public override readonly commands = {};
22
22
  static override nodeDefId = "OnOffControl";
23
- static override implements = ["OnOffControl", "SirenAlert", "SirenArm"];
24
- declare readonly nodeDefId: "OnOffControl" | "OnOffControl_ADV";
23
+ static override implements = ['OnOffControl', "SirenAlert", "SirenArm"];
24
+ declare readonly nodeDefId: 'OnOffControl' | "OnOffControl_ADV";
25
25
  constructor (isy: ISY, nodeInfo: NodeInfo) {
26
26
  super(isy, nodeInfo);
27
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
28
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
27
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
28
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
29
29
  }
30
30
  public get status(): Insteon.OnLevelRelay {
31
31
  return this.drivers.ST?.value;
@@ -40,13 +40,12 @@ NodeFactory.register(OnOffControlNode, "OnOffControl_ADV");
40
40
 
41
41
  export namespace OnOffControl {
42
42
  export interface Interface extends Omit<InstanceType<typeof OnOffControlNode>, keyof ISYDeviceNode<any, any, any, any>> {
43
- nodeDefId: "OnOffControl" | "OnOffControl_ADV";
44
43
  }
45
44
  export function is(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
46
- return ["OnOffControl", "OnOffControl_ADV"].includes(node.nodeDefId);
45
+ return ['OnOffControl', "OnOffControl_ADV"].includes(node.nodeDefId);
47
46
  }
48
47
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
49
- return ["OnOffControl", "X10", "OnOffControl_ADV"].includes(node.nodeDefId);
48
+ return ['OnOffControl', "X10", "OnOffControl_ADV"].includes(node.nodeDefId);
50
49
  }
51
50
  export function create(isy: ISY, nodeInfo: NodeInfo) {
52
51
  return new OnOffControlNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "PIR2844";
17
17
  type Commands = Pir2844.Commands;
18
18
  type Drivers = Pir2844.Drivers;
19
19
 
20
- export class Pir2844Node extends Base<Drivers, Commands> implements Pir2844.Interface {
20
+ class Pir2844Node extends Base<Drivers, Commands> implements Pir2844.Interface {
21
21
  public override readonly commands = {
22
22
  CLITEMP: this.calibrateTemperature,
23
23
  QUERY: this.query,
@@ -25,16 +25,16 @@ export class Pir2844Node extends Base<Drivers, Commands> implements Pir2844.Inte
25
25
  WDU: this.writeChanges
26
26
  };
27
27
  static override nodeDefId = "PIR2844";
28
- static override implements = ["PIR2844", "PIR2844C", "PIR2844C_ADV"];
29
- declare readonly nodeDefId: "PIR2844" | "PIR2844_ADV";
28
+ static override implements = ['PIR2844', "PIR2844C", "PIR2844C_ADV"];
29
+ declare readonly nodeDefId: 'PIR2844' | "PIR2844_ADV";
30
30
  constructor (isy: ISY, nodeInfo: NodeInfo) {
31
31
  super(isy, nodeInfo);
32
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
33
- this.drivers.CLITEMP = Driver.create("CLITEMP", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Fahrenheit, label: "Temperature", name: "temperature" });
34
- this.drivers.LUMIN = Driver.create("LUMIN", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Luminance", name: "luminance" });
35
- this.drivers.BATLVL = Driver.create("BATLVL", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Battery Level", name: "batteryLevel" });
36
- this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Battery Powered", name: "batteryPowered" });
37
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
32
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
33
+ this.drivers.CLITEMP = Driver.create("CLITEMP", this, nodeInfo.state['CLITEMP'], { uom: UnitOfMeasure.Fahrenheit, label: "Temperature", name: "temperature" });
34
+ this.drivers.LUMIN = Driver.create("LUMIN", this, nodeInfo.state['LUMIN'], { uom: UnitOfMeasure.Percent, label: "Luminance", name: "luminance" });
35
+ this.drivers.BATLVL = Driver.create("BATLVL", this, nodeInfo.state['BATLVL'], { uom: UnitOfMeasure.Percent, label: "Battery Level", name: "batteryLevel" });
36
+ this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.state['GV1'], { uom: UnitOfMeasure.Boolean, label: "Battery Powered", name: "batteryPowered" });
37
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async calibrateTemperature(value: number) { return this.sendCommand("CLITEMP", value); }
40
40
  async query() { return this.sendCommand("QUERY"); }
@@ -65,13 +65,12 @@ NodeFactory.register(Pir2844Node, "PIR2844_ADV");
65
65
 
66
66
  export namespace Pir2844 {
67
67
  export interface Interface extends Omit<InstanceType<typeof Pir2844Node>, keyof ISYDeviceNode<any, any, any, any>> {
68
- nodeDefId: "PIR2844" | "PIR2844_ADV";
69
68
  }
70
69
  export function is(node: ISYNode<any, any, any, any>): node is Pir2844Node {
71
- return ["PIR2844", "PIR2844_ADV"].includes(node.nodeDefId);
70
+ return ['PIR2844', "PIR2844_ADV"].includes(node.nodeDefId);
72
71
  }
73
72
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844Node {
74
- return ["PIR2844", "PIR2844_ADV"].includes(node.nodeDefId);
73
+ return ['PIR2844', "PIR2844_ADV"].includes(node.nodeDefId);
75
74
  }
76
75
  export function create(isy: ISY, nodeInfo: NodeInfo) {
77
76
  return new Pir2844Node(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "PIR2844OnOff";
17
17
  type Commands = Pir2844OnOff.Commands;
18
18
  type Drivers = Pir2844OnOff.Drivers;
19
19
 
20
- export class Pir2844OnOffNode extends Base<Drivers, Commands> implements Pir2844OnOff.Interface {
20
+ class Pir2844OnOffNode extends Base<Drivers, Commands> implements Pir2844OnOff.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -26,12 +26,12 @@ export class Pir2844OnOffNode extends Base<Drivers, Commands> implements Pir2844
26
26
  WDU: this.writeChanges
27
27
  };
28
28
  static override nodeDefId = "PIR2844OnOff";
29
- static override implements = ["PIR2844OnOff"];
30
- declare readonly nodeDefId: "PIR2844OnOff" | "PIR2844OnOff_ADV";
29
+ static override implements = ['PIR2844OnOff'];
30
+ declare readonly nodeDefId: 'PIR2844OnOff' | "PIR2844OnOff_ADV";
31
31
  constructor (isy: ISY, nodeInfo: NodeInfo) {
32
32
  super(isy, nodeInfo);
33
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
34
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
33
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
34
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
35
35
  }
36
36
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
37
37
  async off() { return this.sendCommand("DOF"); }
@@ -51,13 +51,12 @@ NodeFactory.register(Pir2844OnOffNode, "PIR2844OnOff_ADV");
51
51
 
52
52
  export namespace Pir2844OnOff {
53
53
  export interface Interface extends Omit<InstanceType<typeof Pir2844OnOffNode>, keyof ISYDeviceNode<any, any, any, any>> {
54
- nodeDefId: "PIR2844OnOff" | "PIR2844OnOff_ADV";
55
54
  }
56
55
  export function is(node: ISYNode<any, any, any, any>): node is Pir2844OnOffNode {
57
- return ["PIR2844OnOff", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
56
+ return ['PIR2844OnOff', "PIR2844OnOff_ADV"].includes(node.nodeDefId);
58
57
  }
59
58
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844OnOffNode {
60
- return ["PIR2844OnOff", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "KeypadRelay", "KeypadRelay_ADV", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
59
+ return ['PIR2844OnOff', "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "KeypadRelay", "KeypadRelay_ADV", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
61
60
  }
62
61
  export function create(isy: ISY, nodeInfo: NodeInfo) {
63
62
  return new Pir2844OnOffNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "PIR2844C";
17
17
  type Commands = Pir2844c.Commands;
18
18
  type Drivers = Pir2844c.Drivers;
19
19
 
20
- export class Pir2844cNode extends Base<Drivers, Commands> implements Pir2844c.Interface {
20
+ class Pir2844cNode extends Base<Drivers, Commands> implements Pir2844c.Interface {
21
21
  public override readonly commands = {
22
22
  CLITEMP: this.calibrateTemperature,
23
23
  QUERY: this.query,
@@ -25,16 +25,16 @@ export class Pir2844cNode extends Base<Drivers, Commands> implements Pir2844c.In
25
25
  WDU: this.writeChanges
26
26
  };
27
27
  static override nodeDefId = "PIR2844C";
28
- static override implements = ["PIR2844C"];
29
- declare readonly nodeDefId: "PIR2844C" | "PIR2844C_ADV";
28
+ static override implements = ['PIR2844C'];
29
+ declare readonly nodeDefId: 'PIR2844C' | "PIR2844C_ADV";
30
30
  constructor (isy: ISY, nodeInfo: NodeInfo) {
31
31
  super(isy, nodeInfo);
32
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
33
- this.drivers.CLITEMP = Driver.create("CLITEMP", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Celsius, label: "Temperature", name: "temperature" });
34
- this.drivers.LUMIN = Driver.create("LUMIN", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Luminance", name: "luminance" });
35
- this.drivers.BATLVL = Driver.create("BATLVL", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Battery Level", name: "batteryLevel" });
36
- this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Battery Powered", name: "batteryPowered" });
37
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
32
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
33
+ this.drivers.CLITEMP = Driver.create("CLITEMP", this, nodeInfo.state['CLITEMP'], { uom: UnitOfMeasure.Celsius, label: "Temperature", name: "temperature" });
34
+ this.drivers.LUMIN = Driver.create("LUMIN", this, nodeInfo.state['LUMIN'], { uom: UnitOfMeasure.Percent, label: "Luminance", name: "luminance" });
35
+ this.drivers.BATLVL = Driver.create("BATLVL", this, nodeInfo.state['BATLVL'], { uom: UnitOfMeasure.Percent, label: "Battery Level", name: "batteryLevel" });
36
+ this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.state['GV1'], { uom: UnitOfMeasure.Boolean, label: "Battery Powered", name: "batteryPowered" });
37
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async calibrateTemperature(value: number) { return this.sendCommand("CLITEMP", value); }
40
40
  async query() { return this.sendCommand("QUERY"); }
@@ -65,13 +65,12 @@ NodeFactory.register(Pir2844cNode, "PIR2844C_ADV");
65
65
 
66
66
  export namespace Pir2844c {
67
67
  export interface Interface extends Omit<InstanceType<typeof Pir2844cNode>, keyof ISYDeviceNode<any, any, any, any>> {
68
- nodeDefId: "PIR2844C" | "PIR2844C_ADV";
69
68
  }
70
69
  export function is(node: ISYNode<any, any, any, any>): node is Pir2844cNode {
71
- return ["PIR2844C", "PIR2844C_ADV"].includes(node.nodeDefId);
70
+ return ['PIR2844C', "PIR2844C_ADV"].includes(node.nodeDefId);
72
71
  }
73
72
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844cNode {
74
- return ["PIR2844C", "PIR2844", "PIR2844_ADV", "PIR2844C_ADV"].includes(node.nodeDefId);
73
+ return ['PIR2844C', "PIR2844", "PIR2844_ADV", "PIR2844C_ADV"].includes(node.nodeDefId);
75
74
  }
76
75
  export function create(isy: ISY, nodeInfo: NodeInfo) {
77
76
  return new Pir2844cNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "RelayLampOnly";
17
17
  type Commands = RelayLamp.Commands;
18
18
  type Drivers = RelayLamp.Drivers;
19
19
 
20
- export class RelayLampNode extends Base<Drivers, Commands> implements RelayLamp.Interface {
20
+ class RelayLampNode extends Base<Drivers, Commands> implements RelayLamp.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -28,12 +28,12 @@ export class RelayLampNode extends Base<Drivers, Commands> implements RelayLamp.
28
28
  WDU: this.writeChanges
29
29
  };
30
30
  static override nodeDefId = "RelayLampOnly";
31
- static override implements = ["RelayLampOnly", "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "AlertModuleArmed", "SirenAlert", "SirenArm"];
32
- declare readonly nodeDefId: "RelayLampOnly" | "RelayLampOnly_ADV";
31
+ static override implements = ['RelayLampOnly', "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "AlertModuleArmed", "SirenAlert", "SirenArm"];
32
+ declare readonly nodeDefId: 'RelayLampOnly' | "RelayLampOnly_ADV";
33
33
  constructor (isy: ISY, nodeInfo: NodeInfo) {
34
34
  super(isy, nodeInfo);
35
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
36
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
35
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
36
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
37
37
  }
38
38
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
39
39
  async off() { return this.sendCommand("DOF"); }
@@ -55,13 +55,12 @@ NodeFactory.register(RelayLampNode, "RelayLampOnly_ADV");
55
55
 
56
56
  export namespace RelayLamp {
57
57
  export interface Interface extends Omit<InstanceType<typeof RelayLampNode>, keyof ISYDeviceNode<any, any, any, any>> {
58
- nodeDefId: "RelayLampOnly" | "RelayLampOnly_ADV";
59
58
  }
60
59
  export function is(node: ISYNode<any, any, any, any>): node is RelayLampNode {
61
- return ["RelayLampOnly", "RelayLampOnly_ADV"].includes(node.nodeDefId);
60
+ return ['RelayLampOnly', "RelayLampOnly_ADV"].includes(node.nodeDefId);
62
61
  }
63
62
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampNode {
64
- return ["RelayLampOnly", "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelayLampOnly_ADV"].includes(node.nodeDefId);
63
+ return ['RelayLampOnly', "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelayLampOnly_ADV"].includes(node.nodeDefId);
65
64
  }
66
65
  export function create(isy: ISY, nodeInfo: NodeInfo) {
67
66
  return new RelayLampNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "RelayLampSwitch";
17
17
  type Commands = RelayLampSwitch.Commands;
18
18
  type Drivers = RelayLampSwitch.Drivers;
19
19
 
20
- export class RelayLampSwitchNode extends Base<Drivers, Commands> implements RelayLampSwitch.Interface {
20
+ class RelayLampSwitchNode extends Base<Drivers, Commands> implements RelayLampSwitch.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -29,12 +29,12 @@ export class RelayLampSwitchNode extends Base<Drivers, Commands> implements Rela
29
29
  WDU: this.writeChanges
30
30
  };
31
31
  static override nodeDefId = "RelayLampSwitch";
32
- static override implements = ["RelayLampSwitch", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
33
- declare readonly nodeDefId: "RelayLampSwitch" | "RelayLampSwitch_ADV";
32
+ static override implements = ['RelayLampSwitch', "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
33
+ declare readonly nodeDefId: 'RelayLampSwitch' | "RelayLampSwitch_ADV";
34
34
  constructor (isy: ISY, nodeInfo: NodeInfo) {
35
35
  super(isy, nodeInfo);
36
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
36
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
40
40
  async off() { return this.sendCommand("DOF"); }
@@ -57,13 +57,12 @@ NodeFactory.register(RelayLampSwitchNode, "RelayLampSwitch_ADV");
57
57
 
58
58
  export namespace RelayLampSwitch {
59
59
  export interface Interface extends Omit<InstanceType<typeof RelayLampSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
60
- nodeDefId: "RelayLampSwitch" | "RelayLampSwitch_ADV";
61
60
  }
62
61
  export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode {
63
- return ["RelayLampSwitch", "RelayLampSwitch_ADV"].includes(node.nodeDefId);
62
+ return ['RelayLampSwitch', "RelayLampSwitch_ADV"].includes(node.nodeDefId);
64
63
  }
65
64
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode {
66
- return ["RelayLampSwitch", "RelayLampSwitch_ADV"].includes(node.nodeDefId);
65
+ return ['RelayLampSwitch', "RelayLampSwitch_ADV"].includes(node.nodeDefId);
67
66
  }
68
67
  export function create(isy: ISY, nodeInfo: NodeInfo) {
69
68
  return new RelayLampSwitchNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "RelayLampSwitchLED";
17
17
  type Commands = RelayLampSwitchLed.Commands;
18
18
  type Drivers = RelayLampSwitchLed.Drivers;
19
19
 
20
- export class RelayLampSwitchLedNode extends Base<Drivers, Commands> implements RelayLampSwitchLed.Interface {
20
+ class RelayLampSwitchLedNode extends Base<Drivers, Commands> implements RelayLampSwitchLed.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
23
23
  DOF: this.off,
@@ -30,12 +30,12 @@ export class RelayLampSwitchLedNode extends Base<Drivers, Commands> implements R
30
30
  WDU: this.writeChanges
31
31
  };
32
32
  static override nodeDefId = "RelayLampSwitchLED";
33
- static override implements = ["RelayLampSwitchLED", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
34
- declare readonly nodeDefId: "RelayLampSwitchLED" | "RelayLampSwitchLED_ADV";
33
+ static override implements = ['RelayLampSwitchLED', "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "IRLincTx", "EZRAIN_Output", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleArmed", "SirenAlert", "SirenArm", "PIR2844OnOff", "PIR2844OnOff_ADV"];
34
+ declare readonly nodeDefId: 'RelayLampSwitchLED' | "RelayLampSwitchLED_ADV";
35
35
  constructor (isy: ISY, nodeInfo: NodeInfo) {
36
36
  super(isy, nodeInfo);
37
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
38
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
37
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
38
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
39
39
  }
40
40
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
41
41
  async off() { return this.sendCommand("DOF"); }
@@ -59,13 +59,12 @@ NodeFactory.register(RelayLampSwitchLedNode, "RelayLampSwitchLED_ADV");
59
59
 
60
60
  export namespace RelayLampSwitchLed {
61
61
  export interface Interface extends Omit<InstanceType<typeof RelayLampSwitchLedNode>, keyof ISYDeviceNode<any, any, any, any>> {
62
- nodeDefId: "RelayLampSwitchLED" | "RelayLampSwitchLED_ADV";
63
62
  }
64
63
  export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchLedNode {
65
- return ["RelayLampSwitchLED", "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
64
+ return ['RelayLampSwitchLED', "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
66
65
  }
67
66
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampSwitchLedNode {
68
- return ["RelayLampSwitchLED", "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
67
+ return ['RelayLampSwitchLED', "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
69
68
  }
70
69
  export function create(isy: ISY, nodeInfo: NodeInfo) {
71
70
  return new RelayLampSwitchLedNode(isy, nodeInfo);
@@ -17,18 +17,18 @@ const nodeDefId = "RelaySwitchOnly";
17
17
  type Commands = RelaySwitch.Commands;
18
18
  type Drivers = RelaySwitch.Drivers;
19
19
 
20
- export class RelaySwitchNode extends Base<Drivers, Commands> implements RelaySwitch.Interface {
20
+ class RelaySwitchNode extends Base<Drivers, Commands> implements RelaySwitch.Interface {
21
21
  public override readonly commands = {
22
22
  BEEP: this.beep,
23
23
  BL: this.backlight,
24
24
  WDU: this.writeChanges
25
25
  };
26
26
  static override nodeDefId = "RelaySwitchOnly";
27
- static override implements = ["RelaySwitchOnly", "IRLincTx", "SirenAlert", "SirenArm"];
28
- declare readonly nodeDefId: "RelaySwitchOnly" | "RelaySwitchOnly_ADV";
27
+ static override implements = ['RelaySwitchOnly', "IRLincTx", "SirenAlert", "SirenArm"];
28
+ declare readonly nodeDefId: 'RelaySwitchOnly' | "RelaySwitchOnly_ADV";
29
29
  constructor (isy: ISY, nodeInfo: NodeInfo) {
30
30
  super(isy, nodeInfo);
31
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
31
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
32
32
  }
33
33
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
34
34
  async backlight(value: number) { return this.sendCommand("BL", value); }
@@ -43,13 +43,12 @@ NodeFactory.register(RelaySwitchNode, "RelaySwitchOnly_ADV");
43
43
 
44
44
  export namespace RelaySwitch {
45
45
  export interface Interface extends Omit<InstanceType<typeof RelaySwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
46
- nodeDefId: "RelaySwitchOnly" | "RelaySwitchOnly_ADV";
47
46
  }
48
47
  export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchNode {
49
- return ["RelaySwitchOnly", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
48
+ return ['RelaySwitchOnly', "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
50
49
  }
51
50
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelaySwitchNode {
52
- return ["RelaySwitchOnly", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
51
+ return ['RelaySwitchOnly', "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
53
52
  }
54
53
  export function create(isy: ISY, nodeInfo: NodeInfo) {
55
54
  return new RelaySwitchNode(isy, nodeInfo);
@@ -17,7 +17,7 @@ const nodeDefId = "RelaySwitchOnlyPlusQuery";
17
17
  type Commands = RelaySwitchOnlyPlusQuery.Commands;
18
18
  type Drivers = RelaySwitchOnlyPlusQuery.Drivers;
19
19
 
20
- export class RelaySwitchOnlyPlusQueryNode extends Base<Drivers, Commands> implements RelaySwitchOnlyPlusQuery.Interface {
20
+ class RelaySwitchOnlyPlusQueryNode extends Base<Drivers, Commands> implements RelaySwitchOnlyPlusQuery.Interface {
21
21
  public override readonly commands = {
22
22
  QUERY: this.query,
23
23
  BEEP: this.beep,
@@ -25,11 +25,11 @@ export class RelaySwitchOnlyPlusQueryNode extends Base<Drivers, Commands> implem
25
25
  WDU: this.writeChanges
26
26
  };
27
27
  static override nodeDefId = "RelaySwitchOnlyPlusQuery";
28
- static override implements = ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
29
- declare readonly nodeDefId: "RelaySwitchOnlyPlusQuery" | "RelaySwitchOnlyPlusQuery_ADV";
28
+ static override implements = ['RelaySwitchOnlyPlusQuery', "RelaySwitchOnly", "RelaySwitchOnly_ADV", "IRLincTx", "SirenAlert", "SirenArm"];
29
+ declare readonly nodeDefId: 'RelaySwitchOnlyPlusQuery' | "RelaySwitchOnlyPlusQuery_ADV";
30
30
  constructor (isy: ISY, nodeInfo: NodeInfo) {
31
31
  super(isy, nodeInfo);
32
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
32
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
33
33
  }
34
34
  async query() { return this.sendCommand("QUERY"); }
35
35
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
@@ -45,13 +45,12 @@ NodeFactory.register(RelaySwitchOnlyPlusQueryNode, "RelaySwitchOnlyPlusQuery_ADV
45
45
 
46
46
  export namespace RelaySwitchOnlyPlusQuery {
47
47
  export interface Interface extends Omit<InstanceType<typeof RelaySwitchOnlyPlusQueryNode>, keyof ISYDeviceNode<any, any, any, any>> {
48
- nodeDefId: "RelaySwitchOnlyPlusQuery" | "RelaySwitchOnlyPlusQuery_ADV";
49
48
  }
50
49
  export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
51
- return ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
50
+ return ['RelaySwitchOnlyPlusQuery', "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
52
51
  }
53
52
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
54
- return ["RelaySwitchOnlyPlusQuery", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
53
+ return ['RelaySwitchOnlyPlusQuery', "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
55
54
  }
56
55
  export function create(isy: ISY, nodeInfo: NodeInfo) {
57
56
  return new RelaySwitchOnlyPlusQueryNode(isy, nodeInfo);
@@ -17,17 +17,17 @@ const nodeDefId = "RemoteLinc2";
17
17
  type Commands = RemoteLinc2.Commands;
18
18
  type Drivers = RemoteLinc2.Drivers;
19
19
 
20
- export class RemoteLinc2Node extends Base<Drivers, Commands> implements RemoteLinc2.Interface {
20
+ class RemoteLinc2Node extends Base<Drivers, Commands> implements RemoteLinc2.Interface {
21
21
  public override readonly commands = {
22
22
  WDU: this.writeChanges
23
23
  };
24
24
  static override nodeDefId = "RemoteLinc2";
25
- static override implements = ["RemoteLinc2", "SirenAlert", "SirenArm"];
26
- declare readonly nodeDefId: "RemoteLinc2" | "RemoteLinc2_ADV";
25
+ static override implements = ['RemoteLinc2', "SirenAlert", "SirenArm"];
26
+ declare readonly nodeDefId: 'RemoteLinc2' | "RemoteLinc2_ADV";
27
27
  constructor (isy: ISY, nodeInfo: NodeInfo) {
28
28
  super(isy, nodeInfo);
29
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
30
- this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
29
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.state['ST'], { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
30
+ this.drivers.ERR = Driver.create("ERR", this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
31
31
  }
32
32
  async writeChanges() { return this.sendCommand("WDU"); }
33
33
  public get status(): number {
@@ -43,13 +43,12 @@ NodeFactory.register(RemoteLinc2Node, "RemoteLinc2_ADV");
43
43
 
44
44
  export namespace RemoteLinc2 {
45
45
  export interface Interface extends Omit<InstanceType<typeof RemoteLinc2Node>, keyof ISYDeviceNode<any, any, any, any>> {
46
- nodeDefId: "RemoteLinc2" | "RemoteLinc2_ADV";
47
46
  }
48
47
  export function is(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
49
- return ["RemoteLinc2", "RemoteLinc2_ADV"].includes(node.nodeDefId);
48
+ return ['RemoteLinc2', "RemoteLinc2_ADV"].includes(node.nodeDefId);
50
49
  }
51
50
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
52
- return ["RemoteLinc2", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RemoteLinc2_ADV"].includes(node.nodeDefId);
51
+ return ['RemoteLinc2', "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RemoteLinc2_ADV"].includes(node.nodeDefId);
53
52
  }
54
53
  export function create(isy: ISY, nodeInfo: NodeInfo) {
55
54
  return new RemoteLinc2Node(isy, nodeInfo);