@zwave-js/cc 14.3.10 → 15.0.0-beta.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 (523) hide show
  1. package/build/cjs/cc/AlarmSensorCC.d.ts +68 -68
  2. package/build/cjs/cc/AlarmSensorCC.js +12 -50
  3. package/build/cjs/cc/AlarmSensorCC.js.map +2 -2
  4. package/build/cjs/cc/AssociationCC.d.ts +72 -73
  5. package/build/cjs/cc/AssociationCC.js +9 -26
  6. package/build/cjs/cc/AssociationCC.js.map +2 -2
  7. package/build/cjs/cc/AssociationGroupInfoCC.d.ts +71 -71
  8. package/build/cjs/cc/AssociationGroupInfoCC.js +11 -22
  9. package/build/cjs/cc/AssociationGroupInfoCC.js.map +2 -2
  10. package/build/cjs/cc/BarrierOperatorCC.d.ts +66 -72
  11. package/build/cjs/cc/BarrierOperatorCC.js +12 -44
  12. package/build/cjs/cc/BarrierOperatorCC.js.map +2 -2
  13. package/build/cjs/cc/BasicCC.d.ts +64 -65
  14. package/build/cjs/cc/BasicCC.js +15 -46
  15. package/build/cjs/cc/BasicCC.js.map +2 -2
  16. package/build/cjs/cc/BatteryCC.d.ts +162 -165
  17. package/build/cjs/cc/BatteryCC.js +7 -84
  18. package/build/cjs/cc/BatteryCC.js.map +2 -2
  19. package/build/cjs/cc/BinarySensorCC.d.ts +36 -36
  20. package/build/cjs/cc/BinarySensorCC.js +9 -29
  21. package/build/cjs/cc/BinarySensorCC.js.map +2 -2
  22. package/build/cjs/cc/BinarySwitchCC.d.ts +34 -34
  23. package/build/cjs/cc/BinarySwitchCC.js +6 -22
  24. package/build/cjs/cc/BinarySwitchCC.js.map +2 -2
  25. package/build/cjs/cc/CRC16CC.d.ts +4 -8
  26. package/build/cjs/cc/CRC16CC.js +4 -27
  27. package/build/cjs/cc/CRC16CC.js.map +2 -2
  28. package/build/cjs/cc/CentralSceneCC.d.ts +74 -74
  29. package/build/cjs/cc/CentralSceneCC.js +7 -30
  30. package/build/cjs/cc/CentralSceneCC.js.map +2 -2
  31. package/build/cjs/cc/ClimateControlScheduleCC.d.ts +38 -40
  32. package/build/cjs/cc/ClimateControlScheduleCC.js +5 -24
  33. package/build/cjs/cc/ClimateControlScheduleCC.js.map +2 -2
  34. package/build/cjs/cc/ClockCC.d.ts +3 -3
  35. package/build/cjs/cc/ClockCC.js.map +2 -2
  36. package/build/cjs/cc/ColorSwitchCC.d.ts +117 -117
  37. package/build/cjs/cc/ColorSwitchCC.js +23 -75
  38. package/build/cjs/cc/ColorSwitchCC.js.map +2 -2
  39. package/build/cjs/cc/ConfigurationCC._validateArgs.js +1 -1
  40. package/build/cjs/cc/ConfigurationCC._validateArgs.js.map +1 -1
  41. package/build/cjs/cc/ConfigurationCC.d.ts +48 -52
  42. package/build/cjs/cc/ConfigurationCC.js +11 -39
  43. package/build/cjs/cc/ConfigurationCC.js.map +2 -2
  44. package/build/cjs/cc/DeviceResetLocallyCC.d.ts +1 -1
  45. package/build/cjs/cc/DeviceResetLocallyCC.js.map +2 -2
  46. package/build/cjs/cc/DoorLockCC._validateArgs.js +1 -1
  47. package/build/cjs/cc/DoorLockCC._validateArgs.js.map +1 -1
  48. package/build/cjs/cc/DoorLockCC.d.ts +362 -361
  49. package/build/cjs/cc/DoorLockCC.js +51 -156
  50. package/build/cjs/cc/DoorLockCC.js.map +2 -2
  51. package/build/cjs/cc/DoorLockLoggingCC.d.ts +14 -14
  52. package/build/cjs/cc/DoorLockLoggingCC.js +4 -8
  53. package/build/cjs/cc/DoorLockLoggingCC.js.map +2 -2
  54. package/build/cjs/cc/EnergyProductionCC.d.ts +16 -16
  55. package/build/cjs/cc/EnergyProductionCC.js +5 -17
  56. package/build/cjs/cc/EnergyProductionCC.js.map +2 -2
  57. package/build/cjs/cc/EntryControlCC.d.ts +71 -71
  58. package/build/cjs/cc/EntryControlCC.js +9 -36
  59. package/build/cjs/cc/EntryControlCC.js.map +2 -2
  60. package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts +2 -0
  61. package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.js +26 -0
  62. package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +1 -1
  63. package/build/cjs/cc/FirmwareUpdateMetaDataCC.d.ts +101 -88
  64. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +159 -34
  65. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +2 -2
  66. package/build/cjs/cc/HumidityControlModeCC.d.ts +31 -33
  67. package/build/cjs/cc/HumidityControlModeCC.js +6 -15
  68. package/build/cjs/cc/HumidityControlModeCC.js.map +2 -2
  69. package/build/cjs/cc/HumidityControlOperatingStateCC.d.ts +9 -11
  70. package/build/cjs/cc/HumidityControlOperatingStateCC.js +4 -12
  71. package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +2 -2
  72. package/build/cjs/cc/HumidityControlSetpointCC.d.ts +50 -50
  73. package/build/cjs/cc/HumidityControlSetpointCC.js +10 -28
  74. package/build/cjs/cc/HumidityControlSetpointCC.js.map +2 -2
  75. package/build/cjs/cc/InclusionControllerCC.d.ts +4 -4
  76. package/build/cjs/cc/InclusionControllerCC.js.map +2 -2
  77. package/build/cjs/cc/IndicatorCC.d.ts +119 -119
  78. package/build/cjs/cc/IndicatorCC.js +15 -61
  79. package/build/cjs/cc/IndicatorCC.js.map +2 -2
  80. package/build/cjs/cc/IrrigationCC.d.ts +581 -585
  81. package/build/cjs/cc/IrrigationCC.js +29 -233
  82. package/build/cjs/cc/IrrigationCC.js.map +2 -2
  83. package/build/cjs/cc/LanguageCC.d.ts +21 -21
  84. package/build/cjs/cc/LanguageCC.js +4 -15
  85. package/build/cjs/cc/LanguageCC.js.map +2 -2
  86. package/build/cjs/cc/LockCC.d.ts +9 -9
  87. package/build/cjs/cc/LockCC.js +4 -12
  88. package/build/cjs/cc/LockCC.js.map +2 -2
  89. package/build/cjs/cc/ManufacturerProprietaryCC.d.ts +2 -2
  90. package/build/cjs/cc/ManufacturerProprietaryCC.js.map +2 -2
  91. package/build/cjs/cc/ManufacturerSpecificCC.d.ts +67 -67
  92. package/build/cjs/cc/ManufacturerSpecificCC.js +5 -26
  93. package/build/cjs/cc/ManufacturerSpecificCC.js.map +2 -2
  94. package/build/cjs/cc/MeterCC.d.ts +120 -119
  95. package/build/cjs/cc/MeterCC.js +25 -69
  96. package/build/cjs/cc/MeterCC.js.map +2 -2
  97. package/build/cjs/cc/MultiChannelAssociationCC.d.ts +71 -73
  98. package/build/cjs/cc/MultiChannelAssociationCC.js +10 -28
  99. package/build/cjs/cc/MultiChannelAssociationCC.js.map +2 -2
  100. package/build/cjs/cc/MultiChannelCC.d.ts +136 -146
  101. package/build/cjs/cc/MultiChannelCC.js +26 -118
  102. package/build/cjs/cc/MultiChannelCC.js.map +2 -2
  103. package/build/cjs/cc/MultiCommandCC.d.ts +4 -8
  104. package/build/cjs/cc/MultiCommandCC.js +4 -37
  105. package/build/cjs/cc/MultiCommandCC.js.map +2 -2
  106. package/build/cjs/cc/MultilevelSensorCC.d.ts +50 -49
  107. package/build/cjs/cc/MultilevelSensorCC.js +12 -33
  108. package/build/cjs/cc/MultilevelSensorCC.js.map +2 -2
  109. package/build/cjs/cc/MultilevelSwitchCC.d.ts +146 -146
  110. package/build/cjs/cc/MultilevelSwitchCC.js +13 -107
  111. package/build/cjs/cc/MultilevelSwitchCC.js.map +2 -2
  112. package/build/cjs/cc/NodeNamingCC.d.ts +30 -30
  113. package/build/cjs/cc/NodeNamingCC.js +5 -16
  114. package/build/cjs/cc/NodeNamingCC.js.map +2 -2
  115. package/build/cjs/cc/NotificationCC.d.ts +210 -208
  116. package/build/cjs/cc/NotificationCC.js +41 -113
  117. package/build/cjs/cc/NotificationCC.js.map +2 -2
  118. package/build/cjs/cc/PowerlevelCC.d.ts +6 -6
  119. package/build/cjs/cc/PowerlevelCC.js.map +2 -2
  120. package/build/cjs/cc/ProtectionCC.d.ts +117 -121
  121. package/build/cjs/cc/ProtectionCC.js +15 -50
  122. package/build/cjs/cc/ProtectionCC.js.map +2 -2
  123. package/build/cjs/cc/SceneActivationCC.d.ts +29 -29
  124. package/build/cjs/cc/SceneActivationCC.js +4 -17
  125. package/build/cjs/cc/SceneActivationCC.js.map +2 -2
  126. package/build/cjs/cc/SceneActuatorConfigurationCC.d.ts +35 -35
  127. package/build/cjs/cc/SceneActuatorConfigurationCC.js +9 -21
  128. package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +2 -2
  129. package/build/cjs/cc/SceneControllerConfigurationCC.d.ts +36 -35
  130. package/build/cjs/cc/SceneControllerConfigurationCC.js +10 -22
  131. package/build/cjs/cc/SceneControllerConfigurationCC.js.map +2 -2
  132. package/build/cjs/cc/ScheduleEntryLockCC.d.ts +109 -109
  133. package/build/cjs/cc/ScheduleEntryLockCC.js +13 -30
  134. package/build/cjs/cc/ScheduleEntryLockCC.js.map +2 -2
  135. package/build/cjs/cc/Security2CC.d.ts +15 -21
  136. package/build/cjs/cc/Security2CC.js +32 -347
  137. package/build/cjs/cc/Security2CC.js.map +3 -3
  138. package/build/cjs/cc/SecurityCC.d.ts +12 -19
  139. package/build/cjs/cc/SecurityCC.js +12 -106
  140. package/build/cjs/cc/SecurityCC.js.map +2 -2
  141. package/build/cjs/cc/SoundSwitchCC.d.ts +58 -58
  142. package/build/cjs/cc/SoundSwitchCC.js +11 -43
  143. package/build/cjs/cc/SoundSwitchCC.js.map +2 -2
  144. package/build/cjs/cc/SupervisionCC.d.ts +21 -25
  145. package/build/cjs/cc/SupervisionCC.js +8 -38
  146. package/build/cjs/cc/SupervisionCC.js.map +2 -2
  147. package/build/cjs/cc/ThermostatFanModeCC.d.ts +37 -39
  148. package/build/cjs/cc/ThermostatFanModeCC.js +8 -21
  149. package/build/cjs/cc/ThermostatFanModeCC.js.map +2 -2
  150. package/build/cjs/cc/ThermostatFanStateCC.d.ts +9 -11
  151. package/build/cjs/cc/ThermostatFanStateCC.js +4 -12
  152. package/build/cjs/cc/ThermostatFanStateCC.js.map +2 -2
  153. package/build/cjs/cc/ThermostatModeCC.d.ts +39 -41
  154. package/build/cjs/cc/ThermostatModeCC.js +8 -21
  155. package/build/cjs/cc/ThermostatModeCC.js.map +2 -2
  156. package/build/cjs/cc/ThermostatOperatingStateCC.d.ts +9 -11
  157. package/build/cjs/cc/ThermostatOperatingStateCC.js +4 -12
  158. package/build/cjs/cc/ThermostatOperatingStateCC.js.map +2 -2
  159. package/build/cjs/cc/ThermostatSetbackCC.d.ts +4 -4
  160. package/build/cjs/cc/ThermostatSetbackCC.js.map +2 -2
  161. package/build/cjs/cc/ThermostatSetpointCC.d.ts +51 -51
  162. package/build/cjs/cc/ThermostatSetpointCC.js +10 -25
  163. package/build/cjs/cc/ThermostatSetpointCC.js.map +2 -2
  164. package/build/cjs/cc/TimeCC.d.ts +6 -6
  165. package/build/cjs/cc/TimeCC.js.map +2 -2
  166. package/build/cjs/cc/TimeParametersCC.d.ts +9 -9
  167. package/build/cjs/cc/TimeParametersCC.js +4 -11
  168. package/build/cjs/cc/TimeParametersCC.js.map +2 -2
  169. package/build/cjs/cc/TransportServiceCC.d.ts +7 -12
  170. package/build/cjs/cc/TransportServiceCC.js +3 -20
  171. package/build/cjs/cc/TransportServiceCC.js.map +2 -2
  172. package/build/cjs/cc/UserCodeCC._validateArgs.js +1 -1
  173. package/build/cjs/cc/UserCodeCC._validateArgs.js.map +1 -1
  174. package/build/cjs/cc/UserCodeCC.d.ts +236 -236
  175. package/build/cjs/cc/UserCodeCC.js +33 -98
  176. package/build/cjs/cc/UserCodeCC.js.map +2 -2
  177. package/build/cjs/cc/VersionCC.d.ts +210 -212
  178. package/build/cjs/cc/VersionCC.js +7 -98
  179. package/build/cjs/cc/VersionCC.js.map +2 -2
  180. package/build/cjs/cc/WakeUpCC.d.ts +44 -44
  181. package/build/cjs/cc/WakeUpCC.js +6 -26
  182. package/build/cjs/cc/WakeUpCC.js.map +2 -2
  183. package/build/cjs/cc/WindowCoveringCC.d.ts +118 -122
  184. package/build/cjs/cc/WindowCoveringCC.js +16 -128
  185. package/build/cjs/cc/WindowCoveringCC.js.map +2 -2
  186. package/build/cjs/cc/ZWavePlusCC.d.ts +74 -74
  187. package/build/cjs/cc/ZWavePlusCC.js +4 -25
  188. package/build/cjs/cc/ZWavePlusCC.js.map +2 -2
  189. package/build/cjs/cc/ZWaveProtocolCC.d.ts +28 -28
  190. package/build/cjs/cc/ZWaveProtocolCC.js.map +2 -2
  191. package/build/cjs/cc/_CCValues.generated.d.ts +15814 -0
  192. package/build/cjs/cc/_CCValues.generated.js +8723 -0
  193. package/build/cjs/cc/_CCValues.generated.js.map +7 -0
  194. package/build/cjs/cc/manufacturerProprietary/FibaroCC.d.ts +4 -4
  195. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +2 -2
  196. package/build/cjs/index.d.ts +1 -0
  197. package/build/cjs/index.js.map +1 -1
  198. package/build/cjs/index_browser.d.ts +9 -0
  199. package/build/cjs/index_browser.js +41 -1
  200. package/build/cjs/index_browser.js.map +2 -2
  201. package/build/cjs/lib/API.d.ts +7 -5
  202. package/build/cjs/lib/API.js +1 -1
  203. package/build/cjs/lib/API.js.map +2 -2
  204. package/build/cjs/lib/CCValueUtils.d.ts +14 -0
  205. package/build/cjs/lib/CCValueUtils.js +93 -0
  206. package/build/cjs/lib/CCValueUtils.js.map +7 -0
  207. package/build/cjs/lib/CommandClass.d.ts +10 -21
  208. package/build/cjs/lib/CommandClass.js +51 -106
  209. package/build/cjs/lib/CommandClass.js.map +3 -3
  210. package/build/cjs/lib/CommandClassDecorators.d.ts +1 -1
  211. package/build/cjs/lib/CommandClassDecorators.js +3 -3
  212. package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
  213. package/build/cjs/lib/Values.d.ts +7 -106
  214. package/build/cjs/lib/Values.js +13 -107
  215. package/build/cjs/lib/Values.js.map +3 -3
  216. package/build/cjs/lib/traits.d.ts +94 -0
  217. package/build/cjs/lib/traits.js +17 -0
  218. package/build/cjs/lib/traits.js.map +7 -0
  219. package/build/cjs/lib/utils.d.ts +2 -2
  220. package/build/cjs/lib/utils.js.map +2 -2
  221. package/build/esm/cc/AlarmSensorCC.d.ts +68 -68
  222. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
  223. package/build/esm/cc/AlarmSensorCC.js +2 -40
  224. package/build/esm/cc/AlarmSensorCC.js.map +1 -1
  225. package/build/esm/cc/AssociationCC.d.ts +72 -73
  226. package/build/esm/cc/AssociationCC.d.ts.map +1 -1
  227. package/build/esm/cc/AssociationCC.js +2 -27
  228. package/build/esm/cc/AssociationCC.js.map +1 -1
  229. package/build/esm/cc/AssociationGroupInfoCC.d.ts +71 -71
  230. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
  231. package/build/esm/cc/AssociationGroupInfoCC.js +2 -19
  232. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
  233. package/build/esm/cc/BarrierOperatorCC.d.ts +66 -72
  234. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
  235. package/build/esm/cc/BarrierOperatorCC.js +2 -37
  236. package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
  237. package/build/esm/cc/BasicCC.d.ts +64 -65
  238. package/build/esm/cc/BasicCC.d.ts.map +1 -1
  239. package/build/esm/cc/BasicCC.js +2 -34
  240. package/build/esm/cc/BasicCC.js.map +1 -1
  241. package/build/esm/cc/BatteryCC.d.ts +162 -165
  242. package/build/esm/cc/BatteryCC.d.ts.map +1 -1
  243. package/build/esm/cc/BatteryCC.js +3 -80
  244. package/build/esm/cc/BatteryCC.js.map +1 -1
  245. package/build/esm/cc/BinarySensorCC.d.ts +36 -36
  246. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
  247. package/build/esm/cc/BinarySensorCC.js +2 -19
  248. package/build/esm/cc/BinarySensorCC.js.map +1 -1
  249. package/build/esm/cc/BinarySwitchCC.d.ts +34 -34
  250. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
  251. package/build/esm/cc/BinarySwitchCC.js +2 -19
  252. package/build/esm/cc/BinarySwitchCC.js.map +1 -1
  253. package/build/esm/cc/CRC16CC.d.ts +4 -8
  254. package/build/esm/cc/CRC16CC.d.ts.map +1 -1
  255. package/build/esm/cc/CRC16CC.js +4 -34
  256. package/build/esm/cc/CRC16CC.js.map +1 -1
  257. package/build/esm/cc/CentralSceneCC.d.ts +74 -74
  258. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
  259. package/build/esm/cc/CentralSceneCC.js +2 -27
  260. package/build/esm/cc/CentralSceneCC.js.map +1 -1
  261. package/build/esm/cc/ClimateControlScheduleCC.d.ts +38 -40
  262. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
  263. package/build/esm/cc/ClimateControlScheduleCC.js +2 -26
  264. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
  265. package/build/esm/cc/ClockCC.d.ts +3 -3
  266. package/build/esm/cc/ClockCC.d.ts.map +1 -1
  267. package/build/esm/cc/ClockCC.js +0 -1
  268. package/build/esm/cc/ClockCC.js.map +1 -1
  269. package/build/esm/cc/ColorSwitchCC.d.ts +117 -117
  270. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
  271. package/build/esm/cc/ColorSwitchCC.js +2 -58
  272. package/build/esm/cc/ColorSwitchCC.js.map +1 -1
  273. package/build/esm/cc/ConfigurationCC._validateArgs.js +1 -1
  274. package/build/esm/cc/ConfigurationCC._validateArgs.js.map +1 -1
  275. package/build/esm/cc/ConfigurationCC.d.ts +48 -52
  276. package/build/esm/cc/ConfigurationCC.d.ts.map +1 -1
  277. package/build/esm/cc/ConfigurationCC.js +2 -40
  278. package/build/esm/cc/ConfigurationCC.js.map +1 -1
  279. package/build/esm/cc/DeviceResetLocallyCC.d.ts +1 -1
  280. package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -1
  281. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
  282. package/build/esm/cc/DoorLockCC._validateArgs.js +1 -1
  283. package/build/esm/cc/DoorLockCC._validateArgs.js.map +1 -1
  284. package/build/esm/cc/DoorLockCC.d.ts +362 -361
  285. package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
  286. package/build/esm/cc/DoorLockCC.js +9 -129
  287. package/build/esm/cc/DoorLockCC.js.map +1 -1
  288. package/build/esm/cc/DoorLockLoggingCC.d.ts +14 -14
  289. package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
  290. package/build/esm/cc/DoorLockLoggingCC.js +2 -6
  291. package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
  292. package/build/esm/cc/EnergyProductionCC.d.ts +16 -16
  293. package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -1
  294. package/build/esm/cc/EnergyProductionCC.js +2 -15
  295. package/build/esm/cc/EnergyProductionCC.js.map +1 -1
  296. package/build/esm/cc/EntryControlCC.d.ts +71 -71
  297. package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
  298. package/build/esm/cc/EntryControlCC.js +2 -29
  299. package/build/esm/cc/EntryControlCC.js.map +1 -1
  300. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts +2 -0
  301. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts.map +1 -1
  302. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.js +20 -0
  303. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +1 -1
  304. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +101 -88
  305. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
  306. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +160 -53
  307. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
  308. package/build/esm/cc/HumidityControlModeCC.d.ts +31 -33
  309. package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
  310. package/build/esm/cc/HumidityControlModeCC.js +2 -11
  311. package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
  312. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +9 -11
  313. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
  314. package/build/esm/cc/HumidityControlOperatingStateCC.js +2 -9
  315. package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
  316. package/build/esm/cc/HumidityControlSetpointCC.d.ts +50 -50
  317. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
  318. package/build/esm/cc/HumidityControlSetpointCC.js +2 -23
  319. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
  320. package/build/esm/cc/InclusionControllerCC.d.ts +4 -4
  321. package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -1
  322. package/build/esm/cc/InclusionControllerCC.js +0 -2
  323. package/build/esm/cc/InclusionControllerCC.js.map +1 -1
  324. package/build/esm/cc/IndicatorCC.d.ts +119 -119
  325. package/build/esm/cc/IndicatorCC.d.ts.map +1 -1
  326. package/build/esm/cc/IndicatorCC.js +2 -50
  327. package/build/esm/cc/IndicatorCC.js.map +1 -1
  328. package/build/esm/cc/IrrigationCC.d.ts +581 -585
  329. package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
  330. package/build/esm/cc/IrrigationCC.js +3 -231
  331. package/build/esm/cc/IrrigationCC.js.map +1 -1
  332. package/build/esm/cc/LanguageCC.d.ts +21 -21
  333. package/build/esm/cc/LanguageCC.d.ts.map +1 -1
  334. package/build/esm/cc/LanguageCC.js +2 -13
  335. package/build/esm/cc/LanguageCC.js.map +1 -1
  336. package/build/esm/cc/LockCC.d.ts +9 -9
  337. package/build/esm/cc/LockCC.d.ts.map +1 -1
  338. package/build/esm/cc/LockCC.js +2 -10
  339. package/build/esm/cc/LockCC.js.map +1 -1
  340. package/build/esm/cc/ManufacturerProprietaryCC.d.ts +2 -2
  341. package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
  342. package/build/esm/cc/ManufacturerProprietaryCC.js +0 -2
  343. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
  344. package/build/esm/cc/ManufacturerSpecificCC.d.ts +67 -67
  345. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
  346. package/build/esm/cc/ManufacturerSpecificCC.js +2 -26
  347. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
  348. package/build/esm/cc/MeterCC.d.ts +120 -119
  349. package/build/esm/cc/MeterCC.d.ts.map +1 -1
  350. package/build/esm/cc/MeterCC.js +3 -53
  351. package/build/esm/cc/MeterCC.js.map +1 -1
  352. package/build/esm/cc/MultiChannelAssociationCC.d.ts +71 -73
  353. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
  354. package/build/esm/cc/MultiChannelAssociationCC.js +2 -30
  355. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
  356. package/build/esm/cc/MultiChannelCC.d.ts +136 -146
  357. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
  358. package/build/esm/cc/MultiChannelCC.js +10 -131
  359. package/build/esm/cc/MultiChannelCC.js.map +1 -1
  360. package/build/esm/cc/MultiCommandCC.d.ts +4 -8
  361. package/build/esm/cc/MultiCommandCC.d.ts.map +1 -1
  362. package/build/esm/cc/MultiCommandCC.js +4 -38
  363. package/build/esm/cc/MultiCommandCC.js.map +1 -1
  364. package/build/esm/cc/MultilevelSensorCC.d.ts +50 -49
  365. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
  366. package/build/esm/cc/MultilevelSensorCC.js +2 -27
  367. package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
  368. package/build/esm/cc/MultilevelSwitchCC.d.ts +146 -146
  369. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
  370. package/build/esm/cc/MultilevelSwitchCC.js +5 -105
  371. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
  372. package/build/esm/cc/NodeNamingCC.d.ts +30 -30
  373. package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
  374. package/build/esm/cc/NodeNamingCC.js +2 -14
  375. package/build/esm/cc/NodeNamingCC.js.map +1 -1
  376. package/build/esm/cc/NotificationCC.d.ts +210 -208
  377. package/build/esm/cc/NotificationCC.d.ts.map +1 -1
  378. package/build/esm/cc/NotificationCC.js +21 -97
  379. package/build/esm/cc/NotificationCC.js.map +1 -1
  380. package/build/esm/cc/PowerlevelCC.d.ts +6 -6
  381. package/build/esm/cc/PowerlevelCC.d.ts.map +1 -1
  382. package/build/esm/cc/PowerlevelCC.js +0 -4
  383. package/build/esm/cc/PowerlevelCC.js.map +1 -1
  384. package/build/esm/cc/ProtectionCC.d.ts +117 -121
  385. package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
  386. package/build/esm/cc/ProtectionCC.js +2 -39
  387. package/build/esm/cc/ProtectionCC.js.map +1 -1
  388. package/build/esm/cc/SceneActivationCC.d.ts +29 -29
  389. package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
  390. package/build/esm/cc/SceneActivationCC.js +2 -15
  391. package/build/esm/cc/SceneActivationCC.js.map +1 -1
  392. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +35 -35
  393. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
  394. package/build/esm/cc/SceneActuatorConfigurationCC.js +2 -16
  395. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
  396. package/build/esm/cc/SceneControllerConfigurationCC.d.ts +36 -35
  397. package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
  398. package/build/esm/cc/SceneControllerConfigurationCC.js +2 -16
  399. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
  400. package/build/esm/cc/ScheduleEntryLockCC.d.ts +109 -109
  401. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
  402. package/build/esm/cc/ScheduleEntryLockCC.js +2 -31
  403. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
  404. package/build/esm/cc/Security2CC.d.ts +15 -21
  405. package/build/esm/cc/Security2CC.d.ts.map +1 -1
  406. package/build/esm/cc/Security2CC.js +27 -475
  407. package/build/esm/cc/Security2CC.js.map +1 -1
  408. package/build/esm/cc/SecurityCC.d.ts +12 -19
  409. package/build/esm/cc/SecurityCC.d.ts.map +1 -1
  410. package/build/esm/cc/SecurityCC.js +13 -138
  411. package/build/esm/cc/SecurityCC.js.map +1 -1
  412. package/build/esm/cc/SoundSwitchCC.d.ts +58 -58
  413. package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
  414. package/build/esm/cc/SoundSwitchCC.js +2 -40
  415. package/build/esm/cc/SoundSwitchCC.js.map +1 -1
  416. package/build/esm/cc/SupervisionCC.d.ts +21 -25
  417. package/build/esm/cc/SupervisionCC.d.ts.map +1 -1
  418. package/build/esm/cc/SupervisionCC.js +6 -41
  419. package/build/esm/cc/SupervisionCC.js.map +1 -1
  420. package/build/esm/cc/ThermostatFanModeCC.d.ts +37 -39
  421. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
  422. package/build/esm/cc/ThermostatFanModeCC.js +2 -15
  423. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
  424. package/build/esm/cc/ThermostatFanStateCC.d.ts +9 -11
  425. package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
  426. package/build/esm/cc/ThermostatFanStateCC.js +2 -9
  427. package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
  428. package/build/esm/cc/ThermostatModeCC.d.ts +39 -41
  429. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
  430. package/build/esm/cc/ThermostatModeCC.js +2 -17
  431. package/build/esm/cc/ThermostatModeCC.js.map +1 -1
  432. package/build/esm/cc/ThermostatOperatingStateCC.d.ts +9 -11
  433. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
  434. package/build/esm/cc/ThermostatOperatingStateCC.js +2 -9
  435. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
  436. package/build/esm/cc/ThermostatSetbackCC.d.ts +4 -4
  437. package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -1
  438. package/build/esm/cc/ThermostatSetbackCC.js +0 -2
  439. package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
  440. package/build/esm/cc/ThermostatSetpointCC.d.ts +51 -51
  441. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
  442. package/build/esm/cc/ThermostatSetpointCC.js +2 -22
  443. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
  444. package/build/esm/cc/TimeCC.d.ts +6 -6
  445. package/build/esm/cc/TimeCC.d.ts.map +1 -1
  446. package/build/esm/cc/TimeCC.js +0 -4
  447. package/build/esm/cc/TimeCC.js.map +1 -1
  448. package/build/esm/cc/TimeParametersCC.d.ts +9 -9
  449. package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
  450. package/build/esm/cc/TimeParametersCC.js +2 -9
  451. package/build/esm/cc/TimeParametersCC.js.map +1 -1
  452. package/build/esm/cc/TransportServiceCC.d.ts +7 -12
  453. package/build/esm/cc/TransportServiceCC.d.ts.map +1 -1
  454. package/build/esm/cc/TransportServiceCC.js +5 -38
  455. package/build/esm/cc/TransportServiceCC.js.map +1 -1
  456. package/build/esm/cc/UserCodeCC._validateArgs.js +1 -1
  457. package/build/esm/cc/UserCodeCC._validateArgs.js.map +1 -1
  458. package/build/esm/cc/UserCodeCC.d.ts +236 -236
  459. package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
  460. package/build/esm/cc/UserCodeCC.js +2 -72
  461. package/build/esm/cc/UserCodeCC.js.map +1 -1
  462. package/build/esm/cc/VersionCC.d.ts +210 -212
  463. package/build/esm/cc/VersionCC.d.ts.map +1 -1
  464. package/build/esm/cc/VersionCC.js +2 -96
  465. package/build/esm/cc/VersionCC.js.map +1 -1
  466. package/build/esm/cc/WakeUpCC.d.ts +44 -44
  467. package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
  468. package/build/esm/cc/WakeUpCC.js +2 -22
  469. package/build/esm/cc/WakeUpCC.js.map +1 -1
  470. package/build/esm/cc/WindowCoveringCC.d.ts +118 -122
  471. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
  472. package/build/esm/cc/WindowCoveringCC.js +3 -108
  473. package/build/esm/cc/WindowCoveringCC.js.map +1 -1
  474. package/build/esm/cc/ZWavePlusCC.d.ts +74 -74
  475. package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
  476. package/build/esm/cc/ZWavePlusCC.js +2 -26
  477. package/build/esm/cc/ZWavePlusCC.js.map +1 -1
  478. package/build/esm/cc/ZWaveProtocolCC.d.ts +28 -28
  479. package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -1
  480. package/build/esm/cc/ZWaveProtocolCC.js +0 -27
  481. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
  482. package/build/esm/cc/_CCValues.generated.d.ts +15814 -0
  483. package/build/esm/cc/_CCValues.generated.d.ts.map +1 -0
  484. package/build/esm/cc/_CCValues.generated.js +9187 -0
  485. package/build/esm/cc/_CCValues.generated.js.map +1 -0
  486. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +4 -4
  487. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -1
  488. package/build/esm/cc/manufacturerProprietary/FibaroCC.js +0 -3
  489. package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
  490. package/build/esm/index.d.ts +1 -0
  491. package/build/esm/index.d.ts.map +1 -1
  492. package/build/esm/index_browser.d.ts +9 -0
  493. package/build/esm/index_browser.d.ts.map +1 -1
  494. package/build/esm/index_browser.js +8 -1
  495. package/build/esm/index_browser.js.map +1 -1
  496. package/build/esm/lib/API.d.ts +7 -5
  497. package/build/esm/lib/API.d.ts.map +1 -1
  498. package/build/esm/lib/API.js +1 -1
  499. package/build/esm/lib/API.js.map +1 -1
  500. package/build/esm/lib/CCValueUtils.d.ts +14 -0
  501. package/build/esm/lib/CCValueUtils.d.ts.map +1 -0
  502. package/build/esm/lib/CCValueUtils.js +62 -0
  503. package/build/esm/lib/CCValueUtils.js.map +1 -0
  504. package/build/esm/lib/CommandClass.d.ts +10 -21
  505. package/build/esm/lib/CommandClass.d.ts.map +1 -1
  506. package/build/esm/lib/CommandClass.js +8 -101
  507. package/build/esm/lib/CommandClass.js.map +1 -1
  508. package/build/esm/lib/CommandClassDecorators.d.ts +1 -1
  509. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
  510. package/build/esm/lib/CommandClassDecorators.js +1 -1
  511. package/build/esm/lib/CommandClassDecorators.js.map +1 -1
  512. package/build/esm/lib/Values.d.ts +7 -106
  513. package/build/esm/lib/Values.d.ts.map +1 -1
  514. package/build/esm/lib/Values.js +7 -104
  515. package/build/esm/lib/Values.js.map +1 -1
  516. package/build/esm/lib/traits.d.ts +94 -0
  517. package/build/esm/lib/traits.d.ts.map +1 -0
  518. package/build/esm/lib/traits.js +2 -0
  519. package/build/esm/lib/traits.js.map +1 -0
  520. package/build/esm/lib/utils.d.ts +2 -2
  521. package/build/esm/lib/utils.d.ts.map +1 -1
  522. package/build/esm/lib/utils.js.map +1 -1
  523. package/package.json +16 -14
@@ -1,37 +1,28 @@
1
- import { CommandClasses, type MaybeNotKnown, type MaybeUnknown, type MessageOrCCLogEntry, type SupervisionResult, type WithAddress } from "@zwave-js/core/safe";
2
- import type { CCEncodingContext, CCParsingContext, GetValueDB } from "@zwave-js/host/safe";
1
+ import { type CCEncodingContext, type CCParsingContext } from "@zwave-js/cc";
2
+ import { CommandClasses, type GetValueDB, type MaybeNotKnown, type MaybeUnknown, type MessageOrCCLogEntry, type SupervisionResult, type WithAddress } from "@zwave-js/core/safe";
3
3
  import { Bytes } from "@zwave-js/shared/safe";
4
4
  import { CCAPI, POLL_VALUE, type PollValueImplementation, SET_VALUE, SET_VALUE_HOOKS, type SetValueImplementation, type SetValueImplementationHooksFactory } from "../lib/API.js";
5
5
  import { type CCRaw, CommandClass, type InterviewContext, type PersistValuesContext, type RefreshValuesContext } from "../lib/CommandClass.js";
6
6
  import { BarrierOperatorCommand, BarrierState, SubsystemState, SubsystemType } from "../lib/_Types.js";
7
7
  export declare const BarrierOperatorCCValues: Readonly<{
8
- signalingState: ((subsystemType: SubsystemType) => {
9
- readonly meta: {
10
- readonly label: `Signaling State (${string})`;
11
- readonly states: {
12
- [x: number]: string;
13
- };
14
- readonly min: 0;
15
- readonly max: 255;
16
- readonly type: "number";
17
- readonly readable: true;
18
- readonly writeable: true;
19
- };
20
- readonly id: {
21
- commandClass: (typeof CommandClasses)["Barrier Operator"];
22
- property: "signalingState";
23
- propertyKey: SubsystemType;
8
+ supportedSubsystemTypes: {
9
+ id: {
10
+ readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
11
+ readonly property: "supportedSubsystemTypes";
24
12
  };
25
- readonly endpoint: (endpoint?: number | undefined) => {
13
+ endpoint: (endpoint?: number) => {
26
14
  readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
27
15
  readonly endpoint: number;
28
- readonly property: "signalingState";
29
- readonly propertyKey: SubsystemType;
16
+ readonly property: "supportedSubsystemTypes";
30
17
  };
31
- }) & {
32
18
  is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
33
- readonly options: {
34
- readonly internal: false;
19
+ readonly meta: Readonly<{
20
+ readonly type: "any";
21
+ readonly readable: true;
22
+ readonly writeable: true;
23
+ }>;
24
+ options: {
25
+ readonly internal: true;
35
26
  readonly minVersion: 1;
36
27
  readonly secret: false;
37
28
  readonly stateful: true;
@@ -39,29 +30,27 @@ export declare const BarrierOperatorCCValues: Readonly<{
39
30
  readonly autoCreate: true;
40
31
  };
41
32
  };
42
- currentState: {
43
- readonly id: {
44
- commandClass: (typeof CommandClasses)["Barrier Operator"];
45
- property: "currentState";
33
+ position: {
34
+ id: {
35
+ readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
36
+ readonly property: "position";
46
37
  };
47
- readonly endpoint: (endpoint?: number | undefined) => {
38
+ endpoint: (endpoint?: number) => {
48
39
  readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
49
40
  readonly endpoint: number;
50
- readonly property: "currentState";
41
+ readonly property: "position";
51
42
  };
52
- readonly is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
43
+ is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
53
44
  readonly meta: {
54
- readonly label: "Current Barrier State";
55
- readonly states: {
56
- [x: number]: string;
57
- };
45
+ readonly label: "Barrier Position";
46
+ readonly unit: "%";
47
+ readonly max: 100;
58
48
  readonly writeable: false;
59
49
  readonly min: 0;
60
- readonly max: 255;
61
50
  readonly type: "number";
62
51
  readonly readable: true;
63
52
  };
64
- readonly options: {
53
+ options: {
65
54
  readonly internal: false;
66
55
  readonly minVersion: 1;
67
56
  readonly secret: false;
@@ -71,28 +60,26 @@ export declare const BarrierOperatorCCValues: Readonly<{
71
60
  };
72
61
  };
73
62
  targetState: {
74
- readonly id: {
75
- commandClass: (typeof CommandClasses)["Barrier Operator"];
76
- property: "targetState";
63
+ id: {
64
+ readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
65
+ readonly property: "targetState";
77
66
  };
78
- readonly endpoint: (endpoint?: number | undefined) => {
67
+ endpoint: (endpoint?: number) => {
79
68
  readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
80
69
  readonly endpoint: number;
81
70
  readonly property: "targetState";
82
71
  };
83
- readonly is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
72
+ is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
84
73
  readonly meta: {
85
74
  readonly label: "Target Barrier State";
86
- readonly states: {
87
- [x: number]: string;
88
- };
75
+ readonly states: Record<number, string>;
89
76
  readonly min: 0;
90
77
  readonly max: 255;
91
78
  readonly type: "number";
92
79
  readonly readable: true;
93
80
  readonly writeable: true;
94
81
  };
95
- readonly options: {
82
+ options: {
96
83
  readonly internal: false;
97
84
  readonly minVersion: 1;
98
85
  readonly secret: false;
@@ -101,27 +88,27 @@ export declare const BarrierOperatorCCValues: Readonly<{
101
88
  readonly autoCreate: true;
102
89
  };
103
90
  };
104
- position: {
105
- readonly id: {
106
- commandClass: (typeof CommandClasses)["Barrier Operator"];
107
- property: "position";
91
+ currentState: {
92
+ id: {
93
+ readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
94
+ readonly property: "currentState";
108
95
  };
109
- readonly endpoint: (endpoint?: number | undefined) => {
96
+ endpoint: (endpoint?: number) => {
110
97
  readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
111
98
  readonly endpoint: number;
112
- readonly property: "position";
99
+ readonly property: "currentState";
113
100
  };
114
- readonly is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
101
+ is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
115
102
  readonly meta: {
116
- readonly label: "Barrier Position";
117
- readonly unit: "%";
118
- readonly max: 100;
103
+ readonly label: "Current Barrier State";
104
+ readonly states: Record<number, string>;
119
105
  readonly writeable: false;
120
106
  readonly min: 0;
107
+ readonly max: 255;
121
108
  readonly type: "number";
122
109
  readonly readable: true;
123
110
  };
124
- readonly options: {
111
+ options: {
125
112
  readonly internal: false;
126
113
  readonly minVersion: 1;
127
114
  readonly secret: false;
@@ -130,29 +117,36 @@ export declare const BarrierOperatorCCValues: Readonly<{
130
117
  readonly autoCreate: true;
131
118
  };
132
119
  };
133
- supportedSubsystemTypes: {
134
- readonly id: {
135
- commandClass: (typeof CommandClasses)["Barrier Operator"];
136
- property: "supportedSubsystemTypes";
120
+ signalingState: ((subsystemType: SubsystemType) => {
121
+ id: {
122
+ readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
123
+ readonly property: "signalingState";
124
+ readonly propertyKey: SubsystemType;
137
125
  };
138
- readonly endpoint: (endpoint?: number | undefined) => {
126
+ endpoint: (endpoint?: number) => {
139
127
  readonly commandClass: (typeof CommandClasses)["Barrier Operator"];
140
128
  readonly endpoint: number;
141
- readonly property: "supportedSubsystemTypes";
129
+ readonly property: "signalingState";
130
+ readonly propertyKey: SubsystemType;
142
131
  };
143
- readonly is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
144
132
  readonly meta: {
145
- readonly type: "any";
133
+ readonly label: `Signaling State (${string})`;
134
+ readonly states: Record<number, string>;
135
+ readonly min: 0;
136
+ readonly max: 255;
137
+ readonly type: "number";
146
138
  readonly readable: true;
147
139
  readonly writeable: true;
148
140
  };
149
- readonly options: {
150
- readonly stateful: true;
151
- readonly secret: false;
141
+ }) & {
142
+ is: (valueId: import("@zwave-js/core/safe").ValueID) => boolean;
143
+ options: {
144
+ readonly internal: false;
152
145
  readonly minVersion: 1;
146
+ readonly secret: false;
147
+ readonly stateful: true;
153
148
  readonly supportsEndpoints: true;
154
149
  readonly autoCreate: true;
155
- readonly internal: true;
156
150
  };
157
151
  };
158
152
  }>;
@@ -179,7 +173,7 @@ export declare class BarrierOperatorCCSet extends BarrierOperatorCC {
179
173
  constructor(options: WithAddress<BarrierOperatorCCSetOptions>);
180
174
  static from(_raw: CCRaw, _ctx: CCParsingContext): BarrierOperatorCCSet;
181
175
  targetState: BarrierState.Open | BarrierState.Closed;
182
- serialize(ctx: CCEncodingContext): Bytes;
176
+ serialize(ctx: CCEncodingContext): Promise<Bytes>;
183
177
  toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
184
178
  }
185
179
  export interface BarrierOperatorCCReportOptions {
@@ -215,7 +209,7 @@ export declare class BarrierOperatorCCEventSignalingSet extends BarrierOperatorC
215
209
  static from(_raw: CCRaw, _ctx: CCParsingContext): BarrierOperatorCCEventSignalingSet;
216
210
  subsystemType: SubsystemType;
217
211
  subsystemState: SubsystemState;
218
- serialize(ctx: CCEncodingContext): Bytes;
212
+ serialize(ctx: CCEncodingContext): Promise<Bytes>;
219
213
  toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
220
214
  }
221
215
  export interface BarrierOperatorCCEventSignalingReportOptions {
@@ -237,7 +231,7 @@ export declare class BarrierOperatorCCEventSignalingGet extends BarrierOperatorC
237
231
  constructor(options: WithAddress<BarrierOperatorCCEventSignalingGetOptions>);
238
232
  static from(_raw: CCRaw, _ctx: CCParsingContext): BarrierOperatorCCEventSignalingGet;
239
233
  subsystemType: SubsystemType;
240
- serialize(ctx: CCEncodingContext): Bytes;
234
+ serialize(ctx: CCEncodingContext): Promise<Bytes>;
241
235
  toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
242
236
  }
243
237
  //# sourceMappingURL=BarrierOperatorCC.d.ts.map
@@ -39,7 +39,7 @@ __export(BarrierOperatorCC_exports, {
39
39
  BarrierOperatorCCSet: () => BarrierOperatorCCSet,
40
40
  BarrierOperatorCCSignalingCapabilitiesGet: () => BarrierOperatorCCSignalingCapabilitiesGet,
41
41
  BarrierOperatorCCSignalingCapabilitiesReport: () => BarrierOperatorCCSignalingCapabilitiesReport,
42
- BarrierOperatorCCValues: () => BarrierOperatorCCValues
42
+ BarrierOperatorCCValues: () => import_CCValues_generated.BarrierOperatorCCValues
43
43
  });
44
44
  module.exports = __toCommonJS(BarrierOperatorCC_exports);
45
45
  var __validateArgs = __toESM(require("./BarrierOperatorCC._validateArgs.js"), 1);
@@ -51,6 +51,7 @@ var import_CommandClass = require("../lib/CommandClass.js");
51
51
  var import_CommandClassDecorators = require("../lib/CommandClassDecorators.js");
52
52
  var import_Values = require("../lib/Values.js");
53
53
  var import_Types = require("../lib/_Types.js");
54
+ var import_CCValues_generated = require("./_CCValues.generated.js");
54
55
  var __runInitializers = function(thisArg, initializers, value) {
55
56
  var useValue = arguments.length > 2;
56
57
  for (var i = 0; i < initializers.length; i++) {
@@ -92,39 +93,6 @@ var __esDecorate = function(ctor, descriptorIn, decorators, contextIn, initializ
92
93
  done = true;
93
94
  };
94
95
  const { validateArgs_BarrierOperatorCCAPI_set, validateArgs_BarrierOperatorCCAPI_getSignalingCapabilities, validateArgs_BarrierOperatorCCAPI_getEventSignaling, validateArgs_BarrierOperatorCCAPI_setEventSignaling } = __validateArgs;
95
- const BarrierOperatorCCValues = Object.freeze({
96
- ...import_Values.V.defineStaticCCValues(import_safe.CommandClasses["Barrier Operator"], {
97
- ...import_Values.V.staticProperty("supportedSubsystemTypes", void 0, {
98
- internal: true
99
- }),
100
- ...import_Values.V.staticProperty("position", {
101
- ...import_safe.ValueMetadata.ReadOnlyUInt8,
102
- label: "Barrier Position",
103
- unit: "%",
104
- max: 100
105
- }),
106
- ...import_Values.V.staticProperty("targetState", {
107
- ...import_safe.ValueMetadata.UInt8,
108
- label: "Target Barrier State",
109
- states: (0, import_safe.enumValuesToMetadataStates)(import_Types.BarrierState, [
110
- import_Types.BarrierState.Open,
111
- import_Types.BarrierState.Closed
112
- ])
113
- }),
114
- ...import_Values.V.staticProperty("currentState", {
115
- ...import_safe.ValueMetadata.ReadOnlyUInt8,
116
- label: "Current Barrier State",
117
- states: (0, import_safe.enumValuesToMetadataStates)(import_Types.BarrierState)
118
- })
119
- }),
120
- ...import_Values.V.defineDynamicCCValues(import_safe.CommandClasses["Barrier Operator"], {
121
- ...import_Values.V.dynamicPropertyAndKeyWithName("signalingState", "signalingState", (subsystemType) => subsystemType, ({ property, propertyKey }) => property === "signalingState" && typeof propertyKey === "number", (subsystemType) => ({
122
- ...import_safe.ValueMetadata.UInt8,
123
- label: `Signaling State (${(0, import_safe3.getEnumMemberName)(import_Types.SubsystemType, subsystemType)})`,
124
- states: (0, import_safe.enumValuesToMetadataStates)(import_Types.SubsystemState)
125
- }))
126
- })
127
- });
128
96
  let BarrierOperatorCCAPI = (() => {
129
97
  let _classDecorators = [(0, import_CommandClassDecorators.API)(import_safe.CommandClasses["Barrier Operator"])];
130
98
  let _classDescriptor;
@@ -244,8 +212,8 @@ let BarrierOperatorCCAPI = (() => {
244
212
  property,
245
213
  propertyKey
246
214
  };
247
- if (BarrierOperatorCCValues.targetState.is(valueId)) {
248
- const currentStateValueId = BarrierOperatorCCValues.currentState.endpoint(this.endpoint.index);
215
+ if (import_CCValues_generated.BarrierOperatorCCValues.targetState.is(valueId)) {
216
+ const currentStateValueId = import_CCValues_generated.BarrierOperatorCCValues.currentState.endpoint(this.endpoint.index);
249
217
  const targetValue = value === import_Types.BarrierState.Closed ? import_Types.BarrierState.Closed : import_Types.BarrierState.Open;
250
218
  return {
251
219
  // Barrier Operator commands may take some time to be executed.
@@ -280,9 +248,9 @@ let BarrierOperatorCCAPI = (() => {
280
248
  }
281
249
  }, "verifyChanges")
282
250
  };
283
- } else if (BarrierOperatorCCValues.signalingState.is(valueId)) {
251
+ } else if (import_CCValues_generated.BarrierOperatorCCValues.signalingState.is(valueId)) {
284
252
  const subsystemType = propertyKey;
285
- const signalingStateValueId = BarrierOperatorCCValues.signalingState(subsystemType).endpoint(this.endpoint.index);
253
+ const signalingStateValueId = import_CCValues_generated.BarrierOperatorCCValues.signalingState(subsystemType).endpoint(this.endpoint.index);
286
254
  return {
287
255
  verifyChanges: /* @__PURE__ */ __name(() => {
288
256
  if (this.isSinglecast()) {
@@ -317,7 +285,7 @@ let BarrierOperatorCCAPI = (() => {
317
285
  return BarrierOperatorCCAPI2 = _classThis;
318
286
  })();
319
287
  let BarrierOperatorCC = (() => {
320
- let _classDecorators = [(0, import_CommandClassDecorators.commandClass)(import_safe.CommandClasses["Barrier Operator"]), (0, import_CommandClassDecorators.implementedVersion)(1), (0, import_CommandClassDecorators.ccValues)(BarrierOperatorCCValues)];
288
+ let _classDecorators = [(0, import_CommandClassDecorators.commandClass)(import_safe.CommandClasses["Barrier Operator"]), (0, import_CommandClassDecorators.implementedVersion)(1), (0, import_CommandClassDecorators.ccValues)(import_CCValues_generated.BarrierOperatorCCValues)];
321
289
  let _classDescriptor;
322
290
  let _classExtraInitializers = [];
323
291
  let _classThis;
@@ -347,7 +315,7 @@ let BarrierOperatorCC = (() => {
347
315
  message: `Interviewing ${this.ccName}...`,
348
316
  direction: "none"
349
317
  });
350
- this.ensureMetadata(ctx, BarrierOperatorCCValues.targetState);
318
+ this.ensureMetadata(ctx, import_CCValues_generated.BarrierOperatorCCValues.targetState);
351
319
  ctx.logNode(node.id, {
352
320
  message: "Querying signaling capabilities...",
353
321
  direction: "outbound"
@@ -378,7 +346,7 @@ let BarrierOperatorCC = (() => {
378
346
  const api = import_API.CCAPI.create(import_safe.CommandClasses["Barrier Operator"], ctx, endpoint).withOptions({
379
347
  priority: import_safe.MessagePriority.NodeQuery
380
348
  });
381
- const supportedSubsystems = this.getValue(ctx, BarrierOperatorCCValues.supportedSubsystemTypes) ?? [];
349
+ const supportedSubsystems = this.getValue(ctx, import_CCValues_generated.BarrierOperatorCCValues.supportedSubsystemTypes) ?? [];
382
350
  for (const subsystemType of supportedSubsystems) {
383
351
  if (!(0, import_safe3.isEnumMember)(import_Types.SubsystemType, subsystemType))
384
352
  continue;
@@ -445,7 +413,7 @@ let BarrierOperatorCCSet = (() => {
445
413
  return BarrierOperatorCCSet2 = _classThis;
446
414
  })();
447
415
  let BarrierOperatorCCReport = (() => {
448
- let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.BarrierOperatorCommand.Report), (0, import_CommandClassDecorators.ccValueProperty)("currentState", BarrierOperatorCCValues.currentState), (0, import_CommandClassDecorators.ccValueProperty)("position", BarrierOperatorCCValues.position)];
416
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.BarrierOperatorCommand.Report), (0, import_CommandClassDecorators.ccValueProperty)("currentState", import_CCValues_generated.BarrierOperatorCCValues.currentState), (0, import_CommandClassDecorators.ccValueProperty)("position", import_CCValues_generated.BarrierOperatorCCValues.position)];
449
417
  let _classDescriptor;
450
418
  let _classExtraInitializers = [];
451
419
  let _classThis;
@@ -532,7 +500,7 @@ let BarrierOperatorCCGet = (() => {
532
500
  return BarrierOperatorCCGet2 = _classThis;
533
501
  })();
534
502
  let BarrierOperatorCCSignalingCapabilitiesReport = (() => {
535
- let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.BarrierOperatorCommand.SignalingCapabilitiesReport), (0, import_CommandClassDecorators.ccValueProperty)("supportedSubsystemTypes", BarrierOperatorCCValues.supportedSubsystemTypes)];
503
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.BarrierOperatorCommand.SignalingCapabilitiesReport), (0, import_CommandClassDecorators.ccValueProperty)("supportedSubsystemTypes", import_CCValues_generated.BarrierOperatorCCValues.supportedSubsystemTypes)];
536
504
  let _classDescriptor;
537
505
  let _classExtraInitializers = [];
538
506
  let _classThis;
@@ -682,7 +650,7 @@ let BarrierOperatorCCEventSignalingReport = (() => {
682
650
  persistValues(ctx) {
683
651
  if (!super.persistValues(ctx))
684
652
  return false;
685
- const signalingStateValue = BarrierOperatorCCValues.signalingState(this.subsystemType);
653
+ const signalingStateValue = import_CCValues_generated.BarrierOperatorCCValues.signalingState(this.subsystemType);
686
654
  this.ensureMetadata(ctx, signalingStateValue);
687
655
  this.setValue(ctx, signalingStateValue, this.subsystemState);
688
656
  return true;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cc/BarrierOperatorCC.ts"],
4
- "sourcesContent": ["import {\n\tCommandClasses,\n\ttype MaybeNotKnown,\n\ttype MaybeUnknown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype SupervisionResult,\n\tUNKNOWN_STATE,\n\tValueMetadata,\n\ttype WithAddress,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tenumValuesToMetadataStates,\n\tmaybeUnknownToString,\n\tparseBitMask,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport type {\n\tCCEncodingContext,\n\tCCParsingContext,\n\tGetValueDB,\n} from \"@zwave-js/host/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport {\n\tgetEnumMemberName,\n\tisEnumMember,\n\tnoop,\n\tpick,\n} from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\tSET_VALUE_HOOKS,\n\ttype SetValueImplementation,\n\ttype SetValueImplementationHooksFactory,\n\tthrowMissingPropertyKey,\n\tthrowUnsupportedProperty,\n\tthrowUnsupportedPropertyKey,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n\ttype RefreshValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport {\n\tBarrierOperatorCommand,\n\tBarrierState,\n\tSubsystemState,\n\tSubsystemType,\n} from \"../lib/_Types.js\";\n\nexport const BarrierOperatorCCValues = Object.freeze({\n\t...V.defineStaticCCValues(CommandClasses[\"Barrier Operator\"], {\n\t\t...V.staticProperty(\"supportedSubsystemTypes\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\n\t\t...V.staticProperty(\n\t\t\t\"position\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: \"Barrier Position\",\n\t\t\t\tunit: \"%\",\n\t\t\t\tmax: 100,\n\t\t\t} as const,\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"targetState\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.UInt8,\n\t\t\t\tlabel: \"Target Barrier State\",\n\t\t\t\tstates: enumValuesToMetadataStates(BarrierState, [\n\t\t\t\t\tBarrierState.Open,\n\t\t\t\t\tBarrierState.Closed,\n\t\t\t\t]),\n\t\t\t} as const,\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"currentState\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: \"Current Barrier State\",\n\t\t\t\tstates: enumValuesToMetadataStates(BarrierState),\n\t\t\t} as const,\n\t\t),\n\t}),\n\n\t...V.defineDynamicCCValues(CommandClasses[\"Barrier Operator\"], {\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"signalingState\",\n\t\t\t\"signalingState\",\n\t\t\t(subsystemType: SubsystemType) => subsystemType,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"signalingState\"\n\t\t\t\t&& typeof propertyKey === \"number\",\n\t\t\t(subsystemType: SubsystemType) => ({\n\t\t\t\t...ValueMetadata.UInt8,\n\t\t\t\tlabel: `Signaling State (${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t)\n\t\t\t\t})`,\n\t\t\t\tstates: enumValuesToMetadataStates(SubsystemState),\n\t\t\t} as const),\n\t\t),\n\t}),\n});\n\n@API(CommandClasses[\"Barrier Operator\"])\nexport class BarrierOperatorCCAPI extends CCAPI {\n\tpublic supportsCommand(\n\t\tcmd: BarrierOperatorCommand,\n\t): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase BarrierOperatorCommand.Get:\n\t\t\tcase BarrierOperatorCommand.Set:\n\t\t\tcase BarrierOperatorCommand.SignalingCapabilitiesGet:\n\t\t\tcase BarrierOperatorCommand.EventSignalingGet:\n\t\t\tcase BarrierOperatorCommand.EventSignalingSet:\n\t\t\t\treturn true; // This is mandatory\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async get() {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.Get,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"currentState\", \"position\"]);\n\t\t}\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async set(\n\t\ttargetState: BarrierState.Open | BarrierState.Closed,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.Set,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\ttargetState,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\t@validateArgs()\n\tpublic async getSignalingCapabilities(): Promise<\n\t\tMaybeNotKnown<readonly SubsystemType[]>\n\t> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.SignalingCapabilitiesGet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCSignalingCapabilitiesGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCSignalingCapabilitiesReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.supportedSubsystemTypes;\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async getEventSignaling(\n\t\tsubsystemType: SubsystemType,\n\t): Promise<MaybeNotKnown<SubsystemState>> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.EventSignalingGet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCEventSignalingGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tsubsystemType,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCEventSignalingReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.subsystemState;\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async setEventSignaling(\n\t\tsubsystemType: SubsystemType,\n\t\tsubsystemState: SubsystemState,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.EventSignalingSet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCEventSignalingSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tsubsystemType,\n\t\t\tsubsystemState,\n\t\t});\n\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(\n\t\t\tthis: BarrierOperatorCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t\tvalue,\n\t\t) {\n\t\t\tif (property === \"targetState\") {\n\t\t\t\tif (typeof value !== \"number\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"number\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst targetValue = value === BarrierState.Closed\n\t\t\t\t\t? BarrierState.Closed\n\t\t\t\t\t: BarrierState.Open;\n\t\t\t\treturn this.set(targetValue);\n\t\t\t} else if (property === \"signalingState\") {\n\t\t\t\tif (propertyKey == undefined) {\n\t\t\t\t\tthrowMissingPropertyKey(this.ccId, property);\n\t\t\t\t} else if (typeof propertyKey !== \"number\") {\n\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\tpropertyKey,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (typeof value !== \"number\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"number\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn this.setEventSignaling(propertyKey, value);\n\t\t\t} else {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\tprotected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory = (\n\t\t{ property, propertyKey },\n\t\tvalue,\n\t\t_options,\n\t) => {\n\t\tconst valueId = {\n\t\t\tcommandClass: this.ccId,\n\t\t\tproperty,\n\t\t\tpropertyKey,\n\t\t};\n\n\t\tif (BarrierOperatorCCValues.targetState.is(valueId)) {\n\t\t\tconst currentStateValueId = BarrierOperatorCCValues.currentState\n\t\t\t\t.endpoint(\n\t\t\t\t\tthis.endpoint.index,\n\t\t\t\t);\n\n\t\t\tconst targetValue = value === BarrierState.Closed\n\t\t\t\t? BarrierState.Closed\n\t\t\t\t: BarrierState.Open;\n\n\t\t\treturn {\n\t\t\t\t// Barrier Operator commands may take some time to be executed.\n\t\t\t\t// Therefore we try to supervise the command execution and delay the\n\t\t\t\t// optimistic update until the final result is received.\n\t\t\t\tsupervisionDelayedUpdates: true,\n\t\t\t\tsupervisionOnSuccess: () => {\n\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\tcurrentStateValueId,\n\t\t\t\t\t\ttargetValue,\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tsupervisionOnFailure: async () => {\n\t\t\t\t\t// The command failed, so now we don't know the status - refresh the current value\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait this.get();\n\t\t\t\t\t} catch {\n\t\t\t\t\t\t// ignore\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\toptimisticallyUpdateRelatedValues: (\n\t\t\t\t\tsupervisedAndSuccessful,\n\t\t\t\t) => {\n\t\t\t\t\t// For barriers, do not update the current value unless we actually know the command was successful\n\t\t\t\t\tif (!supervisedAndSuccessful) return;\n\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\t\tcurrentStateValueId,\n\t\t\t\t\t\t\ttargetValue,\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (this.isMulticast()) {\n\t\t\t\t\t\t// Figure out which nodes were affected by this command\n\t\t\t\t\t\tconst affectedNodes = this.endpoint.node.physicalNodes\n\t\t\t\t\t\t\t.filter((node) =>\n\t\t\t\t\t\t\t\tnode\n\t\t\t\t\t\t\t\t\t.getEndpoint(this.endpoint.index)\n\t\t\t\t\t\t\t\t\t?.supportsCC(this.ccId)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t// and optimistically update the currentValue\n\t\t\t\t\t\tfor (const node of affectedNodes) {\n\t\t\t\t\t\t\tthis.host\n\t\t\t\t\t\t\t\t.tryGetValueDB(node.id)\n\t\t\t\t\t\t\t\t?.setValue(currentStateValueId, targetValue);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\tverifyChanges: () => {\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\t// We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll\n\t\t\t\t\t\tthis.schedulePoll(currentStateValueId, targetValue);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// For multicasts, do not schedule a refresh - this could cause a LOT of traffic\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t} else if (BarrierOperatorCCValues.signalingState.is(valueId)) {\n\t\t\tconst subsystemType = propertyKey as SubsystemType;\n\t\t\tconst signalingStateValueId = BarrierOperatorCCValues\n\t\t\t\t.signalingState(subsystemType).endpoint(\n\t\t\t\t\tthis.endpoint.index,\n\t\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tverifyChanges: () => {\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\tthis.schedulePoll(signalingStateValueId, value, {\n\t\t\t\t\t\t\t// Signaling state changes are fast\n\t\t\t\t\t\t\ttransition: \"fast\",\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t};\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(\n\t\t\tthis: BarrierOperatorCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t) {\n\t\t\tswitch (property) {\n\t\t\t\tcase \"currentState\":\n\t\t\t\tcase \"position\":\n\t\t\t\t\treturn (await this.get())?.[property];\n\t\t\t\tcase \"signalingState\":\n\t\t\t\t\tif (propertyKey == undefined) {\n\t\t\t\t\t\tthrowMissingPropertyKey(this.ccId, property);\n\t\t\t\t\t} else if (typeof propertyKey !== \"number\") {\n\t\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\tpropertyKey,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn this.getEventSignaling(propertyKey);\n\t\t\t\tdefault:\n\t\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n}\n\n@commandClass(CommandClasses[\"Barrier Operator\"])\n@implementedVersion(1)\n@ccValues(BarrierOperatorCCValues)\nexport class BarrierOperatorCC extends CommandClass {\n\tdeclare ccCommand: BarrierOperatorCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Barrier Operator\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\t// Create targetState value if it does not exist\n\t\tthis.ensureMetadata(ctx, BarrierOperatorCCValues.targetState);\n\n\t\tctx.logNode(node.id, {\n\t\t\tmessage: \"Querying signaling capabilities...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tconst resp = await api.getSignalingCapabilities();\n\t\tif (resp) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tmessage: `Received supported subsystem types: ${\n\t\t\t\t\tresp\n\t\t\t\t\t\t.map((t) =>\n\t\t\t\t\t\t\t`\\n\u00B7 ${getEnumMemberName(SubsystemType, t)}`\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.join(\"\")\n\t\t\t\t}`,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\n\t\t\t// Enable all supported subsystems\n\t\t\tfor (const subsystemType of resp) {\n\t\t\t\t// Some devices report invalid subsystem types, but the CC API checks\n\t\t\t\t// for valid values and throws otherwise.\n\t\t\t\tif (!isEnumMember(SubsystemType, subsystemType)) continue;\n\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tmessage: `Enabling subsystem ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t\t)\n\t\t\t\t\t}...`,\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tawait api.setEventSignaling(subsystemType, SubsystemState.On)\n\t\t\t\t\t.catch(noop);\n\t\t\t}\n\t\t}\n\n\t\tawait this.refreshValues(ctx);\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n\n\tpublic async refreshValues(\n\t\tctx: RefreshValuesContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Barrier Operator\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tconst supportedSubsystems: SubsystemType[] = this.getValue(\n\t\t\tctx,\n\t\t\tBarrierOperatorCCValues.supportedSubsystemTypes,\n\t\t) ?? [];\n\n\t\tfor (const subsystemType of supportedSubsystems) {\n\t\t\t// Some devices report invalid subsystem types, but the CC API checks\n\t\t\t// for valid values and throws otherwise.\n\t\t\tif (!isEnumMember(SubsystemType, subsystemType)) continue;\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tmessage: `Querying event signaling state for subsystem ${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t)\n\t\t\t\t}...`,\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst state = await api.getEventSignaling(subsystemType);\n\t\t\tif (state != undefined) {\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tmessage: `Subsystem ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t\t)\n\t\t\t\t\t} has state ${getEnumMemberName(SubsystemState, state)}`,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tctx.logNode(node.id, {\n\t\t\tmessage: \"querying current barrier state...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tawait api.get();\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCSetOptions {\n\ttargetState: BarrierState.Open | BarrierState.Closed;\n}\n\n@CCCommand(BarrierOperatorCommand.Set)\n@useSupervision()\nexport class BarrierOperatorCCSet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.targetState = options.targetState;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCSet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic targetState: BarrierState.Open | BarrierState.Closed;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([this.targetState]);\n\t\t// eslint-disable-next-line @typescript-eslint/no-deprecated\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"target state\": this.targetState },\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCReportOptions {\n\tposition: MaybeUnknown<number>;\n\tcurrentState: MaybeUnknown<BarrierState>;\n}\n\n@CCCommand(BarrierOperatorCommand.Report)\n@ccValueProperty(\"currentState\", BarrierOperatorCCValues.currentState)\n@ccValueProperty(\"position\", BarrierOperatorCCValues.position)\nexport class BarrierOperatorCCReport extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.position = options.position;\n\t\tthis.currentState = options.currentState;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCReport {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\t// The payload byte encodes information about the state and position in a single value\n\t\tconst payloadValue = raw.payload[0];\n\t\tlet position: MaybeUnknown<number>;\n\t\tif (payloadValue <= 99) {\n\t\t\t// known position\n\t\t\tposition = payloadValue;\n\t\t} else if (payloadValue === 255) {\n\t\t\t// known position, fully opened\n\t\t\tposition = 100;\n\t\t} else {\n\t\t\t// unknown position\n\t\t\tposition = UNKNOWN_STATE;\n\t\t}\n\n\t\tlet currentState: MaybeUnknown<BarrierState>;\n\t\tif (\n\t\t\tpayloadValue === BarrierState.Closed\n\t\t\t|| payloadValue >= BarrierState.Closing\n\t\t) {\n\t\t\t// predefined states\n\t\t\tcurrentState = payloadValue;\n\t\t} else if (payloadValue > 0 && payloadValue <= 99) {\n\t\t\t// stopped at exact position\n\t\t\tcurrentState = BarrierState.Stopped;\n\t\t} else {\n\t\t\t// invalid value, assume unknown\n\t\t\tcurrentState = UNKNOWN_STATE;\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tposition,\n\t\t\tcurrentState,\n\t\t});\n\t}\n\n\tpublic readonly currentState: MaybeUnknown<BarrierState>;\n\n\tpublic readonly position: MaybeUnknown<number>;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"barrier position\": maybeUnknownToString(this.position),\n\t\t\t\t\"barrier state\": this.currentState != undefined\n\t\t\t\t\t? getEnumMemberName(BarrierState, this.currentState)\n\t\t\t\t\t: \"unknown\",\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(BarrierOperatorCommand.Get)\n@expectedCCResponse(BarrierOperatorCCReport)\nexport class BarrierOperatorCCGet extends BarrierOperatorCC {}\n\n// @publicAPI\nexport interface BarrierOperatorCCSignalingCapabilitiesReportOptions {\n\tsupportedSubsystemTypes: SubsystemType[];\n}\n\n@CCCommand(BarrierOperatorCommand.SignalingCapabilitiesReport)\n@ccValueProperty(\n\t\"supportedSubsystemTypes\",\n\tBarrierOperatorCCValues.supportedSubsystemTypes,\n)\nexport class BarrierOperatorCCSignalingCapabilitiesReport\n\textends BarrierOperatorCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tBarrierOperatorCCSignalingCapabilitiesReportOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.supportedSubsystemTypes = options.supportedSubsystemTypes;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCSignalingCapabilitiesReport {\n\t\tconst supportedSubsystemTypes: SubsystemType[] = parseBitMask(\n\t\t\traw.payload,\n\t\t\tSubsystemType.Audible,\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsupportedSubsystemTypes,\n\t\t});\n\t}\n\n\tpublic readonly supportedSubsystemTypes: readonly SubsystemType[];\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"supported types\": this.supportedSubsystemTypes\n\t\t\t\t\t.map((t) => `\\n\u00B7 ${getEnumMemberName(SubsystemType, t)}`)\n\t\t\t\t\t.join(\"\"),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(BarrierOperatorCommand.SignalingCapabilitiesGet)\n@expectedCCResponse(BarrierOperatorCCSignalingCapabilitiesReport)\nexport class BarrierOperatorCCSignalingCapabilitiesGet\n\textends BarrierOperatorCC\n{}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingSetOptions {\n\tsubsystemType: SubsystemType;\n\tsubsystemState: SubsystemState;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingSet)\n@useSupervision()\nexport class BarrierOperatorCCEventSignalingSet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.subsystemType = options.subsystemType;\n\t\tthis.subsystemState = options.subsystemState;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingSet {\n\t\t// TODO: Deserialize payload\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCEventSignalingSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic subsystemType: SubsystemType;\n\tpublic subsystemState: SubsystemState;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([this.subsystemType, this.subsystemState]);\n\t\t// eslint-disable-next-line @typescript-eslint/no-deprecated\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t\t\"subsystem state\": getEnumMemberName(\n\t\t\t\t\tSubsystemState,\n\t\t\t\t\tthis.subsystemState,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingReportOptions {\n\tsubsystemType: SubsystemType;\n\tsubsystemState: SubsystemState;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingReport)\nexport class BarrierOperatorCCEventSignalingReport extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.subsystemType = options.subsystemType;\n\t\tthis.subsystemState = options.subsystemState;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst subsystemType: SubsystemType = raw.payload[0];\n\t\tconst subsystemState: SubsystemState = raw.payload[1];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsubsystemType,\n\t\t\tsubsystemState,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\tconst signalingStateValue = BarrierOperatorCCValues.signalingState(\n\t\t\tthis.subsystemType,\n\t\t);\n\n\t\tthis.ensureMetadata(ctx, signalingStateValue);\n\t\tthis.setValue(ctx, signalingStateValue, this.subsystemState);\n\n\t\treturn true;\n\t}\n\n\tpublic readonly subsystemType: SubsystemType;\n\tpublic readonly subsystemState: SubsystemState;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t\t\"subsystem state\": getEnumMemberName(\n\t\t\t\t\tSubsystemState,\n\t\t\t\t\tthis.subsystemState,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingGetOptions {\n\tsubsystemType: SubsystemType;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingGet)\n@expectedCCResponse(BarrierOperatorCCEventSignalingReport)\nexport class BarrierOperatorCCEventSignalingGet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingGetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.subsystemType = options.subsystemType;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingGet {\n\t\t// TODO: Deserialize payload\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCEventSignalingGet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic subsystemType: SubsystemType;\n\n\tpublic serialize(ctx: CCEncodingContext): Bytes {\n\t\tthis.payload = Bytes.from([this.subsystemType]);\n\t\t// eslint-disable-next-line @typescript-eslint/no-deprecated\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { type CCEncodingContext, type CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MaybeUnknown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype SupervisionResult,\n\tUNKNOWN_STATE,\n\tValueMetadata,\n\ttype WithAddress,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tenumValuesToMetadataStates,\n\tmaybeUnknownToString,\n\tparseBitMask,\n\tvalidatePayload,\n} from \"@zwave-js/core/safe\";\nimport { Bytes } from \"@zwave-js/shared/safe\";\nimport {\n\tgetEnumMemberName,\n\tisEnumMember,\n\tnoop,\n\tpick,\n} from \"@zwave-js/shared/safe\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\tSET_VALUE_HOOKS,\n\ttype SetValueImplementation,\n\ttype SetValueImplementationHooksFactory,\n\tthrowMissingPropertyKey,\n\tthrowUnsupportedProperty,\n\tthrowUnsupportedPropertyKey,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n\ttype RefreshValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport {\n\tBarrierOperatorCommand,\n\tBarrierState,\n\tSubsystemState,\n\tSubsystemType,\n} from \"../lib/_Types.js\";\n\nexport const BarrierOperatorCCValues = V.defineCCValues(\n\tCommandClasses[\"Barrier Operator\"],\n\t{\n\t\t...V.staticProperty(\"supportedSubsystemTypes\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\n\t\t...V.staticProperty(\n\t\t\t\"position\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: \"Barrier Position\",\n\t\t\t\tunit: \"%\",\n\t\t\t\tmax: 100,\n\t\t\t} as const,\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"targetState\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.UInt8,\n\t\t\t\tlabel: \"Target Barrier State\",\n\t\t\t\tstates: enumValuesToMetadataStates(BarrierState, [\n\t\t\t\t\tBarrierState.Open,\n\t\t\t\t\tBarrierState.Closed,\n\t\t\t\t]),\n\t\t\t} as const,\n\t\t),\n\n\t\t...V.staticProperty(\n\t\t\t\"currentState\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: \"Current Barrier State\",\n\t\t\t\tstates: enumValuesToMetadataStates(BarrierState),\n\t\t\t} as const,\n\t\t),\n\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"signalingState\",\n\t\t\t\"signalingState\",\n\t\t\t(subsystemType: SubsystemType) => subsystemType,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"signalingState\"\n\t\t\t\t&& typeof propertyKey === \"number\",\n\t\t\t(subsystemType: SubsystemType) => ({\n\t\t\t\t...ValueMetadata.UInt8,\n\t\t\t\tlabel: `Signaling State (${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t)\n\t\t\t\t})`,\n\t\t\t\tstates: enumValuesToMetadataStates(SubsystemState),\n\t\t\t} as const),\n\t\t),\n\t},\n);\n\n@API(CommandClasses[\"Barrier Operator\"])\nexport class BarrierOperatorCCAPI extends CCAPI {\n\tpublic supportsCommand(\n\t\tcmd: BarrierOperatorCommand,\n\t): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase BarrierOperatorCommand.Get:\n\t\t\tcase BarrierOperatorCommand.Set:\n\t\t\tcase BarrierOperatorCommand.SignalingCapabilitiesGet:\n\t\t\tcase BarrierOperatorCommand.EventSignalingGet:\n\t\t\tcase BarrierOperatorCommand.EventSignalingSet:\n\t\t\t\treturn true; // This is mandatory\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async get() {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.Get,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"currentState\", \"position\"]);\n\t\t}\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async set(\n\t\ttargetState: BarrierState.Open | BarrierState.Closed,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.Set,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\ttargetState,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\t@validateArgs()\n\tpublic async getSignalingCapabilities(): Promise<\n\t\tMaybeNotKnown<readonly SubsystemType[]>\n\t> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.SignalingCapabilitiesGet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCSignalingCapabilitiesGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCSignalingCapabilitiesReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.supportedSubsystemTypes;\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async getEventSignaling(\n\t\tsubsystemType: SubsystemType,\n\t): Promise<MaybeNotKnown<SubsystemState>> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.EventSignalingGet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCEventSignalingGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tsubsystemType,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tBarrierOperatorCCEventSignalingReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.subsystemState;\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async setEventSignaling(\n\t\tsubsystemType: SubsystemType,\n\t\tsubsystemState: SubsystemState,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tBarrierOperatorCommand,\n\t\t\tBarrierOperatorCommand.EventSignalingSet,\n\t\t);\n\n\t\tconst cc = new BarrierOperatorCCEventSignalingSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tsubsystemType,\n\t\t\tsubsystemState,\n\t\t});\n\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(\n\t\t\tthis: BarrierOperatorCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t\tvalue,\n\t\t) {\n\t\t\tif (property === \"targetState\") {\n\t\t\t\tif (typeof value !== \"number\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"number\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst targetValue = value === BarrierState.Closed\n\t\t\t\t\t? BarrierState.Closed\n\t\t\t\t\t: BarrierState.Open;\n\t\t\t\treturn this.set(targetValue);\n\t\t\t} else if (property === \"signalingState\") {\n\t\t\t\tif (propertyKey == undefined) {\n\t\t\t\t\tthrowMissingPropertyKey(this.ccId, property);\n\t\t\t\t} else if (typeof propertyKey !== \"number\") {\n\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\tpropertyKey,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (typeof value !== \"number\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"number\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn this.setEventSignaling(propertyKey, value);\n\t\t\t} else {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\tprotected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory = (\n\t\t{ property, propertyKey },\n\t\tvalue,\n\t\t_options,\n\t) => {\n\t\tconst valueId = {\n\t\t\tcommandClass: this.ccId,\n\t\t\tproperty,\n\t\t\tpropertyKey,\n\t\t};\n\n\t\tif (BarrierOperatorCCValues.targetState.is(valueId)) {\n\t\t\tconst currentStateValueId = BarrierOperatorCCValues.currentState\n\t\t\t\t.endpoint(\n\t\t\t\t\tthis.endpoint.index,\n\t\t\t\t);\n\n\t\t\tconst targetValue = value === BarrierState.Closed\n\t\t\t\t? BarrierState.Closed\n\t\t\t\t: BarrierState.Open;\n\n\t\t\treturn {\n\t\t\t\t// Barrier Operator commands may take some time to be executed.\n\t\t\t\t// Therefore we try to supervise the command execution and delay the\n\t\t\t\t// optimistic update until the final result is received.\n\t\t\t\tsupervisionDelayedUpdates: true,\n\t\t\t\tsupervisionOnSuccess: () => {\n\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\tcurrentStateValueId,\n\t\t\t\t\t\ttargetValue,\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tsupervisionOnFailure: async () => {\n\t\t\t\t\t// The command failed, so now we don't know the status - refresh the current value\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait this.get();\n\t\t\t\t\t} catch {\n\t\t\t\t\t\t// ignore\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\toptimisticallyUpdateRelatedValues: (\n\t\t\t\t\tsupervisedAndSuccessful,\n\t\t\t\t) => {\n\t\t\t\t\t// For barriers, do not update the current value unless we actually know the command was successful\n\t\t\t\t\tif (!supervisedAndSuccessful) return;\n\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\t\tcurrentStateValueId,\n\t\t\t\t\t\t\ttargetValue,\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (this.isMulticast()) {\n\t\t\t\t\t\t// Figure out which nodes were affected by this command\n\t\t\t\t\t\tconst affectedNodes = this.endpoint.node.physicalNodes\n\t\t\t\t\t\t\t.filter((node) =>\n\t\t\t\t\t\t\t\tnode\n\t\t\t\t\t\t\t\t\t.getEndpoint(this.endpoint.index)\n\t\t\t\t\t\t\t\t\t?.supportsCC(this.ccId)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t// and optimistically update the currentValue\n\t\t\t\t\t\tfor (const node of affectedNodes) {\n\t\t\t\t\t\t\tthis.host\n\t\t\t\t\t\t\t\t.tryGetValueDB(node.id)\n\t\t\t\t\t\t\t\t?.setValue(currentStateValueId, targetValue);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\tverifyChanges: () => {\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\t// We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll\n\t\t\t\t\t\tthis.schedulePoll(currentStateValueId, targetValue);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// For multicasts, do not schedule a refresh - this could cause a LOT of traffic\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t} else if (BarrierOperatorCCValues.signalingState.is(valueId)) {\n\t\t\tconst subsystemType = propertyKey as SubsystemType;\n\t\t\tconst signalingStateValueId = BarrierOperatorCCValues\n\t\t\t\t.signalingState(subsystemType).endpoint(\n\t\t\t\t\tthis.endpoint.index,\n\t\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tverifyChanges: () => {\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\tthis.schedulePoll(signalingStateValueId, value, {\n\t\t\t\t\t\t\t// Signaling state changes are fast\n\t\t\t\t\t\t\ttransition: \"fast\",\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t};\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(\n\t\t\tthis: BarrierOperatorCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t) {\n\t\t\tswitch (property) {\n\t\t\t\tcase \"currentState\":\n\t\t\t\tcase \"position\":\n\t\t\t\t\treturn (await this.get())?.[property];\n\t\t\t\tcase \"signalingState\":\n\t\t\t\t\tif (propertyKey == undefined) {\n\t\t\t\t\t\tthrowMissingPropertyKey(this.ccId, property);\n\t\t\t\t\t} else if (typeof propertyKey !== \"number\") {\n\t\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\tpropertyKey,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn this.getEventSignaling(propertyKey);\n\t\t\t\tdefault:\n\t\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n}\n\n@commandClass(CommandClasses[\"Barrier Operator\"])\n@implementedVersion(1)\n@ccValues(BarrierOperatorCCValues)\nexport class BarrierOperatorCC extends CommandClass {\n\tdeclare ccCommand: BarrierOperatorCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Barrier Operator\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\t// Create targetState value if it does not exist\n\t\tthis.ensureMetadata(ctx, BarrierOperatorCCValues.targetState);\n\n\t\tctx.logNode(node.id, {\n\t\t\tmessage: \"Querying signaling capabilities...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tconst resp = await api.getSignalingCapabilities();\n\t\tif (resp) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tmessage: `Received supported subsystem types: ${\n\t\t\t\t\tresp\n\t\t\t\t\t\t.map((t) =>\n\t\t\t\t\t\t\t`\\n\u00B7 ${getEnumMemberName(SubsystemType, t)}`\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.join(\"\")\n\t\t\t\t}`,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\n\t\t\t// Enable all supported subsystems\n\t\t\tfor (const subsystemType of resp) {\n\t\t\t\t// Some devices report invalid subsystem types, but the CC API checks\n\t\t\t\t// for valid values and throws otherwise.\n\t\t\t\tif (!isEnumMember(SubsystemType, subsystemType)) continue;\n\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tmessage: `Enabling subsystem ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t\t)\n\t\t\t\t\t}...`,\n\t\t\t\t\tdirection: \"outbound\",\n\t\t\t\t});\n\t\t\t\tawait api.setEventSignaling(subsystemType, SubsystemState.On)\n\t\t\t\t\t.catch(noop);\n\t\t\t}\n\t\t}\n\n\t\tawait this.refreshValues(ctx);\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n\n\tpublic async refreshValues(\n\t\tctx: RefreshValuesContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Barrier Operator\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tconst supportedSubsystems: SubsystemType[] = this.getValue(\n\t\t\tctx,\n\t\t\tBarrierOperatorCCValues.supportedSubsystemTypes,\n\t\t) ?? [];\n\n\t\tfor (const subsystemType of supportedSubsystems) {\n\t\t\t// Some devices report invalid subsystem types, but the CC API checks\n\t\t\t// for valid values and throws otherwise.\n\t\t\tif (!isEnumMember(SubsystemType, subsystemType)) continue;\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tmessage: `Querying event signaling state for subsystem ${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t)\n\t\t\t\t}...`,\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tconst state = await api.getEventSignaling(subsystemType);\n\t\t\tif (state != undefined) {\n\t\t\t\tctx.logNode(node.id, {\n\t\t\t\t\tmessage: `Subsystem ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tSubsystemType,\n\t\t\t\t\t\t\tsubsystemType,\n\t\t\t\t\t\t)\n\t\t\t\t\t} has state ${getEnumMemberName(SubsystemState, state)}`,\n\t\t\t\t\tdirection: \"inbound\",\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tctx.logNode(node.id, {\n\t\t\tmessage: \"querying current barrier state...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tawait api.get();\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCSetOptions {\n\ttargetState: BarrierState.Open | BarrierState.Closed;\n}\n\n@CCCommand(BarrierOperatorCommand.Set)\n@useSupervision()\nexport class BarrierOperatorCCSet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.targetState = options.targetState;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCSet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic targetState: BarrierState.Open | BarrierState.Closed;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.targetState]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"target state\": this.targetState },\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCReportOptions {\n\tposition: MaybeUnknown<number>;\n\tcurrentState: MaybeUnknown<BarrierState>;\n}\n\n@CCCommand(BarrierOperatorCommand.Report)\n@ccValueProperty(\"currentState\", BarrierOperatorCCValues.currentState)\n@ccValueProperty(\"position\", BarrierOperatorCCValues.position)\nexport class BarrierOperatorCCReport extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.position = options.position;\n\t\tthis.currentState = options.currentState;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCReport {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\t// The payload byte encodes information about the state and position in a single value\n\t\tconst payloadValue = raw.payload[0];\n\t\tlet position: MaybeUnknown<number>;\n\t\tif (payloadValue <= 99) {\n\t\t\t// known position\n\t\t\tposition = payloadValue;\n\t\t} else if (payloadValue === 255) {\n\t\t\t// known position, fully opened\n\t\t\tposition = 100;\n\t\t} else {\n\t\t\t// unknown position\n\t\t\tposition = UNKNOWN_STATE;\n\t\t}\n\n\t\tlet currentState: MaybeUnknown<BarrierState>;\n\t\tif (\n\t\t\tpayloadValue === BarrierState.Closed\n\t\t\t|| payloadValue >= BarrierState.Closing\n\t\t) {\n\t\t\t// predefined states\n\t\t\tcurrentState = payloadValue;\n\t\t} else if (payloadValue > 0 && payloadValue <= 99) {\n\t\t\t// stopped at exact position\n\t\t\tcurrentState = BarrierState.Stopped;\n\t\t} else {\n\t\t\t// invalid value, assume unknown\n\t\t\tcurrentState = UNKNOWN_STATE;\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tposition,\n\t\t\tcurrentState,\n\t\t});\n\t}\n\n\tpublic readonly currentState: MaybeUnknown<BarrierState>;\n\n\tpublic readonly position: MaybeUnknown<number>;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"barrier position\": maybeUnknownToString(this.position),\n\t\t\t\t\"barrier state\": this.currentState != undefined\n\t\t\t\t\t? getEnumMemberName(BarrierState, this.currentState)\n\t\t\t\t\t: \"unknown\",\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(BarrierOperatorCommand.Get)\n@expectedCCResponse(BarrierOperatorCCReport)\nexport class BarrierOperatorCCGet extends BarrierOperatorCC {}\n\n// @publicAPI\nexport interface BarrierOperatorCCSignalingCapabilitiesReportOptions {\n\tsupportedSubsystemTypes: SubsystemType[];\n}\n\n@CCCommand(BarrierOperatorCommand.SignalingCapabilitiesReport)\n@ccValueProperty(\n\t\"supportedSubsystemTypes\",\n\tBarrierOperatorCCValues.supportedSubsystemTypes,\n)\nexport class BarrierOperatorCCSignalingCapabilitiesReport\n\textends BarrierOperatorCC\n{\n\tpublic constructor(\n\t\toptions: WithAddress<\n\t\t\tBarrierOperatorCCSignalingCapabilitiesReportOptions\n\t\t>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.supportedSubsystemTypes = options.supportedSubsystemTypes;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCSignalingCapabilitiesReport {\n\t\tconst supportedSubsystemTypes: SubsystemType[] = parseBitMask(\n\t\t\traw.payload,\n\t\t\tSubsystemType.Audible,\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsupportedSubsystemTypes,\n\t\t});\n\t}\n\n\tpublic readonly supportedSubsystemTypes: readonly SubsystemType[];\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"supported types\": this.supportedSubsystemTypes\n\t\t\t\t\t.map((t) => `\\n\u00B7 ${getEnumMemberName(SubsystemType, t)}`)\n\t\t\t\t\t.join(\"\"),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(BarrierOperatorCommand.SignalingCapabilitiesGet)\n@expectedCCResponse(BarrierOperatorCCSignalingCapabilitiesReport)\nexport class BarrierOperatorCCSignalingCapabilitiesGet\n\textends BarrierOperatorCC\n{}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingSetOptions {\n\tsubsystemType: SubsystemType;\n\tsubsystemState: SubsystemState;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingSet)\n@useSupervision()\nexport class BarrierOperatorCCEventSignalingSet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.subsystemType = options.subsystemType;\n\t\tthis.subsystemState = options.subsystemState;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingSet {\n\t\t// TODO: Deserialize payload\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCEventSignalingSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic subsystemType: SubsystemType;\n\tpublic subsystemState: SubsystemState;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.subsystemType, this.subsystemState]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t\t\"subsystem state\": getEnumMemberName(\n\t\t\t\t\tSubsystemState,\n\t\t\t\t\tthis.subsystemState,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingReportOptions {\n\tsubsystemType: SubsystemType;\n\tsubsystemState: SubsystemState;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingReport)\nexport class BarrierOperatorCCEventSignalingReport extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.subsystemType = options.subsystemType;\n\t\tthis.subsystemState = options.subsystemState;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst subsystemType: SubsystemType = raw.payload[0];\n\t\tconst subsystemState: SubsystemState = raw.payload[1];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsubsystemType,\n\t\t\tsubsystemState,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\tconst signalingStateValue = BarrierOperatorCCValues.signalingState(\n\t\t\tthis.subsystemType,\n\t\t);\n\n\t\tthis.ensureMetadata(ctx, signalingStateValue);\n\t\tthis.setValue(ctx, signalingStateValue, this.subsystemState);\n\n\t\treturn true;\n\t}\n\n\tpublic readonly subsystemType: SubsystemType;\n\tpublic readonly subsystemState: SubsystemState;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t\t\"subsystem state\": getEnumMemberName(\n\t\t\t\t\tSubsystemState,\n\t\t\t\t\tthis.subsystemState,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface BarrierOperatorCCEventSignalingGetOptions {\n\tsubsystemType: SubsystemType;\n}\n\n@CCCommand(BarrierOperatorCommand.EventSignalingGet)\n@expectedCCResponse(BarrierOperatorCCEventSignalingReport)\nexport class BarrierOperatorCCEventSignalingGet extends BarrierOperatorCC {\n\tpublic constructor(\n\t\toptions: WithAddress<BarrierOperatorCCEventSignalingGetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.subsystemType = options.subsystemType;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): BarrierOperatorCCEventSignalingGet {\n\t\t// TODO: Deserialize payload\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new BarrierOperatorCCEventSignalingGet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic subsystemType: SubsystemType;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.subsystemType]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"subsystem type\": getEnumMemberName(\n\t\t\t\t\tSubsystemType,\n\t\t\t\t\tthis.subsystemType,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["import_safe"]
7
7
  }