@matter/model 0.13.0-alpha.0-20250304-d4a7592a4 → 0.13.0-alpha.0-20250311-3eb0af5f2

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 (1369) hide show
  1. package/dist/cjs/aspects/Conformance.d.ts +5 -3
  2. package/dist/cjs/aspects/Conformance.d.ts.map +1 -1
  3. package/dist/cjs/aspects/Conformance.js +23 -2
  4. package/dist/cjs/aspects/Conformance.js.map +1 -1
  5. package/dist/cjs/aspects/Quality.d.ts +9 -2
  6. package/dist/cjs/aspects/Quality.d.ts.map +1 -1
  7. package/dist/cjs/aspects/Quality.js +3 -1
  8. package/dist/cjs/aspects/Quality.js.map +1 -1
  9. package/dist/cjs/common/Specification.d.ts +3 -3
  10. package/dist/cjs/common/Specification.d.ts.map +1 -1
  11. package/dist/cjs/common/Specification.js +3 -3
  12. package/dist/cjs/logic/cluster-variance/IllegalFeatureCombinations.js +82 -66
  13. package/dist/cjs/logic/cluster-variance/IllegalFeatureCombinations.js.map +1 -1
  14. package/dist/cjs/logic/cluster-variance/InferredComponents.js +24 -1
  15. package/dist/cjs/logic/cluster-variance/InferredComponents.js.map +1 -1
  16. package/dist/cjs/logic/definition-validation/ValueValidator.d.ts.map +1 -1
  17. package/dist/cjs/logic/definition-validation/ValueValidator.js +11 -6
  18. package/dist/cjs/logic/definition-validation/ValueValidator.js.map +1 -1
  19. package/dist/cjs/models/AttributeModel.d.ts.map +1 -1
  20. package/dist/cjs/models/AttributeModel.js +1 -4
  21. package/dist/cjs/models/AttributeModel.js.map +1 -1
  22. package/dist/cjs/models/ClusterModel.d.ts.map +1 -1
  23. package/dist/cjs/models/ClusterModel.js +1 -3
  24. package/dist/cjs/models/ClusterModel.js.map +1 -1
  25. package/dist/cjs/models/CommandModel.d.ts.map +1 -1
  26. package/dist/cjs/models/CommandModel.js +1 -4
  27. package/dist/cjs/models/CommandModel.js.map +1 -1
  28. package/dist/cjs/models/DatatypeModel.d.ts +1 -0
  29. package/dist/cjs/models/DatatypeModel.d.ts.map +1 -1
  30. package/dist/cjs/models/DatatypeModel.js +2 -4
  31. package/dist/cjs/models/DatatypeModel.js.map +1 -1
  32. package/dist/cjs/models/DeviceTypeModel.d.ts +1 -0
  33. package/dist/cjs/models/DeviceTypeModel.d.ts.map +1 -1
  34. package/dist/cjs/models/DeviceTypeModel.js +2 -3
  35. package/dist/cjs/models/DeviceTypeModel.js.map +1 -1
  36. package/dist/cjs/models/EndpointModel.d.ts +1 -0
  37. package/dist/cjs/models/EndpointModel.d.ts.map +1 -1
  38. package/dist/cjs/models/EndpointModel.js +2 -3
  39. package/dist/cjs/models/EndpointModel.js.map +1 -1
  40. package/dist/cjs/models/EventModel.d.ts.map +1 -1
  41. package/dist/cjs/models/EventModel.js +1 -4
  42. package/dist/cjs/models/EventModel.js.map +1 -1
  43. package/dist/cjs/models/FabricModel.d.ts +1 -0
  44. package/dist/cjs/models/FabricModel.d.ts.map +1 -1
  45. package/dist/cjs/models/FabricModel.js +2 -3
  46. package/dist/cjs/models/FabricModel.js.map +1 -1
  47. package/dist/cjs/models/FieldModel.d.ts +1 -0
  48. package/dist/cjs/models/FieldModel.d.ts.map +1 -1
  49. package/dist/cjs/models/FieldModel.js +2 -4
  50. package/dist/cjs/models/FieldModel.js.map +1 -1
  51. package/dist/cjs/models/Globals.d.ts +27 -1
  52. package/dist/cjs/models/Globals.d.ts.map +1 -1
  53. package/dist/cjs/models/MatterModel.d.ts +1 -0
  54. package/dist/cjs/models/MatterModel.d.ts.map +1 -1
  55. package/dist/cjs/models/MatterModel.js +2 -4
  56. package/dist/cjs/models/MatterModel.js.map +1 -1
  57. package/dist/cjs/models/Model.d.ts +26 -2
  58. package/dist/cjs/models/Model.d.ts.map +1 -1
  59. package/dist/cjs/models/Model.js +44 -5
  60. package/dist/cjs/models/Model.js.map +1 -1
  61. package/dist/cjs/models/NodeModel.d.ts +1 -0
  62. package/dist/cjs/models/NodeModel.d.ts.map +1 -1
  63. package/dist/cjs/models/NodeModel.js +2 -3
  64. package/dist/cjs/models/NodeModel.js.map +1 -1
  65. package/dist/cjs/models/RequirementModel.d.ts +1 -0
  66. package/dist/cjs/models/RequirementModel.d.ts.map +1 -1
  67. package/dist/cjs/models/RequirementModel.js +2 -3
  68. package/dist/cjs/models/RequirementModel.js.map +1 -1
  69. package/dist/cjs/models/SemanticNamespaceModel.d.ts +1 -0
  70. package/dist/cjs/models/SemanticNamespaceModel.d.ts.map +1 -1
  71. package/dist/cjs/models/SemanticNamespaceModel.js +2 -3
  72. package/dist/cjs/models/SemanticNamespaceModel.js.map +1 -1
  73. package/dist/cjs/models/SemanticTagModel.d.ts +1 -0
  74. package/dist/cjs/models/SemanticTagModel.d.ts.map +1 -1
  75. package/dist/cjs/models/SemanticTagModel.js +2 -3
  76. package/dist/cjs/models/SemanticTagModel.js.map +1 -1
  77. package/dist/cjs/standard/elements/AcceptedCommandList.d.ts.map +1 -1
  78. package/dist/cjs/standard/elements/AcceptedCommandList.js +1 -1
  79. package/dist/cjs/standard/elements/AcceptedCommandList.js.map +1 -1
  80. package/dist/cjs/standard/elements/AccessControl.d.ts.map +1 -1
  81. package/dist/cjs/standard/elements/AccessControl.js +298 -37
  82. package/dist/cjs/standard/elements/AccessControl.js.map +2 -2
  83. package/dist/cjs/standard/elements/Actions.d.ts.map +1 -1
  84. package/dist/cjs/standard/elements/Actions.js +6 -6
  85. package/dist/cjs/standard/elements/Actions.js.map +1 -1
  86. package/dist/cjs/standard/elements/AdministratorCommissioning.d.ts.map +1 -1
  87. package/dist/cjs/standard/elements/AdministratorCommissioning.js +18 -12
  88. package/dist/cjs/standard/elements/AdministratorCommissioning.js.map +1 -1
  89. package/dist/cjs/standard/elements/AggregatorDT.d.ts.map +1 -1
  90. package/dist/cjs/standard/elements/AggregatorDT.js +18 -3
  91. package/dist/cjs/standard/elements/AggregatorDT.js.map +2 -2
  92. package/dist/cjs/standard/elements/AirPurifierDT.d.ts.map +1 -1
  93. package/dist/cjs/standard/elements/AirPurifierDT.js +8 -1
  94. package/dist/cjs/standard/elements/AirPurifierDT.js.map +1 -1
  95. package/dist/cjs/standard/elements/AlarmBase.d.ts.map +1 -1
  96. package/dist/cjs/standard/elements/AlarmBase.js +1 -1
  97. package/dist/cjs/standard/elements/AlarmBase.js.map +1 -1
  98. package/dist/cjs/standard/elements/ApplicationLauncher.d.ts.map +1 -1
  99. package/dist/cjs/standard/elements/ApplicationLauncher.js +12 -4
  100. package/dist/cjs/standard/elements/ApplicationLauncher.js.map +1 -1
  101. package/dist/cjs/standard/elements/AreaNamespaceNS.d.ts +8 -0
  102. package/dist/cjs/standard/elements/AreaNamespaceNS.d.ts.map +1 -0
  103. package/dist/cjs/standard/elements/AreaNamespaceNS.js +147 -0
  104. package/dist/cjs/standard/elements/AreaNamespaceNS.js.map +6 -0
  105. package/dist/cjs/standard/elements/AtomicAttributeStatusStruct.d.ts +8 -0
  106. package/dist/cjs/standard/elements/AtomicAttributeStatusStruct.d.ts.map +1 -0
  107. package/dist/cjs/standard/elements/AtomicAttributeStatusStruct.js +56 -0
  108. package/dist/cjs/standard/elements/AtomicAttributeStatusStruct.js.map +6 -0
  109. package/dist/cjs/standard/elements/AtomicRequestTypeEnum.d.ts +8 -0
  110. package/dist/cjs/standard/elements/AtomicRequestTypeEnum.d.ts.map +1 -0
  111. package/dist/cjs/standard/elements/AtomicRequestTypeEnum.js +43 -0
  112. package/dist/cjs/standard/elements/AtomicRequestTypeEnum.js.map +6 -0
  113. package/dist/cjs/standard/elements/BallastConfiguration.js +1 -1
  114. package/dist/cjs/standard/elements/BasicInformation.d.ts.map +1 -1
  115. package/dist/cjs/standard/elements/BasicInformation.js +17 -19
  116. package/dist/cjs/standard/elements/BasicInformation.js.map +1 -1
  117. package/dist/cjs/standard/elements/BatteryStorageDT.d.ts +8 -0
  118. package/dist/cjs/standard/elements/BatteryStorageDT.d.ts.map +1 -0
  119. package/dist/cjs/standard/elements/BatteryStorageDT.js +53 -0
  120. package/dist/cjs/standard/elements/BatteryStorageDT.js.map +6 -0
  121. package/dist/cjs/standard/elements/BooleanStateConfiguration.js +2 -2
  122. package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
  123. package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.js +102 -31
  124. package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.js.map +2 -2
  125. package/dist/cjs/standard/elements/BridgedNodeDT.d.ts.map +1 -1
  126. package/dist/cjs/standard/elements/BridgedNodeDT.js +24 -2
  127. package/dist/cjs/standard/elements/BridgedNodeDT.js.map +2 -2
  128. package/dist/cjs/standard/elements/Channel.d.ts.map +1 -1
  129. package/dist/cjs/standard/elements/Channel.js +13 -14
  130. package/dist/cjs/standard/elements/Channel.js.map +1 -1
  131. package/dist/cjs/standard/elements/ColorControl.d.ts.map +1 -1
  132. package/dist/cjs/standard/elements/ColorControl.js +607 -478
  133. package/dist/cjs/standard/elements/ColorControl.js.map +1 -1
  134. package/dist/cjs/standard/elements/{PulseWidthModulation.d.ts → CommissionerControl.d.ts} +2 -2
  135. package/dist/cjs/standard/elements/CommissionerControl.d.ts.map +1 -0
  136. package/dist/cjs/standard/elements/CommissionerControl.js +130 -0
  137. package/dist/cjs/standard/elements/CommissionerControl.js.map +6 -0
  138. package/dist/cjs/standard/elements/ConcentrationMeasurement.js +0 -1
  139. package/dist/cjs/standard/elements/ConcentrationMeasurement.js.map +1 -1
  140. package/dist/cjs/standard/elements/ContentControl.d.ts.map +1 -1
  141. package/dist/cjs/standard/elements/ContentControl.js +34 -39
  142. package/dist/cjs/standard/elements/ContentControl.js.map +1 -1
  143. package/dist/cjs/standard/elements/ContentLauncher.d.ts.map +1 -1
  144. package/dist/cjs/standard/elements/ContentLauncher.js +13 -11
  145. package/dist/cjs/standard/elements/ContentLauncher.js.map +1 -1
  146. package/dist/cjs/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
  147. package/dist/cjs/standard/elements/DeviceEnergyManagement.js +154 -118
  148. package/dist/cjs/standard/elements/DeviceEnergyManagement.js.map +1 -1
  149. package/dist/cjs/standard/elements/DeviceEnergyManagementDT.d.ts.map +1 -1
  150. package/dist/cjs/standard/elements/DeviceEnergyManagementDT.js +26 -11
  151. package/dist/cjs/standard/elements/DeviceEnergyManagementDT.js.map +2 -2
  152. package/dist/cjs/standard/elements/DeviceEnergyManagementMode.d.ts.map +1 -1
  153. package/dist/cjs/standard/elements/DeviceEnergyManagementMode.js +38 -9
  154. package/dist/cjs/standard/elements/DeviceEnergyManagementMode.js.map +2 -2
  155. package/dist/cjs/standard/elements/DishwasherAlarm.d.ts.map +1 -1
  156. package/dist/cjs/standard/elements/DishwasherAlarm.js +1 -1
  157. package/dist/cjs/standard/elements/DishwasherAlarm.js.map +1 -1
  158. package/dist/cjs/standard/elements/DishwasherMode.d.ts.map +1 -1
  159. package/dist/cjs/standard/elements/DishwasherMode.js +35 -15
  160. package/dist/cjs/standard/elements/DishwasherMode.js.map +2 -2
  161. package/dist/cjs/standard/elements/DoorLock.d.ts.map +1 -1
  162. package/dist/cjs/standard/elements/DoorLock.js +505 -629
  163. package/dist/cjs/standard/elements/DoorLock.js.map +1 -1
  164. package/dist/cjs/standard/elements/DoorLockControllerDT.js +1 -1
  165. package/dist/cjs/standard/elements/DoorLockControllerDT.js.map +1 -1
  166. package/dist/cjs/standard/elements/DoorLockDT.js +2 -2
  167. package/dist/cjs/standard/elements/DoorLockDT.js.map +1 -1
  168. package/dist/{esm/standard/elements/PulseWidthModulation.d.ts → cjs/standard/elements/EcosystemInformation.d.ts} +2 -2
  169. package/dist/cjs/standard/elements/EcosystemInformation.d.ts.map +1 -0
  170. package/dist/cjs/standard/elements/EcosystemInformation.js +147 -0
  171. package/dist/cjs/standard/elements/EcosystemInformation.js.map +6 -0
  172. package/dist/cjs/standard/elements/ElectricalEnergyMeasurement.d.ts.map +1 -1
  173. package/dist/cjs/standard/elements/ElectricalEnergyMeasurement.js +9 -18
  174. package/dist/cjs/standard/elements/ElectricalEnergyMeasurement.js.map +1 -1
  175. package/dist/cjs/standard/elements/ElectricalMeasurementNS.js +1 -1
  176. package/dist/cjs/standard/elements/ElectricalPowerMeasurement.js +5 -5
  177. package/dist/cjs/standard/elements/ElectricalPowerMeasurement.js.map +1 -1
  178. package/dist/cjs/standard/elements/EnergyEvse.d.ts.map +1 -1
  179. package/dist/cjs/standard/elements/EnergyEvse.js +98 -51
  180. package/dist/cjs/standard/elements/EnergyEvse.js.map +1 -1
  181. package/dist/cjs/standard/elements/EnergyEvseDT.d.ts +8 -0
  182. package/dist/cjs/standard/elements/EnergyEvseDT.d.ts.map +1 -0
  183. package/dist/cjs/standard/elements/EnergyEvseDT.js +74 -0
  184. package/dist/cjs/standard/elements/EnergyEvseDT.js.map +6 -0
  185. package/dist/cjs/standard/elements/EnergyEvseMode.d.ts.map +1 -1
  186. package/dist/cjs/standard/elements/EnergyEvseMode.js +49 -8
  187. package/dist/cjs/standard/elements/EnergyEvseMode.js.map +2 -2
  188. package/dist/cjs/standard/elements/EnergyPreference.d.ts.map +1 -1
  189. package/dist/cjs/standard/elements/EnergyPreference.js +22 -19
  190. package/dist/cjs/standard/elements/EnergyPreference.js.map +1 -1
  191. package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
  192. package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.js +1 -1
  193. package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
  194. package/dist/cjs/standard/elements/EventList.d.ts.map +1 -1
  195. package/dist/cjs/standard/elements/EventList.js +1 -12
  196. package/dist/cjs/standard/elements/EventList.js.map +2 -2
  197. package/dist/cjs/standard/elements/FabricIndex.js +1 -1
  198. package/dist/cjs/standard/elements/FanControl.js +8 -10
  199. package/dist/cjs/standard/elements/FanControl.js.map +1 -1
  200. package/dist/cjs/standard/elements/FanDT.d.ts.map +1 -1
  201. package/dist/cjs/standard/elements/FanDT.js +8 -1
  202. package/dist/cjs/standard/elements/FanDT.js.map +1 -1
  203. package/dist/cjs/standard/elements/FeatureMap.d.ts.map +1 -1
  204. package/dist/cjs/standard/elements/FeatureMap.js +1 -1
  205. package/dist/cjs/standard/elements/FeatureMap.js.map +1 -1
  206. package/dist/cjs/standard/elements/FixedLabel.d.ts.map +1 -1
  207. package/dist/cjs/standard/elements/FixedLabel.js +1 -1
  208. package/dist/cjs/standard/elements/FixedLabel.js.map +1 -1
  209. package/dist/cjs/standard/elements/FlowMeasurement.d.ts.map +1 -1
  210. package/dist/cjs/standard/elements/FlowMeasurement.js +6 -6
  211. package/dist/cjs/standard/elements/FlowMeasurement.js.map +1 -1
  212. package/dist/cjs/standard/elements/GeneralCommissioning.d.ts.map +1 -1
  213. package/dist/cjs/standard/elements/GeneralCommissioning.js +162 -38
  214. package/dist/cjs/standard/elements/GeneralCommissioning.js.map +2 -2
  215. package/dist/cjs/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
  216. package/dist/cjs/standard/elements/GeneralDiagnostics.js +12 -13
  217. package/dist/cjs/standard/elements/GeneralDiagnostics.js.map +1 -1
  218. package/dist/cjs/standard/elements/GeneratedCommandList.d.ts.map +1 -1
  219. package/dist/cjs/standard/elements/GeneratedCommandList.js +1 -1
  220. package/dist/cjs/standard/elements/GeneratedCommandList.js.map +1 -1
  221. package/dist/cjs/standard/elements/GroupKeyManagement.d.ts.map +1 -1
  222. package/dist/cjs/standard/elements/GroupKeyManagement.js +13 -12
  223. package/dist/cjs/standard/elements/GroupKeyManagement.js.map +1 -1
  224. package/dist/cjs/standard/elements/Groups.d.ts.map +1 -1
  225. package/dist/cjs/standard/elements/Groups.js +1 -1
  226. package/dist/cjs/standard/elements/Groups.js.map +1 -1
  227. package/dist/cjs/standard/elements/HeatPumpDT.d.ts +8 -0
  228. package/dist/cjs/standard/elements/HeatPumpDT.d.ts.map +1 -0
  229. package/dist/cjs/standard/elements/HeatPumpDT.js +60 -0
  230. package/dist/cjs/standard/elements/HeatPumpDT.js.map +6 -0
  231. package/dist/cjs/standard/elements/IcdManagement.d.ts.map +1 -1
  232. package/dist/cjs/standard/elements/IcdManagement.js +74 -20
  233. package/dist/cjs/standard/elements/IcdManagement.js.map +1 -1
  234. package/dist/cjs/standard/elements/Identify.js +5 -5
  235. package/dist/cjs/standard/elements/IlluminanceMeasurement.d.ts.map +1 -1
  236. package/dist/cjs/standard/elements/IlluminanceMeasurement.js +7 -7
  237. package/dist/cjs/standard/elements/IlluminanceMeasurement.js.map +1 -1
  238. package/dist/cjs/standard/elements/JointFabricAdministratorDT.d.ts +8 -0
  239. package/dist/cjs/standard/elements/JointFabricAdministratorDT.d.ts.map +1 -0
  240. package/dist/cjs/standard/elements/JointFabricAdministratorDT.js +60 -0
  241. package/dist/cjs/standard/elements/JointFabricAdministratorDT.js.map +6 -0
  242. package/dist/cjs/standard/elements/JointFabricDatastoreCluster.d.ts +8 -0
  243. package/dist/cjs/standard/elements/JointFabricDatastoreCluster.d.ts.map +1 -0
  244. package/dist/cjs/standard/elements/JointFabricDatastoreCluster.js +687 -0
  245. package/dist/cjs/standard/elements/JointFabricDatastoreCluster.js.map +6 -0
  246. package/dist/cjs/standard/elements/JointFabricPki.d.ts +8 -0
  247. package/dist/cjs/standard/elements/JointFabricPki.d.ts.map +1 -0
  248. package/dist/cjs/standard/elements/JointFabricPki.js +167 -0
  249. package/dist/cjs/standard/elements/JointFabricPki.js.map +6 -0
  250. package/dist/cjs/standard/elements/KeypadInput.d.ts.map +1 -1
  251. package/dist/cjs/standard/elements/KeypadInput.js +1 -1
  252. package/dist/cjs/standard/elements/KeypadInput.js.map +1 -1
  253. package/dist/cjs/standard/elements/LandmarkNamespaceNS.d.ts +8 -0
  254. package/dist/cjs/standard/elements/LandmarkNamespaceNS.d.ts.map +1 -0
  255. package/dist/cjs/standard/elements/LandmarkNamespaceNS.js +91 -0
  256. package/dist/cjs/standard/elements/LandmarkNamespaceNS.js.map +6 -0
  257. package/dist/cjs/standard/elements/LaundryDryerControls.js +2 -1
  258. package/dist/cjs/standard/elements/LaundryDryerControls.js.map +1 -1
  259. package/dist/cjs/standard/elements/LaundryNS.js +1 -1
  260. package/dist/cjs/standard/elements/LaundryWasherControls.d.ts.map +1 -1
  261. package/dist/cjs/standard/elements/LaundryWasherControls.js +8 -8
  262. package/dist/cjs/standard/elements/LaundryWasherControls.js.map +1 -1
  263. package/dist/cjs/standard/elements/LaundryWasherMode.d.ts.map +1 -1
  264. package/dist/cjs/standard/elements/LaundryWasherMode.js +36 -16
  265. package/dist/cjs/standard/elements/LaundryWasherMode.js.map +2 -2
  266. package/dist/cjs/standard/elements/LevelControl.d.ts.map +1 -1
  267. package/dist/cjs/standard/elements/LevelControl.js +14 -13
  268. package/dist/cjs/standard/elements/LevelControl.js.map +1 -1
  269. package/dist/cjs/standard/elements/LocalizationConfiguration.d.ts.map +1 -1
  270. package/dist/cjs/standard/elements/LocalizationConfiguration.js +11 -13
  271. package/dist/cjs/standard/elements/LocalizationConfiguration.js.map +1 -1
  272. package/dist/cjs/standard/elements/MediaInput.d.ts.map +1 -1
  273. package/dist/cjs/standard/elements/MediaInput.js +1 -1
  274. package/dist/cjs/standard/elements/MediaInput.js.map +1 -1
  275. package/dist/cjs/standard/elements/MediaPlayback.d.ts.map +1 -1
  276. package/dist/cjs/standard/elements/MediaPlayback.js +3 -2
  277. package/dist/cjs/standard/elements/MediaPlayback.js.map +1 -1
  278. package/dist/cjs/standard/elements/MicrowaveOvenControl.d.ts.map +1 -1
  279. package/dist/cjs/standard/elements/MicrowaveOvenControl.js +12 -12
  280. package/dist/cjs/standard/elements/MicrowaveOvenControl.js.map +1 -1
  281. package/dist/cjs/standard/elements/MicrowaveOvenMode.d.ts.map +1 -1
  282. package/dist/cjs/standard/elements/MicrowaveOvenMode.js +37 -12
  283. package/dist/cjs/standard/elements/MicrowaveOvenMode.js.map +2 -2
  284. package/dist/cjs/standard/elements/ModeBase.d.ts.map +1 -1
  285. package/dist/cjs/standard/elements/ModeBase.js +18 -69
  286. package/dist/cjs/standard/elements/ModeBase.js.map +1 -1
  287. package/dist/cjs/standard/elements/ModeSelect.js +10 -10
  288. package/dist/cjs/standard/elements/ModeSelect.js.map +1 -1
  289. package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.d.ts +8 -0
  290. package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -0
  291. package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.js +104 -0
  292. package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.js.map +6 -0
  293. package/dist/cjs/standard/elements/MountedOnOffControlDT.d.ts +8 -0
  294. package/dist/cjs/standard/elements/MountedOnOffControlDT.d.ts.map +1 -0
  295. package/dist/cjs/standard/elements/MountedOnOffControlDT.js +104 -0
  296. package/dist/cjs/standard/elements/MountedOnOffControlDT.js.map +6 -0
  297. package/dist/cjs/standard/elements/NetworkCommissioning.d.ts.map +1 -1
  298. package/dist/cjs/standard/elements/NetworkCommissioning.js +50 -37
  299. package/dist/cjs/standard/elements/NetworkCommissioning.js.map +1 -1
  300. package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.d.ts +8 -0
  301. package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -0
  302. package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.js +67 -0
  303. package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.js.map +6 -0
  304. package/dist/cjs/standard/elements/OccupancySensing.d.ts.map +1 -1
  305. package/dist/cjs/standard/elements/OccupancySensing.js +194 -41
  306. package/dist/cjs/standard/elements/OccupancySensing.js.map +2 -2
  307. package/dist/cjs/standard/elements/OccupancySensorDT.d.ts.map +1 -1
  308. package/dist/cjs/standard/elements/OccupancySensorDT.js +8 -1
  309. package/dist/cjs/standard/elements/OccupancySensorDT.js.map +1 -1
  310. package/dist/cjs/standard/elements/OnOff.d.ts.map +1 -1
  311. package/dist/cjs/standard/elements/OnOff.js +1 -1
  312. package/dist/cjs/standard/elements/OnOff.js.map +1 -1
  313. package/dist/cjs/standard/elements/OperationalCredentials.d.ts.map +1 -1
  314. package/dist/cjs/standard/elements/OperationalCredentials.js +7 -7
  315. package/dist/cjs/standard/elements/OperationalCredentials.js.map +1 -1
  316. package/dist/cjs/standard/elements/OperationalState.d.ts.map +1 -1
  317. package/dist/cjs/standard/elements/OperationalState.js +22 -22
  318. package/dist/cjs/standard/elements/OperationalState.js.map +1 -1
  319. package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.d.ts.map +1 -1
  320. package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.js +11 -12
  321. package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.js.map +1 -1
  322. package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
  323. package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.js +2 -1
  324. package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
  325. package/dist/cjs/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
  326. package/dist/cjs/standard/elements/OvenCavityOperationalState.js +7 -2
  327. package/dist/cjs/standard/elements/OvenCavityOperationalState.js.map +2 -2
  328. package/dist/cjs/standard/elements/OvenDT.js +1 -1
  329. package/dist/cjs/standard/elements/OvenMode.d.ts.map +1 -1
  330. package/dist/cjs/standard/elements/OvenMode.js +47 -12
  331. package/dist/cjs/standard/elements/OvenMode.js.map +2 -2
  332. package/dist/cjs/standard/elements/PowerSource.d.ts.map +1 -1
  333. package/dist/cjs/standard/elements/PowerSource.js +12 -12
  334. package/dist/cjs/standard/elements/PowerSource.js.map +1 -1
  335. package/dist/cjs/standard/elements/PowerSourceNS.js +5 -5
  336. package/dist/cjs/standard/elements/PressureMeasurement.js +7 -7
  337. package/dist/cjs/standard/elements/PressureMeasurement.js.map +1 -1
  338. package/dist/cjs/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
  339. package/dist/cjs/standard/elements/PumpConfigurationAndControl.js +9 -19
  340. package/dist/cjs/standard/elements/PumpConfigurationAndControl.js.map +1 -1
  341. package/dist/cjs/standard/elements/PumpControllerDT.d.ts.map +1 -1
  342. package/dist/cjs/standard/elements/PumpControllerDT.js +1 -8
  343. package/dist/cjs/standard/elements/PumpControllerDT.js.map +1 -1
  344. package/dist/cjs/standard/elements/PumpDT.js +14 -14
  345. package/dist/cjs/standard/elements/RefrigeratorAlarm.d.ts.map +1 -1
  346. package/dist/cjs/standard/elements/RefrigeratorAlarm.js +1 -1
  347. package/dist/cjs/standard/elements/RefrigeratorAlarm.js.map +1 -1
  348. package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
  349. package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.js +36 -10
  350. package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.js.map +2 -2
  351. package/dist/cjs/standard/elements/RefrigeratorDT.js +1 -1
  352. package/dist/cjs/standard/elements/RefrigeratorNS.js +1 -1
  353. package/dist/cjs/standard/elements/RelativeHumidityMeasurement.d.ts.map +1 -1
  354. package/dist/cjs/standard/elements/RelativeHumidityMeasurement.js +3 -3
  355. package/dist/cjs/standard/elements/RelativeHumidityMeasurement.js.map +1 -1
  356. package/dist/cjs/standard/elements/RelativePositionNS.d.ts +8 -0
  357. package/dist/cjs/standard/elements/RelativePositionNS.d.ts.map +1 -0
  358. package/dist/cjs/standard/elements/RelativePositionNS.js +47 -0
  359. package/dist/cjs/standard/elements/RelativePositionNS.js.map +6 -0
  360. package/dist/cjs/standard/elements/ResourceMonitoring.d.ts.map +1 -1
  361. package/dist/cjs/standard/elements/ResourceMonitoring.js +1 -1
  362. package/dist/cjs/standard/elements/ResourceMonitoring.js.map +1 -1
  363. package/dist/cjs/standard/elements/RoboticVacuumCleanerDT.d.ts.map +1 -1
  364. package/dist/cjs/standard/elements/RoboticVacuumCleanerDT.js +8 -1
  365. package/dist/cjs/standard/elements/RoboticVacuumCleanerDT.js.map +1 -1
  366. package/dist/cjs/standard/elements/RoomAirConditionerNS.js +1 -1
  367. package/dist/cjs/standard/elements/RootNodeDT.d.ts.map +1 -1
  368. package/dist/cjs/standard/elements/RootNodeDT.js +20 -15
  369. package/dist/cjs/standard/elements/RootNodeDT.js.map +1 -1
  370. package/dist/cjs/standard/elements/RvcCleanMode.d.ts.map +1 -1
  371. package/dist/cjs/standard/elements/RvcCleanMode.js +30 -5
  372. package/dist/cjs/standard/elements/RvcCleanMode.js.map +2 -2
  373. package/dist/cjs/standard/elements/RvcOperationalState.d.ts.map +1 -1
  374. package/dist/cjs/standard/elements/RvcOperationalState.js +28 -5
  375. package/dist/cjs/standard/elements/RvcOperationalState.js.map +1 -1
  376. package/dist/cjs/standard/elements/RvcRunMode.d.ts.map +1 -1
  377. package/dist/cjs/standard/elements/RvcRunMode.js +30 -5
  378. package/dist/cjs/standard/elements/RvcRunMode.js.map +2 -2
  379. package/dist/cjs/standard/elements/ScenesManagement.d.ts.map +1 -1
  380. package/dist/cjs/standard/elements/ScenesManagement.js +4 -4
  381. package/dist/cjs/standard/elements/ScenesManagement.js.map +1 -1
  382. package/dist/cjs/standard/elements/SecondaryNetworkInterfaceDT.d.ts +8 -0
  383. package/dist/cjs/standard/elements/SecondaryNetworkInterfaceDT.d.ts.map +1 -0
  384. package/dist/cjs/standard/elements/SecondaryNetworkInterfaceDT.js +74 -0
  385. package/dist/cjs/standard/elements/SecondaryNetworkInterfaceDT.js.map +6 -0
  386. package/dist/cjs/standard/elements/ServiceArea.d.ts +8 -0
  387. package/dist/cjs/standard/elements/ServiceArea.d.ts.map +1 -0
  388. package/dist/cjs/standard/elements/ServiceArea.js +455 -0
  389. package/dist/cjs/standard/elements/ServiceArea.js.map +6 -0
  390. package/dist/cjs/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
  391. package/dist/cjs/standard/elements/SmokeCoAlarm.js +13 -17
  392. package/dist/cjs/standard/elements/SmokeCoAlarm.js.map +1 -1
  393. package/dist/cjs/standard/elements/SoftwareVersionCertificationStatusEnum.js +1 -1
  394. package/dist/cjs/standard/elements/SolarPowerDT.d.ts +8 -0
  395. package/dist/cjs/standard/elements/SolarPowerDT.d.ts.map +1 -0
  396. package/dist/cjs/standard/elements/SolarPowerDT.js +53 -0
  397. package/dist/cjs/standard/elements/SolarPowerDT.js.map +6 -0
  398. package/dist/cjs/standard/elements/Switch.d.ts.map +1 -1
  399. package/dist/cjs/standard/elements/Switch.js +39 -25
  400. package/dist/cjs/standard/elements/Switch.js.map +1 -1
  401. package/dist/cjs/standard/elements/SwitchesNS.js +2 -2
  402. package/dist/cjs/standard/elements/TargetNavigator.js +2 -1
  403. package/dist/cjs/standard/elements/TargetNavigator.js.map +1 -1
  404. package/dist/cjs/standard/elements/TemperatureControl.js +3 -3
  405. package/dist/cjs/standard/elements/TemperatureControl.js.map +1 -1
  406. package/dist/cjs/standard/elements/TemperatureControlledCabinetDT.js +1 -1
  407. package/dist/cjs/standard/elements/TemperatureMeasurement.js +3 -3
  408. package/dist/cjs/standard/elements/TemperatureMeasurement.js.map +1 -1
  409. package/dist/cjs/standard/elements/Thermostat.d.ts.map +1 -1
  410. package/dist/cjs/standard/elements/Thermostat.js +673 -124
  411. package/dist/cjs/standard/elements/Thermostat.js.map +1 -1
  412. package/dist/cjs/standard/elements/ThermostatDT.d.ts.map +1 -1
  413. package/dist/cjs/standard/elements/ThermostatDT.js +20 -35
  414. package/dist/cjs/standard/elements/ThermostatDT.js.map +1 -1
  415. package/dist/cjs/standard/elements/ThermostatUserInterfaceConfiguration.js +0 -3
  416. package/dist/cjs/standard/elements/ThermostatUserInterfaceConfiguration.js.map +1 -1
  417. package/dist/cjs/standard/elements/ThreadBorderRouterManagement.d.ts +8 -0
  418. package/dist/cjs/standard/elements/ThreadBorderRouterManagement.d.ts.map +1 -0
  419. package/dist/cjs/standard/elements/ThreadBorderRouterManagement.js +198 -0
  420. package/dist/cjs/standard/elements/ThreadBorderRouterManagement.js.map +6 -0
  421. package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
  422. package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.js +26 -8
  423. package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
  424. package/dist/cjs/standard/elements/ThreadNetworkDirectory.d.ts +8 -0
  425. package/dist/cjs/standard/elements/ThreadNetworkDirectory.d.ts.map +1 -0
  426. package/dist/cjs/standard/elements/ThreadNetworkDirectory.js +181 -0
  427. package/dist/cjs/standard/elements/ThreadNetworkDirectory.js.map +6 -0
  428. package/dist/cjs/standard/elements/TimeFormatLocalization.js +1 -1
  429. package/dist/cjs/standard/elements/TimeSynchronization.d.ts.map +1 -1
  430. package/dist/cjs/standard/elements/TimeSynchronization.js +23 -11
  431. package/dist/cjs/standard/elements/TimeSynchronization.js.map +1 -1
  432. package/dist/cjs/standard/elements/UnitLocalization.d.ts.map +1 -1
  433. package/dist/cjs/standard/elements/UnitLocalization.js +1 -1
  434. package/dist/cjs/standard/elements/UnitLocalization.js.map +1 -1
  435. package/dist/cjs/standard/elements/UserLabel.d.ts.map +1 -1
  436. package/dist/cjs/standard/elements/UserLabel.js +1 -1
  437. package/dist/cjs/standard/elements/UserLabel.js.map +1 -1
  438. package/dist/cjs/standard/elements/ValidProxies.js +0 -1
  439. package/dist/cjs/standard/elements/ValidProxies.js.map +1 -1
  440. package/dist/cjs/standard/elements/ValveConfigurationAndControl.js +1 -0
  441. package/dist/cjs/standard/elements/ValveConfigurationAndControl.js.map +1 -1
  442. package/dist/cjs/standard/elements/WaterHeaterDT.d.ts +8 -0
  443. package/dist/cjs/standard/elements/WaterHeaterDT.d.ts.map +1 -0
  444. package/dist/cjs/standard/elements/WaterHeaterDT.js +77 -0
  445. package/dist/cjs/standard/elements/WaterHeaterDT.js.map +6 -0
  446. package/dist/cjs/standard/elements/WaterHeaterManagement.d.ts +8 -0
  447. package/dist/cjs/standard/elements/WaterHeaterManagement.d.ts.map +1 -0
  448. package/dist/cjs/standard/elements/WaterHeaterManagement.js +239 -0
  449. package/dist/cjs/standard/elements/WaterHeaterManagement.js.map +6 -0
  450. package/dist/cjs/standard/elements/WaterHeaterMode.d.ts +8 -0
  451. package/dist/cjs/standard/elements/WaterHeaterMode.d.ts.map +1 -0
  452. package/dist/cjs/standard/elements/WaterHeaterMode.js +100 -0
  453. package/dist/cjs/standard/elements/WaterHeaterMode.js.map +6 -0
  454. package/dist/cjs/standard/elements/WaterTankLevelMonitoring.d.ts +8 -0
  455. package/dist/cjs/standard/elements/WaterTankLevelMonitoring.d.ts.map +1 -0
  456. package/dist/cjs/standard/elements/{PulseWidthModulation.js → WaterTankLevelMonitoring.js} +9 -7
  457. package/dist/cjs/standard/elements/WaterTankLevelMonitoring.js.map +6 -0
  458. package/dist/cjs/standard/elements/WaterValveDT.js +5 -5
  459. package/dist/cjs/standard/elements/WiFiNetworkDiagnostics.d.ts.map +1 -1
  460. package/dist/cjs/standard/elements/WiFiNetworkDiagnostics.js +2 -2
  461. package/dist/cjs/standard/elements/WiFiNetworkDiagnostics.js.map +1 -1
  462. package/dist/cjs/standard/elements/WiFiNetworkManagement.d.ts +8 -0
  463. package/dist/cjs/standard/elements/WiFiNetworkManagement.d.ts.map +1 -0
  464. package/dist/cjs/standard/elements/WiFiNetworkManagement.js +84 -0
  465. package/dist/cjs/standard/elements/WiFiNetworkManagement.js.map +6 -0
  466. package/dist/cjs/standard/elements/WindowCovering.js +35 -36
  467. package/dist/cjs/standard/elements/WindowCovering.js.map +1 -1
  468. package/dist/cjs/standard/elements/WindowCoveringControllerDT.d.ts.map +1 -1
  469. package/dist/cjs/standard/elements/WindowCoveringControllerDT.js +0 -7
  470. package/dist/cjs/standard/elements/WindowCoveringControllerDT.js.map +1 -1
  471. package/dist/cjs/standard/elements/WindowCoveringDT.d.ts.map +1 -1
  472. package/dist/cjs/standard/elements/WindowCoveringDT.js +4 -15
  473. package/dist/cjs/standard/elements/WindowCoveringDT.js.map +1 -1
  474. package/dist/cjs/standard/elements/action-id.js +1 -1
  475. package/dist/cjs/standard/elements/amperage-mA.js +1 -1
  476. package/dist/cjs/standard/elements/attrib-id.js +1 -1
  477. package/dist/cjs/standard/elements/bool.js +1 -1
  478. package/dist/cjs/standard/elements/cluster-id.js +1 -1
  479. package/dist/cjs/standard/elements/command-id.js +1 -1
  480. package/dist/cjs/standard/elements/data-ver.js +2 -2
  481. package/dist/cjs/standard/elements/date.js +5 -5
  482. package/dist/cjs/standard/elements/definitions.d.ts +27 -1
  483. package/dist/cjs/standard/elements/definitions.d.ts.map +1 -1
  484. package/dist/cjs/standard/elements/definitions.js +27 -1
  485. package/dist/cjs/standard/elements/definitions.js.map +1 -1
  486. package/dist/cjs/standard/elements/devtype-id.js +1 -1
  487. package/dist/cjs/standard/elements/double.js +1 -1
  488. package/dist/cjs/standard/elements/elapsed-s.js +1 -1
  489. package/dist/cjs/standard/elements/endpoint-no.d.ts.map +1 -1
  490. package/dist/cjs/standard/elements/endpoint-no.js +2 -2
  491. package/dist/cjs/standard/elements/endpoint-no.js.map +1 -1
  492. package/dist/cjs/standard/elements/energy-mWh.js +1 -1
  493. package/dist/cjs/standard/elements/entry-idx.js +1 -1
  494. package/dist/cjs/standard/elements/enum16.js +1 -1
  495. package/dist/cjs/standard/elements/enum8.js +1 -1
  496. package/dist/cjs/standard/elements/epoch-s.js +1 -1
  497. package/dist/cjs/standard/elements/epoch-us.js +1 -1
  498. package/dist/cjs/standard/elements/event-id.js +1 -1
  499. package/dist/cjs/standard/elements/event-no.js +1 -1
  500. package/dist/cjs/standard/elements/fabric-id.js +1 -1
  501. package/dist/cjs/standard/elements/fabric-idx.js +1 -1
  502. package/dist/cjs/standard/elements/field-id.js +1 -1
  503. package/dist/cjs/standard/elements/group-id.js +1 -1
  504. package/dist/cjs/standard/elements/hwadr.js +1 -1
  505. package/dist/cjs/standard/elements/int16.js +1 -1
  506. package/dist/cjs/standard/elements/int24.js +1 -1
  507. package/dist/cjs/standard/elements/int32.js +1 -1
  508. package/dist/cjs/standard/elements/int40.js +1 -1
  509. package/dist/cjs/standard/elements/int48.js +1 -1
  510. package/dist/cjs/standard/elements/int56.js +1 -1
  511. package/dist/cjs/standard/elements/int64.js +1 -1
  512. package/dist/cjs/standard/elements/int8.js +1 -1
  513. package/dist/cjs/standard/elements/ipadr.d.ts.map +1 -1
  514. package/dist/cjs/standard/elements/ipadr.js +1 -2
  515. package/dist/cjs/standard/elements/ipadr.js.map +1 -1
  516. package/dist/cjs/standard/elements/ipv4adr.js +1 -1
  517. package/dist/cjs/standard/elements/ipv6adr.js +1 -1
  518. package/dist/cjs/standard/elements/ipv6pre.js +1 -1
  519. package/dist/cjs/standard/elements/list.d.ts.map +1 -1
  520. package/dist/cjs/standard/elements/list.js +8 -10
  521. package/dist/cjs/standard/elements/list.js.map +1 -1
  522. package/dist/cjs/standard/elements/locationdesc.d.ts +8 -0
  523. package/dist/cjs/standard/elements/locationdesc.d.ts.map +1 -0
  524. package/dist/cjs/standard/elements/locationdesc.js +69 -0
  525. package/dist/cjs/standard/elements/locationdesc.js.map +6 -0
  526. package/dist/cjs/standard/elements/map16.js +1 -1
  527. package/dist/cjs/standard/elements/map32.js +1 -1
  528. package/dist/cjs/standard/elements/map64.js +1 -1
  529. package/dist/cjs/standard/elements/map8.js +1 -1
  530. package/dist/cjs/standard/elements/models.d.ts +27 -1
  531. package/dist/cjs/standard/elements/models.d.ts.map +1 -1
  532. package/dist/cjs/standard/elements/models.js +54 -2
  533. package/dist/cjs/standard/elements/models.js.map +1 -1
  534. package/dist/cjs/standard/elements/namespace.js +1 -1
  535. package/dist/cjs/standard/elements/node-id.js +1 -1
  536. package/dist/cjs/standard/elements/octstr.js +1 -1
  537. package/dist/cjs/standard/elements/percent.js +1 -1
  538. package/dist/cjs/standard/elements/percent100ths.js +1 -1
  539. package/dist/cjs/standard/elements/posix-ms.js +1 -1
  540. package/dist/cjs/standard/elements/power-mW.js +1 -1
  541. package/dist/cjs/standard/elements/priority.js +1 -1
  542. package/dist/cjs/standard/elements/semtag.js +5 -5
  543. package/dist/cjs/standard/elements/single.js +1 -1
  544. package/dist/cjs/standard/elements/status.d.ts.map +1 -1
  545. package/dist/cjs/standard/elements/status.js +19 -1
  546. package/dist/cjs/standard/elements/status.js.map +1 -1
  547. package/dist/cjs/standard/elements/string.js +1 -1
  548. package/dist/cjs/standard/elements/struct.js +1 -1
  549. package/dist/cjs/standard/elements/systime-ms.js +1 -1
  550. package/dist/cjs/standard/elements/systime-us.js +1 -1
  551. package/dist/cjs/standard/elements/tag.js +1 -1
  552. package/dist/cjs/standard/elements/temperature.js +1 -1
  553. package/dist/cjs/standard/elements/tod.js +1 -1
  554. package/dist/cjs/standard/elements/trans-id.js +1 -1
  555. package/dist/cjs/standard/elements/uint16.js +1 -1
  556. package/dist/cjs/standard/elements/uint24.js +1 -1
  557. package/dist/cjs/standard/elements/uint32.js +1 -1
  558. package/dist/cjs/standard/elements/uint40.js +1 -1
  559. package/dist/cjs/standard/elements/uint48.js +1 -1
  560. package/dist/cjs/standard/elements/uint56.js +1 -1
  561. package/dist/cjs/standard/elements/uint64.js +1 -1
  562. package/dist/cjs/standard/elements/uint8.js +1 -1
  563. package/dist/cjs/standard/elements/vendor-id.js +1 -1
  564. package/dist/cjs/standard/elements/voltage-mV.js +1 -1
  565. package/dist/esm/aspects/Conformance.d.ts +5 -3
  566. package/dist/esm/aspects/Conformance.d.ts.map +1 -1
  567. package/dist/esm/aspects/Conformance.js +24 -3
  568. package/dist/esm/aspects/Conformance.js.map +1 -1
  569. package/dist/esm/aspects/Quality.d.ts +9 -2
  570. package/dist/esm/aspects/Quality.d.ts.map +1 -1
  571. package/dist/esm/aspects/Quality.js +3 -1
  572. package/dist/esm/aspects/Quality.js.map +1 -1
  573. package/dist/esm/common/Specification.d.ts +3 -3
  574. package/dist/esm/common/Specification.d.ts.map +1 -1
  575. package/dist/esm/common/Specification.js +3 -3
  576. package/dist/esm/logic/cluster-variance/IllegalFeatureCombinations.js +82 -66
  577. package/dist/esm/logic/cluster-variance/IllegalFeatureCombinations.js.map +1 -1
  578. package/dist/esm/logic/cluster-variance/InferredComponents.js +24 -1
  579. package/dist/esm/logic/cluster-variance/InferredComponents.js.map +1 -1
  580. package/dist/esm/logic/definition-validation/ValueValidator.d.ts.map +1 -1
  581. package/dist/esm/logic/definition-validation/ValueValidator.js +11 -6
  582. package/dist/esm/logic/definition-validation/ValueValidator.js.map +1 -1
  583. package/dist/esm/models/AttributeModel.d.ts.map +1 -1
  584. package/dist/esm/models/AttributeModel.js +1 -4
  585. package/dist/esm/models/AttributeModel.js.map +1 -1
  586. package/dist/esm/models/ClusterModel.d.ts.map +1 -1
  587. package/dist/esm/models/ClusterModel.js +1 -3
  588. package/dist/esm/models/ClusterModel.js.map +1 -1
  589. package/dist/esm/models/CommandModel.d.ts.map +1 -1
  590. package/dist/esm/models/CommandModel.js +1 -4
  591. package/dist/esm/models/CommandModel.js.map +1 -1
  592. package/dist/esm/models/DatatypeModel.d.ts +1 -0
  593. package/dist/esm/models/DatatypeModel.d.ts.map +1 -1
  594. package/dist/esm/models/DatatypeModel.js +2 -4
  595. package/dist/esm/models/DatatypeModel.js.map +1 -1
  596. package/dist/esm/models/DeviceTypeModel.d.ts +1 -0
  597. package/dist/esm/models/DeviceTypeModel.d.ts.map +1 -1
  598. package/dist/esm/models/DeviceTypeModel.js +2 -3
  599. package/dist/esm/models/DeviceTypeModel.js.map +1 -1
  600. package/dist/esm/models/EndpointModel.d.ts +1 -0
  601. package/dist/esm/models/EndpointModel.d.ts.map +1 -1
  602. package/dist/esm/models/EndpointModel.js +2 -3
  603. package/dist/esm/models/EndpointModel.js.map +1 -1
  604. package/dist/esm/models/EventModel.d.ts.map +1 -1
  605. package/dist/esm/models/EventModel.js +1 -4
  606. package/dist/esm/models/EventModel.js.map +1 -1
  607. package/dist/esm/models/FabricModel.d.ts +1 -0
  608. package/dist/esm/models/FabricModel.d.ts.map +1 -1
  609. package/dist/esm/models/FabricModel.js +2 -3
  610. package/dist/esm/models/FabricModel.js.map +1 -1
  611. package/dist/esm/models/FieldModel.d.ts +1 -0
  612. package/dist/esm/models/FieldModel.d.ts.map +1 -1
  613. package/dist/esm/models/FieldModel.js +2 -4
  614. package/dist/esm/models/FieldModel.js.map +1 -1
  615. package/dist/esm/models/Globals.d.ts +27 -1
  616. package/dist/esm/models/Globals.d.ts.map +1 -1
  617. package/dist/esm/models/MatterModel.d.ts +1 -0
  618. package/dist/esm/models/MatterModel.d.ts.map +1 -1
  619. package/dist/esm/models/MatterModel.js +2 -4
  620. package/dist/esm/models/MatterModel.js.map +1 -1
  621. package/dist/esm/models/Model.d.ts +26 -2
  622. package/dist/esm/models/Model.d.ts.map +1 -1
  623. package/dist/esm/models/Model.js +45 -6
  624. package/dist/esm/models/Model.js.map +1 -1
  625. package/dist/esm/models/NodeModel.d.ts +1 -0
  626. package/dist/esm/models/NodeModel.d.ts.map +1 -1
  627. package/dist/esm/models/NodeModel.js +2 -3
  628. package/dist/esm/models/NodeModel.js.map +1 -1
  629. package/dist/esm/models/RequirementModel.d.ts +1 -0
  630. package/dist/esm/models/RequirementModel.d.ts.map +1 -1
  631. package/dist/esm/models/RequirementModel.js +2 -3
  632. package/dist/esm/models/RequirementModel.js.map +1 -1
  633. package/dist/esm/models/SemanticNamespaceModel.d.ts +1 -0
  634. package/dist/esm/models/SemanticNamespaceModel.d.ts.map +1 -1
  635. package/dist/esm/models/SemanticNamespaceModel.js +2 -3
  636. package/dist/esm/models/SemanticNamespaceModel.js.map +1 -1
  637. package/dist/esm/models/SemanticTagModel.d.ts +1 -0
  638. package/dist/esm/models/SemanticTagModel.d.ts.map +1 -1
  639. package/dist/esm/models/SemanticTagModel.js +2 -3
  640. package/dist/esm/models/SemanticTagModel.js.map +1 -1
  641. package/dist/esm/standard/elements/AcceptedCommandList.d.ts.map +1 -1
  642. package/dist/esm/standard/elements/AcceptedCommandList.js +1 -1
  643. package/dist/esm/standard/elements/AcceptedCommandList.js.map +1 -1
  644. package/dist/esm/standard/elements/AccessControl.d.ts.map +1 -1
  645. package/dist/esm/standard/elements/AccessControl.js +299 -37
  646. package/dist/esm/standard/elements/AccessControl.js.map +1 -1
  647. package/dist/esm/standard/elements/Actions.d.ts.map +1 -1
  648. package/dist/esm/standard/elements/Actions.js +6 -6
  649. package/dist/esm/standard/elements/Actions.js.map +1 -1
  650. package/dist/esm/standard/elements/AdministratorCommissioning.d.ts.map +1 -1
  651. package/dist/esm/standard/elements/AdministratorCommissioning.js +18 -12
  652. package/dist/esm/standard/elements/AdministratorCommissioning.js.map +1 -1
  653. package/dist/esm/standard/elements/AggregatorDT.d.ts.map +1 -1
  654. package/dist/esm/standard/elements/AggregatorDT.js +23 -4
  655. package/dist/esm/standard/elements/AggregatorDT.js.map +1 -1
  656. package/dist/esm/standard/elements/AirPurifierDT.d.ts.map +1 -1
  657. package/dist/esm/standard/elements/AirPurifierDT.js +8 -1
  658. package/dist/esm/standard/elements/AirPurifierDT.js.map +1 -1
  659. package/dist/esm/standard/elements/AlarmBase.d.ts.map +1 -1
  660. package/dist/esm/standard/elements/AlarmBase.js +1 -1
  661. package/dist/esm/standard/elements/AlarmBase.js.map +1 -1
  662. package/dist/esm/standard/elements/ApplicationLauncher.d.ts.map +1 -1
  663. package/dist/esm/standard/elements/ApplicationLauncher.js +12 -4
  664. package/dist/esm/standard/elements/ApplicationLauncher.js.map +1 -1
  665. package/dist/esm/standard/elements/AreaNamespaceNS.d.ts +8 -0
  666. package/dist/esm/standard/elements/AreaNamespaceNS.d.ts.map +1 -0
  667. package/dist/esm/standard/elements/AreaNamespaceNS.js +130 -0
  668. package/dist/esm/standard/elements/AreaNamespaceNS.js.map +6 -0
  669. package/dist/esm/standard/elements/AtomicAttributeStatusStruct.d.ts +8 -0
  670. package/dist/esm/standard/elements/AtomicAttributeStatusStruct.d.ts.map +1 -0
  671. package/dist/esm/standard/elements/AtomicAttributeStatusStruct.js +36 -0
  672. package/dist/esm/standard/elements/AtomicAttributeStatusStruct.js.map +6 -0
  673. package/dist/esm/standard/elements/AtomicRequestTypeEnum.d.ts +8 -0
  674. package/dist/esm/standard/elements/AtomicRequestTypeEnum.d.ts.map +1 -0
  675. package/dist/esm/standard/elements/AtomicRequestTypeEnum.js +23 -0
  676. package/dist/esm/standard/elements/AtomicRequestTypeEnum.js.map +6 -0
  677. package/dist/esm/standard/elements/BallastConfiguration.js +1 -1
  678. package/dist/esm/standard/elements/BasicInformation.d.ts.map +1 -1
  679. package/dist/esm/standard/elements/BasicInformation.js +17 -19
  680. package/dist/esm/standard/elements/BasicInformation.js.map +1 -1
  681. package/dist/esm/standard/elements/BatteryStorageDT.d.ts +8 -0
  682. package/dist/esm/standard/elements/BatteryStorageDT.d.ts.map +1 -0
  683. package/dist/esm/standard/elements/BatteryStorageDT.js +33 -0
  684. package/dist/esm/standard/elements/BatteryStorageDT.js.map +6 -0
  685. package/dist/esm/standard/elements/BooleanStateConfiguration.js +2 -2
  686. package/dist/esm/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
  687. package/dist/esm/standard/elements/BridgedDeviceBasicInformation.js +104 -32
  688. package/dist/esm/standard/elements/BridgedDeviceBasicInformation.js.map +1 -1
  689. package/dist/esm/standard/elements/BridgedNodeDT.d.ts.map +1 -1
  690. package/dist/esm/standard/elements/BridgedNodeDT.js +29 -3
  691. package/dist/esm/standard/elements/BridgedNodeDT.js.map +1 -1
  692. package/dist/esm/standard/elements/Channel.d.ts.map +1 -1
  693. package/dist/esm/standard/elements/Channel.js +13 -14
  694. package/dist/esm/standard/elements/Channel.js.map +1 -1
  695. package/dist/esm/standard/elements/ColorControl.d.ts.map +1 -1
  696. package/dist/esm/standard/elements/ColorControl.js +607 -478
  697. package/dist/esm/standard/elements/ColorControl.js.map +1 -1
  698. package/dist/esm/standard/elements/CommissionerControl.d.ts +8 -0
  699. package/dist/esm/standard/elements/CommissionerControl.d.ts.map +1 -0
  700. package/dist/esm/standard/elements/CommissionerControl.js +117 -0
  701. package/dist/esm/standard/elements/CommissionerControl.js.map +6 -0
  702. package/dist/esm/standard/elements/ConcentrationMeasurement.js +0 -1
  703. package/dist/esm/standard/elements/ConcentrationMeasurement.js.map +1 -1
  704. package/dist/esm/standard/elements/ContentControl.d.ts.map +1 -1
  705. package/dist/esm/standard/elements/ContentControl.js +34 -39
  706. package/dist/esm/standard/elements/ContentControl.js.map +1 -1
  707. package/dist/esm/standard/elements/ContentLauncher.d.ts.map +1 -1
  708. package/dist/esm/standard/elements/ContentLauncher.js +13 -11
  709. package/dist/esm/standard/elements/ContentLauncher.js.map +1 -1
  710. package/dist/esm/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
  711. package/dist/esm/standard/elements/DeviceEnergyManagement.js +154 -118
  712. package/dist/esm/standard/elements/DeviceEnergyManagement.js.map +1 -1
  713. package/dist/esm/standard/elements/DeviceEnergyManagementDT.d.ts.map +1 -1
  714. package/dist/esm/standard/elements/DeviceEnergyManagementDT.js +31 -12
  715. package/dist/esm/standard/elements/DeviceEnergyManagementDT.js.map +1 -1
  716. package/dist/esm/standard/elements/DeviceEnergyManagementMode.d.ts.map +1 -1
  717. package/dist/esm/standard/elements/DeviceEnergyManagementMode.js +40 -11
  718. package/dist/esm/standard/elements/DeviceEnergyManagementMode.js.map +1 -1
  719. package/dist/esm/standard/elements/DishwasherAlarm.d.ts.map +1 -1
  720. package/dist/esm/standard/elements/DishwasherAlarm.js +1 -1
  721. package/dist/esm/standard/elements/DishwasherAlarm.js.map +1 -1
  722. package/dist/esm/standard/elements/DishwasherMode.d.ts.map +1 -1
  723. package/dist/esm/standard/elements/DishwasherMode.js +37 -17
  724. package/dist/esm/standard/elements/DishwasherMode.js.map +1 -1
  725. package/dist/esm/standard/elements/DoorLock.d.ts.map +1 -1
  726. package/dist/esm/standard/elements/DoorLock.js +505 -629
  727. package/dist/esm/standard/elements/DoorLock.js.map +1 -1
  728. package/dist/esm/standard/elements/DoorLockControllerDT.js +1 -1
  729. package/dist/esm/standard/elements/DoorLockControllerDT.js.map +1 -1
  730. package/dist/esm/standard/elements/DoorLockDT.js +2 -2
  731. package/dist/esm/standard/elements/DoorLockDT.js.map +1 -1
  732. package/dist/esm/standard/elements/EcosystemInformation.d.ts +8 -0
  733. package/dist/esm/standard/elements/EcosystemInformation.d.ts.map +1 -0
  734. package/dist/esm/standard/elements/EcosystemInformation.js +132 -0
  735. package/dist/esm/standard/elements/EcosystemInformation.js.map +6 -0
  736. package/dist/esm/standard/elements/ElectricalEnergyMeasurement.d.ts.map +1 -1
  737. package/dist/esm/standard/elements/ElectricalEnergyMeasurement.js +9 -18
  738. package/dist/esm/standard/elements/ElectricalEnergyMeasurement.js.map +1 -1
  739. package/dist/esm/standard/elements/ElectricalMeasurementNS.js +1 -1
  740. package/dist/esm/standard/elements/ElectricalPowerMeasurement.js +5 -5
  741. package/dist/esm/standard/elements/ElectricalPowerMeasurement.js.map +1 -1
  742. package/dist/esm/standard/elements/EnergyEvse.d.ts.map +1 -1
  743. package/dist/esm/standard/elements/EnergyEvse.js +98 -51
  744. package/dist/esm/standard/elements/EnergyEvse.js.map +1 -1
  745. package/dist/esm/standard/elements/EnergyEvseDT.d.ts +8 -0
  746. package/dist/esm/standard/elements/EnergyEvseDT.d.ts.map +1 -0
  747. package/dist/esm/standard/elements/EnergyEvseDT.js +54 -0
  748. package/dist/esm/standard/elements/EnergyEvseDT.js.map +6 -0
  749. package/dist/esm/standard/elements/EnergyEvseMode.d.ts.map +1 -1
  750. package/dist/esm/standard/elements/EnergyEvseMode.js +51 -10
  751. package/dist/esm/standard/elements/EnergyEvseMode.js.map +1 -1
  752. package/dist/esm/standard/elements/EnergyPreference.d.ts.map +1 -1
  753. package/dist/esm/standard/elements/EnergyPreference.js +22 -19
  754. package/dist/esm/standard/elements/EnergyPreference.js.map +1 -1
  755. package/dist/esm/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
  756. package/dist/esm/standard/elements/EthernetNetworkDiagnostics.js +1 -1
  757. package/dist/esm/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
  758. package/dist/esm/standard/elements/EventList.d.ts.map +1 -1
  759. package/dist/esm/standard/elements/EventList.js +2 -13
  760. package/dist/esm/standard/elements/EventList.js.map +1 -1
  761. package/dist/esm/standard/elements/FabricIndex.js +1 -1
  762. package/dist/esm/standard/elements/FanControl.js +8 -10
  763. package/dist/esm/standard/elements/FanControl.js.map +1 -1
  764. package/dist/esm/standard/elements/FanDT.d.ts.map +1 -1
  765. package/dist/esm/standard/elements/FanDT.js +8 -1
  766. package/dist/esm/standard/elements/FanDT.js.map +1 -1
  767. package/dist/esm/standard/elements/FeatureMap.d.ts.map +1 -1
  768. package/dist/esm/standard/elements/FeatureMap.js +1 -1
  769. package/dist/esm/standard/elements/FeatureMap.js.map +1 -1
  770. package/dist/esm/standard/elements/FixedLabel.d.ts.map +1 -1
  771. package/dist/esm/standard/elements/FixedLabel.js +1 -1
  772. package/dist/esm/standard/elements/FixedLabel.js.map +1 -1
  773. package/dist/esm/standard/elements/FlowMeasurement.d.ts.map +1 -1
  774. package/dist/esm/standard/elements/FlowMeasurement.js +6 -6
  775. package/dist/esm/standard/elements/FlowMeasurement.js.map +1 -1
  776. package/dist/esm/standard/elements/GeneralCommissioning.d.ts.map +1 -1
  777. package/dist/esm/standard/elements/GeneralCommissioning.js +163 -39
  778. package/dist/esm/standard/elements/GeneralCommissioning.js.map +1 -1
  779. package/dist/esm/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
  780. package/dist/esm/standard/elements/GeneralDiagnostics.js +12 -13
  781. package/dist/esm/standard/elements/GeneralDiagnostics.js.map +1 -1
  782. package/dist/esm/standard/elements/GeneratedCommandList.d.ts.map +1 -1
  783. package/dist/esm/standard/elements/GeneratedCommandList.js +1 -1
  784. package/dist/esm/standard/elements/GeneratedCommandList.js.map +1 -1
  785. package/dist/esm/standard/elements/GroupKeyManagement.d.ts.map +1 -1
  786. package/dist/esm/standard/elements/GroupKeyManagement.js +13 -12
  787. package/dist/esm/standard/elements/GroupKeyManagement.js.map +1 -1
  788. package/dist/esm/standard/elements/Groups.d.ts.map +1 -1
  789. package/dist/esm/standard/elements/Groups.js +1 -1
  790. package/dist/esm/standard/elements/Groups.js.map +1 -1
  791. package/dist/esm/standard/elements/HeatPumpDT.d.ts +8 -0
  792. package/dist/esm/standard/elements/HeatPumpDT.d.ts.map +1 -0
  793. package/dist/esm/standard/elements/HeatPumpDT.js +40 -0
  794. package/dist/esm/standard/elements/HeatPumpDT.js.map +6 -0
  795. package/dist/esm/standard/elements/IcdManagement.d.ts.map +1 -1
  796. package/dist/esm/standard/elements/IcdManagement.js +74 -20
  797. package/dist/esm/standard/elements/IcdManagement.js.map +1 -1
  798. package/dist/esm/standard/elements/Identify.js +5 -5
  799. package/dist/esm/standard/elements/IlluminanceMeasurement.d.ts.map +1 -1
  800. package/dist/esm/standard/elements/IlluminanceMeasurement.js +7 -7
  801. package/dist/esm/standard/elements/IlluminanceMeasurement.js.map +1 -1
  802. package/dist/esm/standard/elements/JointFabricAdministratorDT.d.ts +8 -0
  803. package/dist/esm/standard/elements/JointFabricAdministratorDT.d.ts.map +1 -0
  804. package/dist/esm/standard/elements/JointFabricAdministratorDT.js +40 -0
  805. package/dist/esm/standard/elements/JointFabricAdministratorDT.js.map +6 -0
  806. package/dist/esm/standard/elements/JointFabricDatastoreCluster.d.ts +8 -0
  807. package/dist/esm/standard/elements/JointFabricDatastoreCluster.d.ts.map +1 -0
  808. package/dist/esm/standard/elements/JointFabricDatastoreCluster.js +673 -0
  809. package/dist/esm/standard/elements/JointFabricDatastoreCluster.js.map +6 -0
  810. package/dist/esm/standard/elements/JointFabricPki.d.ts +8 -0
  811. package/dist/esm/standard/elements/JointFabricPki.d.ts.map +1 -0
  812. package/dist/esm/standard/elements/JointFabricPki.js +153 -0
  813. package/dist/esm/standard/elements/JointFabricPki.js.map +6 -0
  814. package/dist/esm/standard/elements/KeypadInput.d.ts.map +1 -1
  815. package/dist/esm/standard/elements/KeypadInput.js +1 -1
  816. package/dist/esm/standard/elements/KeypadInput.js.map +1 -1
  817. package/dist/esm/standard/elements/LandmarkNamespaceNS.d.ts +8 -0
  818. package/dist/esm/standard/elements/LandmarkNamespaceNS.d.ts.map +1 -0
  819. package/dist/esm/standard/elements/LandmarkNamespaceNS.js +74 -0
  820. package/dist/esm/standard/elements/LandmarkNamespaceNS.js.map +6 -0
  821. package/dist/esm/standard/elements/LaundryDryerControls.js +2 -1
  822. package/dist/esm/standard/elements/LaundryDryerControls.js.map +1 -1
  823. package/dist/esm/standard/elements/LaundryNS.js +1 -1
  824. package/dist/esm/standard/elements/LaundryWasherControls.d.ts.map +1 -1
  825. package/dist/esm/standard/elements/LaundryWasherControls.js +8 -8
  826. package/dist/esm/standard/elements/LaundryWasherControls.js.map +1 -1
  827. package/dist/esm/standard/elements/LaundryWasherMode.d.ts.map +1 -1
  828. package/dist/esm/standard/elements/LaundryWasherMode.js +38 -18
  829. package/dist/esm/standard/elements/LaundryWasherMode.js.map +1 -1
  830. package/dist/esm/standard/elements/LevelControl.d.ts.map +1 -1
  831. package/dist/esm/standard/elements/LevelControl.js +14 -13
  832. package/dist/esm/standard/elements/LevelControl.js.map +1 -1
  833. package/dist/esm/standard/elements/LocalizationConfiguration.d.ts.map +1 -1
  834. package/dist/esm/standard/elements/LocalizationConfiguration.js +11 -13
  835. package/dist/esm/standard/elements/LocalizationConfiguration.js.map +1 -1
  836. package/dist/esm/standard/elements/MediaInput.d.ts.map +1 -1
  837. package/dist/esm/standard/elements/MediaInput.js +1 -1
  838. package/dist/esm/standard/elements/MediaInput.js.map +1 -1
  839. package/dist/esm/standard/elements/MediaPlayback.d.ts.map +1 -1
  840. package/dist/esm/standard/elements/MediaPlayback.js +3 -2
  841. package/dist/esm/standard/elements/MediaPlayback.js.map +1 -1
  842. package/dist/esm/standard/elements/MicrowaveOvenControl.d.ts.map +1 -1
  843. package/dist/esm/standard/elements/MicrowaveOvenControl.js +12 -12
  844. package/dist/esm/standard/elements/MicrowaveOvenControl.js.map +1 -1
  845. package/dist/esm/standard/elements/MicrowaveOvenMode.d.ts.map +1 -1
  846. package/dist/esm/standard/elements/MicrowaveOvenMode.js +39 -14
  847. package/dist/esm/standard/elements/MicrowaveOvenMode.js.map +1 -1
  848. package/dist/esm/standard/elements/ModeBase.d.ts.map +1 -1
  849. package/dist/esm/standard/elements/ModeBase.js +18 -69
  850. package/dist/esm/standard/elements/ModeBase.js.map +1 -1
  851. package/dist/esm/standard/elements/ModeSelect.js +10 -10
  852. package/dist/esm/standard/elements/ModeSelect.js.map +1 -1
  853. package/dist/esm/standard/elements/MountedDimmableLoadControlDT.d.ts +8 -0
  854. package/dist/esm/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -0
  855. package/dist/esm/standard/elements/MountedDimmableLoadControlDT.js +84 -0
  856. package/dist/esm/standard/elements/MountedDimmableLoadControlDT.js.map +6 -0
  857. package/dist/esm/standard/elements/MountedOnOffControlDT.d.ts +8 -0
  858. package/dist/esm/standard/elements/MountedOnOffControlDT.d.ts.map +1 -0
  859. package/dist/esm/standard/elements/MountedOnOffControlDT.js +84 -0
  860. package/dist/esm/standard/elements/MountedOnOffControlDT.js.map +6 -0
  861. package/dist/esm/standard/elements/NetworkCommissioning.d.ts.map +1 -1
  862. package/dist/esm/standard/elements/NetworkCommissioning.js +50 -37
  863. package/dist/esm/standard/elements/NetworkCommissioning.js.map +1 -1
  864. package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.d.ts +8 -0
  865. package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -0
  866. package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.js +47 -0
  867. package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.js.map +6 -0
  868. package/dist/esm/standard/elements/OccupancySensing.d.ts.map +1 -1
  869. package/dist/esm/standard/elements/OccupancySensing.js +197 -43
  870. package/dist/esm/standard/elements/OccupancySensing.js.map +1 -1
  871. package/dist/esm/standard/elements/OccupancySensorDT.d.ts.map +1 -1
  872. package/dist/esm/standard/elements/OccupancySensorDT.js +8 -1
  873. package/dist/esm/standard/elements/OccupancySensorDT.js.map +1 -1
  874. package/dist/esm/standard/elements/OnOff.d.ts.map +1 -1
  875. package/dist/esm/standard/elements/OnOff.js +1 -1
  876. package/dist/esm/standard/elements/OnOff.js.map +1 -1
  877. package/dist/esm/standard/elements/OperationalCredentials.d.ts.map +1 -1
  878. package/dist/esm/standard/elements/OperationalCredentials.js +7 -7
  879. package/dist/esm/standard/elements/OperationalCredentials.js.map +1 -1
  880. package/dist/esm/standard/elements/OperationalState.d.ts.map +1 -1
  881. package/dist/esm/standard/elements/OperationalState.js +22 -22
  882. package/dist/esm/standard/elements/OperationalState.js.map +1 -1
  883. package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.d.ts.map +1 -1
  884. package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.js +11 -12
  885. package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.js.map +1 -1
  886. package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
  887. package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.js +2 -1
  888. package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
  889. package/dist/esm/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
  890. package/dist/esm/standard/elements/OvenCavityOperationalState.js +12 -3
  891. package/dist/esm/standard/elements/OvenCavityOperationalState.js.map +1 -1
  892. package/dist/esm/standard/elements/OvenDT.js +1 -1
  893. package/dist/esm/standard/elements/OvenMode.d.ts.map +1 -1
  894. package/dist/esm/standard/elements/OvenMode.js +49 -14
  895. package/dist/esm/standard/elements/OvenMode.js.map +1 -1
  896. package/dist/esm/standard/elements/PowerSource.d.ts.map +1 -1
  897. package/dist/esm/standard/elements/PowerSource.js +12 -12
  898. package/dist/esm/standard/elements/PowerSource.js.map +1 -1
  899. package/dist/esm/standard/elements/PowerSourceNS.js +5 -5
  900. package/dist/esm/standard/elements/PressureMeasurement.js +7 -7
  901. package/dist/esm/standard/elements/PressureMeasurement.js.map +1 -1
  902. package/dist/esm/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
  903. package/dist/esm/standard/elements/PumpConfigurationAndControl.js +9 -19
  904. package/dist/esm/standard/elements/PumpConfigurationAndControl.js.map +1 -1
  905. package/dist/esm/standard/elements/PumpControllerDT.d.ts.map +1 -1
  906. package/dist/esm/standard/elements/PumpControllerDT.js +1 -8
  907. package/dist/esm/standard/elements/PumpControllerDT.js.map +1 -1
  908. package/dist/esm/standard/elements/PumpDT.js +14 -14
  909. package/dist/esm/standard/elements/RefrigeratorAlarm.d.ts.map +1 -1
  910. package/dist/esm/standard/elements/RefrigeratorAlarm.js +1 -1
  911. package/dist/esm/standard/elements/RefrigeratorAlarm.js.map +1 -1
  912. package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
  913. package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.js +38 -12
  914. package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.js.map +1 -1
  915. package/dist/esm/standard/elements/RefrigeratorDT.js +1 -1
  916. package/dist/esm/standard/elements/RefrigeratorNS.js +1 -1
  917. package/dist/esm/standard/elements/RelativeHumidityMeasurement.d.ts.map +1 -1
  918. package/dist/esm/standard/elements/RelativeHumidityMeasurement.js +3 -3
  919. package/dist/esm/standard/elements/RelativeHumidityMeasurement.js.map +1 -1
  920. package/dist/esm/standard/elements/RelativePositionNS.d.ts +8 -0
  921. package/dist/esm/standard/elements/RelativePositionNS.d.ts.map +1 -0
  922. package/dist/esm/standard/elements/RelativePositionNS.js +30 -0
  923. package/dist/esm/standard/elements/RelativePositionNS.js.map +6 -0
  924. package/dist/esm/standard/elements/ResourceMonitoring.d.ts.map +1 -1
  925. package/dist/esm/standard/elements/ResourceMonitoring.js +1 -1
  926. package/dist/esm/standard/elements/ResourceMonitoring.js.map +1 -1
  927. package/dist/esm/standard/elements/RoboticVacuumCleanerDT.d.ts.map +1 -1
  928. package/dist/esm/standard/elements/RoboticVacuumCleanerDT.js +8 -1
  929. package/dist/esm/standard/elements/RoboticVacuumCleanerDT.js.map +1 -1
  930. package/dist/esm/standard/elements/RoomAirConditionerNS.js +1 -1
  931. package/dist/esm/standard/elements/RootNodeDT.d.ts.map +1 -1
  932. package/dist/esm/standard/elements/RootNodeDT.js +20 -15
  933. package/dist/esm/standard/elements/RootNodeDT.js.map +1 -1
  934. package/dist/esm/standard/elements/RvcCleanMode.d.ts.map +1 -1
  935. package/dist/esm/standard/elements/RvcCleanMode.js +32 -7
  936. package/dist/esm/standard/elements/RvcCleanMode.js.map +1 -1
  937. package/dist/esm/standard/elements/RvcOperationalState.d.ts.map +1 -1
  938. package/dist/esm/standard/elements/RvcOperationalState.js +28 -5
  939. package/dist/esm/standard/elements/RvcOperationalState.js.map +1 -1
  940. package/dist/esm/standard/elements/RvcRunMode.d.ts.map +1 -1
  941. package/dist/esm/standard/elements/RvcRunMode.js +32 -7
  942. package/dist/esm/standard/elements/RvcRunMode.js.map +1 -1
  943. package/dist/esm/standard/elements/ScenesManagement.d.ts.map +1 -1
  944. package/dist/esm/standard/elements/ScenesManagement.js +4 -4
  945. package/dist/esm/standard/elements/ScenesManagement.js.map +1 -1
  946. package/dist/esm/standard/elements/SecondaryNetworkInterfaceDT.d.ts +8 -0
  947. package/dist/esm/standard/elements/SecondaryNetworkInterfaceDT.d.ts.map +1 -0
  948. package/dist/esm/standard/elements/SecondaryNetworkInterfaceDT.js +54 -0
  949. package/dist/esm/standard/elements/SecondaryNetworkInterfaceDT.js.map +6 -0
  950. package/dist/esm/standard/elements/ServiceArea.d.ts +8 -0
  951. package/dist/esm/standard/elements/ServiceArea.d.ts.map +1 -0
  952. package/dist/esm/standard/elements/ServiceArea.js +441 -0
  953. package/dist/esm/standard/elements/ServiceArea.js.map +6 -0
  954. package/dist/esm/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
  955. package/dist/esm/standard/elements/SmokeCoAlarm.js +13 -17
  956. package/dist/esm/standard/elements/SmokeCoAlarm.js.map +1 -1
  957. package/dist/esm/standard/elements/SoftwareVersionCertificationStatusEnum.js +1 -1
  958. package/dist/esm/standard/elements/SolarPowerDT.d.ts +8 -0
  959. package/dist/esm/standard/elements/SolarPowerDT.d.ts.map +1 -0
  960. package/dist/esm/standard/elements/SolarPowerDT.js +33 -0
  961. package/dist/esm/standard/elements/SolarPowerDT.js.map +6 -0
  962. package/dist/esm/standard/elements/Switch.d.ts.map +1 -1
  963. package/dist/esm/standard/elements/Switch.js +39 -25
  964. package/dist/esm/standard/elements/Switch.js.map +1 -1
  965. package/dist/esm/standard/elements/SwitchesNS.js +2 -2
  966. package/dist/esm/standard/elements/TargetNavigator.js +2 -1
  967. package/dist/esm/standard/elements/TargetNavigator.js.map +1 -1
  968. package/dist/esm/standard/elements/TemperatureControl.js +3 -3
  969. package/dist/esm/standard/elements/TemperatureControl.js.map +1 -1
  970. package/dist/esm/standard/elements/TemperatureControlledCabinetDT.js +1 -1
  971. package/dist/esm/standard/elements/TemperatureMeasurement.js +3 -3
  972. package/dist/esm/standard/elements/TemperatureMeasurement.js.map +1 -1
  973. package/dist/esm/standard/elements/Thermostat.d.ts.map +1 -1
  974. package/dist/esm/standard/elements/Thermostat.js +673 -124
  975. package/dist/esm/standard/elements/Thermostat.js.map +1 -1
  976. package/dist/esm/standard/elements/ThermostatDT.d.ts.map +1 -1
  977. package/dist/esm/standard/elements/ThermostatDT.js +20 -35
  978. package/dist/esm/standard/elements/ThermostatDT.js.map +1 -1
  979. package/dist/esm/standard/elements/ThermostatUserInterfaceConfiguration.js +0 -3
  980. package/dist/esm/standard/elements/ThermostatUserInterfaceConfiguration.js.map +1 -1
  981. package/dist/esm/standard/elements/ThreadBorderRouterManagement.d.ts +8 -0
  982. package/dist/esm/standard/elements/ThreadBorderRouterManagement.d.ts.map +1 -0
  983. package/dist/esm/standard/elements/ThreadBorderRouterManagement.js +183 -0
  984. package/dist/esm/standard/elements/ThreadBorderRouterManagement.js.map +6 -0
  985. package/dist/esm/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
  986. package/dist/esm/standard/elements/ThreadNetworkDiagnostics.js +26 -8
  987. package/dist/esm/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
  988. package/dist/esm/standard/elements/ThreadNetworkDirectory.d.ts +8 -0
  989. package/dist/esm/standard/elements/ThreadNetworkDirectory.d.ts.map +1 -0
  990. package/dist/esm/standard/elements/ThreadNetworkDirectory.js +167 -0
  991. package/dist/esm/standard/elements/ThreadNetworkDirectory.js.map +6 -0
  992. package/dist/esm/standard/elements/TimeFormatLocalization.js +1 -1
  993. package/dist/esm/standard/elements/TimeSynchronization.d.ts.map +1 -1
  994. package/dist/esm/standard/elements/TimeSynchronization.js +23 -11
  995. package/dist/esm/standard/elements/TimeSynchronization.js.map +1 -1
  996. package/dist/esm/standard/elements/UnitLocalization.d.ts.map +1 -1
  997. package/dist/esm/standard/elements/UnitLocalization.js +1 -1
  998. package/dist/esm/standard/elements/UnitLocalization.js.map +1 -1
  999. package/dist/esm/standard/elements/UserLabel.d.ts.map +1 -1
  1000. package/dist/esm/standard/elements/UserLabel.js +1 -1
  1001. package/dist/esm/standard/elements/UserLabel.js.map +1 -1
  1002. package/dist/esm/standard/elements/ValidProxies.js +0 -1
  1003. package/dist/esm/standard/elements/ValidProxies.js.map +1 -1
  1004. package/dist/esm/standard/elements/ValveConfigurationAndControl.js +1 -0
  1005. package/dist/esm/standard/elements/ValveConfigurationAndControl.js.map +1 -1
  1006. package/dist/esm/standard/elements/WaterHeaterDT.d.ts +8 -0
  1007. package/dist/esm/standard/elements/WaterHeaterDT.d.ts.map +1 -0
  1008. package/dist/esm/standard/elements/WaterHeaterDT.js +57 -0
  1009. package/dist/esm/standard/elements/WaterHeaterDT.js.map +6 -0
  1010. package/dist/esm/standard/elements/WaterHeaterManagement.d.ts +8 -0
  1011. package/dist/esm/standard/elements/WaterHeaterManagement.d.ts.map +1 -0
  1012. package/dist/esm/standard/elements/WaterHeaterManagement.js +226 -0
  1013. package/dist/esm/standard/elements/WaterHeaterManagement.js.map +6 -0
  1014. package/dist/esm/standard/elements/WaterHeaterMode.d.ts +8 -0
  1015. package/dist/esm/standard/elements/WaterHeaterMode.d.ts.map +1 -0
  1016. package/dist/esm/standard/elements/WaterHeaterMode.js +85 -0
  1017. package/dist/esm/standard/elements/WaterHeaterMode.js.map +6 -0
  1018. package/dist/esm/standard/elements/WaterTankLevelMonitoring.d.ts +8 -0
  1019. package/dist/esm/standard/elements/WaterTankLevelMonitoring.d.ts.map +1 -0
  1020. package/dist/esm/standard/elements/WaterTankLevelMonitoring.js +15 -0
  1021. package/dist/esm/standard/elements/WaterTankLevelMonitoring.js.map +6 -0
  1022. package/dist/esm/standard/elements/WaterValveDT.js +5 -5
  1023. package/dist/esm/standard/elements/WiFiNetworkDiagnostics.d.ts.map +1 -1
  1024. package/dist/esm/standard/elements/WiFiNetworkDiagnostics.js +2 -2
  1025. package/dist/esm/standard/elements/WiFiNetworkDiagnostics.js.map +1 -1
  1026. package/dist/esm/standard/elements/WiFiNetworkManagement.d.ts +8 -0
  1027. package/dist/esm/standard/elements/WiFiNetworkManagement.d.ts.map +1 -0
  1028. package/dist/esm/standard/elements/WiFiNetworkManagement.js +68 -0
  1029. package/dist/esm/standard/elements/WiFiNetworkManagement.js.map +6 -0
  1030. package/dist/esm/standard/elements/WindowCovering.js +35 -36
  1031. package/dist/esm/standard/elements/WindowCovering.js.map +1 -1
  1032. package/dist/esm/standard/elements/WindowCoveringControllerDT.d.ts.map +1 -1
  1033. package/dist/esm/standard/elements/WindowCoveringControllerDT.js +0 -7
  1034. package/dist/esm/standard/elements/WindowCoveringControllerDT.js.map +1 -1
  1035. package/dist/esm/standard/elements/WindowCoveringDT.d.ts.map +1 -1
  1036. package/dist/esm/standard/elements/WindowCoveringDT.js +4 -15
  1037. package/dist/esm/standard/elements/WindowCoveringDT.js.map +1 -1
  1038. package/dist/esm/standard/elements/action-id.js +1 -1
  1039. package/dist/esm/standard/elements/amperage-mA.js +1 -1
  1040. package/dist/esm/standard/elements/attrib-id.js +1 -1
  1041. package/dist/esm/standard/elements/bool.js +1 -1
  1042. package/dist/esm/standard/elements/cluster-id.js +1 -1
  1043. package/dist/esm/standard/elements/command-id.js +1 -1
  1044. package/dist/esm/standard/elements/data-ver.js +2 -2
  1045. package/dist/esm/standard/elements/date.js +5 -5
  1046. package/dist/esm/standard/elements/definitions.d.ts +27 -1
  1047. package/dist/esm/standard/elements/definitions.d.ts.map +1 -1
  1048. package/dist/esm/standard/elements/definitions.js +27 -1
  1049. package/dist/esm/standard/elements/definitions.js.map +1 -1
  1050. package/dist/esm/standard/elements/devtype-id.js +1 -1
  1051. package/dist/esm/standard/elements/double.js +1 -1
  1052. package/dist/esm/standard/elements/elapsed-s.js +1 -1
  1053. package/dist/esm/standard/elements/endpoint-no.d.ts.map +1 -1
  1054. package/dist/esm/standard/elements/endpoint-no.js +2 -2
  1055. package/dist/esm/standard/elements/endpoint-no.js.map +1 -1
  1056. package/dist/esm/standard/elements/energy-mWh.js +1 -1
  1057. package/dist/esm/standard/elements/entry-idx.js +1 -1
  1058. package/dist/esm/standard/elements/enum16.js +1 -1
  1059. package/dist/esm/standard/elements/enum8.js +1 -1
  1060. package/dist/esm/standard/elements/epoch-s.js +1 -1
  1061. package/dist/esm/standard/elements/epoch-us.js +1 -1
  1062. package/dist/esm/standard/elements/event-id.js +1 -1
  1063. package/dist/esm/standard/elements/event-no.js +1 -1
  1064. package/dist/esm/standard/elements/fabric-id.js +1 -1
  1065. package/dist/esm/standard/elements/fabric-idx.js +1 -1
  1066. package/dist/esm/standard/elements/field-id.js +1 -1
  1067. package/dist/esm/standard/elements/group-id.js +1 -1
  1068. package/dist/esm/standard/elements/hwadr.js +1 -1
  1069. package/dist/esm/standard/elements/int16.js +1 -1
  1070. package/dist/esm/standard/elements/int24.js +1 -1
  1071. package/dist/esm/standard/elements/int32.js +1 -1
  1072. package/dist/esm/standard/elements/int40.js +1 -1
  1073. package/dist/esm/standard/elements/int48.js +1 -1
  1074. package/dist/esm/standard/elements/int56.js +1 -1
  1075. package/dist/esm/standard/elements/int64.js +1 -1
  1076. package/dist/esm/standard/elements/int8.js +1 -1
  1077. package/dist/esm/standard/elements/ipadr.d.ts.map +1 -1
  1078. package/dist/esm/standard/elements/ipadr.js +1 -2
  1079. package/dist/esm/standard/elements/ipadr.js.map +1 -1
  1080. package/dist/esm/standard/elements/ipv4adr.js +1 -1
  1081. package/dist/esm/standard/elements/ipv6adr.js +1 -1
  1082. package/dist/esm/standard/elements/ipv6pre.js +1 -1
  1083. package/dist/esm/standard/elements/list.d.ts.map +1 -1
  1084. package/dist/esm/standard/elements/list.js +8 -10
  1085. package/dist/esm/standard/elements/list.js.map +1 -1
  1086. package/dist/esm/standard/elements/locationdesc.d.ts +8 -0
  1087. package/dist/esm/standard/elements/locationdesc.d.ts.map +1 -0
  1088. package/dist/esm/standard/elements/locationdesc.js +49 -0
  1089. package/dist/esm/standard/elements/locationdesc.js.map +6 -0
  1090. package/dist/esm/standard/elements/map16.js +1 -1
  1091. package/dist/esm/standard/elements/map32.js +1 -1
  1092. package/dist/esm/standard/elements/map64.js +1 -1
  1093. package/dist/esm/standard/elements/map8.js +1 -1
  1094. package/dist/esm/standard/elements/models.d.ts +27 -1
  1095. package/dist/esm/standard/elements/models.d.ts.map +1 -1
  1096. package/dist/esm/standard/elements/models.js +54 -2
  1097. package/dist/esm/standard/elements/models.js.map +1 -1
  1098. package/dist/esm/standard/elements/namespace.js +1 -1
  1099. package/dist/esm/standard/elements/node-id.js +1 -1
  1100. package/dist/esm/standard/elements/octstr.js +1 -1
  1101. package/dist/esm/standard/elements/percent.js +1 -1
  1102. package/dist/esm/standard/elements/percent100ths.js +1 -1
  1103. package/dist/esm/standard/elements/posix-ms.js +1 -1
  1104. package/dist/esm/standard/elements/power-mW.js +1 -1
  1105. package/dist/esm/standard/elements/priority.js +1 -1
  1106. package/dist/esm/standard/elements/semtag.js +5 -5
  1107. package/dist/esm/standard/elements/single.js +1 -1
  1108. package/dist/esm/standard/elements/status.d.ts.map +1 -1
  1109. package/dist/esm/standard/elements/status.js +19 -1
  1110. package/dist/esm/standard/elements/status.js.map +1 -1
  1111. package/dist/esm/standard/elements/string.js +1 -1
  1112. package/dist/esm/standard/elements/struct.js +1 -1
  1113. package/dist/esm/standard/elements/systime-ms.js +1 -1
  1114. package/dist/esm/standard/elements/systime-us.js +1 -1
  1115. package/dist/esm/standard/elements/tag.js +1 -1
  1116. package/dist/esm/standard/elements/temperature.js +1 -1
  1117. package/dist/esm/standard/elements/tod.js +1 -1
  1118. package/dist/esm/standard/elements/trans-id.js +1 -1
  1119. package/dist/esm/standard/elements/uint16.js +1 -1
  1120. package/dist/esm/standard/elements/uint24.js +1 -1
  1121. package/dist/esm/standard/elements/uint32.js +1 -1
  1122. package/dist/esm/standard/elements/uint40.js +1 -1
  1123. package/dist/esm/standard/elements/uint48.js +1 -1
  1124. package/dist/esm/standard/elements/uint56.js +1 -1
  1125. package/dist/esm/standard/elements/uint64.js +1 -1
  1126. package/dist/esm/standard/elements/uint8.js +1 -1
  1127. package/dist/esm/standard/elements/vendor-id.js +1 -1
  1128. package/dist/esm/standard/elements/voltage-mV.js +1 -1
  1129. package/package.json +4 -4
  1130. package/src/aspects/Conformance.ts +34 -6
  1131. package/src/aspects/Quality.ts +9 -1
  1132. package/src/common/Specification.ts +3 -3
  1133. package/src/logic/cluster-variance/IllegalFeatureCombinations.ts +104 -81
  1134. package/src/logic/cluster-variance/InferredComponents.ts +27 -1
  1135. package/src/logic/definition-validation/ValueValidator.ts +16 -6
  1136. package/src/models/AttributeModel.ts +2 -4
  1137. package/src/models/ClusterModel.ts +2 -4
  1138. package/src/models/CommandModel.ts +2 -5
  1139. package/src/models/DatatypeModel.ts +3 -4
  1140. package/src/models/DeviceTypeModel.ts +3 -3
  1141. package/src/models/EndpointModel.ts +3 -3
  1142. package/src/models/EventModel.ts +2 -5
  1143. package/src/models/FabricModel.ts +3 -3
  1144. package/src/models/FieldModel.ts +3 -4
  1145. package/src/models/MatterModel.ts +3 -3
  1146. package/src/models/Model.ts +61 -6
  1147. package/src/models/NodeModel.ts +3 -3
  1148. package/src/models/RequirementModel.ts +4 -4
  1149. package/src/models/SemanticNamespaceModel.ts +3 -3
  1150. package/src/models/SemanticTagModel.ts +3 -3
  1151. package/src/standard/elements/AcceptedCommandList.ts +6 -2
  1152. package/src/standard/elements/AccessControl.ts +578 -39
  1153. package/src/standard/elements/Actions.ts +16 -13
  1154. package/src/standard/elements/AdministratorCommissioning.ts +60 -44
  1155. package/src/standard/elements/AggregatorDT.ts +21 -4
  1156. package/src/standard/elements/AirPurifierDT.ts +5 -1
  1157. package/src/standard/elements/AlarmBase.ts +1 -2
  1158. package/src/standard/elements/ApplicationLauncher.ts +12 -6
  1159. package/src/standard/elements/AreaNamespaceNS.ts +129 -0
  1160. package/src/standard/elements/AtomicAttributeStatusStruct.ts +30 -0
  1161. package/src/standard/elements/AtomicRequestTypeEnum.ts +22 -0
  1162. package/src/standard/elements/BallastConfiguration.ts +3 -3
  1163. package/src/standard/elements/BasicInformation.ts +33 -25
  1164. package/src/standard/elements/BatteryStorageDT.ts +36 -0
  1165. package/src/standard/elements/BooleanStateConfiguration.ts +2 -2
  1166. package/src/standard/elements/BridgedDeviceBasicInformation.ts +170 -35
  1167. package/src/standard/elements/BridgedNodeDT.ts +25 -3
  1168. package/src/standard/elements/Channel.ts +28 -30
  1169. package/src/standard/elements/ColorControl.ts +757 -651
  1170. package/src/standard/elements/CommissionerControl.ts +194 -0
  1171. package/src/standard/elements/ConcentrationMeasurement.ts +2 -2
  1172. package/src/standard/elements/ContentControl.ts +41 -49
  1173. package/src/standard/elements/ContentLauncher.ts +21 -20
  1174. package/src/standard/elements/DeviceEnergyManagement.ts +254 -193
  1175. package/src/standard/elements/DeviceEnergyManagementDT.ts +31 -8
  1176. package/src/standard/elements/DeviceEnergyManagementMode.ts +52 -15
  1177. package/src/standard/elements/DishwasherAlarm.ts +2 -1
  1178. package/src/standard/elements/DishwasherMode.ts +34 -20
  1179. package/src/standard/elements/DoorLock.ts +574 -668
  1180. package/src/standard/elements/DoorLockControllerDT.ts +1 -1
  1181. package/src/standard/elements/DoorLockDT.ts +2 -2
  1182. package/src/standard/elements/EcosystemInformation.ts +191 -0
  1183. package/src/standard/elements/ElectricalEnergyMeasurement.ts +33 -34
  1184. package/src/standard/elements/ElectricalMeasurementNS.ts +1 -1
  1185. package/src/standard/elements/ElectricalPowerMeasurement.ts +5 -5
  1186. package/src/standard/elements/EnergyEvse.ts +156 -86
  1187. package/src/standard/elements/EnergyEvseDT.ts +43 -0
  1188. package/src/standard/elements/EnergyEvseMode.ts +79 -14
  1189. package/src/standard/elements/EnergyPreference.ts +28 -31
  1190. package/src/standard/elements/EthernetNetworkDiagnostics.ts +1 -2
  1191. package/src/standard/elements/EventList.ts +2 -11
  1192. package/src/standard/elements/FabricIndex.ts +1 -1
  1193. package/src/standard/elements/FanControl.ts +12 -12
  1194. package/src/standard/elements/FanDT.ts +5 -1
  1195. package/src/standard/elements/FeatureMap.ts +5 -3
  1196. package/src/standard/elements/FixedLabel.ts +7 -3
  1197. package/src/standard/elements/FlowMeasurement.ts +10 -9
  1198. package/src/standard/elements/GeneralCommissioning.ts +214 -48
  1199. package/src/standard/elements/GeneralDiagnostics.ts +26 -31
  1200. package/src/standard/elements/GeneratedCommandList.ts +4 -1
  1201. package/src/standard/elements/GroupKeyManagement.ts +26 -27
  1202. package/src/standard/elements/Groups.ts +2 -1
  1203. package/src/standard/elements/HeatPumpDT.ts +41 -0
  1204. package/src/standard/elements/IcdManagement.ts +71 -35
  1205. package/src/standard/elements/Identify.ts +12 -12
  1206. package/src/standard/elements/IlluminanceMeasurement.ts +10 -12
  1207. package/src/standard/elements/JointFabricAdministratorDT.ts +40 -0
  1208. package/src/standard/elements/JointFabricDatastoreCluster.ts +520 -0
  1209. package/src/standard/elements/JointFabricPki.ts +131 -0
  1210. package/src/standard/elements/KeypadInput.ts +3 -1
  1211. package/src/standard/elements/LandmarkNamespaceNS.ts +76 -0
  1212. package/src/standard/elements/LaundryDryerControls.ts +6 -6
  1213. package/src/standard/elements/LaundryNS.ts +1 -1
  1214. package/src/standard/elements/LaundryWasherControls.ts +23 -21
  1215. package/src/standard/elements/LaundryWasherMode.ts +35 -21
  1216. package/src/standard/elements/LevelControl.ts +61 -20
  1217. package/src/standard/elements/LocalizationConfiguration.ts +13 -16
  1218. package/src/standard/elements/MediaInput.ts +2 -1
  1219. package/src/standard/elements/MediaPlayback.ts +7 -4
  1220. package/src/standard/elements/MicrowaveOvenControl.ts +26 -22
  1221. package/src/standard/elements/MicrowaveOvenMode.ts +45 -15
  1222. package/src/standard/elements/ModeBase.ts +25 -58
  1223. package/src/standard/elements/ModeSelect.ts +13 -13
  1224. package/src/standard/elements/MountedDimmableLoadControlDT.ts +75 -0
  1225. package/src/standard/elements/MountedOnOffControlDT.ts +73 -0
  1226. package/src/standard/elements/NetworkCommissioning.ts +88 -80
  1227. package/src/standard/elements/NetworkInfrastructureManagerDT.ts +54 -0
  1228. package/src/standard/elements/OccupancySensing.ts +200 -55
  1229. package/src/standard/elements/OccupancySensorDT.ts +5 -1
  1230. package/src/standard/elements/OnOff.ts +1 -2
  1231. package/src/standard/elements/OperationalCredentials.ts +59 -55
  1232. package/src/standard/elements/OperationalState.ts +100 -69
  1233. package/src/standard/elements/OtaSoftwareUpdateProvider.ts +22 -24
  1234. package/src/standard/elements/OtaSoftwareUpdateRequestor.ts +2 -3
  1235. package/src/standard/elements/OvenCavityOperationalState.ts +13 -3
  1236. package/src/standard/elements/OvenDT.ts +1 -1
  1237. package/src/standard/elements/OvenMode.ts +50 -14
  1238. package/src/standard/elements/PowerSource.ts +44 -12
  1239. package/src/standard/elements/PowerSourceNS.ts +5 -5
  1240. package/src/standard/elements/PressureMeasurement.ts +8 -8
  1241. package/src/standard/elements/PumpConfigurationAndControl.ts +32 -22
  1242. package/src/standard/elements/PumpControllerDT.ts +1 -5
  1243. package/src/standard/elements/PumpDT.ts +14 -14
  1244. package/src/standard/elements/RefrigeratorAlarm.ts +2 -1
  1245. package/src/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.ts +37 -15
  1246. package/src/standard/elements/RefrigeratorDT.ts +1 -1
  1247. package/src/standard/elements/RefrigeratorNS.ts +1 -1
  1248. package/src/standard/elements/RelativeHumidityMeasurement.ts +3 -4
  1249. package/src/standard/elements/RelativePositionNS.ts +35 -0
  1250. package/src/standard/elements/ResourceMonitoring.ts +2 -1
  1251. package/src/standard/elements/RoboticVacuumCleanerDT.ts +5 -1
  1252. package/src/standard/elements/RoomAirConditionerNS.ts +1 -1
  1253. package/src/standard/elements/RootNodeDT.ts +18 -11
  1254. package/src/standard/elements/RvcCleanMode.ts +33 -11
  1255. package/src/standard/elements/RvcOperationalState.ts +24 -6
  1256. package/src/standard/elements/RvcRunMode.ts +37 -15
  1257. package/src/standard/elements/ScenesManagement.ts +42 -23
  1258. package/src/standard/elements/SecondaryNetworkInterfaceDT.ts +49 -0
  1259. package/src/standard/elements/ServiceArea.ts +708 -0
  1260. package/src/standard/elements/SmokeCoAlarm.ts +13 -15
  1261. package/src/standard/elements/SoftwareVersionCertificationStatusEnum.ts +1 -1
  1262. package/src/standard/elements/SolarPowerDT.ts +31 -0
  1263. package/src/standard/elements/Switch.ts +121 -38
  1264. package/src/standard/elements/SwitchesNS.ts +2 -2
  1265. package/src/standard/elements/TargetNavigator.ts +2 -2
  1266. package/src/standard/elements/TemperatureControl.ts +3 -3
  1267. package/src/standard/elements/TemperatureControlledCabinetDT.ts +1 -1
  1268. package/src/standard/elements/TemperatureMeasurement.ts +4 -4
  1269. package/src/standard/elements/Thermostat.ts +997 -182
  1270. package/src/standard/elements/ThermostatDT.ts +17 -21
  1271. package/src/standard/elements/ThermostatUserInterfaceConfiguration.ts +3 -3
  1272. package/src/standard/elements/ThreadBorderRouterManagement.ts +207 -0
  1273. package/src/standard/elements/ThreadNetworkDiagnostics.ts +28 -14
  1274. package/src/standard/elements/ThreadNetworkDirectory.ts +175 -0
  1275. package/src/standard/elements/TimeFormatLocalization.ts +1 -1
  1276. package/src/standard/elements/TimeSynchronization.ts +36 -34
  1277. package/src/standard/elements/UnitLocalization.ts +1 -2
  1278. package/src/standard/elements/UserLabel.ts +2 -1
  1279. package/src/standard/elements/ValidProxies.ts +2 -2
  1280. package/src/standard/elements/ValveConfigurationAndControl.ts +1 -1
  1281. package/src/standard/elements/WaterHeaterDT.ts +47 -0
  1282. package/src/standard/elements/WaterHeaterManagement.ts +283 -0
  1283. package/src/standard/elements/WaterHeaterMode.ts +95 -0
  1284. package/src/standard/elements/{PulseWidthModulation.ts → WaterTankLevelMonitoring.ts} +4 -2
  1285. package/src/standard/elements/WaterValveDT.ts +5 -5
  1286. package/src/standard/elements/WiFiNetworkDiagnostics.ts +5 -7
  1287. package/src/standard/elements/WiFiNetworkManagement.ts +98 -0
  1288. package/src/standard/elements/WindowCovering.ts +35 -35
  1289. package/src/standard/elements/WindowCoveringControllerDT.ts +0 -4
  1290. package/src/standard/elements/WindowCoveringDT.ts +2 -11
  1291. package/src/standard/elements/action-id.ts +1 -1
  1292. package/src/standard/elements/amperage-mA.ts +1 -1
  1293. package/src/standard/elements/attrib-id.ts +1 -1
  1294. package/src/standard/elements/bool.ts +1 -1
  1295. package/src/standard/elements/cluster-id.ts +1 -1
  1296. package/src/standard/elements/command-id.ts +1 -1
  1297. package/src/standard/elements/data-ver.ts +2 -2
  1298. package/src/standard/elements/date.ts +5 -5
  1299. package/src/standard/elements/definitions.ts +27 -1
  1300. package/src/standard/elements/devtype-id.ts +1 -1
  1301. package/src/standard/elements/double.ts +1 -1
  1302. package/src/standard/elements/elapsed-s.ts +1 -1
  1303. package/src/standard/elements/endpoint-no.ts +4 -2
  1304. package/src/standard/elements/energy-mWh.ts +1 -1
  1305. package/src/standard/elements/entry-idx.ts +1 -1
  1306. package/src/standard/elements/enum16.ts +1 -1
  1307. package/src/standard/elements/enum8.ts +1 -1
  1308. package/src/standard/elements/epoch-s.ts +1 -1
  1309. package/src/standard/elements/epoch-us.ts +1 -1
  1310. package/src/standard/elements/event-id.ts +1 -1
  1311. package/src/standard/elements/event-no.ts +1 -1
  1312. package/src/standard/elements/fabric-id.ts +1 -1
  1313. package/src/standard/elements/fabric-idx.ts +1 -1
  1314. package/src/standard/elements/field-id.ts +1 -1
  1315. package/src/standard/elements/group-id.ts +1 -1
  1316. package/src/standard/elements/hwadr.ts +1 -1
  1317. package/src/standard/elements/int16.ts +1 -1
  1318. package/src/standard/elements/int24.ts +1 -1
  1319. package/src/standard/elements/int32.ts +1 -1
  1320. package/src/standard/elements/int40.ts +1 -1
  1321. package/src/standard/elements/int48.ts +1 -1
  1322. package/src/standard/elements/int56.ts +1 -1
  1323. package/src/standard/elements/int64.ts +1 -1
  1324. package/src/standard/elements/int8.ts +1 -1
  1325. package/src/standard/elements/ipadr.ts +1 -2
  1326. package/src/standard/elements/ipv4adr.ts +1 -1
  1327. package/src/standard/elements/ipv6adr.ts +1 -1
  1328. package/src/standard/elements/ipv6pre.ts +1 -1
  1329. package/src/standard/elements/list.ts +77 -91
  1330. package/src/standard/elements/locationdesc.ts +80 -0
  1331. package/src/standard/elements/map16.ts +1 -1
  1332. package/src/standard/elements/map32.ts +1 -1
  1333. package/src/standard/elements/map64.ts +1 -1
  1334. package/src/standard/elements/map8.ts +1 -1
  1335. package/src/standard/elements/models.ts +27 -1
  1336. package/src/standard/elements/namespace.ts +1 -1
  1337. package/src/standard/elements/node-id.ts +1 -1
  1338. package/src/standard/elements/octstr.ts +1 -1
  1339. package/src/standard/elements/percent.ts +1 -1
  1340. package/src/standard/elements/percent100ths.ts +1 -1
  1341. package/src/standard/elements/posix-ms.ts +1 -1
  1342. package/src/standard/elements/power-mW.ts +1 -1
  1343. package/src/standard/elements/priority.ts +1 -1
  1344. package/src/standard/elements/semtag.ts +5 -5
  1345. package/src/standard/elements/single.ts +1 -1
  1346. package/src/standard/elements/status.ts +16 -1
  1347. package/src/standard/elements/string.ts +1 -1
  1348. package/src/standard/elements/struct.ts +1 -1
  1349. package/src/standard/elements/systime-ms.ts +1 -1
  1350. package/src/standard/elements/systime-us.ts +1 -1
  1351. package/src/standard/elements/tag.ts +1 -1
  1352. package/src/standard/elements/temperature.ts +1 -1
  1353. package/src/standard/elements/tod.ts +1 -1
  1354. package/src/standard/elements/trans-id.ts +1 -1
  1355. package/src/standard/elements/uint16.ts +1 -1
  1356. package/src/standard/elements/uint24.ts +1 -1
  1357. package/src/standard/elements/uint32.ts +1 -1
  1358. package/src/standard/elements/uint40.ts +1 -1
  1359. package/src/standard/elements/uint48.ts +1 -1
  1360. package/src/standard/elements/uint56.ts +1 -1
  1361. package/src/standard/elements/uint64.ts +1 -1
  1362. package/src/standard/elements/uint8.ts +1 -1
  1363. package/src/standard/elements/vendor-id.ts +1 -1
  1364. package/src/standard/elements/voltage-mV.ts +1 -1
  1365. package/dist/cjs/standard/elements/PulseWidthModulation.d.ts.map +0 -1
  1366. package/dist/cjs/standard/elements/PulseWidthModulation.js.map +0 -6
  1367. package/dist/esm/standard/elements/PulseWidthModulation.d.ts.map +0 -1
  1368. package/dist/esm/standard/elements/PulseWidthModulation.js +0 -13
  1369. package/dist/esm/standard/elements/PulseWidthModulation.js.map +0 -6
@@ -18,78 +18,140 @@ import {
18
18
  export const ColorControl = Cluster(
19
19
  {
20
20
  name: "ColorControl", id: 0x300, classification: "application", pics: "CC",
21
+
22
+ details: "This cluster provides an interface for changing the color of a light. Color is specified according " +
23
+ "to the CIE 1931 Color space. Color control is carried out in terms of x,y values, as defined by " +
24
+ "this specification." +
25
+ "\n" +
26
+ "Additionally, color may optionally be controlled in terms of color temperature, or as hue and " +
27
+ "saturation values based on optionally variable RGB and W color points. It is recommended that the " +
28
+ "hue and saturation are interpreted according to the HSV (a.k.a. HSB) color model." +
29
+ "\n" +
30
+ "Control over luminance is not included, as this is provided by means of the Level Control for " +
31
+ "Lighting cluster. It is recommended that the level provided by this cluster be interpreted as " +
32
+ "representing a proportion of the maximum intensity achievable at the current color.",
33
+
21
34
  xref: { document: "cluster", section: "3.2" }
22
35
  },
23
- Attribute({ name: "ClusterRevision", id: 0xfffd, type: "ClusterRevision", default: 6 }),
36
+
37
+ Attribute({ name: "ClusterRevision", id: 0xfffd, type: "ClusterRevision", default: 7 }),
24
38
 
25
39
  Attribute(
26
- { name: "FeatureMap", id: 0xfffc, type: "FeatureMap", xref: { document: "cluster", section: "3.2.5" } },
40
+ { name: "FeatureMap", id: 0xfffc, type: "FeatureMap", xref: { document: "cluster", section: "3.2.4" } },
27
41
  Field({
28
- name: "HS", constraint: "0", description: "HueSaturation",
42
+ name: "HS", conformance: "EHUE, O", constraint: "0", description: "HueSaturation",
29
43
  details: "Supports color specification via hue/saturation."
30
44
  }),
31
- Field({ name: "EHUE", constraint: "1", description: "EnhancedHue", details: "Enhanced hue is supported." }),
32
- Field({ name: "CL", constraint: "2", description: "ColorLoop", details: "Color loop is supported." }),
33
- Field({ name: "XY", constraint: "3", description: "Xy", details: "Supports color specification via XY." }),
34
45
  Field({
35
- name: "CT", constraint: "4", description: "ColorTemperature",
46
+ name: "EHUE", conformance: "CL, O", constraint: "1", description: "EnhancedHue",
47
+ details: "Enhanced hue is supported."
48
+ }),
49
+ Field({
50
+ name: "CL", conformance: "O", constraint: "2", description: "ColorLoop",
51
+ details: "Color loop is supported."
52
+ }),
53
+ Field({
54
+ name: "XY", conformance: "O", constraint: "3", description: "Xy",
55
+ details: "Supports color specification via XY."
56
+ }),
57
+ Field({
58
+ name: "CT", conformance: "O", constraint: "4", description: "ColorTemperature",
36
59
  details: "Supports specification of color temperature."
37
60
  })
38
61
  ),
39
62
 
40
63
  Attribute(
41
64
  {
42
- name: "CurrentHue", id: 0x0, type: "uint8", access: "R V", conformance: "HS",
43
- constraint: "0 to 254", default: 0, quality: "N P",
65
+ name: "CurrentHue", id: 0x0, type: "uint8", access: "R V", conformance: "HS", constraint: "max 254",
66
+ default: 0, quality: "N P Q",
44
67
 
45
68
  details: "The CurrentHue attribute contains the current hue value of the light. It is updated as fast as " +
46
69
  "practical during commands that change the hue." +
47
70
  "\n" +
48
- "The hue in degrees shall be related to the CurrentHue attribute by the relationship: Hue = " +
49
- "CurrentHue x 360 / 254 (CurrentHue in the range 0 to 254 inclusive)" +
71
+ "The hue in degrees shall be related to the CurrentHue attribute by the relationship:" +
72
+ "\n" +
73
+ "Hue = \"CurrentHue\" * 360 / 254" +
74
+ "\n" +
75
+ "where CurrentHue is in the range from 0 to 254 inclusive." +
50
76
  "\n" +
51
- "If this attribute is implemented then the CurrentSaturation and ColorMode attributes shall also be " +
52
- "implemented.",
77
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
78
+ "\n" +
79
+ " • At most once per second or" +
80
+ "\n" +
81
+ " • At the end of the movement/transition.",
53
82
 
54
83
  xref: { document: "cluster", section: "3.2.7.2" }
55
84
  }
56
85
  ),
57
86
 
58
- Attribute({
59
- name: "CurrentSaturation", id: 0x1, type: "uint8", access: "R V", conformance: "HS",
60
- constraint: "0 to 254", default: 0, quality: "N S P",
87
+ Attribute(
88
+ {
89
+ name: "CurrentSaturation", id: 0x1, type: "uint8", access: "R V", conformance: "HS",
90
+ constraint: "max 254", default: 0, quality: "N S P Q",
61
91
 
62
- details: "The CurrentSaturation attribute holds the current saturation value of the light. It is updated as " +
63
- "fast as practical during commands that change the saturation." +
64
- "\n" +
65
- "The saturation shall be related to the CurrentSaturation attribute by the relationship: Saturation " +
66
- "= CurrentSaturation/254 (CurrentSaturation in the range 0 to 254 inclusive)" +
67
- "\n" +
68
- "If this attribute is implemented then the CurrentHue and ColorMode attributes shall also be " +
69
- "implemented.",
92
+ details: "Indicates the current saturation value of the light. It is updated as fast as practical during " +
93
+ "commands that change the saturation." +
94
+ "\n" +
95
+ "The saturation (on a scale from 0.0 to 1.0) shall be related to the CurrentSaturation attribute by " +
96
+ "the relationship:" +
97
+ "\n" +
98
+ "Saturation = \"CurrentSaturation\" / 254" +
99
+ "\n" +
100
+ "where CurrentSaturation is in the range from 0 to 254 inclusive." +
101
+ "\n" +
102
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
103
+ "\n" +
104
+ " • At most once per second or" +
105
+ "\n" +
106
+ " • At the end of the movement/transition.",
70
107
 
71
- xref: { document: "cluster", section: "3.2.7.3" }
72
- }),
108
+ xref: { document: "cluster", section: "3.2.7.3" }
109
+ }
110
+ ),
73
111
 
74
112
  Attribute({
75
113
  name: "RemainingTime", id: 0x2, type: "uint16", access: "R V", conformance: "O",
76
- constraint: "0 to 65535", default: 0,
77
- details: "The RemainingTime attribute holds the time remaining, in 1/10ths of a second, until the currently " +
78
- "active command will be complete.",
114
+ constraint: "0 to 65535", default: 0, quality: "Q",
115
+
116
+ details: "Indicates the time remaining, in 1/10ths of a second, until transitions due to the currently active " +
117
+ "command will be complete." +
118
+ "\n" +
119
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
120
+ "\n" +
121
+ " • When it changes from 0 to any value higher than 10, or" +
122
+ "\n" +
123
+ " • When it changes, with a delta larger than 10, caused by the invoke of a command, or" +
124
+ "\n" +
125
+ " • When it changes to 0." +
126
+ "\n" +
127
+ "For commands with a transition time or changes to the transition time less than 1 second, changes " +
128
+ "to this attribute shall NOT be reported." +
129
+ "\n" +
130
+ "As this attribute is not being reported during a regular countdown, clients SHOULD NOT rely on the " +
131
+ "reporting of this attribute in order to keep track of the remaining duration.",
132
+
79
133
  xref: { document: "cluster", section: "3.2.7.4" }
80
134
  }),
81
135
 
82
136
  Attribute(
83
137
  {
84
138
  name: "CurrentX", id: 0x3, type: "uint16", access: "R V", conformance: "XY",
85
- constraint: "0 to 65279", default: 24939, quality: "N S P",
139
+ constraint: "max 65279", default: 24939, quality: "N S P Q",
86
140
 
87
- details: "The CurrentX attribute contains the current value of the normalized chromaticity value x, as " +
88
- "defined in the CIE xyY Color Space. It is updated as fast as practical during commands that change " +
89
- "the color." +
141
+ details: "Indicates the current value of the normalized chromaticity value x, as defined in the CIE xyY Color " +
142
+ "Space. It is updated as fast as practical during commands that change the color." +
143
+ "\n" +
144
+ "The value of x shall be related to the CurrentX attribute by the relationship" +
90
145
  "\n" +
91
- "The value of x shall be related to the CurrentX attribute by the relationship x = CurrentX / 65536 " +
92
- "(CurrentX in the range 0 to 65279 inclusive)",
146
+ "x = \"CurrentX\" / 65536" +
147
+ "\n" +
148
+ "where CurrentX is in the range from 0 to 65279 inclusive." +
149
+ "\n" +
150
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
151
+ "\n" +
152
+ " • At most once per second or" +
153
+ "\n" +
154
+ " • At the end of the movement/transition.",
93
155
 
94
156
  xref: { document: "cluster", section: "3.2.7.5" }
95
157
  }
@@ -98,42 +160,37 @@ export const ColorControl = Cluster(
98
160
  Attribute(
99
161
  {
100
162
  name: "CurrentY", id: 0x4, type: "uint16", access: "R V", conformance: "XY",
101
- constraint: "0 to 65279", default: 24701, quality: "N S P",
163
+ constraint: "max 65279", default: 24701, quality: "N S P Q",
102
164
 
103
- details: "The CurrentY attribute contains the current value of the normalized chromaticity value y, as " +
104
- "defined in the CIE xyY Color Space. It is updated as fast as practical during commands that change " +
105
- "the color." +
165
+ details: "Indicates the current value of the normalized chromaticity value y, as defined in the CIE xyY Color " +
166
+ "Space. It is updated as fast as practical during commands that change the color." +
167
+ "\n" +
168
+ "The value of y shall be related to the CurrentY attribute by the relationship" +
169
+ "\n" +
170
+ "y = \"CurrentY\" / 65536" +
171
+ "\n" +
172
+ "where CurrentY is in the range from 0 to 65279 inclusive." +
106
173
  "\n" +
107
- "The value of y shall be related to the CurrentY attribute by the relationship y = CurrentY / 65536 " +
108
- "(CurrentY in the range 0 to 65279 inclusive)",
174
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
175
+ "\n" +
176
+ " • At most once per second or" +
177
+ "\n" +
178
+ " • At the end of the movement/transition.",
109
179
 
110
180
  xref: { document: "cluster", section: "3.2.7.6" }
111
181
  }
112
182
  ),
113
183
 
114
- Attribute(
115
- {
116
- name: "DriftCompensation", id: 0x5, type: "enum8", access: "R V", conformance: "O",
117
- constraint: "0 to 4",
118
- details: "The DriftCompensation attribute indicates what mechanism, if any, is in use for compensation for " +
119
- "color/intensity drift over time. It shall be one of the non-reserved values in Values of the " +
120
- "DriftCompensation Attribute." +
121
- "\n" +
122
- "### Table 8. Values of the DriftCompensation Attribute",
123
- xref: { document: "cluster", section: "3.2.7.7" }
124
- },
125
-
126
- Field({ name: "None", id: 0x0 }),
127
- Field({ name: "OtherUnknown", id: 0x1 }),
128
- Field({ name: "TemperatureMonitoring", id: 0x2 }),
129
- Field({ name: "OpticalLuminanceMonitoringAndFeedback", id: 0x3 }),
130
- Field({ name: "OpticalColorMonitoringAndFeedback", id: 0x4 })
131
- ),
184
+ Attribute({
185
+ name: "DriftCompensation", id: 0x5, type: "DriftCompensationEnum", access: "R V", conformance: "O",
186
+ details: "Indicates what mechanism, if any, is in use for compensation for color/intensity drift over time.",
187
+ xref: { document: "cluster", section: "3.2.7.7" }
188
+ }),
132
189
 
133
190
  Attribute({
134
191
  name: "CompensationText", id: 0x6, type: "string", access: "R V", conformance: "O",
135
192
  constraint: "max 254",
136
- details: "The CompensationText attribute holds a textual indication of what mechanism, if any, is in use to " +
193
+ details: "This attribute shall contain a textual indication of what mechanism, if any, is in use to " +
137
194
  "compensate for color/intensity drift over time.",
138
195
  xref: { document: "cluster", section: "3.2.7.8" }
139
196
  }),
@@ -142,284 +199,105 @@ export const ColorControl = Cluster(
142
199
  {
143
200
  name: "ColorTemperatureMireds", id: 0x7, type: "uint16", access: "R V", conformance: "CT",
144
201
  constraint: "colorTempPhysicalMinMireds to colorTempPhysicalMaxMireds", default: 250,
145
- quality: "N S P",
146
-
147
- details: "The ColorTemperatureMireds attribute contains a scaled inverse of the current value of the color " +
148
- "temperature. The unit of ColorTemperatureMireds is the mired (micro reciprocal degree), a.k.a. " +
149
- "mirek (micro reciprocal kelvin). It is updated as fast as practical during commands that change the " +
150
- "color." +
151
- "\n" +
152
- "The color temperature value in kelvins shall be related to the ColorTemperatureMireds attribute in " +
153
- "mireds by the relationship" +
154
- "\n" +
155
- "Color temperature in kelvins = 1,000,000 / ColorTemperatureMireds, where ColorTemperatureMireds is " +
156
- "in the range 1 to 65279 mireds inclusive, giving a color temperature range from 1,000,000 kelvins " +
157
- "to 15.32 kelvins." +
158
- "\n" +
159
- "If this attribute is implemented then the ColorMode attribute shall also be implemented.",
160
-
161
- xref: { document: "cluster", section: "3.2.7.9" }
162
- }
163
- ),
164
-
165
- Attribute(
166
- {
167
- name: "ColorMode", id: 0x8, type: "enum8", access: "R V", conformance: "M", constraint: "0 to 2",
168
- quality: "N",
202
+ quality: "N S P Q",
169
203
 
170
- details: "The ColorMode attribute indicates which attributes are currently determining the color of the " +
171
- "device." +
204
+ details: "Indicates a scaled inverse of the current value of the color temperature. The unit of " +
205
+ "ColorTemperatureMireds is the mired (micro reciprocal degree), a.k.a. mirek (micro reciprocal " +
206
+ "kelvin). It is updated as fast as practical during commands that change the color." +
172
207
  "\n" +
173
- "The value of the ColorMode attribute cannot be written directly - it is set upon reception of any " +
174
- "command in section Commands to the appropriate mode for that command." +
208
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
175
209
  "\n" +
176
- "Table 9. Values of the ColorMode Attribute",
177
-
178
- xref: { document: "cluster", section: "3.2.7.10" }
179
- },
180
-
181
- Field({ name: "CurrentHueAndCurrentSaturation", id: 0x0, conformance: "HS" }),
182
- Field({ name: "CurrentXAndCurrentY", id: 0x1, conformance: "XY" }),
183
- Field({ name: "ColorTemperatureMireds", id: 0x2, conformance: "CT" })
184
- ),
185
-
186
- Attribute(
187
- {
188
- name: "Options", id: 0xf, type: "map8", access: "RW VO", conformance: "M", constraint: "desc",
189
- default: 0,
190
-
191
- details: "The Options attribute is meant to be changed only during commissioning. The Options attribute is a " +
192
- "bitmap that determines the default behavior of some cluster commands. Each command that is " +
193
- "dependent on the Options attribute shall first construct a temporary Options bitmap that is in " +
194
- "effect during the command processing. The temporary Options bitmap has the same format and meaning " +
195
- "as the Options attribute, but includes any bits that may be overridden by command fields." +
196
- "\n" +
197
- "Below is the format and description of the Options attribute and temporary Options bitmap and the " +
198
- "effect on dependent commands." +
210
+ " At most once per second or" +
199
211
  "\n" +
200
- "Table 10. Options Attribute" +
212
+ " At the end of the movement/transition." +
201
213
  "\n" +
202
- "ExecuteIfOff Options bit: Command execution shall NOT continue beyond the Options processing if all " +
203
- "of these criteria are true:" +
214
+ "The color temperature value in kelvins shall be related to the ColorTemperatureMireds attribute in " +
215
+ "mired by the relationship" +
204
216
  "\n" +
205
- " The On/Off cluster exists on the same endpoint as this cluster." +
217
+ "\"Color temperature [K]\" = \"1,000,000\" / \"ColorTemperatureMireds\"" +
206
218
  "\n" +
207
- " The OnOff attribute of the On/Off cluster, on this endpoint, is FALSE." +
219
+ "where ColorTemperatureMireds is in the range from 1 to 65279 inclusive, giving a color temperature " +
220
+ "range from 1,000,000 K to 15.32 K." +
208
221
  "\n" +
209
- " The value of the ExecuteIfOff bit is 0.",
210
-
211
- xref: { document: "cluster", section: "3.2.7.11" }
212
- },
222
+ "If this attribute is implemented then the ColorMode attribute shall also be implemented.",
213
223
 
214
- Field({ name: "ExecuteIfOff", constraint: "0" })
224
+ xref: { document: "cluster", section: "3.2.7.9" }
225
+ }
215
226
  ),
216
227
 
217
228
  Attribute({
218
- name: "EnhancedCurrentHue", id: 0x4000, type: "uint16", access: "R V", conformance: "EHUE",
219
- default: 0, quality: "N S",
220
-
221
- details: "The EnhancedCurrentHue attribute represents non-equidistant steps along the CIE 1931 color " +
222
- "triangle, and it provides 16-bits precision." +
229
+ name: "ColorMode", id: 0x8, type: "ColorModeEnum", access: "R V", conformance: "M", quality: "N",
230
+ details: "Indicates which attributes are currently determining the color of the device." +
223
231
  "\n" +
224
- "The upper 8 bits of this attribute shall be used as an index in the implementation specific XY " +
225
- "lookup table to provide the non-equidistance steps. The lower 8 bits shall be used to interpolate " +
226
- "between these steps in a linear way in order to provide color zoom for the user." +
227
- "\n" +
228
- "To provide compatibility with standard ZCL, the CurrentHue attribute shall contain a hue value in " +
229
- "the range 0 to 254, calculated from the EnhancedCurrentHue attribute.",
230
-
231
- xref: { document: "cluster", section: "3.2.7.12" }
232
- }),
233
-
234
- Attribute(
235
- {
236
- name: "EnhancedColorMode", id: 0x4001, type: "enum8", access: "R V", conformance: "M",
237
- constraint: "0 to 3", default: 1, quality: "N S",
238
-
239
- details: "The EnhancedColorMode attribute specifies which attributes are currently determining the color of " +
240
- "the device, as detailed in Values of the EnhancedColorMode Attribute." +
241
- "\n" +
242
- "### Table 11. Values of the EnhancedColorMode Attribute" +
243
- "\n" +
244
- "To provide compatibility with standard ZCL, the original ColorMode attribute shall indicate " +
245
- "‘CurrentHue and CurrentSaturation’ when the light uses the EnhancedCurrentHue attribute. If the " +
246
- "ColorMode attribute is changed, e.g., due to one of the standard Color Control cluster commands " +
247
- "defined in the ZCL, its new value shall be copied to the EnhancedColorMode attribute.",
248
-
249
- xref: { document: "cluster", section: "3.2.7.13" }
250
- },
251
-
252
- Field({ name: "CurrentHueAndCurrentSaturation", id: 0x0 }),
253
- Field({ name: "CurrentXAndCurrentY", id: 0x1 }),
254
- Field({ name: "ColorTemperatureMireds", id: 0x2 }),
255
- Field({ name: "EnhancedCurrentHueAndCurrentSaturation", id: 0x3 })
256
- ),
257
-
258
- Attribute(
259
- {
260
- name: "ColorLoopActive", id: 0x4002, type: "enum16", access: "R V", conformance: "CL", default: 0,
261
- quality: "N S",
262
- details: "The ColorLoopActive attribute specifies the current active status of the color loop. If this " +
263
- "attribute has the value 0, the color loop shall not be active. If this attribute has the value 1, " +
264
- "the color loop shall be active. All other values (2 to 254) are reserved.",
265
- xref: { document: "cluster", section: "3.2.7.14" }
266
- },
267
-
268
- Field({ name: "Inactive", id: 0x0 }),
269
- Field({ name: "Active", id: 0x1 })
270
- ),
271
-
272
- Attribute(
273
- {
274
- name: "ColorLoopDirection", id: 0x4003, type: "enum16", access: "R V", conformance: "CL",
275
- default: 0, quality: "N S",
276
- details: "The ColorLoopDirection attribute specifies the current direction of the color loop. If this " +
277
- "attribute has the value 0, the EnhancedCurrentHue attribute shall be decremented. If this attribute " +
278
- "has the value 1, the EnhancedCurrentHue attribute shall be incremented. All other values (2 to 254) " +
279
- "are reserved.",
280
- xref: { document: "cluster", section: "3.2.7.15" }
281
- },
282
-
283
- Field({ name: "Decrement", id: 0x0 }),
284
- Field({ name: "Increment", id: 0x1 })
285
- ),
286
-
287
- Attribute({
288
- name: "ColorLoopTime", id: 0x4004, type: "uint16", access: "R V", conformance: "CL", default: 25,
289
- quality: "N S",
290
- details: "The ColorLoopTime attribute specifies the number of seconds it shall take to perform a full color " +
291
- "loop, i.e., to cycle all values of the EnhancedCurrentHue attribute (between 0 and 0xFFFE).",
292
- xref: { document: "cluster", section: "3.2.7.16" }
293
- }),
294
-
295
- Attribute({
296
- name: "ColorLoopStartEnhancedHue", id: 0x4005, type: "uint16", access: "R V", conformance: "CL",
297
- default: 8960,
298
- details: "The ColorLoopStartEnhancedHue attribute specifies the value of the EnhancedCurrentHue attribute " +
299
- "from which the color loop shall be started.",
300
- xref: { document: "cluster", section: "3.2.7.17" }
301
- }),
302
-
303
- Attribute({
304
- name: "ColorLoopStoredEnhancedHue", id: 0x4006, type: "uint16", access: "R V", conformance: "CL",
305
- default: 0,
306
- details: "The ColorLoopStoredEnhancedHue attribute specifies the value of the EnhancedCurrentHue attribute " +
307
- "before the color loop was started. Once the color loop is complete, the EnhancedCurrentHue " +
308
- "attribute shall be restored to this value.",
309
- xref: { document: "cluster", section: "3.2.7.18" }
310
- }),
311
-
312
- Attribute(
313
- {
314
- name: "ColorCapabilities", id: 0x400a, type: "map16", access: "R V", conformance: "M",
315
- constraint: "0 to 31", default: 0,
316
- details: "Bits 0-4 of the ColorCapabilities attribute shall have the same values as the corresponding bits of " +
317
- "the FeatureMap attribute. All other bits in ColorCapabilities shall be 0.",
318
- xref: { document: "cluster", section: "3.2.7.19" }
319
- },
320
-
321
- Field({ name: "HueSaturation", constraint: "0" }),
322
- Field({ name: "EnhancedHue", constraint: "1" }),
323
- Field({ name: "ColorLoop", constraint: "2" }),
324
- Field({ name: "XY", constraint: "3" }),
325
- Field({ name: "ColorTemperature", constraint: "4" })
326
- ),
327
-
328
- Attribute({
329
- name: "ColorTempPhysicalMinMireds", id: 0x400b, type: "uint16", access: "R V", conformance: "CT",
330
- constraint: "0 to 65279", default: 0,
331
- details: "The ColorTempPhysicalMinMireds attribute indicates the minimum mired value supported by the " +
332
- "hardware. ColorTempPhysicalMinMireds corresponds to the maximum color temperature in kelvins " +
333
- "supported by the hardware. ColorTempPhysicalMinMireds <= ColorTemperatureMireds.",
334
- xref: { document: "cluster", section: "3.2.7.20" }
232
+ "The value of the ColorMode attribute cannot be written directly - it is set upon reception of any " +
233
+ "command in section Commands to the appropriate mode for that command.",
234
+ xref: { document: "cluster", section: "3.2.7.10" }
335
235
  }),
336
236
 
337
237
  Attribute({
338
- name: "ColorTempPhysicalMaxMireds", id: 0x400c, type: "uint16", access: "R V", conformance: "CT",
339
- constraint: "0 to 65279", default: 65279,
340
- details: "The ColorTempPhysicalMaxMireds attribute indicates the maximum mired value supported by the " +
341
- "hardware. ColorTempPhysicalMaxMireds corresponds to the minimum color temperature in kelvins " +
342
- "supported by the hardware. ColorTemperatureMireds <= ColorTempPhysicalMaxMireds.",
343
- xref: { document: "cluster", section: "3.2.7.21" }
344
- }),
345
-
346
- Attribute(
347
- {
348
- name: "CoupleColorTempToLevelMinMireds", id: 0x400d, type: "uint16", access: "R V",
349
- conformance: "CT & ColorTemperatureMireds",
350
- constraint: "colorTempPhysicalMinMireds to colorTemperatureMireds",
351
-
352
- details: "The CoupleColorTempToLevelMinMireds attribute specifies a lower bound on the value of the " +
353
- "ColorTemperatureMireds attribute for the purposes of coupling the ColorTemperatureMireds attribute " +
354
- "to the CurrentLevel attribute when the CoupleColorTempToLevel bit of the Options attribute of the " +
355
- "Level Control cluster is equal to 1. When coupling the ColorTemperatureMireds attribute to the " +
356
- "CurrentLevel attribute, this value shall correspond to a CurrentLevel value of 0xFE (100%)." +
357
- "\n" +
358
- "This attribute shall be set such that the following relationship exists: ColorTempPhysicalMinMireds " +
359
- "≤ CoupleColorTempToLevelMinMireds ≤ ColorTemperatureMireds" +
360
- "\n" +
361
- "Note that since this attribute is stored as a micro reciprocal degree (mired) value (i.e. color " +
362
- "temperature in kelvins = 1,000,000 / CoupleColorTempToLevelMinMireds), the " +
363
- "CoupleColorTempToLevelMinMireds attribute corresponds to an upper bound on the value of the color " +
364
- "temperature in kelvins supported by the device.",
365
-
366
- xref: { document: "cluster", section: "3.2.7.22" }
367
- }
368
- ),
369
-
370
- Attribute({
371
- name: "StartUpColorTemperatureMireds", id: 0x4010, type: "uint16", access: "RW VM",
372
- conformance: "CT & ColorTemperatureMireds", constraint: "0 to 65279", quality: "X N",
238
+ name: "Options", id: 0xf, type: "OptionsBitmap", access: "RW VO", conformance: "M",
239
+ constraint: "desc", default: 0,
373
240
 
374
- details: "The StartUpColorTemperatureMireds attribute shall define the desired startup color temperature " +
375
- "value a lamp shall use when it is supplied with power and this value shall be reflected in the " +
376
- "ColorTemperatureMireds attribute. In addition, the ColorMode and EnhancedColorMode attributes shall " +
377
- "be set to 0x02 (color temperature). The values of the StartUpColorTemperatureMireds attribute are " +
378
- "listed in the table below," +
241
+ details: "Indicates a bitmap that determines the default behavior of some cluster commands. Each command that " +
242
+ "is dependent on the Options attribute shall first construct a temporary Options bitmap that is in " +
243
+ "effect during the command processing. The temporary Options bitmap has the same format and meaning " +
244
+ "as the Options attribute, but includes any bits that may be overridden by command fields." +
245
+ "\n" +
246
+ "This attribute is meant to be changed only during commissioning." +
247
+ "\n" +
248
+ "Below is the format and description of the Options attribute and temporary Options bitmap and the " +
249
+ "effect on dependent commands." +
250
+ "\n" +
251
+ "Command execution shall NOT continue beyond the Options processing if all of these criteria are " +
252
+ "true:" +
379
253
  "\n" +
380
- "Table 12. Values of the StartUpColorTemperatureMireds attribute",
254
+ " The On/Off cluster exists on the same endpoint as this cluster." +
255
+ "\n" +
256
+ " • The OnOff attribute of the On/Off cluster, on this endpoint, is FALSE." +
257
+ "\n" +
258
+ " • The value of the ExecuteIfOff bit is 0.",
381
259
 
382
- xref: { document: "cluster", section: "3.2.7.23" }
260
+ xref: { document: "cluster", section: "3.2.7.11" }
383
261
  }),
384
262
 
385
263
  Attribute({
386
264
  name: "NumberOfPrimaries", id: 0x10, type: "uint8", access: "R V", conformance: "M",
387
- constraint: "0 to 6", quality: "X F",
265
+ constraint: "max 6", quality: "X F",
388
266
 
389
- details: "The NumberOfPrimaries attribute contains the number of color primaries implemented on this device. " +
390
- "A value of null shall indicate that the number of primaries is unknown." +
267
+ details: "Indicates the number of color primaries implemented on this device. A value of null shall indicate " +
268
+ "that the number of primaries is unknown." +
391
269
  "\n" +
392
270
  "Where this attribute is implemented, the attributes below for indicating the “x” and “y” color " +
393
271
  "values of the primaries shall also be implemented for each of the primaries from 1 to " +
394
272
  "NumberOfPrimaries, without leaving gaps. Implementation of the Primary1Intensity attribute and " +
395
273
  "subsequent intensity attributes is optional.",
396
274
 
397
- xref: { document: "cluster", section: "3.2.8.1" }
275
+ xref: { document: "cluster", section: "3.2.7.24" }
398
276
  }),
399
277
 
400
278
  Attribute(
401
279
  {
402
280
  name: "Primary1X", id: 0x11, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 0",
403
- constraint: "0 to 65279", quality: "F",
404
- details: "The Primary1X attribute contains the normalized chromaticity value x for this primary, as defined " +
405
- "in the CIE xyY Color Space." +
281
+ constraint: "max 65279", quality: "F",
282
+ details: "Indicates the normalized chromaticity value x for this primary, as defined in the CIE xyY Color " +
283
+ "Space." +
406
284
  "\n" +
407
285
  "The value of x shall be related to the Primary1X attribute by the relationship x = Primary1X / " +
408
286
  "65536 (Primary1X in the range 0 to 65279 inclusive)",
409
- xref: { document: "cluster", section: "3.2.8.2" }
287
+ xref: { document: "cluster", section: "3.2.7.25" }
410
288
  }
411
289
  ),
412
290
 
413
291
  Attribute(
414
292
  {
415
293
  name: "Primary1Y", id: 0x12, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 0",
416
- constraint: "0 to 65279", quality: "F",
417
- details: "The Primary1Y attribute contains the normalized chromaticity value y for this primary, as defined " +
418
- "in the CIE xyY Color Space." +
294
+ constraint: "max 65279", quality: "F",
295
+ details: "Indicates the normalized chromaticity value y for this primary, as defined in the CIE xyY Color " +
296
+ "Space." +
419
297
  "\n" +
420
298
  "The value of y shall be related to the Primary1Y attribute by the relationship y = Primary1Y / " +
421
299
  "65536 (Primary1Y in the range 0 to 65279 inclusive)",
422
- xref: { document: "cluster", section: "3.2.8.3" }
300
+ xref: { document: "cluster", section: "3.2.7.26" }
423
301
  }
424
302
  ),
425
303
 
@@ -427,144 +305,147 @@ export const ColorControl = Cluster(
427
305
  name: "Primary1Intensity", id: 0x13, type: "uint8", access: "R V",
428
306
  conformance: "NumberOfPrimaries > 0", quality: "X F",
429
307
 
430
- details: "The Primary1intensity attribute contains a representation of the maximum intensity of this primary " +
431
- "as defined in the Dimming Light Curve in the Ballast Configuration cluster (see Ballast " +
432
- "Configuration Cluster), normalized such that the primary with the highest maximum intensity " +
433
- "contains the value 0xFE." +
308
+ details: "Indicates a representation of the maximum intensity of this primary as defined in the Dimming Light " +
309
+ "Curve in the Ballast Configuration cluster (see Ballast Configuration Cluster), normalized such " +
310
+ "that the primary with the highest maximum intensity contains the value 254." +
434
311
  "\n" +
435
- "A value of null shall indicate that this primary is not available.",
312
+ "A value of null shall indicate that this primary is not available." +
313
+ "\n" +
314
+ "3.2.7.28. Primary2X, Primary2Y, Primary2Intensity, Primary3X, Primary3Y, Primary3Intensity, " +
315
+ "Primary4X, Primary4Y, Primary4Intensity, Primary5X, Primary5Y, Primary5Intensity, Primary6X, " +
316
+ "Primary6Y and Primary6Intensity Attributes" +
317
+ "\n" +
318
+ "These attributes shall represent the capabilities of the 2nd, 3rd, 4th, 5th and 6th primaries, " +
319
+ "where present, in the same way as for the Primary1X, Primary1Y and Primary1Intensity attributes.",
436
320
 
437
- xref: { document: "cluster", section: "3.2.8.4" }
321
+ xref: { document: "cluster", section: "3.2.7.27" }
438
322
  }),
439
323
 
440
324
  Attribute({
441
325
  name: "Primary2X", id: 0x15, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 1",
442
- constraint: "0 to 65279", quality: "F",
443
- xref: { document: "cluster", section: "3.2.8" }
326
+ constraint: "max 65279", quality: "F",
327
+ xref: { document: "cluster", section: "3.2.7" }
444
328
  }),
445
329
  Attribute({
446
330
  name: "Primary2Y", id: 0x16, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 1",
447
- constraint: "0 to 65279", quality: "F",
448
- xref: { document: "cluster", section: "3.2.8" }
331
+ constraint: "max 65279", quality: "F",
332
+ xref: { document: "cluster", section: "3.2.7" }
449
333
  }),
450
334
  Attribute({
451
335
  name: "Primary2Intensity", id: 0x17, type: "uint8", access: "R V",
452
336
  conformance: "NumberOfPrimaries > 1", quality: "X F",
453
- xref: { document: "cluster", section: "3.2.8" }
337
+ xref: { document: "cluster", section: "3.2.7" }
454
338
  }),
455
339
  Attribute({
456
340
  name: "Primary3X", id: 0x19, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 2",
457
- constraint: "0 to 65279", quality: "F",
458
- xref: { document: "cluster", section: "3.2.8" }
341
+ constraint: "max 65279", quality: "F",
342
+ xref: { document: "cluster", section: "3.2.7" }
459
343
  }),
460
344
  Attribute({
461
345
  name: "Primary3Y", id: 0x1a, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 2",
462
- constraint: "0 to 65279", quality: "F",
463
- xref: { document: "cluster", section: "3.2.8" }
346
+ constraint: "max 65279", quality: "F",
347
+ xref: { document: "cluster", section: "3.2.7" }
464
348
  }),
465
349
  Attribute({
466
350
  name: "Primary3Intensity", id: 0x1b, type: "uint8", access: "R V",
467
351
  conformance: "NumberOfPrimaries > 2", quality: "X F",
468
- xref: { document: "cluster", section: "3.2.8" }
352
+ xref: { document: "cluster", section: "3.2.7" }
469
353
  }),
470
354
  Attribute({
471
355
  name: "Primary4X", id: 0x20, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 3",
472
- constraint: "0 to 65279", quality: "F",
473
- xref: { document: "cluster", section: "3.2.9" }
356
+ constraint: "max 65279", quality: "F",
357
+ xref: { document: "cluster", section: "3.2.7" }
474
358
  }),
475
359
  Attribute({
476
360
  name: "Primary4Y", id: 0x21, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 3",
477
- constraint: "0 to 65279", quality: "F",
478
- xref: { document: "cluster", section: "3.2.9" }
361
+ constraint: "max 65279", quality: "F",
362
+ xref: { document: "cluster", section: "3.2.7" }
479
363
  }),
480
364
  Attribute({
481
365
  name: "Primary4Intensity", id: 0x22, type: "uint8", access: "R V",
482
366
  conformance: "NumberOfPrimaries > 3", quality: "X F",
483
- xref: { document: "cluster", section: "3.2.9" }
367
+ xref: { document: "cluster", section: "3.2.7" }
484
368
  }),
485
369
  Attribute({
486
370
  name: "Primary5X", id: 0x24, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 4",
487
- constraint: "0 to 65279", quality: "F",
488
- xref: { document: "cluster", section: "3.2.9" }
371
+ constraint: "max 65279", quality: "F",
372
+ xref: { document: "cluster", section: "3.2.7" }
489
373
  }),
490
374
  Attribute({
491
375
  name: "Primary5Y", id: 0x25, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 4",
492
- constraint: "0 to 65279", quality: "F",
493
- xref: { document: "cluster", section: "3.2.9" }
376
+ constraint: "max 65279", quality: "F",
377
+ xref: { document: "cluster", section: "3.2.7" }
494
378
  }),
495
379
  Attribute({
496
380
  name: "Primary5Intensity", id: 0x26, type: "uint8", access: "R V",
497
381
  conformance: "NumberOfPrimaries > 4", quality: "X F",
498
- xref: { document: "cluster", section: "3.2.9" }
382
+ xref: { document: "cluster", section: "3.2.7" }
499
383
  }),
500
384
  Attribute({
501
385
  name: "Primary6X", id: 0x28, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 5",
502
- constraint: "0 to 65279", quality: "F",
503
- xref: { document: "cluster", section: "3.2.9" }
386
+ constraint: "max 65279", quality: "F",
387
+ xref: { document: "cluster", section: "3.2.7" }
504
388
  }),
505
389
  Attribute({
506
390
  name: "Primary6Y", id: 0x29, type: "uint16", access: "R V", conformance: "NumberOfPrimaries > 5",
507
- constraint: "0 to 65279", quality: "F",
508
- xref: { document: "cluster", section: "3.2.9" }
391
+ constraint: "max 65279", quality: "F",
392
+ xref: { document: "cluster", section: "3.2.7" }
509
393
  }),
510
394
  Attribute({
511
395
  name: "Primary6Intensity", id: 0x2a, type: "uint8", access: "R V",
512
396
  conformance: "NumberOfPrimaries > 5", quality: "X F",
513
- xref: { document: "cluster", section: "3.2.9" }
397
+ xref: { document: "cluster", section: "3.2.7" }
514
398
  }),
515
399
 
516
400
  Attribute(
517
401
  {
518
402
  name: "WhitePointX", id: 0x30, type: "uint16", access: "RW VM", conformance: "O",
519
- constraint: "0 to 65279",
520
- details: "The WhitePointX attribute contains the normalized chromaticity value x, as defined in the CIE xyY " +
521
- "Color Space, of the current white point of the device." +
403
+ constraint: "max 65279",
404
+ details: "Indicates the normalized chromaticity value x, as defined in the CIE xyY Color Space, of the " +
405
+ "current white point of the device." +
522
406
  "\n" +
523
407
  "The value of x shall be related to the WhitePointX attribute by the relationship x = WhitePointX / " +
524
408
  "65536 (WhitePointX in the range 0 to 65279 inclusive)",
525
- xref: { document: "cluster", section: "3.2.10.1" }
409
+ xref: { document: "cluster", section: "3.2.7.29" }
526
410
  }
527
411
  ),
528
412
 
529
413
  Attribute(
530
414
  {
531
415
  name: "WhitePointY", id: 0x31, type: "uint16", access: "RW VM", conformance: "O",
532
- constraint: "0 to 65279",
533
-
534
- details: "The WhitePointY attribute contains the normalized chromaticity value y, as defined in the CIE xyY" +
535
- "\n" +
536
- "Color Space, of the current white point of the device." +
416
+ constraint: "max 65279",
417
+ details: "Indicates the normalized chromaticity value y, as defined in the CIE xyY Color Space, of the " +
418
+ "current white point of the device." +
537
419
  "\n" +
538
420
  "The value of y shall be related to the WhitePointY attribute by the relationship y = WhitePointY / " +
539
421
  "65536 (WhitePointY in the range 0 to 65279 inclusive)",
540
-
541
- xref: { document: "cluster", section: "3.2.10.2" }
422
+ xref: { document: "cluster", section: "3.2.7.30" }
542
423
  }
543
424
  ),
544
425
 
545
426
  Attribute(
546
427
  {
547
428
  name: "ColorPointRx", id: 0x32, type: "uint16", access: "RW VM", conformance: "O",
548
- constraint: "0 to 65279",
549
- details: "The ColorPointRX attribute contains the normalized chromaticity value x, as defined in the CIE xyY " +
550
- "Color Space, of the red color point of the device." +
429
+ constraint: "max 65279",
430
+ details: "Indicates the normalized chromaticity value x, as defined in the CIE xyY Color Space, of the red " +
431
+ "color point of the device." +
551
432
  "\n" +
552
433
  "The value of x shall be related to the ColorPointRX attribute by the relationship x = ColorPointRX " +
553
434
  "/ 65536 (ColorPointRX in the range 0 to 65279 inclusive)",
554
- xref: { document: "cluster", section: "3.2.10.3" }
435
+ xref: { document: "cluster", section: "3.2.7.31" }
555
436
  }
556
437
  ),
557
438
 
558
439
  Attribute(
559
440
  {
560
441
  name: "ColorPointRy", id: 0x33, type: "uint16", access: "RW VM", conformance: "O",
561
- constraint: "0 to 65279",
562
- details: "The ColorPointRY attribute contains the normalized chromaticity value y, as defined in the CIE xyY " +
563
- "Color Space, of the red color point of the device." +
442
+ constraint: "max 65279",
443
+ details: "Indicates the normalized chromaticity value y, as defined in the CIE xyY Color Space, of the red " +
444
+ "color point of the device." +
564
445
  "\n" +
565
446
  "The value of y shall be related to the ColorPointRY attribute by the relationship y = ColorPointRY " +
566
447
  "/ 65536 (ColorPointRY in the range 0 to 65279 inclusive)",
567
- xref: { document: "cluster", section: "3.2.10.4" }
448
+ xref: { document: "cluster", section: "3.2.7.32" }
568
449
  }
569
450
  ),
570
451
 
@@ -572,72 +453,237 @@ export const ColorControl = Cluster(
572
453
  name: "ColorPointRIntensity", id: 0x34, type: "uint8", access: "RW VM", conformance: "O",
573
454
  quality: "X",
574
455
 
575
- details: "The ColorPointRIntensity attribute contains a representation of the relative intensity of the red " +
576
- "color point as defined in the Dimming Light Curve in the Ballast Configuration cluster (see Ballast " +
577
- "Configuration Cluster), normalized such that the color point with the highest relative intensity " +
578
- "contains the value 0xFE." +
456
+ details: "Indicates a representation of the relative intensity of the red color point as defined in the " +
457
+ "Dimming Light Curve in the Ballast Configuration cluster (see Ballast Configuration Cluster), " +
458
+ "normalized such that the color point with the highest relative intensity contains the value 254." +
459
+ "\n" +
460
+ "A value of null shall indicate an invalid value." +
579
461
  "\n" +
580
- "A value of null shall indicate an invalid value.",
462
+ "3.2.7.34. ColorPointGX, ColorPointGY, ColorPointGIntensity, ColorPointBX, ColorPointBY and " +
463
+ "ColorPointBIntensity Attributes" +
464
+ "\n" +
465
+ "These attributes shall represent the chromaticity values and intensities of the green and blue " +
466
+ "color points, in the same way as for the ColorPointRX, ColorPointRY and ColorPointRIntensity " +
467
+ "attributes." +
468
+ "\n" +
469
+ "If any one of these red, green or blue color point attributes is implemented then they shall all be " +
470
+ "implemented.",
581
471
 
582
- xref: { document: "cluster", section: "3.2.10.5" }
472
+ xref: { document: "cluster", section: "3.2.7.33" }
583
473
  }),
584
474
 
585
475
  Attribute({
586
476
  name: "ColorPointGx", id: 0x36, type: "uint16", access: "RW VM", conformance: "O",
587
- constraint: "0 to 65279",
588
- xref: { document: "cluster", section: "3.2.10" }
477
+ constraint: "max 65279",
478
+ xref: { document: "cluster", section: "3.2.7" }
589
479
  }),
590
480
  Attribute({
591
481
  name: "ColorPointGy", id: 0x37, type: "uint16", access: "RW VM", conformance: "O",
592
- constraint: "0 to 65279",
593
- xref: { document: "cluster", section: "3.2.10" }
482
+ constraint: "max 65279",
483
+ xref: { document: "cluster", section: "3.2.7" }
594
484
  }),
595
485
  Attribute({
596
486
  name: "ColorPointGIntensity", id: 0x38, type: "uint8", access: "RW VM", conformance: "O",
597
487
  quality: "X",
598
- xref: { document: "cluster", section: "3.2.10" }
488
+ xref: { document: "cluster", section: "3.2.7" }
599
489
  }),
600
490
  Attribute({
601
491
  name: "ColorPointBx", id: 0x3a, type: "uint16", access: "RW VM", conformance: "O",
602
- constraint: "0 to 65279",
603
- xref: { document: "cluster", section: "3.2.10" }
492
+ constraint: "max 65279",
493
+ xref: { document: "cluster", section: "3.2.7" }
604
494
  }),
605
495
  Attribute({
606
496
  name: "ColorPointBy", id: 0x3b, type: "uint16", access: "RW VM", conformance: "O",
607
- constraint: "0 to 65279",
608
- xref: { document: "cluster", section: "3.2.10" }
497
+ constraint: "max 65279",
498
+ xref: { document: "cluster", section: "3.2.7" }
609
499
  }),
610
500
  Attribute({
611
501
  name: "ColorPointBIntensity", id: 0x3c, type: "uint8", access: "RW VM", conformance: "O",
612
502
  quality: "X",
613
- xref: { document: "cluster", section: "3.2.10" }
503
+ xref: { document: "cluster", section: "3.2.7" }
504
+ }),
505
+
506
+ Attribute({
507
+ name: "EnhancedCurrentHue", id: 0x4000, type: "uint16", access: "R V", conformance: "EHUE",
508
+ default: 0, quality: "N S Q",
509
+
510
+ details: "Indicates the non-equidistant steps along the CIE 1931 color triangle, and it provides 16-bits " +
511
+ "precision." +
512
+ "\n" +
513
+ "The upper 8 bits of this attribute shall be used as an index in the implementation specific XY " +
514
+ "lookup table to provide the non-equidistant steps. The lower 8 bits shall be used to interpolate " +
515
+ "between these steps in a linear way in order to provide color zoom for the user." +
516
+ "\n" +
517
+ "To provide compatibility with clients not supporting EHUE, the CurrentHue attribute shall contain a " +
518
+ "hue value in the range 0 to 254, calculated from the EnhancedCurrentHue attribute." +
519
+ "\n" +
520
+ "Changes to this attribute shall only be marked as reportable in the following cases:" +
521
+ "\n" +
522
+ " • At most once per second or" +
523
+ "\n" +
524
+ " • At the end of the movement/transition.",
525
+
526
+ xref: { document: "cluster", section: "3.2.7.12" }
527
+ }),
528
+
529
+ Attribute({
530
+ name: "EnhancedColorMode", id: 0x4001, type: "EnhancedColorModeEnum", access: "R V",
531
+ conformance: "M", default: 1, quality: "N S",
532
+
533
+ details: "Indicates which attributes are currently determining the color of the device." +
534
+ "\n" +
535
+ "To provide compatibility with clients not supporting EHUE, the original ColorMode attribute shall " +
536
+ "indicate CurrentHue and CurrentSaturation when the light uses the EnhancedCurrentHue attribute. If " +
537
+ "the ColorMode attribute is changed, its new value shall be copied to the EnhancedColorMode " +
538
+ "attribute.",
539
+
540
+ xref: { document: "cluster", section: "3.2.7.13" }
541
+ }),
542
+
543
+ Attribute(
544
+ {
545
+ name: "ColorLoopActive", id: 0x4002, type: "enum16", access: "R V", conformance: "CL",
546
+ constraint: "max 1", default: 0, quality: "N S",
547
+ details: "Indicates the current active status of the color loop. If this attribute has the value 0, the color " +
548
+ "loop shall NOT be active. If this attribute has the value 1, the color loop shall be active.",
549
+ xref: { document: "cluster", section: "3.2.7.14" }
550
+ },
551
+
552
+ Field({ name: "Inactive", id: 0x0 }),
553
+ Field({ name: "Active", id: 0x1 })
554
+ ),
555
+
556
+ Attribute({
557
+ name: "ColorLoopDirection", id: 0x4003, type: "ColorLoopDirectionEnum", access: "R V", asOf: "1.4",
558
+ conformance: "CL", constraint: "max 1", default: 0, quality: "N S",
559
+ details: "Indicates the current direction of the color loop. If this attribute has the value 0, the " +
560
+ "EnhancedCurrentHue attribute shall be decremented. If this attribute has the value 1, the " +
561
+ "EnhancedCurrentHue attribute shall be incremented.",
562
+ xref: { document: "cluster", section: "3.2.7.15" }
563
+ }),
564
+
565
+ Attribute({
566
+ name: "ColorLoopTime", id: 0x4004, type: "uint16", access: "R V", conformance: "CL", default: 25,
567
+ quality: "N S",
568
+ details: "Indicates the number of seconds it shall take to perform a full color loop, i.e., to cycle all " +
569
+ "values of the EnhancedCurrentHue attribute (between 0 and 65534).",
570
+ xref: { document: "cluster", section: "3.2.7.16" }
571
+ }),
572
+
573
+ Attribute({
574
+ name: "ColorLoopStartEnhancedHue", id: 0x4005, type: "uint16", access: "R V", conformance: "CL",
575
+ default: 8960,
576
+ details: "Indicates the value of the EnhancedCurrentHue attribute from which the color loop shall be started.",
577
+ xref: { document: "cluster", section: "3.2.7.17" }
578
+ }),
579
+
580
+ Attribute({
581
+ name: "ColorLoopStoredEnhancedHue", id: 0x4006, type: "uint16", access: "R V", conformance: "CL",
582
+ default: 0,
583
+ details: "Indicates the value of the EnhancedCurrentHue attribute before the color loop was started. Once the " +
584
+ "color loop is complete, the EnhancedCurrentHue attribute shall be restored to this value.",
585
+ xref: { document: "cluster", section: "3.2.7.18" }
586
+ }),
587
+
588
+ Attribute(
589
+ {
590
+ name: "ColorCapabilities", id: 0x400a, type: "map16", access: "R V", conformance: "M",
591
+ constraint: "max 31", default: 0,
592
+ details: "Indicates the color control capabilities of the device." +
593
+ "\n" +
594
+ "Bits 0-4 of the ColorCapabilities attribute shall have the same values as the corresponding bits of " +
595
+ "the FeatureMap attribute. All other bits in ColorCapabilities shall be 0.",
596
+ xref: { document: "cluster", section: "3.2.7.19" }
597
+ },
598
+
599
+ Field({ name: "HueSaturation", constraint: "0", description: "Supports color specification via hue/saturation." }),
600
+ Field({ name: "EnhancedHue", constraint: "1", description: "Enhanced hue is supported." }),
601
+ Field({ name: "ColorLoop", constraint: "2", description: "Color loop is supported." }),
602
+ Field({ name: "XY", constraint: "3", description: "Supports color specification via XY." }),
603
+ Field({
604
+ name: "ColorTemperature", constraint: "4",
605
+ description: "Supports color specification via color temperature."
606
+ })
607
+ ),
608
+
609
+ Attribute({
610
+ name: "ColorTempPhysicalMinMireds", id: 0x400b, type: "uint16", access: "R V", conformance: "CT",
611
+ constraint: "1 to 65279", default: 1,
612
+ details: "Indicates the minimum mired value supported by the hardware. ColorTempPhysicalMinMireds corresponds " +
613
+ "to the maximum color temperature in kelvins supported by the hardware." +
614
+ "\n" +
615
+ "ColorTempPhysicalMinMireds <= ColorTemperatureMireds.",
616
+ xref: { document: "cluster", section: "3.2.7.20" }
617
+ }),
618
+
619
+ Attribute({
620
+ name: "ColorTempPhysicalMaxMireds", id: 0x400c, type: "uint16", access: "R V", conformance: "CT",
621
+ constraint: "max 65279", default: 65279,
622
+ details: "Indicates the maximum mired value supported by the hardware. ColorTempPhysicalMaxMireds corresponds " +
623
+ "to the minimum color temperature in kelvins supported by the hardware." +
624
+ "\n" +
625
+ "ColorTemperatureMireds <= ColorTempPhysicalMaxMireds.",
626
+ xref: { document: "cluster", section: "3.2.7.21" }
627
+ }),
628
+
629
+ Attribute(
630
+ {
631
+ name: "CoupleColorTempToLevelMinMireds", id: 0x400d, type: "uint16", access: "R V",
632
+ conformance: "CT & ColorTemperatureMireds",
633
+ constraint: "colorTempPhysicalMinMireds to colorTemperatureMireds",
634
+
635
+ details: "Indicates a lower bound on the value of the ColorTemperatureMireds attribute for the purposes of " +
636
+ "coupling the ColorTemperatureMireds attribute to the CurrentLevel attribute when the " +
637
+ "CoupleColorTempToLevel bit of the Options attribute of the Level Control cluster is equal to 1. " +
638
+ "When coupling the ColorTemperatureMireds attribute to the CurrentLevel attribute, this value shall " +
639
+ "correspond to a CurrentLevel value of 254 (100%)." +
640
+ "\n" +
641
+ "This attribute shall be set such that the following relationship exists: ColorTempPhysicalMinMireds " +
642
+ "<= CoupleColorTempToLevelMinMireds <= ColorTemperatureMireds" +
643
+ "\n" +
644
+ "Note that since this attribute is stored as a micro reciprocal degree (mired) value (i.e. color " +
645
+ "temperature in kelvins = 1,000,000 / CoupleColorTempToLevelMinMireds), the " +
646
+ "CoupleColorTempToLevelMinMireds attribute corresponds to an upper bound on the value of the color " +
647
+ "temperature" +
648
+ "\n" +
649
+ "in kelvins supported by the device.",
650
+
651
+ xref: { document: "cluster", section: "3.2.7.22" }
652
+ }
653
+ ),
654
+
655
+ Attribute({
656
+ name: "StartUpColorTemperatureMireds", id: 0x4010, type: "uint16", access: "RW VM",
657
+ conformance: "CT & ColorTemperatureMireds", constraint: "1 to 65279", quality: "X N",
658
+ details: "Indicates the desired startup color temperature value the light shall use when it is supplied with " +
659
+ "power and this value shall be reflected in the ColorTemperatureMireds attribute. In addition, the " +
660
+ "ColorMode and EnhancedColorMode attributes shall be set to 2 (ColorTemperatureMireds). The values " +
661
+ "of the StartUpColorTemperatureMireds attribute are listed in the table below,",
662
+ xref: { document: "cluster", section: "3.2.7.23" }
614
663
  }),
615
664
 
616
665
  Command(
617
666
  {
618
667
  name: "MoveToHue", id: 0x0, access: "O", conformance: "HS", direction: "request",
619
668
  response: "status",
620
- xref: { document: "cluster", section: "3.2.11.4" }
669
+ xref: { document: "cluster", section: "3.2.8.4" }
621
670
  },
622
671
  Field({
623
- name: "Hue", id: 0x0, type: "uint8", conformance: "M", constraint: "0 to 254",
624
- details: "The Hue field specifies the hue to be moved to.",
625
- xref: { document: "cluster", section: "3.2.11.4.1" }
672
+ name: "Hue", id: 0x0, type: "uint8", conformance: "M", constraint: "max 254",
673
+ details: "This field shall indicate the hue to be moved to.",
674
+ xref: { document: "cluster", section: "3.2.8.4.1" }
626
675
  }),
627
-
628
676
  Field({
629
- name: "Direction", id: 0x1, type: "Direction", conformance: "M", constraint: "desc",
630
- details: "The Direction field shall be one of the non-reserved values in Values of the Direction Field." +
631
- "\n" +
632
- "### Table 17. Values of the Direction Field",
633
- xref: { document: "cluster", section: "3.2.11.4.2" }
677
+ name: "Direction", id: 0x1, type: "DirectionEnum", conformance: "M",
678
+ details: "This field shall indicate the movement direction.",
679
+ xref: { document: "cluster", section: "3.2.8.4.2" }
634
680
  }),
635
681
 
636
682
  Field({
637
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
638
- details: "The TransitionTime field specifies, in 1/10ths of a second, the time that shall be taken to move to " +
639
- "the new hue.",
640
- xref: { document: "cluster", section: "3.2.11.4.3" }
683
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
684
+ details: "This field shall indicate, in 1/10ths of a second, the time that shall be taken to move to the new " +
685
+ "hue.",
686
+ xref: { document: "cluster", section: "3.2.8.4.3" }
641
687
  }),
642
688
 
643
689
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -647,26 +693,19 @@ export const ColorControl = Cluster(
647
693
  Command(
648
694
  {
649
695
  name: "MoveHue", id: 0x1, access: "O", conformance: "HS", direction: "request", response: "status",
650
- xref: { document: "cluster", section: "3.2.11.5" }
696
+ xref: { document: "cluster", section: "3.2.8.5" }
651
697
  },
652
-
653
698
  Field({
654
- name: "MoveMode", id: 0x0, type: "MoveMode", conformance: "M", constraint: "desc",
655
- details: "The MoveMode field shall be one of the non-reserved values in Values of the MoveMode Field. If the " +
656
- "MoveMode field is equal to 0 (Stop), the Rate field shall be ignored." +
657
- "\n" +
658
- "### Table 18. Values of the MoveMode Field",
659
- xref: { document: "cluster", section: "3.2.11.5.1" }
699
+ name: "MoveMode", id: 0x0, type: "MoveModeEnum", conformance: "M",
700
+ details: "This field shall indicate the mode of movement.",
701
+ xref: { document: "cluster", section: "3.2.8.5.1" }
660
702
  }),
661
703
 
662
704
  Field({
663
705
  name: "Rate", id: 0x1, type: "uint8", conformance: "M",
664
- details: "The Rate field specifies the rate of movement in steps per second. A step is a change in the " +
665
- "device’s hue of one unit. If the MoveMode field is set to 1 (up) or 3 (down) and the Rate field has " +
666
- "a value of zero, the command has no effect and a response command shall be sent in response, with " +
667
- "the status code set to INVALID_COMMAND. If the MoveMode field is set to 0 (stop) the Rate field " +
668
- "shall be ignored.",
669
- xref: { document: "cluster", section: "3.2.11.5.2" }
706
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the " +
707
+ "device’s hue of one unit.",
708
+ xref: { document: "cluster", section: "3.2.8.5.2" }
670
709
  }),
671
710
 
672
711
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -676,35 +715,34 @@ export const ColorControl = Cluster(
676
715
  Command(
677
716
  {
678
717
  name: "StepHue", id: 0x2, access: "O", conformance: "HS", direction: "request", response: "status",
679
- xref: { document: "cluster", section: "3.2.11.6" }
718
+ xref: { document: "cluster", section: "3.2.8.6" }
680
719
  },
681
-
682
720
  Field({
683
- name: "StepMode", id: 0x0, type: "StepMode", conformance: "M", constraint: "desc",
684
- details: "The StepMode field shall be one of the non-reserved values in Values of the StepMode Field." +
685
- "\n" +
686
- "### Table 20. Values of the StepMode Field",
687
- xref: { document: "cluster", section: "3.2.11.6.1" }
721
+ name: "StepMode", id: 0x0, type: "StepModeEnum", conformance: "M",
722
+ details: "This field shall indicate the mode of the step to be performed.",
723
+ xref: { document: "cluster", section: "3.2.8.6.1" }
688
724
  }),
689
725
 
690
726
  Field({
691
727
  name: "StepSize", id: 0x1, type: "uint8", conformance: "M",
692
- details: "The change to be added to (or subtracted from) the current value of the device’s hue.",
693
- xref: { document: "cluster", section: "3.2.11.6.2" }
728
+ details: "This field shall indicate the change to be added to (or subtracted from) the current value of the " +
729
+ "device’s hue.",
730
+ xref: { document: "cluster", section: "3.2.8.6.2" }
694
731
  }),
695
732
 
696
733
  Field({
697
734
  name: "TransitionTime", id: 0x2, type: "uint8", conformance: "M",
698
735
 
699
- details: "The TransitionTime field specifies, in 1/10ths of a second, the time that shall be taken to perform " +
700
- "the step. A step is a change in the device’s hue of ‘Step size’ units." +
736
+ details: "This field shall indicate, in 1/10ths of a second, the time that shall be taken to perform the step." +
737
+ "\n" +
738
+ "A step is a change in the device’s hue of Step size units." +
701
739
  "\n" +
702
740
  "NOTE" +
703
741
  "\n" +
704
742
  "Here the TransitionTime data field is of data type uint8, where uint16 is more common for " +
705
743
  "TransitionTime data fields in other clusters / commands.",
706
744
 
707
- xref: { document: "cluster", section: "3.2.11.6.3" }
745
+ xref: { document: "cluster", section: "3.2.8.6.3" }
708
746
  }),
709
747
 
710
748
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -715,10 +753,10 @@ export const ColorControl = Cluster(
715
753
  {
716
754
  name: "MoveToSaturation", id: 0x3, access: "O", conformance: "HS", direction: "request",
717
755
  response: "status",
718
- xref: { document: "cluster", section: "3.2.11.7" }
756
+ xref: { document: "cluster", section: "3.2.8.7" }
719
757
  },
720
- Field({ name: "Saturation", id: 0x0, type: "uint8", conformance: "M", constraint: "0 to 254" }),
721
- Field({ name: "TransitionTime", id: 0x1, type: "uint16", conformance: "M", constraint: "0 to 65534" }),
758
+ Field({ name: "Saturation", id: 0x0, type: "uint8", conformance: "M", constraint: "max 254" }),
759
+ Field({ name: "TransitionTime", id: 0x1, type: "uint16", conformance: "M", constraint: "max 65534" }),
722
760
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
723
761
  Field({ name: "OptionsOverride", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 })
724
762
  ),
@@ -727,26 +765,19 @@ export const ColorControl = Cluster(
727
765
  {
728
766
  name: "MoveSaturation", id: 0x4, access: "O", conformance: "HS", direction: "request",
729
767
  response: "status",
730
- xref: { document: "cluster", section: "3.2.11.8" }
768
+ xref: { document: "cluster", section: "3.2.8.8" }
731
769
  },
732
-
733
770
  Field({
734
- name: "MoveMode", id: 0x0, type: "MoveMode", conformance: "M", constraint: "desc",
735
- details: "The MoveMode field shall be one of the non-reserved values in Values of the MoveMode Field. If the " +
736
- "MoveMode field is equal to 0 (Stop), the Rate field shall be ignored." +
737
- "\n" +
738
- "### Table 22. Values of the MoveMode Field",
739
- xref: { document: "cluster", section: "3.2.11.8.1" }
771
+ name: "MoveMode", id: 0x0, type: "MoveModeEnum", conformance: "M",
772
+ details: "This field shall indicate the mode of movement, as described in the MoveHue command.",
773
+ xref: { document: "cluster", section: "3.2.8.8.1" }
740
774
  }),
741
775
 
742
776
  Field({
743
777
  name: "Rate", id: 0x1, type: "uint8", conformance: "M",
744
- details: "The Rate field specifies the rate of movement in steps per second. A step is a change in the " +
745
- "device’s saturation of one unit. If the MoveMode field is set to 1 (up) or 3 (down) and the Rate " +
746
- "field has a value of zero, the command has no effect and a response command shall be sent in " +
747
- "response, with the status code set to INVALID_COMMAND. If the MoveMode field is set to 0 (stop) the " +
748
- "Rate field shall be ignored.",
749
- xref: { document: "cluster", section: "3.2.11.8.2" }
778
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the " +
779
+ "device’s saturation of one unit.",
780
+ xref: { document: "cluster", section: "3.2.8.8.2" }
750
781
  }),
751
782
 
752
783
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -757,35 +788,33 @@ export const ColorControl = Cluster(
757
788
  {
758
789
  name: "StepSaturation", id: 0x5, access: "O", conformance: "HS", direction: "request",
759
790
  response: "status",
760
- xref: { document: "cluster", section: "3.2.11.9" }
791
+ xref: { document: "cluster", section: "3.2.8.9" }
761
792
  },
762
-
763
793
  Field({
764
- name: "StepMode", id: 0x0, type: "StepMode", conformance: "M", constraint: "desc",
765
- details: "The StepMode field shall be one of the non-reserved values in Values of the StepMode Field." +
766
- "\n" +
767
- "### Table 24. Values of the StepMode Field",
768
- xref: { document: "cluster", section: "3.2.11.9.1" }
794
+ name: "StepMode", id: 0x0, type: "StepModeEnum", conformance: "M",
795
+ details: "This field shall indicate the mode of the step to be performed, as described in the StepHue command.",
796
+ xref: { document: "cluster", section: "3.2.8.9.1" }
769
797
  }),
770
798
 
771
799
  Field({
772
800
  name: "StepSize", id: 0x1, type: "uint8", conformance: "M",
773
- details: "The change to be added to (or subtracted from) the current value of the device’s saturation.",
774
- xref: { document: "cluster", section: "3.2.11.9.2" }
801
+ details: "This field shall indicate the change to be added to (or subtracted from) the current value of the " +
802
+ "device’s saturation.",
803
+ xref: { document: "cluster", section: "3.2.8.9.2" }
775
804
  }),
776
805
 
777
806
  Field({
778
807
  name: "TransitionTime", id: 0x2, type: "uint8", conformance: "M",
779
808
 
780
- details: "The TransitionTime field specifies, in 1/10ths of a second, the time that shall be taken to perform " +
781
- "the step. A step is a change in the device’s saturation of Step size units." +
809
+ details: "This field shall indicate, in 1/10ths of a second, the time that shall be taken to perform the " +
810
+ "step. A step is a change in the device’s saturation of Step size units." +
782
811
  "\n" +
783
812
  "NOTE" +
784
813
  "\n" +
785
814
  "Here the TransitionTime data field is of data type uint8, where uint16 is more common for " +
786
815
  "TransitionTime data fields in other clusters / commands.",
787
816
 
788
- xref: { document: "cluster", section: "3.2.11.9.3" }
817
+ xref: { document: "cluster", section: "3.2.8.9.3" }
789
818
  }),
790
819
 
791
820
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -796,11 +825,11 @@ export const ColorControl = Cluster(
796
825
  {
797
826
  name: "MoveToHueAndSaturation", id: 0x6, access: "O", conformance: "HS", direction: "request",
798
827
  response: "status",
799
- xref: { document: "cluster", section: "3.2.11.10" }
828
+ xref: { document: "cluster", section: "3.2.8.10" }
800
829
  },
801
- Field({ name: "Hue", id: 0x0, type: "uint8", conformance: "M", constraint: "0 to 254" }),
802
- Field({ name: "Saturation", id: 0x1, type: "uint8", conformance: "M", constraint: "0 to 254" }),
803
- Field({ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534" }),
830
+ Field({ name: "Hue", id: 0x0, type: "uint8", conformance: "M", constraint: "max 254" }),
831
+ Field({ name: "Saturation", id: 0x1, type: "uint8", conformance: "M", constraint: "max 254" }),
832
+ Field({ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534" }),
804
833
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
805
834
  Field({ name: "OptionsOverride", id: 0x4, type: "Options", conformance: "M", constraint: "desc", default: 0 })
806
835
  ),
@@ -809,11 +838,11 @@ export const ColorControl = Cluster(
809
838
  {
810
839
  name: "MoveToColor", id: 0x7, access: "O", conformance: "XY", direction: "request",
811
840
  response: "status",
812
- xref: { document: "cluster", section: "3.2.11.11" }
841
+ xref: { document: "cluster", section: "3.2.8.11" }
813
842
  },
814
- Field({ name: "ColorX", id: 0x0, type: "uint16", conformance: "M", constraint: "0 to 65279" }),
815
- Field({ name: "ColorY", id: 0x1, type: "uint16", conformance: "M", constraint: "0 to 65279" }),
816
- Field({ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534" }),
843
+ Field({ name: "ColorX", id: 0x0, type: "uint16", conformance: "M", constraint: "max 65279" }),
844
+ Field({ name: "ColorY", id: 0x1, type: "uint16", conformance: "M", constraint: "max 65279" }),
845
+ Field({ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534" }),
817
846
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
818
847
  Field({ name: "OptionsOverride", id: 0x4, type: "Options", conformance: "M", constraint: "desc", default: 0 })
819
848
  ),
@@ -822,21 +851,21 @@ export const ColorControl = Cluster(
822
851
  {
823
852
  name: "MoveColor", id: 0x8, access: "O", conformance: "XY", direction: "request",
824
853
  response: "status",
825
- xref: { document: "cluster", section: "3.2.11.12" }
854
+ xref: { document: "cluster", section: "3.2.8.12" }
826
855
  },
827
856
 
828
857
  Field({
829
858
  name: "RateX", id: 0x0, type: "int16", conformance: "M",
830
- details: "The RateX field specifies the rate of movement in steps per second. A step is a change in the " +
859
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the " +
831
860
  "device’s CurrentX attribute of one unit.",
832
- xref: { document: "cluster", section: "3.2.11.12.1" }
861
+ xref: { document: "cluster", section: "3.2.8.12.1" }
833
862
  }),
834
863
 
835
864
  Field({
836
865
  name: "RateY", id: 0x1, type: "int16", conformance: "M",
837
- details: "The RateY field specifies the rate of movement in steps per second. A step is a change in the " +
866
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the " +
838
867
  "device’s CurrentY attribute of one unit.",
839
- xref: { document: "cluster", section: "3.2.11.12.2" }
868
+ xref: { document: "cluster", section: "3.2.8.12.2" }
840
869
  }),
841
870
 
842
871
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -847,16 +876,16 @@ export const ColorControl = Cluster(
847
876
  {
848
877
  name: "StepColor", id: 0x9, access: "O", conformance: "XY", direction: "request",
849
878
  response: "status",
850
- xref: { document: "cluster", section: "3.2.11.13" }
879
+ xref: { document: "cluster", section: "3.2.8.13" }
851
880
  },
852
881
  Field({ name: "StepX", id: 0x0, type: "int16", conformance: "M" }),
853
882
  Field({ name: "StepY", id: 0x1, type: "int16", conformance: "M" }),
854
883
 
855
884
  Field({
856
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
857
- details: "The TransitionTime field specifies, in 1/10ths of a second, the time that shall be taken to perform " +
858
- "the color change.",
859
- xref: { document: "cluster", section: "3.2.11.13.2" }
885
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
886
+ details: "The field shall indicate, in 1/10ths of a second, the time that shall be taken to perform the color " +
887
+ "change.",
888
+ xref: { document: "cluster", section: "3.2.8.13.2" }
860
889
  }),
861
890
 
862
891
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -867,10 +896,10 @@ export const ColorControl = Cluster(
867
896
  {
868
897
  name: "MoveToColorTemperature", id: 0xa, access: "O", conformance: "CT", direction: "request",
869
898
  response: "status",
870
- xref: { document: "cluster", section: "3.2.11.14" }
899
+ xref: { document: "cluster", section: "3.2.8.14" }
871
900
  },
872
- Field({ name: "ColorTemperatureMireds", id: 0x0, type: "uint16", conformance: "M", constraint: "0 to 65279" }),
873
- Field({ name: "TransitionTime", id: 0x1, type: "uint16", conformance: "M", constraint: "0 to 65534" }),
901
+ Field({ name: "ColorTemperatureMireds", id: 0x0, type: "uint16", conformance: "M", constraint: "max 65279" }),
902
+ Field({ name: "TransitionTime", id: 0x1, type: "uint16", conformance: "M", constraint: "max 65534" }),
874
903
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
875
904
  Field({ name: "OptionsOverride", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 })
876
905
  ),
@@ -879,31 +908,26 @@ export const ColorControl = Cluster(
879
908
  {
880
909
  name: "EnhancedMoveToHue", id: 0x40, access: "O", conformance: "EHUE", direction: "request",
881
910
  response: "status",
882
- details: "The EnhancedMoveToHue command allows lamps to be moved in a smooth continuous transition from their " +
883
- "current hue to a target hue.",
884
- xref: { document: "cluster", section: "3.2.11.15" }
911
+ details: "This command allows the light to be moved in a smooth continuous transition from their current hue " +
912
+ "to a target hue.",
913
+ xref: { document: "cluster", section: "3.2.8.15" }
885
914
  },
886
915
 
887
916
  Field({
888
917
  name: "EnhancedHue", id: 0x0, type: "uint16", conformance: "M",
889
- details: "The EnhancedHue field specifies the target extended hue for the lamp.",
890
- xref: { document: "cluster", section: "3.2.11.15.1" }
918
+ details: "This field shall indicate the target extended hue for the light.",
919
+ xref: { document: "cluster", section: "3.2.8.15.1" }
891
920
  }),
892
-
893
921
  Field({
894
- name: "Direction", id: 0x1, type: "Direction", conformance: "M", constraint: "desc",
895
- details: "This field is identical to the Direction field of the MoveToHue command of the Color Control " +
896
- "cluster (see sub-clause Use of the OptionsMask and OptionsOverride fields).",
897
- xref: { document: "cluster", section: "3.2.11.15.2" }
922
+ name: "Direction", id: 0x1, type: "DirectionEnum", conformance: "M",
923
+ details: "This field shall indicate the movement direction.",
924
+ xref: { document: "cluster", section: "3.2.8.15.2" }
898
925
  }),
899
-
900
926
  Field({
901
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
902
- details: "This field is identical to the TransitionTime field of the MoveToHue command of the Color Control " +
903
- "cluster (see sub-clause Use of the OptionsMask and OptionsOverride fields).",
904
- xref: { document: "cluster", section: "3.2.11.15.3" }
927
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
928
+ details: "This field shall indicate the transition time, as described in the MoveToHue command.",
929
+ xref: { document: "cluster", section: "3.2.8.15.3" }
905
930
  }),
906
-
907
931
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
908
932
  Field({ name: "OptionsOverride", id: 0x4, type: "Options", conformance: "M", constraint: "desc", default: 0 })
909
933
  ),
@@ -912,27 +936,21 @@ export const ColorControl = Cluster(
912
936
  {
913
937
  name: "EnhancedMoveHue", id: 0x41, access: "O", conformance: "EHUE", direction: "request",
914
938
  response: "status",
915
- details: "The EnhancedMoveHue command allows lamps to be moved in a continuous stepped transition from their " +
916
- "current hue to a target hue.",
917
- xref: { document: "cluster", section: "3.2.11.16" }
939
+ details: "This command allows the light to start a continuous transition starting from their current hue.",
940
+ xref: { document: "cluster", section: "3.2.8.16" }
918
941
  },
919
942
 
920
943
  Field({
921
- name: "MoveMode", id: 0x0, type: "MoveMode", conformance: "M", constraint: "desc",
922
- details: "This field is identical to the MoveMode field of the MoveHue command of the Color Control cluster " +
923
- "(see sub-clause MoveHue Command). If the MoveMode field is equal to 0 (Stop), the Rate field shall " +
924
- "be ignored.",
925
- xref: { document: "cluster", section: "3.2.11.16.1" }
944
+ name: "MoveMode", id: 0x0, type: "MoveModeEnum", conformance: "M", constraint: "desc",
945
+ details: "This field shall indicate the mode of movement, as described in the MoveHue command.",
946
+ xref: { document: "cluster", section: "3.2.8.16.1" }
926
947
  }),
927
948
 
928
949
  Field({
929
950
  name: "Rate", id: 0x1, type: "uint16", conformance: "M",
930
- details: "The Rate field specifies the rate of movement in steps per second. A step is a change in the " +
931
- "extended hue of a device by one unit. If the MoveMode field is set to 1 (up) or 3 (down) and the " +
932
- "Rate field has a value of zero, the command has no effect and a response command shall be sent in " +
933
- "response, with the status code set to INVALID_COMMAND. If the MoveMode field is set to 0 (stop) the " +
934
- "Rate field shall be ignored.",
935
- xref: { document: "cluster", section: "3.2.11.16.2" }
951
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the " +
952
+ "extended hue of a device by one unit.",
953
+ xref: { document: "cluster", section: "3.2.8.16.2" }
936
954
  }),
937
955
 
938
956
  Field({ name: "OptionsMask", id: 0x2, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -943,38 +961,37 @@ export const ColorControl = Cluster(
943
961
  {
944
962
  name: "EnhancedStepHue", id: 0x42, access: "O", conformance: "EHUE", direction: "request",
945
963
  response: "status",
946
- details: "The EnhancedStepHue command allows lamps to be moved in a stepped transition from their current hue " +
947
- "to a target hue, resulting in a linear transition through XY space.",
948
- xref: { document: "cluster", section: "3.2.11.17" }
964
+ details: "This command allows the light to be moved in a stepped transition from their current hue, resulting " +
965
+ "in a linear transition through XY space.",
966
+ xref: { document: "cluster", section: "3.2.8.17" }
949
967
  },
950
968
 
951
969
  Field({
952
- name: "StepMode", id: 0x0, type: "StepMode", conformance: "M", constraint: "desc",
953
- details: "This field is identical to the StepMode field of the StepHue command of the Color Control cluster " +
954
- "(see sub-clause StepHue Command).",
955
- xref: { document: "cluster", section: "3.2.11.17.1" }
970
+ name: "StepMode", id: 0x0, type: "StepModeEnum", conformance: "M", constraint: "desc",
971
+ details: "This field shall indicate the mode of the step to be performed, as described in the StepHue command.",
972
+ xref: { document: "cluster", section: "3.2.8.17.1" }
956
973
  }),
957
974
 
958
975
  Field({
959
976
  name: "StepSize", id: 0x1, type: "uint16", conformance: "M",
960
- details: "The StepSize field specifies the change to be added to (or subtracted from) the current value of " +
961
- "the device’s enhanced hue.",
962
- xref: { document: "cluster", section: "3.2.11.17.2" }
977
+ details: "This field shall indicate the change to be added to (or subtracted from) the current value of the " +
978
+ "device’s enhanced hue.",
979
+ xref: { document: "cluster", section: "3.2.8.17.2" }
963
980
  }),
964
981
 
965
982
  Field({
966
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
983
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
967
984
 
968
- details: "The TransitionTime field specifies, in units of 1/10ths of a second, the time that shall be taken " +
969
- "to perform the step. A step is a change to the device’s enhanced hue of a magnitude corresponding " +
970
- "to the StepSize field." +
985
+ details: "The field shall indicate, in units of 1/10ths of a second, the time that shall be taken to perform " +
986
+ "the step. A step is a change to the device’s enhanced hue of a magnitude corresponding to the " +
987
+ "StepSize field." +
971
988
  "\n" +
972
989
  "NOTE" +
973
990
  "\n" +
974
991
  "Here TransitionTime data field is of data type uint16, while the TransitionTime data field of the " +
975
992
  "StepHue command is of data type uint8.",
976
993
 
977
- xref: { document: "cluster", section: "3.2.11.17.3" }
994
+ xref: { document: "cluster", section: "3.2.8.17.3" }
978
995
  }),
979
996
 
980
997
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -985,32 +1002,26 @@ export const ColorControl = Cluster(
985
1002
  {
986
1003
  name: "EnhancedMoveToHueAndSaturation", id: 0x43, access: "O", conformance: "EHUE",
987
1004
  direction: "request", response: "status",
988
- details: "The EnhancedMoveToHueAndSaturation command allows lamps to be moved in a smooth continuous " +
989
- "transition from their current hue to a target hue and from their current saturation to a target " +
990
- "saturation.",
991
- xref: { document: "cluster", section: "3.2.11.18" }
1005
+ details: "This command allows the light to be moved in a smooth continuous transition from their current hue " +
1006
+ "to a target hue and from their current saturation to a target saturation.",
1007
+ xref: { document: "cluster", section: "3.2.8.18" }
992
1008
  },
993
1009
 
994
1010
  Field({
995
1011
  name: "EnhancedHue", id: 0x0, type: "uint16", conformance: "M",
996
- details: "The EnhancedHue field specifies the target extended hue for the lamp.",
997
- xref: { document: "cluster", section: "3.2.11.18.1" }
1012
+ details: "This field shall indicate the target extended hue for the light.",
1013
+ xref: { document: "cluster", section: "3.2.8.18.1" }
998
1014
  }),
999
-
1000
1015
  Field({
1001
- name: "Saturation", id: 0x1, type: "uint8", conformance: "M", constraint: "0 to 254",
1002
- details: "This field is identical to the Saturation field of the MoveToHueAndSaturation command of the Color " +
1003
- "Control cluster (see sub-clause MoveToHueAndSaturation Command).",
1004
- xref: { document: "cluster", section: "3.2.11.18.2" }
1016
+ name: "Saturation", id: 0x1, type: "uint8", conformance: "M", constraint: "max 254",
1017
+ details: "This field shall indicate the saturation, as described in the MoveToHueAndSaturation command.",
1018
+ xref: { document: "cluster", section: "3.2.8.18.2" }
1005
1019
  }),
1006
-
1007
1020
  Field({
1008
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
1009
- details: "This field is identical to the TransitionTime field of the MoveToHue command of the Color Control " +
1010
- "cluster (see sub-clause MoveToHueAndSaturation Command).",
1011
- xref: { document: "cluster", section: "3.2.11.18.3" }
1021
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
1022
+ details: "This field shall indicate the transition time, as described in the MoveToHue command.",
1023
+ xref: { document: "cluster", section: "3.2.8.18.3" }
1012
1024
  }),
1013
-
1014
1025
  Field({ name: "OptionsMask", id: 0x3, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
1015
1026
  Field({ name: "OptionsOverride", id: 0x4, type: "Options", conformance: "M", constraint: "desc", default: 0 })
1016
1027
  ),
@@ -1019,88 +1030,33 @@ export const ColorControl = Cluster(
1019
1030
  {
1020
1031
  name: "ColorLoopSet", id: 0x44, access: "O", conformance: "CL", direction: "request",
1021
1032
  response: "status",
1022
- details: "The Color Loop Set command allows a color loop to be activated such that the color lamp cycles " +
1023
- "through its range of hues.",
1024
- xref: { document: "cluster", section: "3.2.11.19" }
1033
+ details: "This command allows a color loop to be activated such that the color light cycles through its range " +
1034
+ "of hues.",
1035
+ xref: { document: "cluster", section: "3.2.8.19" }
1025
1036
  },
1026
1037
 
1027
- Field(
1028
- {
1029
- name: "UpdateFlags", id: 0x0, type: "map8", conformance: "M", constraint: "desc",
1030
-
1031
- details: "The UpdateFlags field specifies which color loop attributes to update before the color loop is " +
1032
- "started. This field shall be formatted as illustrated in Format of the UpdateFlags Field of the " +
1033
- "ColorLoopSet Command." +
1034
- "\n" +
1035
- "### Table 28. Format of the UpdateFlags Field of the ColorLoopSet Command" +
1036
- "\n" +
1037
- "The UpdateAction sub-field is 1 bit in length and specifies whether the device shall adhere to the " +
1038
- "action field in order to process the command. If this sub-field is set to 1, the device shall " +
1039
- "adhere to the action field. If this sub-field is set to 0, the device shall ignore the Action field." +
1040
- "\n" +
1041
- "The UpdateDirection sub-field is 1 bit in length and specifies whether the device shall update the " +
1042
- "ColorLoopDirection attribute with the Direction field. If this sub-field is set to 1, the device " +
1043
- "shall update the value of the ColorLoopDirection attribute with the value of the Direction field. " +
1044
- "If this sub-field is set to 0, the device shall ignore the Direction field." +
1045
- "\n" +
1046
- "The UpdateTime sub-field is 1 bit in length and specifies whether the device shall update the " +
1047
- "ColorLoopTime attribute with the Time field. If this sub-field is set to 1, the device shall update " +
1048
- "the value of the ColorLoopTime attribute with the value of the Time field. If this sub-field is set " +
1049
- "to 0, the device shall ignore the Time field." +
1050
- "\n" +
1051
- "The UpdateStartHue sub-field is 1 bit in length and specifies whether the device shall update the " +
1052
- "ColorLoopStartEnhancedHue attribute with the StartHue field. If this sub-field is set to 1, the " +
1053
- "device shall update the value of the ColorLoopStartEnhancedHue attribute with the value of the " +
1054
- "StartHue field. If this sub-field is set to 0, the device shall ignore the StartHue field.",
1055
-
1056
- xref: { document: "cluster", section: "3.2.11.19.1" }
1057
- },
1058
-
1059
- Field({ name: "UpdateAction", constraint: "0" }),
1060
- Field({ name: "UpdateDirection", constraint: "1" }),
1061
- Field({ name: "UpdateTime", constraint: "2" }),
1062
- Field({ name: "UpdateStartHue", constraint: "3" }),
1063
- Field({ name: "Reserved", constraint: "4 to 8" })
1064
- ),
1065
-
1066
- Field(
1067
- {
1068
- name: "Action", id: 0x1, type: "enum8", conformance: "M", constraint: "desc",
1069
- details: "The Action field specifies the action to take for the color loop if the UpdateAction sub-field of " +
1070
- "the UpdateFlags field is set to 1. This field shall be set to one of the non-reserved values listed " +
1071
- "in Values of the Action Field of the ColorLoopSet Command." +
1072
- "\n" +
1073
- "### Table 29. Values of the Action Field of the ColorLoopSet Command",
1074
- xref: { document: "cluster", section: "3.2.11.19.2" }
1075
- },
1076
-
1077
- Field({ name: "DeActivateTheColorLoop", id: 0x0 }),
1078
- Field({ name: "ActivateTheColorLoopFromTheValueInTheColorLoopStartEnhancedHueField", id: 0x1 }),
1079
- Field({ name: "ActivateTheColorLoopFromTheValueOfTheEnhancedCurrentHueAttribute", id: 0x2 })
1080
- ),
1081
-
1082
- Field(
1083
- {
1084
- name: "Direction", id: 0x2, type: "enum8", conformance: "M", constraint: "desc",
1085
- details: "The Direction field specifies the direction for the color loop if the Update Direction field of the " +
1086
- "UpdateFlags field is set to 1. This field shall be set to one of the non-reserved values listed in " +
1087
- "Values of the Direction Field of the ColorLoopSet Command." +
1088
- "\n" +
1089
- "### Table 30. Values of the Direction Field of the ColorLoopSet Command",
1090
- xref: { document: "cluster", section: "3.2.11.19.3" }
1091
- },
1092
-
1093
- Field({ name: "DecrementTheHueInTheColorLoop", id: 0x0 }),
1094
- Field({ name: "IncrementTheHueInTheColorLoop", id: 0x1 })
1095
- ),
1038
+ Field({
1039
+ name: "UpdateFlags", id: 0x0, type: "UpdateFlagsBitmap", conformance: "M",
1040
+ details: "This field shall indicate which color loop attributes to update (from the values supplied in the " +
1041
+ "other fields, see field descriptions below) before the color loop is started.",
1042
+ xref: { document: "cluster", section: "3.2.8.19.1" }
1043
+ }),
1096
1044
 
1045
+ Field({
1046
+ name: "Action", id: 0x1, type: "ColorLoopActionEnum", conformance: "M",
1047
+ details: "This field shall indicate the action to take for the color loop.",
1048
+ xref: { document: "cluster", section: "3.2.8.19.2" }
1049
+ }),
1050
+ Field({
1051
+ name: "Direction", id: 0x2, type: "ColorLoopDirectionEnum", conformance: "M",
1052
+ details: "This field shall indicate the direction for the color loop.",
1053
+ xref: { document: "cluster", section: "3.2.8.19.3" }
1054
+ }),
1097
1055
  Field({
1098
1056
  name: "Time", id: 0x3, type: "uint16", conformance: "M",
1099
- details: "The Time field specifies the number of seconds over which to perform a full color loop if the " +
1100
- "UpdateTime sub-field of the UpdateFlags field is set to 1.",
1101
- xref: { document: "cluster", section: "3.2.11.19.4" }
1057
+ details: "This field shall indicate the number of seconds over which to perform a full color loop.",
1058
+ xref: { document: "cluster", section: "3.2.8.19.4" }
1102
1059
  }),
1103
-
1104
1060
  Field({ name: "StartHue", id: 0x4, type: "uint16", conformance: "M" }),
1105
1061
  Field({ name: "OptionsMask", id: 0x5, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
1106
1062
  Field({ name: "OptionsOverride", id: 0x6, type: "Options", conformance: "M", constraint: "desc", default: 0 })
@@ -1110,11 +1066,12 @@ export const ColorControl = Cluster(
1110
1066
  {
1111
1067
  name: "StopMoveStep", id: 0x47, access: "O", conformance: "HS | XY | CT", direction: "request",
1112
1068
  response: "status",
1113
- details: "The StopMoveStep command is provided to allow MoveTo and Step commands to be stopped. (Note this " +
1114
- "automatically provides symmetry to the Level Control cluster.)" +
1069
+ details: "This command is provided to allow MoveTo and Step commands to be stopped." +
1115
1070
  "\n" +
1116
- "NOTE the StopMoveStep command has no effect on an active color loop.",
1117
- xref: { document: "cluster", section: "3.2.11.20" }
1071
+ "NOTE This automatically provides symmetry to the Level Control cluster." +
1072
+ "\n" +
1073
+ "NOTE The StopMoveStep command has no effect on an active color loop.",
1074
+ xref: { document: "cluster", section: "3.2.8.20" }
1118
1075
  },
1119
1076
 
1120
1077
  Field({ name: "OptionsMask", id: 0x0, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -1125,35 +1082,29 @@ export const ColorControl = Cluster(
1125
1082
  {
1126
1083
  name: "MoveColorTemperature", id: 0x4b, access: "O", conformance: "CT", direction: "request",
1127
1084
  response: "status",
1128
- details: "The MoveColorTemperature command allows the color temperature of a lamp to be moved at a specified " +
1129
- "rate.",
1130
- xref: { document: "cluster", section: "3.2.11.21" }
1085
+ details: "This command allows the color temperature of the light to be moved at a specified rate.",
1086
+ xref: { document: "cluster", section: "3.2.8.21" }
1131
1087
  },
1132
1088
 
1133
1089
  Field({
1134
- name: "MoveMode", id: 0x0, type: "MoveMode", conformance: "M", constraint: "desc",
1135
- details: "This field is identical to the MoveMode field of the MoveHue command of the Color Control cluster " +
1136
- "(see sub-clause MoveHue Command). If the MoveMode field is equal to 0 (Stop), the Rate field shall " +
1137
- "be ignored.",
1138
- xref: { document: "cluster", section: "3.2.11.21.1" }
1090
+ name: "MoveMode", id: 0x0, type: "MoveModeEnum", conformance: "M", constraint: "desc",
1091
+ details: "This field shall indicate the mode of movement, as described in the MoveHue command.",
1092
+ xref: { document: "cluster", section: "3.2.8.21.1" }
1139
1093
  }),
1140
1094
 
1141
1095
  Field({
1142
1096
  name: "Rate", id: 0x1, type: "uint16", conformance: "M",
1143
- details: "The Rate field specifies the rate of movement in steps per second. A step is a change in the color " +
1144
- "temperature of a device by one unit. If the MoveMode field is set to 1 (up) or 3 (down) and the " +
1145
- "Rate field has a value of zero, the command has no effect and a response command shall be sent in " +
1146
- "response, with the status code set to INVALID_COMMAND. If the MoveMode field is set to 0 (stop) the " +
1147
- "Rate field shall be ignored.",
1148
- xref: { document: "cluster", section: "3.2.11.21.2" }
1097
+ details: "This field shall indicate the rate of movement in steps per second. A step is a change in the color " +
1098
+ "temperature of a device by one unit.",
1099
+ xref: { document: "cluster", section: "3.2.8.21.2" }
1149
1100
  }),
1150
1101
 
1151
1102
  Field({
1152
1103
  name: "ColorTemperatureMinimumMireds", id: 0x2, type: "uint16", conformance: "M",
1153
- constraint: "0 to 65279",
1104
+ constraint: "max 65279",
1154
1105
 
1155
- details: "The ColorTemperatureMinimumMireds field specifies a lower bound on the ColorTemperatureMireds " +
1156
- "attribute (≡ an upper bound on the color temperature in kelvins) for the current move operation" +
1106
+ details: "This field shall indicate a lower bound on the ColorTemperatureMireds attribute (≡ an upper bound " +
1107
+ "on the color temperature in kelvins) for the current move operation" +
1157
1108
  "\n" +
1158
1109
  "ColorTempPhysicalMinMireds <= ColorTemperatureMinimumMireds field <= ColorTemperatureMireds" +
1159
1110
  "\n" +
@@ -1162,15 +1113,15 @@ export const ColorControl = Cluster(
1162
1113
  "If the ColorTemperatureMinimumMireds field is set to 0, ColorTempPhysicalMinMireds shall be used as " +
1163
1114
  "the lower bound for the ColorTemperatureMireds attribute.",
1164
1115
 
1165
- xref: { document: "cluster", section: "3.2.11.21.3" }
1116
+ xref: { document: "cluster", section: "3.2.8.21.3" }
1166
1117
  }),
1167
1118
 
1168
1119
  Field({
1169
1120
  name: "ColorTemperatureMaximumMireds", id: 0x3, type: "uint16", conformance: "M",
1170
- constraint: "0 to 65279",
1121
+ constraint: "max 65279",
1171
1122
 
1172
- details: "The ColorTemperatureMaximumMireds field specifies an upper bound on the ColorTemperatureMireds " +
1173
- "attribute (≡ a lower bound on the color temperature in kelvins) for the current move operation" +
1123
+ details: "This field shall indicate an upper bound on the ColorTemperatureMireds attribute (≡ a lower bound " +
1124
+ "on the color temperature in kelvins) for the current move operation" +
1174
1125
  "\n" +
1175
1126
  "ColorTemperatureMireds <= ColorTemperatureMaximumMireds field <= ColorTempPhysicalMaxMireds" +
1176
1127
  "\n" +
@@ -1179,7 +1130,7 @@ export const ColorControl = Cluster(
1179
1130
  "If the ColorTemperatureMaximumMireds field is set to 0, ColorTempPhysicalMaxMireds shall be used as " +
1180
1131
  "the upper bound for the ColorTemperatureMireds attribute.",
1181
1132
 
1182
- xref: { document: "cluster", section: "3.2.11.21.4" }
1133
+ xref: { document: "cluster", section: "3.2.8.21.4" }
1183
1134
  }),
1184
1135
 
1185
1136
  Field({ name: "OptionsMask", id: 0x4, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -1190,65 +1141,63 @@ export const ColorControl = Cluster(
1190
1141
  {
1191
1142
  name: "StepColorTemperature", id: 0x4c, access: "O", conformance: "CT", direction: "request",
1192
1143
  response: "status",
1193
- details: "The StepColorTemperature command allows the color temperature of a lamp to be stepped with a " +
1194
- "specified step size.",
1195
- xref: { document: "cluster", section: "3.2.11.22" }
1144
+ details: "This command allows the color temperature of the light to be stepped with a specified step size.",
1145
+ xref: { document: "cluster", section: "3.2.8.22" }
1196
1146
  },
1197
1147
 
1198
1148
  Field({
1199
- name: "StepMode", id: 0x0, type: "StepMode", conformance: "M", constraint: "desc",
1200
- details: "This field is identical to the StepMode field of the StepHue command of the Color Control cluster " +
1201
- "(see sub-clause StepHue Command).",
1202
- xref: { document: "cluster", section: "3.2.11.22.1" }
1149
+ name: "StepMode", id: 0x0, type: "StepModeEnum", conformance: "M", constraint: "desc",
1150
+ details: "This field shall indicate the mode of the step to be performed, as described in the StepHue command.",
1151
+ xref: { document: "cluster", section: "3.2.8.22.1" }
1203
1152
  }),
1204
1153
 
1205
1154
  Field({
1206
1155
  name: "StepSize", id: 0x1, type: "uint16", conformance: "M",
1207
- details: "The StepSize field specifies the change to be added to (or subtracted from) the current value of " +
1208
- "the device’s color temperature.",
1209
- xref: { document: "cluster", section: "3.2.11.22.2" }
1156
+ details: "This field shall indicate the change to be added to (or subtracted from) the current value of the " +
1157
+ "device’s color temperature.",
1158
+ xref: { document: "cluster", section: "3.2.8.22.2" }
1210
1159
  }),
1211
1160
 
1212
1161
  Field({
1213
- name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "0 to 65534",
1214
- details: "The TransitionTime field specifies, in units of 1/10ths of a second, the time that shall be taken " +
1215
- "to perform the step. A step is a change to the device’s color temperature of a magnitude " +
1216
- "corresponding to the StepSize field.",
1217
- xref: { document: "cluster", section: "3.2.11.22.3" }
1162
+ name: "TransitionTime", id: 0x2, type: "uint16", conformance: "M", constraint: "max 65534",
1163
+ details: "This field shall indicate, in units of 1/10ths of a second, the time that shall be taken to perform " +
1164
+ "the step. A step is a change to the device’s color temperature of a magnitude corresponding to the " +
1165
+ "StepSize field.",
1166
+ xref: { document: "cluster", section: "3.2.8.22.3" }
1218
1167
  }),
1219
1168
 
1220
1169
  Field({
1221
1170
  name: "ColorTemperatureMinimumMireds", id: 0x3, type: "uint16", conformance: "M",
1222
- constraint: "0 to 65279",
1171
+ constraint: "max 65279",
1223
1172
 
1224
- details: "The ColorTemperatureMinimumMireds field specifies a lower bound on the ColorTemperatureMireds " +
1225
- "attribute (≡ an upper bound on the color temperature in kelvins) for the current step operation" +
1173
+ details: "This field shall indicate a lower bound on the ColorTemperatureMireds attribute (≡ an upper bound " +
1174
+ "on the color temperature in kelvins) for the current step operation" +
1226
1175
  "\n" +
1227
1176
  "ColorTempPhysicalMinMireds <= ColorTemperatureMinimumMireds field <= ColorTemperatureMireds" +
1228
1177
  "\n" +
1229
1178
  "As such if the step operation takes the ColorTemperatureMireds attribute towards the value of the " +
1230
- "Color Temperature Minimum Mireds field it shall be clipped so that the above invariant is " +
1231
- "satisfied. If the ColorTemperatureMinimumMireds field is set to 0, ColorTempPhysicalMinMireds shall " +
1232
- "be used as the lower bound for the ColorTemperatureMireds attribute.",
1179
+ "ColorTemperatureMinimumMireds field it shall be clipped so that the above invariant is satisfied. " +
1180
+ "If the ColorTemperatureMinimumMireds field is set to 0, ColorTempPhysicalMinMireds shall be used as " +
1181
+ "the lower bound for the ColorTemperatureMireds attribute.",
1233
1182
 
1234
- xref: { document: "cluster", section: "3.2.11.22.4" }
1183
+ xref: { document: "cluster", section: "3.2.8.22.4" }
1235
1184
  }),
1236
1185
 
1237
1186
  Field({
1238
1187
  name: "ColorTemperatureMaximumMireds", id: 0x4, type: "uint16", conformance: "M",
1239
- constraint: "0 to 65279",
1188
+ constraint: "max 65279",
1240
1189
 
1241
- details: "The ColorTemperatureMaximumMireds field specifies an upper bound on the ColorTemperatureMireds " +
1242
- "attribute (≡ a lower bound on the color temperature in kelvins) for the current step operation" +
1190
+ details: "This field shall indicate an upper bound on the ColorTemperatureMireds attribute (≡ a lower bound " +
1191
+ "on the color temperature in kelvins) for the current step operation" +
1243
1192
  "\n" +
1244
1193
  "ColorTemperatureMireds ≤ ColorTemperatureMaximumMireds field ≤ ColorTempPhysicalMaxMireds" +
1245
1194
  "\n" +
1246
1195
  "As such if the step operation takes the ColorTemperatureMireds attribute towards the value of the " +
1247
1196
  "ColorTemperatureMaximumMireds field it shall be clipped so that the above invariant is satisfied. " +
1248
- "If the ColorTemperatureMaximum Mireds field is set to 0, ColorTempPhysicalMaxMireds shall be used " +
1249
- "as the upper bound for the ColorTemperatureMireds attribute.",
1197
+ "If the ColorTemperatureMaximumMireds field is set to 0, ColorTempPhysicalMaxMireds shall be used as " +
1198
+ "the upper bound for the ColorTemperatureMireds attribute.",
1250
1199
 
1251
- xref: { document: "cluster", section: "3.2.11.22.5" }
1200
+ xref: { document: "cluster", section: "3.2.8.22.5" }
1252
1201
  }),
1253
1202
 
1254
1203
  Field({ name: "OptionsMask", id: 0x5, type: "Options", conformance: "M", constraint: "desc", default: 0 }),
@@ -1256,24 +1205,181 @@ export const ColorControl = Cluster(
1256
1205
  ),
1257
1206
 
1258
1207
  Datatype(
1259
- { name: "MoveMode", type: "enum8", xref: { document: "cluster", section: "3.2.11.5.1" } },
1260
- Field({ name: "Stop", id: 0x0 }),
1261
- Field({ name: "Up", id: 0x1 }),
1262
- Field({ name: "Down", id: 0x3 })
1208
+ { name: "OptionsBitmap", type: "map8", xref: { document: "cluster", section: "3.2.6.2" } },
1209
+ Field({
1210
+ name: "ExecuteIfOff", constraint: "0", description: "Dependency on On/Off cluster",
1211
+ details: "This bit shall indicate if this cluster server instance has a dependency with the On/Off cluster.",
1212
+ xref: { document: "cluster", section: "3.2.6.2.1" }
1213
+ })
1263
1214
  ),
1264
1215
 
1265
1216
  Datatype(
1266
- { name: "StepMode", type: "enum8", xref: { document: "cluster", section: "3.2.11.6.1" } },
1267
- Field({ name: "Up", id: 0x1 }),
1268
- Field({ name: "Down", id: 0x3 })
1217
+ {
1218
+ name: "UpdateFlagsBitmap", type: "map8",
1219
+ details: "This data type is derived from map8 and is used in the ColorLoopSet command.",
1220
+ xref: { document: "cluster", section: "3.2.6.3" }
1221
+ },
1222
+
1223
+ Field(
1224
+ {
1225
+ name: "UpdateAction", constraint: "0",
1226
+ description: "Device adheres to the associated action field.",
1227
+
1228
+ details: "This bit shall indicate whether the server adheres to the Action field in order to process the " +
1229
+ "command." +
1230
+ "\n" +
1231
+ " • 0 = Device shall ignore the Action field." +
1232
+ "\n" +
1233
+ " • 1 = Device shall adhere to the Action field.",
1234
+
1235
+ xref: { document: "cluster", section: "3.2.6.3.1" }
1236
+ }
1237
+ ),
1238
+
1239
+ Field(
1240
+ {
1241
+ name: "UpdateDirection", constraint: "1",
1242
+ description: "Device updates the associated direction attribute.",
1243
+
1244
+ details: "This bit shall indicate whether the device updates the ColorLoopDirection attribute with the " +
1245
+ "Direction field." +
1246
+ "\n" +
1247
+ " • 0 = Device shall ignore the Direction field." +
1248
+ "\n" +
1249
+ " • 1 = Device shall update the ColorLoopDirection attribute with the value of the Direction field.",
1250
+
1251
+ xref: { document: "cluster", section: "3.2.6.3.2" }
1252
+ }
1253
+ ),
1254
+
1255
+ Field(
1256
+ {
1257
+ name: "UpdateTime", constraint: "2", description: "Device updates the associated time attribute.",
1258
+
1259
+ details: "This bit shall indicate whether the device updates the ColorLoopTime attribute with the Time field." +
1260
+ "\n" +
1261
+ " • 0 = Device shall ignore the Time field." +
1262
+ "\n" +
1263
+ " • 1 = Device shall update the value of the ColorLoopTime attribute with the value of the Time " +
1264
+ " field.",
1265
+
1266
+ xref: { document: "cluster", section: "3.2.6.3.3" }
1267
+ }
1268
+ ),
1269
+
1270
+ Field(
1271
+ {
1272
+ name: "UpdateStartHue", constraint: "3",
1273
+ description: "Device updates the associated start hue attribute.",
1274
+
1275
+ details: "This bit shall indicate whether the device updates the ColorLoopStartEnhancedHue attribute with the " +
1276
+ "value of the StartHue field." +
1277
+ "\n" +
1278
+ " • 0 = Device shall ignore the StartHue field." +
1279
+ "\n" +
1280
+ " • 1 = Device shall update the value of the ColorLoopStartEnhancedHue attribute with the value of " +
1281
+ " the StartHue field.",
1282
+
1283
+ xref: { document: "cluster", section: "3.2.6.3.4" }
1284
+ }
1285
+ )
1286
+ ),
1287
+
1288
+ Datatype(
1289
+ { name: "DriftCompensationEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.4" } },
1290
+ Field({ name: "None", id: 0x0, conformance: "M", description: "There is no compensation." }),
1291
+ Field({
1292
+ name: "OtherOrUnknown", id: 0x1, conformance: "M",
1293
+ description: "The compensation is based on other or unknown mechanism."
1294
+ }),
1295
+ Field({
1296
+ name: "TemperatureMonitoring", id: 0x2, conformance: "M",
1297
+ description: "The compensation is based on temperature monitoring."
1298
+ }),
1299
+ Field({
1300
+ name: "OpticalLuminanceMonitoringAndFeedback", id: 0x3, conformance: "M",
1301
+ description: "The compensation is based on optical luminance monitoring and feedback."
1302
+ }),
1303
+ Field({
1304
+ name: "OpticalColorMonitoringAndFeedback", id: 0x4, conformance: "M",
1305
+ description: "The compensation is based on optical color monitoring and feedback."
1306
+ })
1307
+ ),
1308
+
1309
+ Datatype(
1310
+ { name: "ColorModeEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.5" } },
1311
+ Field({
1312
+ name: "CurrentHueAndCurrentSaturation", id: 0x0, conformance: "M",
1313
+ description: "The current hue and saturation attributes determine the color."
1314
+ }),
1315
+ Field({
1316
+ name: "CurrentXAndCurrentY", id: 0x1, conformance: "M",
1317
+ description: "The current X and Y attributes determine the color."
1318
+ }),
1319
+ Field({
1320
+ name: "ColorTemperatureMireds", id: 0x2, conformance: "M",
1321
+ description: "The color temperature attribute determines the color."
1322
+ })
1323
+ ),
1324
+
1325
+ Datatype(
1326
+ { name: "EnhancedColorModeEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.6" } },
1327
+ Field({
1328
+ name: "CurrentHueAndCurrentSaturation", id: 0x0, conformance: "M",
1329
+ description: "The current hue and saturation attributes determine the color."
1330
+ }),
1331
+ Field({
1332
+ name: "CurrentXAndCurrentY", id: 0x1, conformance: "M",
1333
+ description: "The current X and Y attributes determine the color."
1334
+ }),
1335
+ Field({
1336
+ name: "ColorTemperatureMireds", id: 0x2, conformance: "M",
1337
+ description: "The color temperature attribute determines the color."
1338
+ }),
1339
+ Field({
1340
+ name: "EnhancedCurrentHueAndCurrentSaturation", id: 0x3, conformance: "M",
1341
+ description: "The enhanced current hue and saturation attributes determine the color."
1342
+ })
1343
+ ),
1344
+
1345
+ Datatype(
1346
+ { name: "DirectionEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.7" } },
1347
+ Field({ name: "Shortest", id: 0x0, conformance: "M", description: "Shortest distance" }),
1348
+ Field({ name: "Longest", id: 0x1, conformance: "M", description: "Longest distance" }),
1349
+ Field({ name: "Up", id: 0x2, conformance: "M", description: "Up" }),
1350
+ Field({ name: "Down", id: 0x3, conformance: "M", description: "Down" })
1351
+ ),
1352
+
1353
+ Datatype(
1354
+ { name: "MoveModeEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.8" } },
1355
+ Field({ name: "Stop", id: 0x0, conformance: "M", description: "Stop the movement" }),
1356
+ Field({ name: "Up", id: 0x1, conformance: "M", description: "Move in an upwards direction" }),
1357
+ Field({ name: "Down", id: 0x3, conformance: "M", description: "Move in a downwards direction" })
1358
+ ),
1359
+
1360
+ Datatype(
1361
+ { name: "StepModeEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.9" } },
1362
+ Field({ name: "Up", id: 0x1, conformance: "M", description: "Step in an upwards direction" }),
1363
+ Field({ name: "Down", id: 0x3, conformance: "M", description: "Step in a downwards direction" })
1364
+ ),
1365
+
1366
+ Datatype(
1367
+ { name: "ColorLoopActionEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.10" } },
1368
+ Field({ name: "Deactivate", id: 0x0, conformance: "M", description: "De-activate the color loop." }),
1369
+ Field({
1370
+ name: "ActivateFromColorLoopStartEnhancedHue", id: 0x1, conformance: "M",
1371
+ description: "Activate the color loop from the value in the ColorLoopStartEnhancedHue field."
1372
+ }),
1373
+ Field({
1374
+ name: "ActivateFromEnhancedCurrentHue", id: 0x2, conformance: "M",
1375
+ description: "Activate the color loop from the value of the EnhancedCurrentHue attribute."
1376
+ })
1269
1377
  ),
1270
1378
 
1271
1379
  Datatype(
1272
- { name: "Direction", type: "enum8", xref: { document: "cluster", section: "3.2.11.4.2" } },
1273
- Field({ name: "ShortestDistance", id: 0x0 }),
1274
- Field({ name: "LongestDistance", id: 0x1 }),
1275
- Field({ name: "Up", id: 0x2 }),
1276
- Field({ name: "Down", id: 0x3 })
1380
+ { name: "ColorLoopDirectionEnum", type: "enum8", xref: { document: "cluster", section: "3.2.6.11" } },
1381
+ Field({ name: "Decrement", id: 0x0, conformance: "M", description: "Decrement the hue in the color loop." }),
1382
+ Field({ name: "Increment", id: 0x1, conformance: "M", description: "Increment the hue in the color loop." })
1277
1383
  )
1278
1384
  );
1279
1385