@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
@@ -23,8 +23,12 @@ __export(Values_exports, {
23
23
  defaultCCValueOptions: () => defaultCCValueOptions
24
24
  });
25
25
  module.exports = __toCommonJS(Values_exports);
26
- var import_safe = require("@zwave-js/core/safe");
27
- var import_safe2 = require("@zwave-js/shared/safe");
26
+ var import_safe = require("@zwave-js/shared/safe");
27
+ var import_CCValues_generated = require("../cc/_CCValues.generated.js");
28
+ function defineCCValues(commandClass, _) {
29
+ return import_CCValues_generated.CCValues[commandClass];
30
+ }
31
+ __name(defineCCValues, "defineCCValues");
28
32
  const defaultCCValueOptions = {
29
33
  internal: false,
30
34
  minVersion: 1,
@@ -33,106 +37,7 @@ const defaultCCValueOptions = {
33
37
  supportsEndpoints: true,
34
38
  autoCreate: true
35
39
  };
36
- function defineStaticCCValue(commandClass, blueprint) {
37
- const _blueprint = {
38
- ...blueprint,
39
- options: {
40
- ...defaultCCValueOptions,
41
- ...blueprint.options
42
- }
43
- };
44
- const valueId = {
45
- commandClass,
46
- property: _blueprint.property,
47
- propertyKey: _blueprint.propertyKey
48
- };
49
- if (valueId.propertyKey === void 0)
50
- delete valueId.propertyKey;
51
- const ret = {
52
- get id() {
53
- return { ...valueId };
54
- },
55
- endpoint: /* @__PURE__ */ __name((endpoint = 0) => {
56
- if (!_blueprint.options.supportsEndpoints)
57
- endpoint = 0;
58
- return { ...valueId, endpoint };
59
- }, "endpoint"),
60
- is: /* @__PURE__ */ __name((testValueId) => {
61
- return valueId.commandClass === testValueId.commandClass && valueId.property === testValueId.property && valueId.propertyKey === testValueId.propertyKey;
62
- }, "is"),
63
- get meta() {
64
- return { ...import_safe.ValueMetadata.Any, ..._blueprint.meta };
65
- },
66
- get options() {
67
- return { ..._blueprint.options };
68
- }
69
- };
70
- return ret;
71
- }
72
- __name(defineStaticCCValue, "defineStaticCCValue");
73
- function defineDynamicCCValue(commandClass, blueprint) {
74
- const options = {
75
- ...defaultCCValueOptions,
76
- ...blueprint.options
77
- };
78
- const ret = /* @__PURE__ */ __name((...args) => {
79
- const _blueprint = blueprint(...args);
80
- const actualBlueprint = {
81
- ..._blueprint
82
- };
83
- const valueId = {
84
- commandClass,
85
- property: actualBlueprint.property,
86
- propertyKey: actualBlueprint.propertyKey
87
- };
88
- if (valueId.propertyKey === void 0)
89
- delete valueId.propertyKey;
90
- const value = {
91
- get id() {
92
- return { ...valueId };
93
- },
94
- endpoint: /* @__PURE__ */ __name((endpoint = 0) => {
95
- if (!options.supportsEndpoints)
96
- endpoint = 0;
97
- return { ...valueId, endpoint };
98
- }, "endpoint"),
99
- get meta() {
100
- return { ...import_safe.ValueMetadata.Any, ...actualBlueprint.meta };
101
- }
102
- };
103
- return value;
104
- }, "ret");
105
- Object.defineProperty(ret, "options", {
106
- configurable: false,
107
- enumerable: true,
108
- get() {
109
- return { ...options };
110
- }
111
- });
112
- Object.defineProperty(ret, "is", {
113
- configurable: false,
114
- enumerable: false,
115
- writable: false,
116
- value: /* @__PURE__ */ __name((id) => id.commandClass === commandClass && blueprint.is(id), "value")
117
- });
118
- return ret;
119
- }
120
- __name(defineDynamicCCValue, "defineDynamicCCValue");
121
40
  const V = {
122
- /** Defines multiple static CC values that belong to the same CC */
123
- defineStaticCCValues(commandClass, values) {
124
- return Object.fromEntries(Object.entries(values).map(([key, blueprint]) => [
125
- key,
126
- defineStaticCCValue(commandClass, blueprint)
127
- ]));
128
- },
129
- /** Defines multiple static CC values that belong to the same CC */
130
- defineDynamicCCValues(commandClass, values) {
131
- return Object.fromEntries(Object.entries(values).map(([key, blueprint]) => [
132
- key,
133
- defineDynamicCCValue(commandClass, blueprint)
134
- ]));
135
- },
136
41
  /** Returns a CC value definition that is named like the value `property` */
137
42
  staticProperty(property, meta, options) {
138
43
  return {
@@ -168,8 +73,8 @@ const V = {
168
73
  dynamicPropertyWithName(name, property, is, meta, options) {
169
74
  return {
170
75
  [name]: Object.assign((...args) => ({
171
- property: (0, import_safe2.evalOrStatic)(property, ...args),
172
- meta: (0, import_safe2.evalOrStatic)(meta, ...args)
76
+ property: (0, import_safe.evalOrStatic)(property, ...args),
77
+ meta: (0, import_safe.evalOrStatic)(meta, ...args)
173
78
  }), { is, options })
174
79
  };
175
80
  },
@@ -178,13 +83,14 @@ const V = {
178
83
  return {
179
84
  [name]: Object.assign((...args) => {
180
85
  return {
181
- property: (0, import_safe2.evalOrStatic)(property, ...args),
182
- propertyKey: (0, import_safe2.evalOrStatic)(propertyKey, ...args),
183
- meta: (0, import_safe2.evalOrStatic)(meta, ...args)
86
+ property: (0, import_safe.evalOrStatic)(property, ...args),
87
+ propertyKey: (0, import_safe.evalOrStatic)(propertyKey, ...args),
88
+ meta: (0, import_safe.evalOrStatic)(meta, ...args)
184
89
  };
185
90
  }, { is, options })
186
91
  };
187
- }
92
+ },
93
+ defineCCValues
188
94
  };
189
95
  // Annotate the CommonJS export names for ESM import in node:
190
96
  0 && (module.exports = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/lib/Values.ts"],
4
- "sourcesContent": ["import {\n\ttype CommandClasses,\n\ttype EndpointId,\n\ttype ValueID,\n\tValueMetadata,\n} from \"@zwave-js/core/safe\";\nimport type { GetDeviceConfig, GetValueDB } from \"@zwave-js/host\";\nimport {\n\ttype FnOrStatic,\n\ttype ReturnTypeOrStatic,\n\tevalOrStatic,\n} from \"@zwave-js/shared/safe\";\nimport type { Overwrite } from \"alcalzone-shared/types\";\nimport type { ValueIDProperties } from \"./API.js\";\n\n// HINT: To fully view types for definitions created by this, open\n// node_modules/typescript/lib/tsserver.js and change the definition of\n// ts.defaultMaximumTruncationLength = 160\n// to something higher like\n// ts.defaultMaximumTruncationLength = 1000\n// Then restart TS Server\n\nexport interface CCValueOptions {\n\t/**\n\t * Whether the CC value is internal. Internal values are not exposed to the user.\n\t */\n\tinternal?: boolean;\n\t/**\n\t * The minimum CC version required for this value to exist.\n\t */\n\tminVersion?: number;\n\t/**\n\t * Whether this value represents a state (`true`) or a notification/event (`false`). Default: `true`\n\t */\n\tstateful?: boolean;\n\t/**\n\t * Omit this value from value logs. Default: `false`\n\t */\n\tsecret?: boolean;\n\n\t/** Whether the CC value may exist on endpoints. Default: `true` */\n\tsupportsEndpoints?: boolean;\n\n\t/**\n\t * Can be used to dynamically decide if this value should be created automatically.\n\t * This is ignored for dynamic values and defaults to `true` if not given.\n\t */\n\tautoCreate?:\n\t\t| boolean\n\t\t| ((\n\t\t\tctx: GetValueDB & GetDeviceConfig,\n\t\t\tendpoint: EndpointId,\n\t\t) => boolean);\n}\n\nexport const defaultCCValueOptions = {\n\tinternal: false,\n\tminVersion: 1,\n\tsecret: false,\n\tstateful: true,\n\tsupportsEndpoints: true,\n\tautoCreate: true,\n} as const;\n\ntype DefaultOptions = typeof defaultCCValueOptions;\n\n// expands object types recursively\nexport type ExpandRecursively<T> =\n\t// Split functions with properties into the function and object parts\n\tT extends (...args: infer A) => infer R\n\t\t? [keyof T] extends [never] ? (...args: A) => ExpandRecursively<R>\n\t\t:\n\t\t\t& ((...args: A) => ExpandRecursively<R>)\n\t\t\t& {\n\t\t\t\t[P in keyof T]: ExpandRecursively<T[P]>;\n\t\t\t}\n\t\t// Expand object types\n\t\t: T extends object\n\t\t\t? T extends infer O ? { [K in keyof O]: ExpandRecursively<O[K]> }\n\t\t\t: never\n\t\t// Fallback to the type itself if no match\n\t\t: T;\n\nexport type ExpandRecursivelySkipMeta<T> =\n\t// Split functions with properties into the function and object parts\n\tT extends (...args: infer A) => infer R\n\t\t? [keyof T] extends [never]\n\t\t\t? (...args: A) => ExpandRecursivelySkipMeta<R>\n\t\t:\n\t\t\t& ((...args: A) => ExpandRecursivelySkipMeta<R>)\n\t\t\t& {\n\t\t\t\t[P in keyof T]: ExpandRecursivelySkipMeta<T[P]>;\n\t\t\t}\n\t\t// Ignore the ValueMetadata type\n\t\t: T extends ValueMetadata ? T\n\t\t// Expand object types\n\t\t: T extends object\n\t\t\t? T extends infer O\n\t\t\t\t? { [K in keyof O]: ExpandRecursivelySkipMeta<O[K]> }\n\t\t\t: never\n\t\t// Fallback to the type itself if no match\n\t\t: T;\n\ntype InferValueIDBase<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends CCValueBlueprint,\n\tTWorker = {\n\t\tcommandClass: TCommandClass;\n\t} & Pick<TBlueprint, \"property\" | \"propertyKey\">,\n> = {\n\t[K in keyof TWorker as unknown extends TWorker[K] ? never : K]: TWorker[K];\n};\n\ntype ToStaticCCValues<\n\tTCommandClass extends CommandClasses,\n\tTValues extends Record<keyof TValues, CCValueBlueprint>,\n> = Readonly<\n\t{\n\t\t[K in keyof TValues]: ExpandRecursively<\n\t\t\tInferStaticCCValue<TCommandClass, TValues[K]>\n\t\t>;\n\t}\n>;\n\ntype ToDynamicCCValues<\n\tTCommandClass extends CommandClasses,\n\tTValues extends Record<keyof TValues, DynamicCCValueBlueprint<any>>,\n> = Readonly<\n\t{\n\t\t[K in keyof TValues]: ExpandRecursively<\n\t\t\tInferDynamicCCValue<TCommandClass, TValues[K]>\n\t\t>;\n\t}\n>;\n\ntype InferArgs<T extends FnOrStatic<any, any>[]> = T extends [\n\t(...args: infer A) => any,\n\t...any,\n] ? A\n\t: T extends [any, ...infer R] ? InferArgs<R>\n\t: [];\n\n/** Defines a single static CC values that belong to a CC */\nfunction defineStaticCCValue<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends CCValueBlueprint,\n>(\n\tcommandClass: TCommandClass,\n\tblueprint: TBlueprint,\n): ExpandRecursively<InferStaticCCValue<TCommandClass, TBlueprint>> {\n\t// Normalize value options\n\tconst _blueprint = {\n\t\t...blueprint,\n\t\toptions: {\n\t\t\t...defaultCCValueOptions,\n\t\t\t...blueprint.options,\n\t\t},\n\t};\n\n\tconst valueId = {\n\t\tcommandClass,\n\t\tproperty: _blueprint.property,\n\t\tpropertyKey: _blueprint.propertyKey,\n\t};\n\tif (valueId.propertyKey === undefined) delete valueId.propertyKey;\n\n\tconst ret: InferStaticCCValue<TCommandClass, TBlueprint> = {\n\t\tget id() {\n\t\t\treturn { ...valueId };\n\t\t},\n\t\tendpoint: (endpoint: number = 0) => {\n\t\t\tif (!_blueprint.options.supportsEndpoints) endpoint = 0;\n\t\t\treturn { ...valueId, endpoint } as any;\n\t\t},\n\t\tis: (testValueId) => {\n\t\t\treturn (\n\t\t\t\tvalueId.commandClass === testValueId.commandClass\n\t\t\t\t&& valueId.property === testValueId.property\n\t\t\t\t&& valueId.propertyKey === testValueId.propertyKey\n\t\t\t);\n\t\t},\n\t\tget meta() {\n\t\t\treturn { ...ValueMetadata.Any, ..._blueprint.meta } as any;\n\t\t},\n\t\tget options() {\n\t\t\treturn { ..._blueprint.options } as any;\n\t\t},\n\t};\n\n\treturn ret as any;\n}\n\n/** Defines a single CC value which depends on one or more parameters */\nfunction defineDynamicCCValue<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends DynamicCCValueBlueprint<any[]>,\n>(\n\tcommandClass: TCommandClass,\n\tblueprint: TBlueprint,\n): ExpandRecursively<InferDynamicCCValue<TCommandClass, TBlueprint>> {\n\tconst options = {\n\t\t...defaultCCValueOptions,\n\t\t...blueprint.options,\n\t};\n\n\tconst ret: ExpandRecursively<\n\t\tInferDynamicCCValue<TCommandClass, TBlueprint>\n\t> = ((...args: Parameters<TBlueprint>) => {\n\t\tconst _blueprint = blueprint(...args);\n\n\t\t// Normalize value options\n\t\tconst actualBlueprint = {\n\t\t\t..._blueprint,\n\t\t};\n\n\t\tconst valueId = {\n\t\t\tcommandClass,\n\t\t\tproperty: actualBlueprint.property,\n\t\t\tpropertyKey: actualBlueprint.propertyKey,\n\t\t};\n\t\tif (valueId.propertyKey === undefined) delete valueId.propertyKey;\n\n\t\tconst value: Omit<\n\t\t\tInferStaticCCValue<TCommandClass, ReturnType<TBlueprint>>,\n\t\t\t\"options\" | \"is\"\n\t\t> = {\n\t\t\tget id() {\n\t\t\t\treturn { ...valueId };\n\t\t\t},\n\t\t\tendpoint: (endpoint: number = 0) => {\n\t\t\t\tif (!options.supportsEndpoints) endpoint = 0;\n\t\t\t\treturn { ...valueId, endpoint } as any;\n\t\t\t},\n\t\t\tget meta() {\n\t\t\t\treturn { ...ValueMetadata.Any, ...actualBlueprint.meta } as any;\n\t\t\t},\n\t\t};\n\n\t\treturn value;\n\t}) as any;\n\n\tObject.defineProperty(ret, \"options\", {\n\t\tconfigurable: false,\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn { ...options };\n\t\t},\n\t});\n\n\tObject.defineProperty(ret, \"is\", {\n\t\tconfigurable: false,\n\t\tenumerable: false,\n\t\twritable: false,\n\t\tvalue: (id: ValueID) =>\n\t\t\tid.commandClass === commandClass && blueprint.is(id),\n\t});\n\n\treturn ret;\n}\n\n// Namespace for utilities to define CC values\nexport const V = {\n\t/** Defines multiple static CC values that belong to the same CC */\n\tdefineStaticCCValues<\n\t\tTCommandClass extends CommandClasses,\n\t\tTValues extends Record<keyof TValues, CCValueBlueprint>,\n\t>(\n\t\tcommandClass: TCommandClass,\n\t\tvalues: TValues,\n\t): TValues extends Record<keyof TValues, CCValueBlueprint>\n\t\t? ExpandRecursively<ToStaticCCValues<TCommandClass, TValues>>\n\t\t: never\n\t{\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries<CCValueBlueprint>(values).map(([key, blueprint]) => [\n\t\t\t\tkey,\n\t\t\t\tdefineStaticCCValue(commandClass, blueprint),\n\t\t\t]),\n\t\t) as any;\n\t},\n\n\t/** Defines multiple static CC values that belong to the same CC */\n\tdefineDynamicCCValues<\n\t\tTCommandClass extends CommandClasses,\n\t\tTValues extends Record<keyof TValues, DynamicCCValueBlueprint<any>>,\n\t>(\n\t\tcommandClass: TCommandClass,\n\t\tvalues: TValues,\n\t): TValues extends Record<keyof TValues, DynamicCCValueBlueprint<any>>\n\t\t? ExpandRecursively<ToDynamicCCValues<TCommandClass, TValues>>\n\t\t: never\n\t{\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries<DynamicCCValueBlueprint<any>>(values).map(\n\t\t\t\t([key, blueprint]) => [\n\t\t\t\t\tkey,\n\t\t\t\t\tdefineDynamicCCValue(commandClass, blueprint),\n\t\t\t\t],\n\t\t\t),\n\t\t) as any;\n\t},\n\n\t/** Returns a CC value definition that is named like the value `property` */\n\tstaticProperty<\n\t\tTProp extends string | number,\n\t\tTMeta extends ValueMetadata,\n\t\tTOptions extends CCValueOptions,\n\t>(\n\t\tproperty: TProp,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TProp]: {\n\t\t\tproperty: TProp;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[property]: {\n\t\t\t\tproperty,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and `property` */\n\tstaticPropertyWithName<\n\t\tTName extends string,\n\t\tTProp extends string | number,\n\t\tTMeta extends ValueMetadata,\n\t\tTOptions extends CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\tproperty: TProp;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: {\n\t\t\t\tproperty,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name, `property` and `propertyKey` */\n\tstaticPropertyAndKeyWithName<\n\t\tTName extends string,\n\t\tTProp extends string | number,\n\t\tTKey extends string | number,\n\t\tTMeta extends ValueMetadata,\n\t\tTOptions extends CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tpropertyKey: TKey,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\tproperty: TProp;\n\t\t\tpropertyKey: TKey;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: {\n\t\t\t\tproperty,\n\t\t\t\tpropertyKey,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and a dynamic `property` */\n\tdynamicPropertyWithName<\n\t\tTName extends string,\n\t\tTProp extends FnOrStatic<any[], ValueIDProperties[\"property\"]>,\n\t\tTMeta extends FnOrStatic<any[], ValueMetadata> = ValueMetadata,\n\t\tTOptions extends CCValueOptions = CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tis: PartialCCValuePredicate,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\t(...args: InferArgs<[TProp, TMeta]>): {\n\t\t\t\tproperty: ReturnTypeOrStatic<TProp>;\n\t\t\t\tmeta: ReturnTypeOrStatic<TMeta>;\n\t\t\t};\n\t\t\tis: PartialCCValuePredicate;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: Object.assign(\n\t\t\t\t(...args: InferArgs<[TProp, TMeta]>) => ({\n\t\t\t\t\tproperty: evalOrStatic(property, ...args),\n\t\t\t\t\tmeta: evalOrStatic(meta, ...args),\n\t\t\t\t}),\n\t\t\t\t{ is, options },\n\t\t\t),\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and a dynamic `property` */\n\tdynamicPropertyAndKeyWithName<\n\t\tTName extends string,\n\t\tTProp extends FnOrStatic<any[], ValueIDProperties[\"property\"]>,\n\t\tTKey extends FnOrStatic<any[], ValueIDProperties[\"propertyKey\"]>,\n\t\tTMeta extends FnOrStatic<any[], ValueMetadata> = ValueMetadata,\n\t\tTOptions extends FnOrStatic<any[], CCValueOptions> = CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tpropertyKey: TKey,\n\t\tis: PartialCCValuePredicate,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\t(...args: InferArgs<[TProp, TKey, TMeta]>): {\n\t\t\t\tproperty: ReturnTypeOrStatic<TProp>;\n\t\t\t\tpropertyKey: ReturnTypeOrStatic<TKey>;\n\t\t\t\tmeta: ReturnTypeOrStatic<TMeta>;\n\t\t\t};\n\t\t\tis: PartialCCValuePredicate;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: Object.assign(\n\t\t\t\t(...args: any[]) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tproperty: evalOrStatic(property, ...args),\n\t\t\t\t\t\tpropertyKey: evalOrStatic(propertyKey, ...args),\n\t\t\t\t\t\tmeta: evalOrStatic(meta, ...args),\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\t{ is, options },\n\t\t\t),\n\t\t} as any;\n\t},\n};\n\nexport interface CCValueBlueprint extends Readonly<ValueIDProperties> {\n\treadonly meta?: Readonly<ValueMetadata>;\n\treadonly options?: Readonly<CCValueOptions>;\n}\n\nexport type CCValuePredicate = (valueId: ValueID) => boolean;\nexport type PartialCCValuePredicate = (\n\tproperties: ValueIDProperties,\n) => boolean;\n\n/** A blueprint for a CC value which depends on one or more parameters */\nexport interface DynamicCCValueBlueprint<TArgs extends any[]> {\n\t(...args: TArgs): Omit<CCValueBlueprint, \"options\">;\n\tis: PartialCCValuePredicate;\n\treadonly options?: Readonly<CCValueOptions>;\n}\n\ntype DropOptional<T> = {\n\t[K in keyof T as [undefined] extends [T[K]] ? never : K]: T[K];\n};\n\ntype MergeOptions<TOptions extends CCValueOptions> = DropOptional<\n\tCCValueOptions extends TOptions\n\t\t// When the type cannot be inferred exactly (not given), default to DefaultOptions\n\t\t? DefaultOptions\n\t\t: Overwrite<DefaultOptions, TOptions>\n>;\n\ntype MergeMeta<TMeta extends ValueMetadata> = DropOptional<\n\tValueMetadata extends TMeta\n\t\t// When the type cannot be inferred exactly (not given), default to ValueMetadata.Any\n\t\t? (typeof ValueMetadata)[\"Any\"]\n\t\t: Overwrite<(typeof ValueMetadata)[\"Any\"], TMeta>\n>;\n\n/** The common base type of all CC value definitions */\nexport interface CCValue {\n\treadonly id: Omit<ValueID, \"endpoint\">;\n\tendpoint(endpoint?: number): ValueID;\n\treadonly meta: ValueMetadata;\n}\n\ntype AddCCValueProperties<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends CCValueBlueprint,\n\tValueIDBase extends Record<string, any> = InferValueIDBase<\n\t\tTCommandClass,\n\t\tTBlueprint\n\t>,\n> = {\n\t/** Returns the value ID of this CC value, without endpoint information */\n\tget id(): ValueIDBase;\n\n\t/** Returns the value ID, specialized to the given endpoint */\n\tendpoint(\n\t\tendpoint?: number,\n\t): Readonly<\n\t\t& Pick<ValueIDBase, \"commandClass\">\n\t\t& { endpoint: number }\n\t\t& Omit<\n\t\t\tValueIDBase,\n\t\t\t\"commandClass\"\n\t\t>\n\t>;\n\n\t/** Whether the given value ID matches this value definition */\n\tis: CCValuePredicate;\n\n\t/** Returns the metadata for this value ID */\n\tget meta(): Readonly<MergeMeta<NonNullable<TBlueprint[\"meta\"]>>>;\n\t/** Returns the value options for this value ID */\n\tget options(): Readonly<MergeOptions<NonNullable<TBlueprint[\"options\"]>>>;\n};\n\n/** A CC value definition which depends on one or more parameters, transparently inferred from its arguments */\nexport type InferDynamicCCValue<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends DynamicCCValueBlueprint<any[]>,\n> = TBlueprint extends DynamicCCValueBlueprint<infer TArgs> ? {\n\t\t(...args: TArgs): Omit<\n\t\t\tInferStaticCCValue<TCommandClass, ReturnType<TBlueprint>>,\n\t\t\t\"options\" | \"is\"\n\t\t>;\n\n\t\t/** Whether the given value ID matches this value definition */\n\t\tis: CCValuePredicate;\n\n\t\treadonly options: InferStaticCCValue<\n\t\t\tTCommandClass,\n\t\t\tReturnType<TBlueprint> & { options: TBlueprint[\"options\"] }\n\t\t>[\"options\"];\n\t}\n\t: never;\n\n/** A static or evaluated CC value definition, transparently inferred from its arguments */\nexport type InferStaticCCValue<\n\tTCommandClass extends CommandClasses,\n\tTBlueprint extends CCValueBlueprint,\n> = Readonly<AddCCValueProperties<TCommandClass, TBlueprint>>;\n\n/** The generic variant of {@link InferStaticCCValue}, without inferring arguments */\nexport interface StaticCCValue extends CCValue {\n\t/** Whether the given value ID matches this value definition */\n\tis: CCValuePredicate;\n\treadonly options: Required<CCValueOptions>;\n}\n\n/** The generic variant of {@link InferDynamicCCValue}, without inferring arguments */\nexport type DynamicCCValue<TArgs extends any[] = any[]> =\n\t& ExpandRecursivelySkipMeta<(...args: TArgs) => CCValue>\n\t& {\n\t\t/** Whether the given value ID matches this value definition */\n\t\tis: CCValuePredicate;\n\t\treadonly options: Required<CCValueOptions>;\n\t};\n\nexport type StaticCCValueFactory<T> = (self: T) => StaticCCValue;\n\n// This interface is auto-generated by maintenance/generateCCValuesInterface.ts\n// Do not edit it by hand or your changes will be lost\nexport interface CCValues {\n\t// AUTO GENERATION BELOW\n\t\"Alarm Sensor\": typeof import(\"../cc/AlarmSensorCC.js\").AlarmSensorCCValues;\n\tAssociation: typeof import(\"../cc/AssociationCC.js\").AssociationCCValues;\n\t\"Association Group Information\":\n\t\ttypeof import(\"../cc/AssociationGroupInfoCC.js\").AssociationGroupInfoCCValues;\n\t\"Barrier Operator\":\n\t\ttypeof import(\"../cc/BarrierOperatorCC.js\").BarrierOperatorCCValues;\n\tBasic: typeof import(\"../cc/BasicCC.js\").BasicCCValues;\n\tBattery: typeof import(\"../cc/BatteryCC.js\").BatteryCCValues;\n\t\"Binary Sensor\":\n\t\ttypeof import(\"../cc/BinarySensorCC.js\").BinarySensorCCValues;\n\t\"Binary Switch\":\n\t\ttypeof import(\"../cc/BinarySwitchCC.js\").BinarySwitchCCValues;\n\t\"Central Scene\":\n\t\ttypeof import(\"../cc/CentralSceneCC.js\").CentralSceneCCValues;\n\t\"Climate Control Schedule\":\n\t\ttypeof import(\"../cc/ClimateControlScheduleCC.js\").ClimateControlScheduleCCValues;\n\t\"Color Switch\": typeof import(\"../cc/ColorSwitchCC.js\").ColorSwitchCCValues;\n\tConfiguration:\n\t\ttypeof import(\"../cc/ConfigurationCC.js\").ConfigurationCCValues;\n\t\"Door Lock\": typeof import(\"../cc/DoorLockCC.js\").DoorLockCCValues;\n\t\"Door Lock Logging\":\n\t\ttypeof import(\"../cc/DoorLockLoggingCC.js\").DoorLockLoggingCCValues;\n\t\"Energy Production\":\n\t\ttypeof import(\"../cc/EnergyProductionCC.js\").EnergyProductionCCValues;\n\t\"Entry Control\":\n\t\ttypeof import(\"../cc/EntryControlCC.js\").EntryControlCCValues;\n\t\"Firmware Update Meta Data\":\n\t\ttypeof import(\"../cc/FirmwareUpdateMetaDataCC.js\").FirmwareUpdateMetaDataCCValues;\n\t\"Humidity Control Mode\":\n\t\ttypeof import(\"../cc/HumidityControlModeCC.js\").HumidityControlModeCCValues;\n\t\"Humidity Control Operating State\":\n\t\ttypeof import(\"../cc/HumidityControlOperatingStateCC.js\").HumidityControlOperatingStateCCValues;\n\t\"Humidity Control Setpoint\":\n\t\ttypeof import(\"../cc/HumidityControlSetpointCC.js\").HumidityControlSetpointCCValues;\n\tIndicator: typeof import(\"../cc/IndicatorCC.js\").IndicatorCCValues;\n\tIrrigation: typeof import(\"../cc/IrrigationCC.js\").IrrigationCCValues;\n\tLanguage: typeof import(\"../cc/LanguageCC.js\").LanguageCCValues;\n\tLock: typeof import(\"../cc/LockCC.js\").LockCCValues;\n\t\"Manufacturer Specific\":\n\t\ttypeof import(\"../cc/ManufacturerSpecificCC.js\").ManufacturerSpecificCCValues;\n\tMeter: typeof import(\"../cc/MeterCC.js\").MeterCCValues;\n\t\"Multi Channel Association\":\n\t\ttypeof import(\"../cc/MultiChannelAssociationCC.js\").MultiChannelAssociationCCValues;\n\t\"Multi Channel\":\n\t\ttypeof import(\"../cc/MultiChannelCC.js\").MultiChannelCCValues;\n\t\"Multilevel Sensor\":\n\t\ttypeof import(\"../cc/MultilevelSensorCC.js\").MultilevelSensorCCValues;\n\t\"Multilevel Switch\":\n\t\ttypeof import(\"../cc/MultilevelSwitchCC.js\").MultilevelSwitchCCValues;\n\t\"Node Naming and Location\":\n\t\ttypeof import(\"../cc/NodeNamingCC.js\").NodeNamingAndLocationCCValues;\n\tNotification: typeof import(\"../cc/NotificationCC.js\").NotificationCCValues;\n\tProtection: typeof import(\"../cc/ProtectionCC.js\").ProtectionCCValues;\n\t\"Scene Activation\":\n\t\ttypeof import(\"../cc/SceneActivationCC.js\").SceneActivationCCValues;\n\t\"Scene Actuator Configuration\":\n\t\ttypeof import(\"../cc/SceneActuatorConfigurationCC.js\").SceneActuatorConfigurationCCValues;\n\t\"Scene Controller Configuration\":\n\t\ttypeof import(\"../cc/SceneControllerConfigurationCC.js\").SceneControllerConfigurationCCValues;\n\t\"Schedule Entry Lock\":\n\t\ttypeof import(\"../cc/ScheduleEntryLockCC.js\").ScheduleEntryLockCCValues;\n\t\"Sound Switch\": typeof import(\"../cc/SoundSwitchCC.js\").SoundSwitchCCValues;\n\tSupervision: typeof import(\"../cc/SupervisionCC.js\").SupervisionCCValues;\n\t\"Thermostat Fan Mode\":\n\t\ttypeof import(\"../cc/ThermostatFanModeCC.js\").ThermostatFanModeCCValues;\n\t\"Thermostat Fan State\":\n\t\ttypeof import(\"../cc/ThermostatFanStateCC.js\").ThermostatFanStateCCValues;\n\t\"Thermostat Mode\":\n\t\ttypeof import(\"../cc/ThermostatModeCC.js\").ThermostatModeCCValues;\n\t\"Thermostat Operating State\":\n\t\ttypeof import(\"../cc/ThermostatOperatingStateCC.js\").ThermostatOperatingStateCCValues;\n\t\"Thermostat Setpoint\":\n\t\ttypeof import(\"../cc/ThermostatSetpointCC.js\").ThermostatSetpointCCValues;\n\t\"Time Parameters\":\n\t\ttypeof import(\"../cc/TimeParametersCC.js\").TimeParametersCCValues;\n\t\"User Code\": typeof import(\"../cc/UserCodeCC.js\").UserCodeCCValues;\n\tVersion: typeof import(\"../cc/VersionCC.js\").VersionCCValues;\n\t\"Wake Up\": typeof import(\"../cc/WakeUpCC.js\").WakeUpCCValues;\n\t\"Window Covering\":\n\t\ttypeof import(\"../cc/WindowCoveringCC.js\").WindowCoveringCCValues;\n\t\"Z-Wave Plus Info\": typeof import(\"../cc/ZWavePlusCC.js\").ZWavePlusCCValues;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAAA,kBAKO;AAEP,IAAAA,eAIO;AA4CA,MAAM,wBAAwB;EACpC,UAAU;EACV,YAAY;EACZ,QAAQ;EACR,UAAU;EACV,mBAAmB;EACnB,YAAY;;AAkFb,SAAS,oBAIR,cACA,WAAqB;AAGrB,QAAM,aAAa;IAClB,GAAG;IACH,SAAS;MACR,GAAG;MACH,GAAG,UAAU;;;AAIf,QAAM,UAAU;IACf;IACA,UAAU,WAAW;IACrB,aAAa,WAAW;;AAEzB,MAAI,QAAQ,gBAAgB;AAAW,WAAO,QAAQ;AAEtD,QAAM,MAAqD;IAC1D,IAAI,KAAE;AACL,aAAO,EAAE,GAAG,QAAO;IACpB;IACA,UAAU,wBAAC,WAAmB,MAAK;AAClC,UAAI,CAAC,WAAW,QAAQ;AAAmB,mBAAW;AACtD,aAAO,EAAE,GAAG,SAAS,SAAQ;IAC9B,GAHU;IAIV,IAAI,wBAAC,gBAAe;AACnB,aACC,QAAQ,iBAAiB,YAAY,gBAClC,QAAQ,aAAa,YAAY,YACjC,QAAQ,gBAAgB,YAAY;IAEzC,GANI;IAOJ,IAAI,OAAI;AACP,aAAO,EAAE,GAAG,0BAAc,KAAK,GAAG,WAAW,KAAI;IAClD;IACA,IAAI,UAAO;AACV,aAAO,EAAE,GAAG,WAAW,QAAO;IAC/B;;AAGD,SAAO;AACR;AA/CS;AAkDT,SAAS,qBAIR,cACA,WAAqB;AAErB,QAAM,UAAU;IACf,GAAG;IACH,GAAG,UAAU;;AAGd,QAAM,MAED,2BAAI,SAAgC;AACxC,UAAM,aAAa,UAAU,GAAG,IAAI;AAGpC,UAAM,kBAAkB;MACvB,GAAG;;AAGJ,UAAM,UAAU;MACf;MACA,UAAU,gBAAgB;MAC1B,aAAa,gBAAgB;;AAE9B,QAAI,QAAQ,gBAAgB;AAAW,aAAO,QAAQ;AAEtD,UAAM,QAGF;MACH,IAAI,KAAE;AACL,eAAO,EAAE,GAAG,QAAO;MACpB;MACA,UAAU,wBAAC,WAAmB,MAAK;AAClC,YAAI,CAAC,QAAQ;AAAmB,qBAAW;AAC3C,eAAO,EAAE,GAAG,SAAS,SAAQ;MAC9B,GAHU;MAIV,IAAI,OAAI;AACP,eAAO,EAAE,GAAG,0BAAc,KAAK,GAAG,gBAAgB,KAAI;MACvD;;AAGD,WAAO;EACR,GAhCK;AAkCL,SAAO,eAAe,KAAK,WAAW;IACrC,cAAc;IACd,YAAY;IACZ,MAAG;AACF,aAAO,EAAE,GAAG,QAAO;IACpB;GACA;AAED,SAAO,eAAe,KAAK,MAAM;IAChC,cAAc;IACd,YAAY;IACZ,UAAU;IACV,OAAO,wBAAC,OACP,GAAG,iBAAiB,gBAAgB,UAAU,GAAG,EAAE,GAD7C;GAEP;AAED,SAAO;AACR;AAjES;AAoEF,MAAM,IAAI;;EAEhB,qBAIC,cACA,QAAe;AAKf,WAAO,OAAO,YACb,OAAO,QAA0B,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,SAAS,MAAM;MAClE;MACA,oBAAoB,cAAc,SAAS;KAC3C,CAAC;EAEJ;;EAGA,sBAIC,cACA,QAAe;AAKf,WAAO,OAAO,YACb,OAAO,QAAsC,MAAM,EAAE,IACpD,CAAC,CAAC,KAAK,SAAS,MAAM;MACrB;MACA,qBAAqB,cAAc,SAAS;KAC5C,CACD;EAEH;;EAGA,eAKC,UACA,MACA,SAAkB;AAQlB,WAAO;MACN,CAAC,QAAQ,GAAG;QACX;QACA;QACA;;;EAGH;;EAGA,uBAMC,MACA,UACA,MACA,SAAkB;AAQlB,WAAO;MACN,CAAC,IAAI,GAAG;QACP;QACA;QACA;;;EAGH;;EAGA,6BAOC,MACA,UACA,aACA,MACA,SAAkB;AASlB,WAAO;MACN,CAAC,IAAI,GAAG;QACP;QACA;QACA;QACA;;;EAGH;;EAGA,wBAMC,MACA,UACA,IACA,MACA,SAAkB;AAWlB,WAAO;MACN,CAAC,IAAI,GAAG,OAAO,OACd,IAAI,UAAqC;QACxC,cAAU,2BAAa,UAAU,GAAG,IAAI;QACxC,UAAM,2BAAa,MAAM,GAAG,IAAI;UAEjC,EAAE,IAAI,QAAO,CAAE;;EAGlB;;EAGA,8BAOC,MACA,UACA,aACA,IACA,MACA,SAAkB;AAYlB,WAAO;MACN,CAAC,IAAI,GAAG,OAAO,OACd,IAAI,SAAe;AAClB,eAAO;UACN,cAAU,2BAAa,UAAU,GAAG,IAAI;UACxC,iBAAa,2BAAa,aAAa,GAAG,IAAI;UAC9C,UAAM,2BAAa,MAAM,GAAG,IAAI;;MAElC,GACA,EAAE,IAAI,QAAO,CAAE;;EAGlB;;",
6
- "names": ["import_safe"]
4
+ "sourcesContent": ["import { type GetDeviceConfig } from \"@zwave-js/config\";\nimport {\n\ttype CommandClasses,\n\ttype EndpointId,\n\ttype GetValueDB,\n\ttype ValueID,\n\ttype ValueMetadata,\n} from \"@zwave-js/core/safe\";\nimport {\n\ttype FnOrStatic,\n\ttype ReturnTypeOrStatic,\n\tevalOrStatic,\n} from \"@zwave-js/shared/safe\";\nimport type { ValueIDProperties } from \"./API.js\";\n\nimport { CCValues } from \"../cc/_CCValues.generated.js\";\n\nfunction defineCCValues<T extends CommandClasses>(\n\tcommandClass: T,\n\t_: Record<string, CCValueBlueprint | DynamicCCValueBlueprint<any[]>>,\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-ignore I know what I'm doing!\n): typeof import(\"../cc/_CCValues.generated.js\").CCValues[T] {\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-ignore I know what I'm doing!\n\treturn CCValues[commandClass];\n}\n\n// HINT: To fully view types for definitions created by this, open\n// node_modules/typescript/lib/tsserver.js and change the definition of\n// ts.defaultMaximumTruncationLength = 160\n// to something higher like\n// ts.defaultMaximumTruncationLength = 1000\n// Then restart TS Server\n\nexport interface CCValueOptions {\n\t/**\n\t * Whether the CC value is internal. Internal values are not exposed to the user.\n\t */\n\tinternal?: boolean;\n\t/**\n\t * The minimum CC version required for this value to exist.\n\t */\n\tminVersion?: number;\n\t/**\n\t * Whether this value represents a state (`true`) or a notification/event (`false`). Default: `true`\n\t */\n\tstateful?: boolean;\n\t/**\n\t * Omit this value from value logs. Default: `false`\n\t */\n\tsecret?: boolean;\n\n\t/** Whether the CC value may exist on endpoints. Default: `true` */\n\tsupportsEndpoints?: boolean;\n\n\t/**\n\t * Can be used to dynamically decide if this value should be created automatically.\n\t * This is ignored for dynamic values and defaults to `true` if not given.\n\t */\n\tautoCreate?:\n\t\t| boolean\n\t\t| ((\n\t\t\tctx: GetValueDB & GetDeviceConfig,\n\t\t\tendpoint: EndpointId,\n\t\t) => boolean);\n}\n\nexport const defaultCCValueOptions = {\n\tinternal: false,\n\tminVersion: 1,\n\tsecret: false,\n\tstateful: true,\n\tsupportsEndpoints: true,\n\tautoCreate: true,\n} as const;\n\n// expands object types recursively\nexport type ExpandRecursively<T> =\n\t// Split functions with properties into the function and object parts\n\tT extends (...args: infer A) => infer R\n\t\t? [keyof T] extends [never] ? (...args: A) => ExpandRecursively<R>\n\t\t:\n\t\t\t& ((...args: A) => ExpandRecursively<R>)\n\t\t\t& {\n\t\t\t\t[P in keyof T]: ExpandRecursively<T[P]>;\n\t\t\t}\n\t\t// Expand object types\n\t\t: T extends object\n\t\t\t? T extends infer O ? { [K in keyof O]: ExpandRecursively<O[K]> }\n\t\t\t: never\n\t\t// Fallback to the type itself if no match\n\t\t: T;\n\nexport type ExpandRecursivelySkipMeta<T> =\n\t// Split functions with properties into the function and object parts\n\tT extends (...args: infer A) => infer R\n\t\t? [keyof T] extends [never]\n\t\t\t? (...args: A) => ExpandRecursivelySkipMeta<R>\n\t\t:\n\t\t\t& ((...args: A) => ExpandRecursivelySkipMeta<R>)\n\t\t\t& {\n\t\t\t\t[P in keyof T]: ExpandRecursivelySkipMeta<T[P]>;\n\t\t\t}\n\t\t// Ignore the ValueMetadata type\n\t\t: T extends ValueMetadata ? T\n\t\t// Expand object types\n\t\t: T extends object\n\t\t\t? T extends infer O\n\t\t\t\t? { [K in keyof O]: ExpandRecursivelySkipMeta<O[K]> }\n\t\t\t: never\n\t\t// Fallback to the type itself if no match\n\t\t: T;\n\ntype InferArgs<T extends FnOrStatic<any, any>[]> = T extends [\n\t(...args: infer A) => any,\n\t...any,\n] ? A\n\t: T extends [any, ...infer R] ? InferArgs<R>\n\t: [];\n\n// Namespace for utilities to define CC values\nexport const V = {\n\t/** Returns a CC value definition that is named like the value `property` */\n\tstaticProperty<\n\t\tTProp extends string | number,\n\t\tconst TMeta extends ValueMetadata,\n\t\tconst TOptions extends CCValueOptions,\n\t>(\n\t\tproperty: TProp,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TProp]: {\n\t\t\tproperty: TProp;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[property]: {\n\t\t\t\tproperty,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and `property` */\n\tstaticPropertyWithName<\n\t\tTName extends string,\n\t\tTProp extends string | number,\n\t\tconst TMeta extends ValueMetadata,\n\t\tconst TOptions extends CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\tproperty: TProp;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: {\n\t\t\t\tproperty,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name, `property` and `propertyKey` */\n\tstaticPropertyAndKeyWithName<\n\t\tTName extends string,\n\t\tTProp extends string | number,\n\t\tTKey extends string | number,\n\t\tTMeta extends ValueMetadata,\n\t\tTOptions extends CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tpropertyKey: TKey,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\tproperty: TProp;\n\t\t\tpropertyKey: TKey;\n\t\t\tmeta: TMeta;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: {\n\t\t\t\tproperty,\n\t\t\t\tpropertyKey,\n\t\t\t\tmeta,\n\t\t\t\toptions,\n\t\t\t},\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and a dynamic `property` */\n\tdynamicPropertyWithName<\n\t\tTName extends string,\n\t\tTProp extends FnOrStatic<any[], ValueIDProperties[\"property\"]>,\n\t\tTMeta extends FnOrStatic<any[], ValueMetadata> = ValueMetadata,\n\t\tTOptions extends CCValueOptions = CCValueOptions,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tis: PartialCCValuePredicate,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\t(...args: InferArgs<[TProp, TMeta]>): {\n\t\t\t\tproperty: ReturnTypeOrStatic<TProp>;\n\t\t\t\tmeta: ReturnTypeOrStatic<TMeta>;\n\t\t\t};\n\t\t\tis: PartialCCValuePredicate;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: Object.assign(\n\t\t\t\t(...args: InferArgs<[TProp, TMeta]>) => ({\n\t\t\t\t\tproperty: evalOrStatic(property, ...args),\n\t\t\t\t\tmeta: evalOrStatic(meta, ...args),\n\t\t\t\t}),\n\t\t\t\t{ is, options },\n\t\t\t),\n\t\t} as any;\n\t},\n\n\t/** Returns a CC value definition with the given name and a dynamic `property` */\n\tdynamicPropertyAndKeyWithName<\n\t\tTName extends string,\n\t\tTProp extends FnOrStatic<any[], ValueIDProperties[\"property\"]>,\n\t\tTKey extends FnOrStatic<any[], ValueIDProperties[\"propertyKey\"]>,\n\t\tTOptions extends CCValueOptions,\n\t\tTMeta extends FnOrStatic<any[], ValueMetadata> = ValueMetadata,\n\t>(\n\t\tname: TName,\n\t\tproperty: TProp,\n\t\tpropertyKey: TKey,\n\t\tis: PartialCCValuePredicate,\n\t\tmeta?: TMeta,\n\t\toptions?: TOptions,\n\t): {\n\t\t[K in TName]: {\n\t\t\t(...args: InferArgs<[TProp, TKey, TMeta]>): {\n\t\t\t\tproperty: ReturnTypeOrStatic<TProp>;\n\t\t\t\tpropertyKey: ReturnTypeOrStatic<TKey>;\n\t\t\t\tmeta: ReturnTypeOrStatic<TMeta>;\n\t\t\t};\n\t\t\tis: PartialCCValuePredicate;\n\t\t\toptions: TOptions;\n\t\t};\n\t} {\n\t\treturn {\n\t\t\t[name]: Object.assign(\n\t\t\t\t(...args: any[]) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tproperty: evalOrStatic(property, ...args),\n\t\t\t\t\t\tpropertyKey: evalOrStatic(propertyKey, ...args),\n\t\t\t\t\t\tmeta: evalOrStatic(meta, ...args),\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t\t{ is, options },\n\t\t\t),\n\t\t} as any;\n\t},\n\n\tdefineCCValues,\n};\n\nexport interface CCValueBlueprint extends Readonly<ValueIDProperties> {\n\treadonly meta?: Readonly<ValueMetadata>;\n\treadonly options?: Readonly<CCValueOptions>;\n}\n\nexport type CCValuePredicate = (valueId: ValueID) => boolean;\nexport type PartialCCValuePredicate = (\n\tproperties: ValueIDProperties,\n) => boolean;\n\n/** A blueprint for a CC value which depends on one or more parameters */\nexport interface DynamicCCValueBlueprint<TArgs extends any[]> {\n\t(...args: TArgs): Omit<CCValueBlueprint, \"options\">;\n\tis: PartialCCValuePredicate;\n\treadonly options?: Readonly<CCValueOptions>;\n}\n\n/** The common base type of all CC value definitions */\nexport interface CCValue {\n\treadonly id: Omit<ValueID, \"endpoint\">;\n\tendpoint(endpoint?: number): ValueID;\n\treadonly meta: ValueMetadata;\n}\n\nexport interface StaticCCValue extends CCValue {\n\t/** Whether the given value ID matches this value definition */\n\tis: CCValuePredicate;\n\treadonly options: Required<CCValueOptions>;\n}\n\nexport type DynamicCCValue<TArgs extends any[] = any[]> =\n\t& ExpandRecursivelySkipMeta<(...args: TArgs) => CCValue>\n\t& {\n\t\t/** Whether the given value ID matches this value definition */\n\t\tis: CCValuePredicate;\n\t\treadonly options: Required<CCValueOptions>;\n\t};\n\nexport type StaticCCValueFactory<T> = (self: T) => StaticCCValue;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAQA;;;;;;AAAA,kBAIO;AAGP,gCAAyB;AAEzB,SAAS,eACR,cACA,GAAoE;AAMpE,SAAO,mCAAS,YAAY;AAC7B;AATS;AAmDF,MAAM,wBAAwB;EACpC,UAAU;EACV,YAAY;EACZ,QAAQ;EACR,UAAU;EACV,mBAAmB;EACnB,YAAY;;AAgDN,MAAM,IAAI;;EAEhB,eAKC,UACA,MACA,SAAkB;AAQlB,WAAO;MACN,CAAC,QAAQ,GAAG;QACX;QACA;QACA;;;EAGH;;EAGA,uBAMC,MACA,UACA,MACA,SAAkB;AAQlB,WAAO;MACN,CAAC,IAAI,GAAG;QACP;QACA;QACA;;;EAGH;;EAGA,6BAOC,MACA,UACA,aACA,MACA,SAAkB;AASlB,WAAO;MACN,CAAC,IAAI,GAAG;QACP;QACA;QACA;QACA;;;EAGH;;EAGA,wBAMC,MACA,UACA,IACA,MACA,SAAkB;AAWlB,WAAO;MACN,CAAC,IAAI,GAAG,OAAO,OACd,IAAI,UAAqC;QACxC,cAAU,0BAAa,UAAU,GAAG,IAAI;QACxC,UAAM,0BAAa,MAAM,GAAG,IAAI;UAEjC,EAAE,IAAI,QAAO,CAAE;;EAGlB;;EAGA,8BAOC,MACA,UACA,aACA,IACA,MACA,SAAkB;AAYlB,WAAO;MACN,CAAC,IAAI,GAAG,OAAO,OACd,IAAI,SAAe;AAClB,eAAO;UACN,cAAU,0BAAa,UAAU,GAAG,IAAI;UACxC,iBAAa,0BAAa,aAAa,GAAG,IAAI;UAC9C,UAAM,0BAAa,MAAM,GAAG,IAAI;;MAElC,GACA,EAAE,IAAI,QAAO,CAAE;;EAGlB;EAEA;;",
6
+ "names": []
7
7
  }
@@ -0,0 +1,94 @@
1
+ import { type GetDeviceConfig } from "@zwave-js/config";
2
+ import { type CCId, type FrameType, type GetSupportedCCVersion, type HostIDs, type MaybeNotKnown, type SecurityClass, type SecurityManagers, type SendCommandOptions, type SendCommandReturnType, type ValueID } from "@zwave-js/core";
3
+ /** Allows scheduling a value refresh (poll) for a later time */
4
+ export interface SchedulePoll {
5
+ schedulePoll(nodeId: number, valueId: ValueID, options: SchedulePollOptions): boolean;
6
+ }
7
+ export interface SchedulePollOptions {
8
+ /** The timeout after which the poll is to be scheduled */
9
+ timeoutMs?: number;
10
+ /**
11
+ * The expected value that's should be verified with this poll.
12
+ * When this value is received in the meantime, the poll will be cancelled.
13
+ */
14
+ expectedValue?: unknown;
15
+ }
16
+ export interface RefreshValueTimeouts {
17
+ /**
18
+ * How long to wait for a poll after setting a value without transition duration
19
+ */
20
+ refreshValue: number;
21
+ /**
22
+ * How long to wait for a poll after setting a value with transition duration. This doubles as the "fast" delay.
23
+ */
24
+ refreshValueAfterTransition: number;
25
+ }
26
+ /** Allows reading timeouts for refreshing values from a node */
27
+ export interface GetRefreshValueTimeouts {
28
+ getRefreshValueTimeouts(): RefreshValueTimeouts;
29
+ }
30
+ export interface UserPreferences {
31
+ /**
32
+ * The preferred scales to use when querying sensors. The key is either:
33
+ * - the name of a named scale group, e.g. "temperature", which applies to every sensor type that uses this scale group.
34
+ * - or the numeric sensor type to specify the scale for a single sensor type
35
+ *
36
+ * Single-type preferences have a higher priority than named ones. For example, the following preference
37
+ * ```js
38
+ * {
39
+ * temperature: "°F",
40
+ * 0x01: "°C",
41
+ * }
42
+ * ```
43
+ * will result in using the Fahrenheit scale for all temperature sensors, except the air temperature (0x01).
44
+ *
45
+ * The value must match what is defined in the sensor type config file and contain either:
46
+ * - the label (e.g. "Celsius", "Fahrenheit")
47
+ * - the unit (e.g. "°C", "°F")
48
+ * - or the numeric key of the scale (e.g. 0 or 1).
49
+ *
50
+ * Default:
51
+ * ```js
52
+ * {
53
+ * temperature: "Celsius"
54
+ * }
55
+ * ```
56
+ */
57
+ scales: Partial<Record<string | number, string | number>>;
58
+ }
59
+ /** Allows reading user preferences */
60
+ export interface GetUserPreferences {
61
+ getUserPreferences(): UserPreferences;
62
+ }
63
+ export interface InterviewOptions {
64
+ /**
65
+ * Whether all user code should be queried during the interview of the UserCode CC.
66
+ * Note that enabling this can cause a lot of traffic during the interview.
67
+ */
68
+ queryAllUserCodes?: boolean;
69
+ }
70
+ /** Allows reading options to use for interviewing devices */
71
+ export interface GetInterviewOptions {
72
+ getInterviewOptions(): InterviewOptions;
73
+ }
74
+ /** Additional context needed for deserializing CCs */
75
+ export interface CCParsingContext extends Readonly<SecurityManagers>, GetDeviceConfig, HostIDs {
76
+ sourceNodeId: number;
77
+ __internalIsMockNode?: boolean;
78
+ /** If known, the frame type of the containing message */
79
+ frameType: FrameType;
80
+ getHighestSecurityClass(nodeId: number): MaybeNotKnown<SecurityClass>;
81
+ hasSecurityClass(nodeId: number, securityClass: SecurityClass): MaybeNotKnown<boolean>;
82
+ setSecurityClass(nodeId: number, securityClass: SecurityClass, granted: boolean): void;
83
+ }
84
+ /** Additional context needed for serializing CCs */
85
+ export interface CCEncodingContext extends Readonly<SecurityManagers>, GetDeviceConfig, HostIDs, GetSupportedCCVersion {
86
+ getHighestSecurityClass(nodeId: number): MaybeNotKnown<SecurityClass>;
87
+ hasSecurityClass(nodeId: number, securityClass: SecurityClass): MaybeNotKnown<boolean>;
88
+ setSecurityClass(nodeId: number, securityClass: SecurityClass, granted: boolean): void;
89
+ }
90
+ /** Allows sending commands to one or more nodes */
91
+ export interface SendCommand {
92
+ sendCommand<TResponse extends CCId | undefined = undefined>(command: CCId, options?: SendCommandOptions): Promise<SendCommandReturnType<TResponse>>;
93
+ }
94
+ //# sourceMappingURL=traits.d.ts.map
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var traits_exports = {};
16
+ module.exports = __toCommonJS(traits_exports);
17
+ //# sourceMappingURL=traits.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../esm/lib/traits.js"],
4
+ "sourcesContent": ["export {};\n//# sourceMappingURL=traits.js.map"],
5
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,5 +1,5 @@
1
- import { CommandClasses, type ControlsCC, type EndpointId, type GetAllEndpoints, type GetEndpoint, type MaybeNotKnown, type NodeId, type QuerySecurityClasses, type SupportsCC } from "@zwave-js/core/safe";
2
- import { type GetDeviceConfig, type GetNode, type GetValueDB, type HostIDs } from "@zwave-js/host";
1
+ import type { GetDeviceConfig } from "@zwave-js/config";
2
+ import { CommandClasses, type ControlsCC, type EndpointId, type GetAllEndpoints, type GetEndpoint, type GetNode, type GetValueDB, type HostIDs, type MaybeNotKnown, type NodeId, type QuerySecurityClasses, type SupportsCC } from "@zwave-js/core/safe";
3
3
  import { type ReadonlyObjectKeyMap } from "@zwave-js/shared/safe";
4
4
  import { type CCAPIHost, type CCAPINode } from "./API.js";
5
5
  import { type AssociationAddress, AssociationCheckResult, type AssociationGroup } from "./_Types.js";