@matter/model 0.13.0-alpha.0-20250318-c1aa38b08 → 0.13.0-alpha.0-20250322-f085fa576

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 (402) hide show
  1. package/dist/cjs/aspects/Quality.d.ts +45 -5
  2. package/dist/cjs/aspects/Quality.d.ts.map +1 -1
  3. package/dist/cjs/aspects/Quality.js.map +1 -1
  4. package/dist/cjs/elements/BaseElement.d.ts +14 -5
  5. package/dist/cjs/elements/BaseElement.d.ts.map +1 -1
  6. package/dist/cjs/elements/BaseElement.js.map +1 -1
  7. package/dist/cjs/elements/ValueElement.d.ts +1 -1
  8. package/dist/cjs/logic/DefaultValue.js +1 -1
  9. package/dist/cjs/logic/ModelVariantTraversal.d.ts.map +1 -1
  10. package/dist/cjs/logic/ModelVariantTraversal.js +18 -8
  11. package/dist/cjs/logic/ModelVariantTraversal.js.map +1 -1
  12. package/dist/cjs/logic/Scope.d.ts.map +1 -1
  13. package/dist/cjs/logic/Scope.js +7 -3
  14. package/dist/cjs/logic/Scope.js.map +1 -1
  15. package/dist/cjs/models/AttributeModel.d.ts +1 -0
  16. package/dist/cjs/models/AttributeModel.d.ts.map +1 -1
  17. package/dist/cjs/models/CommandModel.d.ts +1 -0
  18. package/dist/cjs/models/CommandModel.d.ts.map +1 -1
  19. package/dist/cjs/models/EventModel.d.ts +1 -0
  20. package/dist/cjs/models/EventModel.d.ts.map +1 -1
  21. package/dist/cjs/models/Model.d.ts +4 -0
  22. package/dist/cjs/models/Model.d.ts.map +1 -1
  23. package/dist/cjs/models/Model.js +1 -0
  24. package/dist/cjs/models/Model.js.map +1 -1
  25. package/dist/cjs/standard/elements/AccessControl.d.ts.map +1 -1
  26. package/dist/cjs/standard/elements/AccessControl.js +1 -1
  27. package/dist/cjs/standard/elements/AccessControl.js.map +1 -1
  28. package/dist/cjs/standard/elements/Actions.js +1 -1
  29. package/dist/cjs/standard/elements/AlarmBase.js +4 -4
  30. package/dist/cjs/standard/elements/ApplicationLauncher.d.ts.map +1 -1
  31. package/dist/cjs/standard/elements/ApplicationLauncher.js.map +1 -1
  32. package/dist/cjs/standard/elements/BatteryStorageDT.d.ts.map +1 -1
  33. package/dist/cjs/standard/elements/BatteryStorageDT.js.map +1 -1
  34. package/dist/cjs/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
  35. package/dist/cjs/standard/elements/ColorControl.d.ts.map +1 -1
  36. package/dist/cjs/standard/elements/ColorControl.js +0 -4
  37. package/dist/cjs/standard/elements/ColorControl.js.map +1 -1
  38. package/dist/cjs/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
  39. package/dist/cjs/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
  40. package/dist/cjs/standard/elements/ContentAppObserver.js +1 -1
  41. package/dist/cjs/standard/elements/ContentLauncher.d.ts.map +1 -1
  42. package/dist/cjs/standard/elements/ContentLauncher.js.map +1 -1
  43. package/dist/cjs/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
  44. package/dist/cjs/standard/elements/DeviceEnergyManagement.js +1 -1
  45. package/dist/cjs/standard/elements/DeviceEnergyManagement.js.map +1 -1
  46. package/dist/cjs/standard/elements/DimmableLightDT.d.ts.map +1 -1
  47. package/dist/cjs/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
  48. package/dist/cjs/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
  49. package/dist/cjs/standard/elements/DoorLock.d.ts.map +1 -1
  50. package/dist/cjs/standard/elements/DoorLock.js +29 -14
  51. package/dist/cjs/standard/elements/DoorLock.js.map +1 -1
  52. package/dist/cjs/standard/elements/EnergyEvse.d.ts.map +1 -1
  53. package/dist/cjs/standard/elements/EnergyEvse.js +1 -1
  54. package/dist/cjs/standard/elements/EnergyEvse.js.map +1 -1
  55. package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
  56. package/dist/cjs/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
  57. package/dist/cjs/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
  58. package/dist/cjs/standard/elements/FixedLabel.d.ts.map +1 -1
  59. package/dist/cjs/standard/elements/FixedLabel.js +1 -1
  60. package/dist/cjs/standard/elements/FixedLabel.js.map +1 -1
  61. package/dist/cjs/standard/elements/GeneralCommissioning.d.ts.map +1 -1
  62. package/dist/cjs/standard/elements/GeneralCommissioning.js +7 -7
  63. package/dist/cjs/standard/elements/GeneralCommissioning.js.map +1 -1
  64. package/dist/cjs/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
  65. package/dist/cjs/standard/elements/GeneralDiagnostics.js.map +1 -1
  66. package/dist/cjs/standard/elements/GroupKeyManagement.d.ts.map +1 -1
  67. package/dist/cjs/standard/elements/GroupKeyManagement.js +2 -3
  68. package/dist/cjs/standard/elements/GroupKeyManagement.js.map +1 -1
  69. package/dist/cjs/standard/elements/Groups.d.ts.map +1 -1
  70. package/dist/cjs/standard/elements/Groups.js.map +1 -1
  71. package/dist/cjs/standard/elements/LevelControl.d.ts.map +1 -1
  72. package/dist/cjs/standard/elements/LevelControl.js.map +1 -1
  73. package/dist/cjs/standard/elements/MediaPlayback.d.ts.map +1 -1
  74. package/dist/cjs/standard/elements/MediaPlayback.js +1 -1
  75. package/dist/cjs/standard/elements/MediaPlayback.js.map +1 -1
  76. package/dist/cjs/standard/elements/ModeBase.js +1 -1
  77. package/dist/cjs/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
  78. package/dist/cjs/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
  79. package/dist/cjs/standard/elements/NetworkCommissioning.d.ts.map +1 -1
  80. package/dist/cjs/standard/elements/NetworkCommissioning.js +2 -2
  81. package/dist/cjs/standard/elements/NetworkCommissioning.js.map +1 -1
  82. package/dist/cjs/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
  83. package/dist/cjs/standard/elements/OnOff.js +1 -1
  84. package/dist/cjs/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
  85. package/dist/cjs/standard/elements/OperationalCredentials.d.ts.map +1 -1
  86. package/dist/cjs/standard/elements/OperationalCredentials.js +3 -3
  87. package/dist/cjs/standard/elements/OperationalCredentials.js.map +1 -1
  88. package/dist/cjs/standard/elements/OperationalState.js +1 -1
  89. package/dist/cjs/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
  90. package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
  91. package/dist/cjs/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
  92. package/dist/cjs/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
  93. package/dist/cjs/standard/elements/PowerSource.d.ts.map +1 -1
  94. package/dist/cjs/standard/elements/PowerSource.js.map +1 -1
  95. package/dist/cjs/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
  96. package/dist/cjs/standard/elements/PumpConfigurationAndControl.js.map +1 -1
  97. package/dist/cjs/standard/elements/PumpDT.d.ts.map +1 -1
  98. package/dist/cjs/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
  99. package/dist/cjs/standard/elements/ScenesManagement.js +3 -3
  100. package/dist/cjs/standard/elements/ScenesManagement.js.map +1 -1
  101. package/dist/cjs/standard/elements/ServiceArea.js +4 -3
  102. package/dist/cjs/standard/elements/ServiceArea.js.map +1 -1
  103. package/dist/cjs/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
  104. package/dist/cjs/standard/elements/SmokeCoAlarm.js.map +1 -1
  105. package/dist/cjs/standard/elements/Switch.js +2 -2
  106. package/dist/cjs/standard/elements/Thermostat.d.ts.map +1 -1
  107. package/dist/cjs/standard/elements/Thermostat.js +13 -8
  108. package/dist/cjs/standard/elements/Thermostat.js.map +1 -1
  109. package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
  110. package/dist/cjs/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
  111. package/dist/cjs/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
  112. package/dist/cjs/standard/elements/TimeFormatLocalization.js.map +1 -1
  113. package/dist/cjs/standard/elements/TimeSynchronization.d.ts.map +1 -1
  114. package/dist/cjs/standard/elements/TimeSynchronization.js.map +1 -1
  115. package/dist/cjs/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
  116. package/dist/cjs/standard/elements/ValveConfigurationAndControl.js.map +1 -1
  117. package/dist/cjs/standard/elements/WaterValveDT.d.ts.map +1 -1
  118. package/dist/cjs/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
  119. package/dist/cjs/standard/elements/WiFiNetworkManagement.js +12 -8
  120. package/dist/cjs/standard/elements/WiFiNetworkManagement.js.map +2 -2
  121. package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js +1 -1
  122. package/dist/cjs/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
  123. package/dist/cjs/standard/elements/enum16.d.ts.map +1 -1
  124. package/dist/cjs/standard/elements/enum8.d.ts.map +1 -1
  125. package/dist/cjs/standard/elements/epoch-us.js +1 -1
  126. package/dist/cjs/standard/elements/ipv6pre.js +1 -1
  127. package/dist/cjs/standard/elements/namespace.d.ts.map +1 -1
  128. package/dist/cjs/standard/elements/struct.js +1 -1
  129. package/dist/esm/aspects/Quality.d.ts +45 -5
  130. package/dist/esm/aspects/Quality.d.ts.map +1 -1
  131. package/dist/esm/aspects/Quality.js.map +1 -1
  132. package/dist/esm/elements/BaseElement.d.ts +14 -5
  133. package/dist/esm/elements/BaseElement.d.ts.map +1 -1
  134. package/dist/esm/elements/BaseElement.js.map +1 -1
  135. package/dist/esm/elements/ValueElement.d.ts +1 -1
  136. package/dist/esm/logic/DefaultValue.js +1 -1
  137. package/dist/esm/logic/ModelVariantTraversal.d.ts.map +1 -1
  138. package/dist/esm/logic/ModelVariantTraversal.js +18 -8
  139. package/dist/esm/logic/ModelVariantTraversal.js.map +1 -1
  140. package/dist/esm/logic/Scope.d.ts.map +1 -1
  141. package/dist/esm/logic/Scope.js +7 -3
  142. package/dist/esm/logic/Scope.js.map +1 -1
  143. package/dist/esm/models/AttributeModel.d.ts +1 -0
  144. package/dist/esm/models/AttributeModel.d.ts.map +1 -1
  145. package/dist/esm/models/CommandModel.d.ts +1 -0
  146. package/dist/esm/models/CommandModel.d.ts.map +1 -1
  147. package/dist/esm/models/EventModel.d.ts +1 -0
  148. package/dist/esm/models/EventModel.d.ts.map +1 -1
  149. package/dist/esm/models/Model.d.ts +4 -0
  150. package/dist/esm/models/Model.d.ts.map +1 -1
  151. package/dist/esm/models/Model.js +1 -0
  152. package/dist/esm/models/Model.js.map +1 -1
  153. package/dist/esm/standard/elements/AccessControl.d.ts.map +1 -1
  154. package/dist/esm/standard/elements/AccessControl.js +1 -1
  155. package/dist/esm/standard/elements/AccessControl.js.map +1 -1
  156. package/dist/esm/standard/elements/Actions.js +1 -1
  157. package/dist/esm/standard/elements/AlarmBase.js +4 -4
  158. package/dist/esm/standard/elements/ApplicationLauncher.d.ts.map +1 -1
  159. package/dist/esm/standard/elements/ApplicationLauncher.js.map +1 -1
  160. package/dist/esm/standard/elements/BatteryStorageDT.d.ts.map +1 -1
  161. package/dist/esm/standard/elements/BatteryStorageDT.js.map +1 -1
  162. package/dist/esm/standard/elements/BridgedDeviceBasicInformation.d.ts.map +1 -1
  163. package/dist/esm/standard/elements/ColorControl.d.ts.map +1 -1
  164. package/dist/esm/standard/elements/ColorControl.js +0 -4
  165. package/dist/esm/standard/elements/ColorControl.js.map +1 -1
  166. package/dist/esm/standard/elements/ColorDimmerSwitchDT.d.ts.map +1 -1
  167. package/dist/esm/standard/elements/ColorTemperatureLightDT.d.ts.map +1 -1
  168. package/dist/esm/standard/elements/ContentAppObserver.js +1 -1
  169. package/dist/esm/standard/elements/ContentLauncher.d.ts.map +1 -1
  170. package/dist/esm/standard/elements/ContentLauncher.js.map +1 -1
  171. package/dist/esm/standard/elements/DeviceEnergyManagement.d.ts.map +1 -1
  172. package/dist/esm/standard/elements/DeviceEnergyManagement.js +1 -1
  173. package/dist/esm/standard/elements/DeviceEnergyManagement.js.map +1 -1
  174. package/dist/esm/standard/elements/DimmableLightDT.d.ts.map +1 -1
  175. package/dist/esm/standard/elements/DimmablePlugInUnitDT.d.ts.map +1 -1
  176. package/dist/esm/standard/elements/DimmerSwitchDT.d.ts.map +1 -1
  177. package/dist/esm/standard/elements/DoorLock.d.ts.map +1 -1
  178. package/dist/esm/standard/elements/DoorLock.js +29 -14
  179. package/dist/esm/standard/elements/DoorLock.js.map +1 -1
  180. package/dist/esm/standard/elements/EnergyEvse.d.ts.map +1 -1
  181. package/dist/esm/standard/elements/EnergyEvse.js +1 -1
  182. package/dist/esm/standard/elements/EnergyEvse.js.map +1 -1
  183. package/dist/esm/standard/elements/EthernetNetworkDiagnostics.d.ts.map +1 -1
  184. package/dist/esm/standard/elements/EthernetNetworkDiagnostics.js.map +1 -1
  185. package/dist/esm/standard/elements/ExtendedColorLightDT.d.ts.map +1 -1
  186. package/dist/esm/standard/elements/FixedLabel.d.ts.map +1 -1
  187. package/dist/esm/standard/elements/FixedLabel.js +1 -1
  188. package/dist/esm/standard/elements/FixedLabel.js.map +1 -1
  189. package/dist/esm/standard/elements/GeneralCommissioning.d.ts.map +1 -1
  190. package/dist/esm/standard/elements/GeneralCommissioning.js +7 -7
  191. package/dist/esm/standard/elements/GeneralCommissioning.js.map +1 -1
  192. package/dist/esm/standard/elements/GeneralDiagnostics.d.ts.map +1 -1
  193. package/dist/esm/standard/elements/GeneralDiagnostics.js.map +1 -1
  194. package/dist/esm/standard/elements/GroupKeyManagement.d.ts.map +1 -1
  195. package/dist/esm/standard/elements/GroupKeyManagement.js +2 -3
  196. package/dist/esm/standard/elements/GroupKeyManagement.js.map +1 -1
  197. package/dist/esm/standard/elements/Groups.d.ts.map +1 -1
  198. package/dist/esm/standard/elements/Groups.js.map +1 -1
  199. package/dist/esm/standard/elements/LevelControl.d.ts.map +1 -1
  200. package/dist/esm/standard/elements/LevelControl.js.map +1 -1
  201. package/dist/esm/standard/elements/MediaPlayback.d.ts.map +1 -1
  202. package/dist/esm/standard/elements/MediaPlayback.js +1 -1
  203. package/dist/esm/standard/elements/MediaPlayback.js.map +1 -1
  204. package/dist/esm/standard/elements/ModeBase.js +1 -1
  205. package/dist/esm/standard/elements/MountedDimmableLoadControlDT.d.ts.map +1 -1
  206. package/dist/esm/standard/elements/MountedOnOffControlDT.d.ts.map +1 -1
  207. package/dist/esm/standard/elements/NetworkCommissioning.d.ts.map +1 -1
  208. package/dist/esm/standard/elements/NetworkCommissioning.js +2 -2
  209. package/dist/esm/standard/elements/NetworkCommissioning.js.map +1 -1
  210. package/dist/esm/standard/elements/NetworkInfrastructureManagerDT.d.ts.map +1 -1
  211. package/dist/esm/standard/elements/OnOff.js +1 -1
  212. package/dist/esm/standard/elements/OnOffPlugInUnitDT.d.ts.map +1 -1
  213. package/dist/esm/standard/elements/OperationalCredentials.d.ts.map +1 -1
  214. package/dist/esm/standard/elements/OperationalCredentials.js +3 -3
  215. package/dist/esm/standard/elements/OperationalCredentials.js.map +1 -1
  216. package/dist/esm/standard/elements/OperationalState.js +1 -1
  217. package/dist/esm/standard/elements/OtaSoftwareUpdateProvider.js +6 -6
  218. package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.d.ts.map +1 -1
  219. package/dist/esm/standard/elements/OtaSoftwareUpdateRequestor.js.map +1 -1
  220. package/dist/esm/standard/elements/OvenCavityOperationalState.d.ts.map +1 -1
  221. package/dist/esm/standard/elements/PowerSource.d.ts.map +1 -1
  222. package/dist/esm/standard/elements/PowerSource.js.map +1 -1
  223. package/dist/esm/standard/elements/PumpConfigurationAndControl.d.ts.map +1 -1
  224. package/dist/esm/standard/elements/PumpConfigurationAndControl.js.map +1 -1
  225. package/dist/esm/standard/elements/PumpDT.d.ts.map +1 -1
  226. package/dist/esm/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.d.ts.map +1 -1
  227. package/dist/esm/standard/elements/ScenesManagement.js +3 -3
  228. package/dist/esm/standard/elements/ScenesManagement.js.map +1 -1
  229. package/dist/esm/standard/elements/ServiceArea.js +4 -3
  230. package/dist/esm/standard/elements/ServiceArea.js.map +1 -1
  231. package/dist/esm/standard/elements/SmokeCoAlarm.d.ts.map +1 -1
  232. package/dist/esm/standard/elements/SmokeCoAlarm.js.map +1 -1
  233. package/dist/esm/standard/elements/Switch.js +2 -2
  234. package/dist/esm/standard/elements/Thermostat.d.ts.map +1 -1
  235. package/dist/esm/standard/elements/Thermostat.js +13 -8
  236. package/dist/esm/standard/elements/Thermostat.js.map +1 -1
  237. package/dist/esm/standard/elements/ThreadNetworkDiagnostics.d.ts.map +1 -1
  238. package/dist/esm/standard/elements/ThreadNetworkDiagnostics.js.map +1 -1
  239. package/dist/esm/standard/elements/TimeFormatLocalization.d.ts.map +1 -1
  240. package/dist/esm/standard/elements/TimeFormatLocalization.js.map +1 -1
  241. package/dist/esm/standard/elements/TimeSynchronization.d.ts.map +1 -1
  242. package/dist/esm/standard/elements/TimeSynchronization.js.map +1 -1
  243. package/dist/esm/standard/elements/ValveConfigurationAndControl.d.ts.map +1 -1
  244. package/dist/esm/standard/elements/ValveConfigurationAndControl.js.map +1 -1
  245. package/dist/esm/standard/elements/WaterValveDT.d.ts.map +1 -1
  246. package/dist/esm/standard/elements/WiFiNetworkManagement.d.ts.map +1 -1
  247. package/dist/esm/standard/elements/WiFiNetworkManagement.js +14 -9
  248. package/dist/esm/standard/elements/WiFiNetworkManagement.js.map +1 -1
  249. package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js +1 -1
  250. package/dist/esm/standard/elements/WildcardPathFlagsBitmap.js.map +1 -1
  251. package/dist/esm/standard/elements/enum16.d.ts.map +1 -1
  252. package/dist/esm/standard/elements/enum8.d.ts.map +1 -1
  253. package/dist/esm/standard/elements/epoch-us.js +1 -1
  254. package/dist/esm/standard/elements/ipv6pre.js +1 -1
  255. package/dist/esm/standard/elements/namespace.d.ts.map +1 -1
  256. package/dist/esm/standard/elements/struct.js +1 -1
  257. package/package.json +4 -4
  258. package/src/aspects/Quality.ts +56 -5
  259. package/src/elements/BaseElement.ts +16 -5
  260. package/src/elements/ValueElement.ts +1 -1
  261. package/src/logic/DefaultValue.ts +1 -1
  262. package/src/logic/ModelVariantTraversal.ts +22 -8
  263. package/src/logic/Scope.ts +7 -3
  264. package/src/models/Model.ts +4 -0
  265. package/src/standard/elements/AcceptedCommandList.ts +2 -2
  266. package/src/standard/elements/AccessControl.ts +71 -73
  267. package/src/standard/elements/AccountLogin.ts +11 -11
  268. package/src/standard/elements/Actions.ts +36 -36
  269. package/src/standard/elements/AdministratorCommissioning.ts +21 -21
  270. package/src/standard/elements/AggregatorDT.ts +2 -2
  271. package/src/standard/elements/AlarmBase.ts +18 -18
  272. package/src/standard/elements/ApplicationBasic.ts +7 -7
  273. package/src/standard/elements/ApplicationLauncher.ts +6 -7
  274. package/src/standard/elements/AudioOutput.ts +4 -4
  275. package/src/standard/elements/BallastConfiguration.ts +6 -6
  276. package/src/standard/elements/BasicInformation.ts +43 -43
  277. package/src/standard/elements/BasicVideoPlayerDT.ts +3 -3
  278. package/src/standard/elements/BatteryStorageDT.ts +2 -5
  279. package/src/standard/elements/Binding.ts +3 -3
  280. package/src/standard/elements/BooleanStateConfiguration.ts +4 -4
  281. package/src/standard/elements/BridgedDeviceBasicInformation.ts +22 -22
  282. package/src/standard/elements/CastingVideoClientDT.ts +2 -2
  283. package/src/standard/elements/Channel.ts +32 -32
  284. package/src/standard/elements/ColorControl.ts +54 -55
  285. package/src/standard/elements/ColorDimmerSwitchDT.ts +1 -1
  286. package/src/standard/elements/ColorTemperatureLightDT.ts +1 -1
  287. package/src/standard/elements/CommissionerControl.ts +15 -15
  288. package/src/standard/elements/ContentAppObserver.ts +7 -7
  289. package/src/standard/elements/ContentControl.ts +39 -39
  290. package/src/standard/elements/ContentLauncher.ts +38 -40
  291. package/src/standard/elements/DeviceEnergyManagement.ts +108 -111
  292. package/src/standard/elements/DeviceEnergyManagementMode.ts +4 -4
  293. package/src/standard/elements/DiagnosticLogs.ts +24 -24
  294. package/src/standard/elements/DimmableLightDT.ts +1 -1
  295. package/src/standard/elements/DimmablePlugInUnitDT.ts +4 -4
  296. package/src/standard/elements/DimmerSwitchDT.ts +3 -3
  297. package/src/standard/elements/DishwasherMode.ts +2 -2
  298. package/src/standard/elements/DoorLock.ts +164 -154
  299. package/src/standard/elements/DoorLockDT.ts +2 -2
  300. package/src/standard/elements/EcosystemInformation.ts +24 -24
  301. package/src/standard/elements/ElectricalEnergyMeasurement.ts +18 -18
  302. package/src/standard/elements/ElectricalMeasurementNS.ts +2 -2
  303. package/src/standard/elements/ElectricalPowerMeasurement.ts +18 -18
  304. package/src/standard/elements/EnergyEvse.ts +58 -64
  305. package/src/standard/elements/EnergyEvseMode.ts +8 -8
  306. package/src/standard/elements/EthernetNetworkDiagnostics.ts +14 -15
  307. package/src/standard/elements/ExtendedColorLightDT.ts +3 -3
  308. package/src/standard/elements/ExtractorHoodDT.ts +2 -2
  309. package/src/standard/elements/FanControl.ts +14 -14
  310. package/src/standard/elements/FanDT.ts +2 -2
  311. package/src/standard/elements/FeatureMap.ts +5 -5
  312. package/src/standard/elements/FixedLabel.ts +4 -5
  313. package/src/standard/elements/GeneralCommissioning.ts +79 -80
  314. package/src/standard/elements/GeneralDiagnostics.ts +17 -18
  315. package/src/standard/elements/GeneratedCommandList.ts +2 -2
  316. package/src/standard/elements/GroupKeyManagement.ts +29 -30
  317. package/src/standard/elements/Groups.ts +13 -14
  318. package/src/standard/elements/IcdManagement.ts +32 -32
  319. package/src/standard/elements/Identify.ts +7 -7
  320. package/src/standard/elements/JointFabricDatastoreCluster.ts +12 -12
  321. package/src/standard/elements/KeypadInput.ts +9 -9
  322. package/src/standard/elements/LaundryWasherControls.ts +2 -2
  323. package/src/standard/elements/LaundryWasherMode.ts +2 -2
  324. package/src/standard/elements/LevelControl.ts +23 -24
  325. package/src/standard/elements/LightSensorDT.ts +2 -2
  326. package/src/standard/elements/LocalizationConfiguration.ts +2 -2
  327. package/src/standard/elements/MeasurementAccuracyRangeStruct.ts +10 -10
  328. package/src/standard/elements/MeasurementAccuracyStruct.ts +4 -4
  329. package/src/standard/elements/MediaPlayback.ts +42 -44
  330. package/src/standard/elements/Messages.ts +18 -18
  331. package/src/standard/elements/MicrowaveOvenControl.ts +16 -16
  332. package/src/standard/elements/ModeBase.ts +21 -21
  333. package/src/standard/elements/ModeSelect.ts +12 -12
  334. package/src/standard/elements/MountedDimmableLoadControlDT.ts +4 -4
  335. package/src/standard/elements/MountedOnOffControlDT.ts +1 -1
  336. package/src/standard/elements/NetworkCommissioning.ts +68 -69
  337. package/src/standard/elements/NetworkInfrastructureManagerDT.ts +1 -1
  338. package/src/standard/elements/OccupancySensing.ts +23 -23
  339. package/src/standard/elements/OnOff.ts +17 -17
  340. package/src/standard/elements/OnOffPlugInUnitDT.ts +1 -1
  341. package/src/standard/elements/OnOffSensorDT.ts +2 -2
  342. package/src/standard/elements/OperationalCredentials.ts +86 -88
  343. package/src/standard/elements/OperationalState.ts +31 -31
  344. package/src/standard/elements/OtaSoftwareUpdateProvider.ts +48 -48
  345. package/src/standard/elements/OtaSoftwareUpdateRequestor.ts +31 -32
  346. package/src/standard/elements/OvenCavityOperationalState.ts +1 -1
  347. package/src/standard/elements/OvenMode.ts +2 -2
  348. package/src/standard/elements/PositionNS.ts +2 -2
  349. package/src/standard/elements/PowerSource.ts +37 -38
  350. package/src/standard/elements/PowerSourceConfiguration.ts +4 -4
  351. package/src/standard/elements/PowerSourceNS.ts +2 -2
  352. package/src/standard/elements/ProxyConfiguration.ts +2 -2
  353. package/src/standard/elements/ProxyDiscovery.ts +5 -5
  354. package/src/standard/elements/PumpConfigurationAndControl.ts +27 -28
  355. package/src/standard/elements/PumpDT.ts +1 -1
  356. package/src/standard/elements/RefrigeratorAlarm.ts +2 -2
  357. package/src/standard/elements/RefrigeratorAndTemperatureControlledCabinetMode.ts +1 -1
  358. package/src/standard/elements/RefrigeratorNS.ts +2 -2
  359. package/src/standard/elements/RelativePositionNS.ts +4 -4
  360. package/src/standard/elements/ResourceMonitoring.ts +4 -4
  361. package/src/standard/elements/RoomAirConditionerDT.ts +2 -2
  362. package/src/standard/elements/RootNodeDT.ts +3 -3
  363. package/src/standard/elements/RvcOperationalState.ts +4 -4
  364. package/src/standard/elements/RvcRunMode.ts +6 -6
  365. package/src/standard/elements/ScenesManagement.ts +34 -34
  366. package/src/standard/elements/SecondaryNetworkInterfaceDT.ts +2 -2
  367. package/src/standard/elements/ServiceArea.ts +69 -69
  368. package/src/standard/elements/SmokeCoAlarm.ts +19 -20
  369. package/src/standard/elements/SmokeCoAlarmDT.ts +2 -2
  370. package/src/standard/elements/SoftwareDiagnostics.ts +13 -13
  371. package/src/standard/elements/SpeakerDT.ts +2 -2
  372. package/src/standard/elements/Switch.ts +21 -21
  373. package/src/standard/elements/TemperatureControl.ts +5 -5
  374. package/src/standard/elements/TemperatureMeasurement.ts +2 -2
  375. package/src/standard/elements/Thermostat.ts +124 -120
  376. package/src/standard/elements/ThermostatUserInterfaceConfiguration.ts +6 -6
  377. package/src/standard/elements/ThreadBorderRouterManagement.ts +10 -10
  378. package/src/standard/elements/ThreadNetworkDiagnostics.ts +50 -51
  379. package/src/standard/elements/ThreadNetworkDirectory.ts +11 -11
  380. package/src/standard/elements/TimeFormatLocalization.ts +6 -7
  381. package/src/standard/elements/TimeSynchronization.ts +27 -28
  382. package/src/standard/elements/UnitLocalization.ts +2 -2
  383. package/src/standard/elements/ValveConfigurationAndControl.ts +9 -10
  384. package/src/standard/elements/WakeOnLan.ts +11 -11
  385. package/src/standard/elements/WaterHeaterManagement.ts +17 -17
  386. package/src/standard/elements/WaterHeaterMode.ts +4 -4
  387. package/src/standard/elements/WaterValveDT.ts +1 -1
  388. package/src/standard/elements/WiFiNetworkDiagnostics.ts +13 -13
  389. package/src/standard/elements/WiFiNetworkManagement.ts +21 -16
  390. package/src/standard/elements/WildcardPathFlagsBitmap.ts +1 -1
  391. package/src/standard/elements/WindowCovering.ts +19 -19
  392. package/src/standard/elements/attrib-id.ts +2 -2
  393. package/src/standard/elements/enum16.ts +1 -1
  394. package/src/standard/elements/enum8.ts +1 -1
  395. package/src/standard/elements/epoch-us.ts +9 -9
  396. package/src/standard/elements/hwadr.ts +2 -2
  397. package/src/standard/elements/ipv6pre.ts +3 -3
  398. package/src/standard/elements/locationdesc.ts +10 -10
  399. package/src/standard/elements/namespace.ts +1 -1
  400. package/src/standard/elements/semtag.ts +5 -5
  401. package/src/standard/elements/string.ts +2 -2
  402. package/src/standard/elements/struct.ts +9 -9
@@ -178,9 +178,8 @@ export const Thermostat = Cluster(
178
178
  Attribute({
179
179
  name: "PiCoolingDemand", id: 0x7, type: "uint8", access: "R V", conformance: "[COOL]",
180
180
  constraint: "0% to 100%", quality: "P",
181
- details: "Indicates the level of cooling demanded by the PI (proportional integral) control loop in use by " +
182
- "the thermostat (if any), in percent. This value is 0 when the thermostat is in “off” or “heating” " +
183
- "mode." +
181
+ details: "Indicates the level of cooling demanded by the PI (proportional integral) control loop in use by the " +
182
+ "thermostat (if any), in percent. This value is 0 when the thermostat is in “off” or “heating” mode." +
184
183
  "\n" +
185
184
  "This attribute is reported regularly and may be used to control a cooling device.",
186
185
  xref: { document: "cluster", section: "4.3.9.9" }
@@ -202,8 +201,8 @@ export const Thermostat = Cluster(
202
201
  details: "Indicates the HVAC system type controlled by the thermostat. If the thermostat uses physical DIP " +
203
202
  "switches to set these parameters, this information shall be available read-only" +
204
203
  "\n" +
205
- "from the DIP switches. If these parameters are set via software, there shall be read/write access " +
206
- "in order to provide remote programming capability.",
204
+ "from the DIP switches. If these parameters are set via software, there shall be read/write access in " +
205
+ "order to provide remote programming capability.",
207
206
  xref: { document: "cluster", section: "4.3.9.11" }
208
207
  }),
209
208
 
@@ -340,10 +339,10 @@ export const Thermostat = Cluster(
340
339
  "such setpoint limits can help conserve power." +
341
340
  "\n" +
342
341
  "Refer to Setpoint Limits for constraints. If an attempt is made to set this attribute to a value " +
343
- "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount " +
344
- "to permit this attribute to be set to the desired value. If an attempt is made to set this " +
345
- "attribute to a value which is not consistent with the constraints and cannot be resolved by " +
346
- "modifying setpoints then a response with the status code CONSTRAINT_ERROR shall be returned.",
342
+ "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount to " +
343
+ "permit this attribute to be set to the desired value. If an attempt is made to set this attribute to " +
344
+ "a value which is not consistent with the constraints and cannot be resolved by modifying setpoints " +
345
+ "then a response with the status code CONSTRAINT_ERROR shall be returned.",
347
346
 
348
347
  xref: { document: "cluster", section: "4.3.9.17" }
349
348
  }),
@@ -355,10 +354,10 @@ export const Thermostat = Cluster(
355
354
  details: "Indicates the maximum level that the heating setpoint may be set to." +
356
355
  "\n" +
357
356
  "Refer to Setpoint Limits for constraints. If an attempt is made to set this attribute to a value " +
358
- "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount " +
359
- "to permit this attribute to be set to the desired value. If an attempt is made to set this " +
360
- "attribute to a value which is not consistent with the constraints and cannot be resolved by " +
361
- "modifying setpoints then a response with the status code CONSTRAINT_ERROR shall be returned.",
357
+ "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount to " +
358
+ "permit this attribute to be set to the desired value. If an attempt is made to set this attribute to " +
359
+ "a value which is not consistent with the constraints and cannot be resolved by modifying setpoints " +
360
+ "then a response with the status code CONSTRAINT_ERROR shall be returned.",
362
361
 
363
362
  xref: { document: "cluster", section: "4.3.9.18" }
364
363
  }),
@@ -370,10 +369,10 @@ export const Thermostat = Cluster(
370
369
  details: "Indicates the minimum level that the cooling setpoint may be set to." +
371
370
  "\n" +
372
371
  "Refer to Setpoint Limits for constraints. If an attempt is made to set this attribute to a value " +
373
- "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount " +
374
- "to permit this attribute to be set to the desired value. If an attempt is made to set this " +
375
- "attribute to a value which is not consistent with the constraints and cannot be resolved by " +
376
- "modifying setpoints then a response with the status code CONSTRAINT_ERROR shall be returned.",
372
+ "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount to " +
373
+ "permit this attribute to be set to the desired value. If an attempt is made to set this attribute to " +
374
+ "a value which is not consistent with the constraints and cannot be resolved by modifying setpoints " +
375
+ "then a response with the status code CONSTRAINT_ERROR shall be returned.",
377
376
 
378
377
  xref: { document: "cluster", section: "4.3.9.19" }
379
378
  }),
@@ -385,10 +384,10 @@ export const Thermostat = Cluster(
385
384
  details: "Indicates the maximum level that the cooling setpoint may be set to." +
386
385
  "\n" +
387
386
  "Refer to Setpoint Limits for constraints. If an attempt is made to set this attribute to a value " +
388
- "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount " +
389
- "to permit this attribute to be set to the desired value. If an attempt is made to set this " +
390
- "attribute to a value which is not consistent with the constraints and cannot be resolved by " +
391
- "modifying setpoints then a response with the status code CONSTRAINT_ERROR shall be returned.",
387
+ "which conflicts with setpoint values then those setpoints shall be adjusted by the minimum amount to " +
388
+ "permit this attribute to be set to the desired value. If an attempt is made to set this attribute to " +
389
+ "a value which is not consistent with the constraints and cannot be resolved by modifying setpoints " +
390
+ "then a response with the status code CONSTRAINT_ERROR shall be returned.",
392
391
 
393
392
  xref: { document: "cluster", section: "4.3.9.20" }
394
393
  }),
@@ -439,8 +438,8 @@ export const Thermostat = Cluster(
439
438
  details: "Indicates the overall operating environment of the thermostat, and thus the possible system modes " +
440
439
  "that the thermostat can operate in." +
441
440
  "\n" +
442
- "If an attempt is made to write to this attribute, the server shall silently ignore the write and " +
443
- "the value of this attribute shall remain unchanged. This behavior is in place for backwards " +
441
+ "If an attempt is made to write to this attribute, the server shall silently ignore the write and the " +
442
+ "value of this attribute shall remain unchanged. This behavior is in place for backwards " +
444
443
  "compatibility with existing thermostats.",
445
444
 
446
445
  xref: { document: "cluster", section: "4.3.9.23" }
@@ -458,8 +457,8 @@ export const Thermostat = Cluster(
458
457
  name: "ThermostatRunningMode", id: 0x1e, type: "ThermostatRunningModeEnum", access: "R V",
459
458
  conformance: "[AUTO]", constraint: "desc", default: 0,
460
459
  details: "Indicates the running mode of the thermostat. This attribute uses the same values as SystemModeEnum " +
461
- "but can only be Off, Cool or Heat. This attribute is intended to provide additional information " +
462
- "when the thermostat’s system mode is in auto mode.",
460
+ "but can only be Off, Cool or Heat. This attribute is intended to provide additional information when " +
461
+ "the thermostat’s system mode is in auto mode.",
463
462
  xref: { document: "cluster", section: "4.3.9.26" }
464
463
  }),
465
464
 
@@ -495,11 +494,11 @@ export const Thermostat = Cluster(
495
494
  name: "TemperatureSetpointHold", id: 0x23, type: "TemperatureSetpointHoldEnum", access: "RW VM",
496
495
  conformance: "O", constraint: "desc", default: 0, quality: "N",
497
496
 
498
- details: "Indicates the temperature hold status on the thermostat. If hold status is on, the thermostat " +
499
- "SHOULD maintain the temperature setpoint for the current mode until a system mode change. If hold " +
500
- "status is off, the thermostat SHOULD follow the setpoint transitions specified by its internal " +
501
- "scheduling program. If the thermostat supports setpoint hold for a specific duration, it SHOULD " +
502
- "also implement the TemperatureSetpointHoldDuration attribute." +
497
+ details: "Indicates the temperature hold status on the thermostat. If hold status is on, the thermostat SHOULD " +
498
+ "maintain the temperature setpoint for the current mode until a system mode change. If hold status is " +
499
+ "off, the thermostat SHOULD follow the setpoint transitions specified by its internal scheduling " +
500
+ "program. If the thermostat supports setpoint hold for a specific duration, it SHOULD also implement " +
501
+ "the TemperatureSetpointHoldDuration attribute." +
503
502
  "\n" +
504
503
  "If the server supports a setpoint hold for a specific duration, it SHOULD also implement the " +
505
504
  "SetpointHoldExpiryTimestamp attribute." +
@@ -525,8 +524,8 @@ export const Thermostat = Cluster(
525
524
  "\n" +
526
525
  "If this attribute is updated to a non-null value and the TemperatureSetpointHold is set to " +
527
526
  "SetpointHoldOn and the SetpointHoldExpiryTimestamp is supported, the server shall update " +
528
- "SetpointHoldExpiryTimestamp with a value of current UTC timestamp, in seconds, plus the new value " +
529
- "of this attribute multiplied by 60." +
527
+ "SetpointHoldExpiryTimestamp with a value of current UTC timestamp, in seconds, plus the new value of " +
528
+ "this attribute multiplied by 60." +
530
529
  "\n" +
531
530
  "If this attribute is set to null and the SetpointHoldExpiryTimestamp is supported, the server shall " +
532
531
  "set the SetpointHoldExpiryTimestamp to null.",
@@ -539,10 +538,10 @@ export const Thermostat = Cluster(
539
538
  access: "RW VM", conformance: "O", constraint: "desc", default: 0, quality: "P",
540
539
 
541
540
  details: "Indicates the operational state of the thermostat’s programming. The thermostat shall modify its " +
542
- "programming operation when this attribute is modified by a client and update this attribute when " +
543
- "its programming operation is modified locally by a user. The thermostat may support more than one " +
544
- "active ProgrammingOperationModeBitmap. For example, the thermostat may operate simultaneously in " +
545
- "Schedule Programming Mode and Recovery Mode." +
541
+ "programming operation when this attribute is modified by a client and update this attribute when its " +
542
+ "programming operation is modified locally by a user. The thermostat may support more than one active " +
543
+ "ProgrammingOperationModeBitmap. For example, the thermostat may operate simultaneously in Schedule " +
544
+ "Programming Mode and Recovery Mode." +
546
545
  "\n" +
547
546
  "Thermostats which contain a schedule may use this attribute to control how that schedule is used, " +
548
547
  "even if they do not support the ScheduleConfiguration feature." +
@@ -570,12 +569,12 @@ export const Thermostat = Cluster(
570
569
  name: "SetpointChangeSource", id: 0x30, type: "SetpointChangeSourceEnum", access: "R V",
571
570
  conformance: "O", constraint: "desc", default: 0,
572
571
 
573
- details: "Indicates the source of the current active OccupiedCoolingSetpoint or OccupiedHeatingSetpoint " +
574
- "(i.e., who or what determined the current setpoint)." +
572
+ details: "Indicates the source of the current active OccupiedCoolingSetpoint or OccupiedHeatingSetpoint (i.e., " +
573
+ "who or what determined the current setpoint)." +
575
574
  "\n" +
576
575
  "This attribute enables service providers to determine whether changes to setpoints were initiated " +
577
- "due to occupant comfort, scheduled programming or some other source (e.g., electric utility or " +
578
- "other service provider). Because automation services may initiate frequent setpoint changes, this " +
576
+ "due to occupant comfort, scheduled programming or some other source (e.g., electric utility or other " +
577
+ "service provider). Because automation services may initiate frequent setpoint changes, this " +
579
578
  "attribute clearly differentiates the source of setpoint changes made at the thermostat.",
580
579
 
581
580
  xref: { document: "cluster", section: "4.3.9.34" }
@@ -603,11 +602,11 @@ export const Thermostat = Cluster(
603
602
  name: "OccupiedSetback", id: 0x34, type: "UnsignedTemperature", access: "RW VM", conformance: "SB",
604
603
  constraint: "occupiedSetbackMin to occupiedSetbackMax", default: null, quality: "X N",
605
604
 
606
- details: "Indicates the amount that the Thermostat server will allow the Calculated Local Temperature to " +
607
- "float above the OccupiedCoolingSetpoint (i.e., OccupiedCoolingSetpoint + OccupiedSetback) or below " +
608
- "the OccupiedHeatingSetpoint setpoint (i.e., OccupiedHeatingSetpoint – OccupiedSetback) before " +
609
- "initiating a state change to bring the temperature back to the user’s desired setpoint. This " +
610
- "attribute is sometimes also referred to as the “span.”" +
605
+ details: "Indicates the amount that the Thermostat server will allow the Calculated Local Temperature to float " +
606
+ "above the OccupiedCoolingSetpoint (i.e., OccupiedCoolingSetpoint + OccupiedSetback) or below the " +
607
+ "OccupiedHeatingSetpoint setpoint (i.e., OccupiedHeatingSetpoint – OccupiedSetback) before initiating " +
608
+ "a state change to bring the temperature back to the user’s desired setpoint. This attribute is " +
609
+ "sometimes also referred to as the “span.”" +
611
610
  "\n" +
612
611
  "The purpose of this attribute is to allow remote configuration of the span between the desired " +
613
612
  "setpoint and the measured temperature to help prevent over-cycling and reduce energy bills, though " +
@@ -652,10 +651,10 @@ export const Thermostat = Cluster(
652
651
  conformance: "SB & OCC", constraint: "unoccupiedSetbackMin to unoccupiedSetbackMax", default: null,
653
652
  quality: "X N",
654
653
 
655
- details: "Indicates the amount that the Thermostat server will allow the Calculated Local Temperature to " +
656
- "float above the UnoccupiedCoolingSetpoint (i.e., UnoccupiedCoolingSetpoint + UnoccupiedSetback) or " +
657
- "below the UnoccupiedHeatingSetpoint setpoint (i.e., UnoccupiedHeatingSetpoint - UnoccupiedSetback) " +
658
- "before initiating a state change to bring the temperature back to the user’s desired setpoint. This " +
654
+ details: "Indicates the amount that the Thermostat server will allow the Calculated Local Temperature to float " +
655
+ "above the UnoccupiedCoolingSetpoint (i.e., UnoccupiedCoolingSetpoint + UnoccupiedSetback) or below " +
656
+ "the UnoccupiedHeatingSetpoint setpoint (i.e., UnoccupiedHeatingSetpoint - UnoccupiedSetback) before " +
657
+ "initiating a state change to bring the temperature back to the user’s desired setpoint. This " +
659
658
  "attribute is sometimes also referred to as the “span.”" +
660
659
  "\n" +
661
660
  "The purpose of this attribute is to allow remote configuration of the span between the desired " +
@@ -680,8 +679,8 @@ export const Thermostat = Cluster(
680
679
  Attribute({
681
680
  name: "UnoccupiedSetbackMin", id: 0x38, type: "UnsignedTemperature", access: "R V",
682
681
  conformance: "SB & OCC", constraint: "max unoccupiedSetbackMax", default: null, quality: "X F",
683
- details: "Indicates the minimum value that the Thermostat server will allow the UnoccupiedSetback attribute " +
684
- "to be configured by a user." +
682
+ details: "Indicates the minimum value that the Thermostat server will allow the UnoccupiedSetback attribute to " +
683
+ "be configured by a user." +
685
684
  "\n" +
686
685
  "The null value indicates the attribute is unused.",
687
686
  xref: { document: "cluster", section: "4.3.9.41" }
@@ -691,8 +690,8 @@ export const Thermostat = Cluster(
691
690
  name: "UnoccupiedSetbackMax", id: 0x39, type: "UnsignedTemperature", access: "R V",
692
691
  conformance: "SB & OCC", constraint: "unoccupiedSetbackMin to 25.4°C", default: null,
693
692
  quality: "X F",
694
- details: "Indicates the maximum value that the Thermostat server will allow the UnoccupiedSetback attribute " +
695
- "to be configured by a user." +
693
+ details: "Indicates the maximum value that the Thermostat server will allow the UnoccupiedSetback attribute to " +
694
+ "be configured by a user." +
696
695
  "\n" +
697
696
  "The null value indicates the attribute is unused.",
698
697
  xref: { document: "cluster", section: "4.3.9.42" }
@@ -737,8 +736,8 @@ export const Thermostat = Cluster(
737
736
  Attribute({
738
737
  name: "AcType", id: 0x40, type: "ACTypeEnum", access: "RW VM", conformance: "O", constraint: "desc",
739
738
  default: 0, quality: "N",
740
- details: "Indicates the type of Mini Split ACTypeEnum of Mini Split AC is defined depending on how Cooling " +
741
- "and Heating condition is achieved by Mini Split AC.",
739
+ details: "Indicates the type of Mini Split ACTypeEnum of Mini Split AC is defined depending on how Cooling and " +
740
+ "Heating condition is achieved by Mini Split AC.",
742
741
  xref: { document: "cluster", section: "4.3.9.44" }
743
742
  }),
744
743
 
@@ -808,9 +807,9 @@ export const Thermostat = Cluster(
808
807
  {
809
808
  name: "ScheduleTypes", id: 0x49, type: "list", access: "R V", conformance: "MSCH",
810
809
  constraint: "desc", quality: "F",
811
- details: "Indicates the supported SystemMode values for Schedules, limits on how many schedules can be " +
812
- "created for each SystemMode value, and whether or not a given SystemMode value supports transitions " +
813
- "to Presets, target setpoints, or both.",
810
+ details: "Indicates the supported SystemMode values for Schedules, limits on how many schedules can be created " +
811
+ "for each SystemMode value, and whether or not a given SystemMode value supports transitions to " +
812
+ "Presets, target setpoints, or both.",
814
813
  xref: { document: "cluster", section: "4.3.9.53" }
815
814
  },
816
815
 
@@ -876,11 +875,11 @@ export const Thermostat = Cluster(
876
875
  " 2. If the PresetHandle field is not null, the PresetStruct shall be treated as a modification of " +
877
876
  " an existing preset." +
878
877
  "\n" +
879
- " a. If the value of the PresetHandle field does not match any of the existing presets, a " +
880
- " response with the status code NOT_FOUND shall be returned." +
878
+ " a. If the value of the PresetHandle field does not match any of the existing presets, a response " +
879
+ " with the status code NOT_FOUND shall be returned." +
881
880
  "\n" +
882
- " b. If the value of the PresetHandle field is duplicated on multiple presets in the updated " +
883
- " list, a response with the status code CONSTRAINT_ERROR shall be returned." +
881
+ " b. If the value of the PresetHandle field is duplicated on multiple presets in the updated list, " +
882
+ " a response with the status code CONSTRAINT_ERROR shall be returned." +
884
883
  "\n" +
885
884
  " c. If the BuiltIn field is true, and the PresetStruct in the current value with a matching " +
886
885
  " PresetHandle field has a BuiltIn field set to false, a response with the status code " +
@@ -897,8 +896,8 @@ export const Thermostat = Cluster(
897
896
  " set, a response with the status code CONSTRAINT_ERROR shall be returned." +
898
897
  "\n" +
899
898
  " 5. If appending the received PresetStruct to the pending list of Presets would cause the total " +
900
- " number of pending presets to exceed the value of the NumberOfPresets attribute, a response " +
901
- " with the status code RESOURCE_EXHAUSTED shall be returned." +
899
+ " number of pending presets to exceed the value of the NumberOfPresets attribute, a response with " +
900
+ " the status code RESOURCE_EXHAUSTED shall be returned." +
902
901
  "\n" +
903
902
  " 6. If appending the received PresetStruct to the pending list of Presets would cause the total " +
904
903
  " number of pending presets whose PresetScenario field matches the appended preset’s " +
@@ -969,8 +968,8 @@ export const Thermostat = Cluster(
969
968
  " CONSTRAINT_ERROR shall be returned." +
970
969
  "\n" +
971
970
  " iii. If the BuiltIn field is false, and the ScheduleStruct in the current value with a " +
972
- " matching ScheduleHandle field has a BuiltIn field set to true, a response with the " +
973
- " status code CONSTRAINT_ERROR shall be returned." +
971
+ " matching ScheduleHandle field has a BuiltIn field set to true, a response with the status " +
972
+ " code CONSTRAINT_ERROR shall be returned." +
974
973
  "\n" +
975
974
  " c. If the specified SystemMode does not exist in ScheduleTypes, a response with the status code " +
976
975
  " CONSTRAINT_ERROR shall be returned." +
@@ -982,16 +981,15 @@ export const Thermostat = Cluster(
982
981
  " of transitions on any single day of the week exceeds the NumberOfScheduleTransitionsPerDay " +
983
982
  " value, a response with the status code RESOURCE_EXHAUSTED shall be returned." +
984
983
  "\n" +
985
- " f. If the PresetHandle field is present, but the associated ScheduleTypeStruct does not have " +
986
- " the SupportsPresets bit set, a response with the status code CONSTRAINT_ERROR shall be " +
987
- " returned." +
984
+ " f. If the PresetHandle field is present, but the associated ScheduleTypeStruct does not have the " +
985
+ " SupportsPresets bit set, a response with the status code CONSTRAINT_ERROR shall be returned." +
988
986
  "\n" +
989
987
  " g. If the PresetHandle field is present, but after applying all pending changes, the Presets " +
990
988
  " attribute would not contain a PresetStruct whose PresetHandle field matches the value of the " +
991
989
  " PresetHandle field, a response with the status code CONSTRAINT_ERROR shall be returned." +
992
990
  "\n" +
993
- " h. If the Name is set, but the associated ScheduleTypeStruct does not have the SupportsNames " +
994
- " bit set, a response with the status code CONSTRAINT_ERROR shall be returned." +
991
+ " h. If the Name is set, but the associated ScheduleTypeStruct does not have the SupportsNames bit " +
992
+ " set, a response with the status code CONSTRAINT_ERROR shall be returned." +
995
993
  "\n" +
996
994
  " i. For all transitions in all schedules in the write request:" +
997
995
  "\n" +
@@ -1012,32 +1010,32 @@ export const Thermostat = Cluster(
1012
1010
  " have the SupportsOff bit set, a response with the status code CONSTRAINT_ERROR shall be " +
1013
1011
  " returned." +
1014
1012
  "\n" +
1015
- " k. If the HeatingSetpoint field is present, but the ScheduleTypeStruct matching the value of " +
1016
- " the SystemMode field on the encompassing ScheduleStruct does not have the SupportsSetpoints " +
1017
- " bit set, a response with the status code CONSTRAINT_ERROR shall be returned." +
1013
+ " k. If the HeatingSetpoint field is present, but the ScheduleTypeStruct matching the value of the " +
1014
+ " SystemMode field on the encompassing ScheduleStruct does not have the SupportsSetpoints bit " +
1015
+ " set, a response with the status code CONSTRAINT_ERROR shall be returned." +
1018
1016
  "\n" +
1019
- " l. If the CoolingSetpoint field is present, but the ScheduleTypeStruct matching the value of " +
1020
- " the SystemMode field on the encompassing ScheduleStruct does not have the SupportsSetpoints " +
1021
- " bit set, a response with the status code CONSTRAINT_ERROR shall be returned." +
1017
+ " l. If the CoolingSetpoint field is present, but the ScheduleTypeStruct matching the value of the " +
1018
+ " SystemMode field on the encompassing ScheduleStruct does not have the SupportsSetpoints bit " +
1019
+ " set, a response with the status code CONSTRAINT_ERROR shall be returned." +
1022
1020
  "\n" +
1023
- " 2. If appending the received ScheduleStruct to the pending list of Schedules would cause the " +
1024
- " total number of pending schedules to exceed the value of the NumberOfSchedules attribute, a " +
1025
- " response with the status code RESOURCE_EXHAUSTED shall be returned." +
1021
+ " 2. If appending the received ScheduleStruct to the pending list of Schedules would cause the total " +
1022
+ " number of pending schedules to exceed the value of the NumberOfSchedules attribute, a response " +
1023
+ " with the status code RESOURCE_EXHAUSTED shall be returned." +
1026
1024
  "\n" +
1027
- " 3. If appending the received ScheduleStruct to the pending list of Schedules would cause the " +
1028
- " total number of pending schedules whose SystemMode field matches the appended schedule’s " +
1029
- " SystemMode field to exceed the value of the NumberOfSchedules field on the ScheduleTypeStruct " +
1030
- " whose SystemMode field matches the appended schedule’s SystemMode field, a response with the " +
1031
- " status code RESOURCE_EXHAUSTED shall be returned." +
1025
+ " 3. If appending the received ScheduleStruct to the pending list of Schedules would cause the total " +
1026
+ " number of pending schedules whose SystemMode field matches the appended schedule’s SystemMode " +
1027
+ " field to exceed the value of the NumberOfSchedules field on the ScheduleTypeStruct whose " +
1028
+ " SystemMode field matches the appended schedule’s SystemMode field, a response with the status " +
1029
+ " code RESOURCE_EXHAUSTED shall be returned." +
1032
1030
  "\n" +
1033
1031
  " 4. Otherwise, the write shall be pended until receipt of a commit request, and the attribute " +
1034
1032
  " status shall be SUCCESS." +
1035
1033
  "\n" +
1036
1034
  " a. If the BuiltIn field is null:" +
1037
1035
  "\n" +
1038
- " i. If there is a ScheduleStruct in the current value with a matching ScheduleHandle field, " +
1039
- " the BuiltIn field on the pending ScheduleStruct shall be set to the value of the BuiltIn " +
1040
- " on the matching ScheduleStruct." +
1036
+ " i. If there is a ScheduleStruct in the current value with a matching ScheduleHandle field, the " +
1037
+ " BuiltIn field on the pending ScheduleStruct shall be set to the value of the BuiltIn on " +
1038
+ " the matching ScheduleStruct." +
1041
1039
  "\n" +
1042
1040
  " ii. Otherwise, the BuiltIn field on the pending ScheduleStruct shall be set to false." +
1043
1041
  "\n" +
@@ -1052,8 +1050,8 @@ export const Thermostat = Cluster(
1052
1050
  " i. If the BuiltIn field is true on the removed ScheduleStruct, the attribute status shall be " +
1053
1051
  " CONSTRAINT_ERROR." +
1054
1052
  "\n" +
1055
- " ii. If the removed ScheduleHandle is equal to the value of the ActiveScheduleHandle " +
1056
- " attribute, the attribute status shall be INVALID_IN_STATE." +
1053
+ " ii. If the removed ScheduleHandle is equal to the value of the ActiveScheduleHandle attribute, " +
1054
+ " the attribute status shall be INVALID_IN_STATE." +
1057
1055
  "\n" +
1058
1056
  " 2. Otherwise, the attribute status shall be SUCCESS.",
1059
1057
 
@@ -1092,8 +1090,8 @@ export const Thermostat = Cluster(
1092
1090
 
1093
1091
  Field({
1094
1092
  name: "Amount", id: 0x1, type: "int8", conformance: "M",
1095
- details: "This field shall indicate the amount (possibly negative) that should be added to the setpoint(s), " +
1096
- "in steps of 0.1°C.",
1093
+ details: "This field shall indicate the amount (possibly negative) that should be added to the setpoint(s), in " +
1094
+ "steps of 0.1°C.",
1097
1095
  xref: { document: "cluster", section: "4.3.10.1.2" }
1098
1096
  })
1099
1097
  ),
@@ -1108,8 +1106,8 @@ export const Thermostat = Cluster(
1108
1106
  "setpoint set as it receives the updates from the management system. For example, if the thermostat " +
1109
1107
  "has 4 setpoints for every day of the week and is sent a SetWeeklySchedule command with one setpoint " +
1110
1108
  "for Saturday then the thermostat SHOULD remove all 4 setpoints for Saturday and replace those with " +
1111
- "the updated setpoint but leave all other days unchanged. If the schedule is larger than what fits " +
1112
- "in one frame or contains more than 10 transitions, the schedule shall then be sent using multiple " +
1109
+ "the updated setpoint but leave all other days unchanged. If the schedule is larger than what fits in " +
1110
+ "one frame or contains more than 10 transitions, the schedule shall then be sent using multiple " +
1113
1111
  "SetWeeklySchedule Commands.",
1114
1112
 
1115
1113
  xref: { document: "cluster", section: "4.3.10.2" }
@@ -1119,8 +1117,8 @@ export const Thermostat = Cluster(
1119
1117
  name: "NumberOfTransitionsForSequence", id: 0x0, type: "uint8", conformance: "M",
1120
1118
  details: "This field shall indicate how many individual transitions to expect for this sequence of commands. " +
1121
1119
  "If a device supports more than 10 transitions in its schedule they can send this by sending more " +
1122
- "than 1 “Set Weekly Schedule” command, each containing the separate information that the device " +
1123
- "needs to set.",
1120
+ "than 1 “Set Weekly Schedule” command, each containing the separate information that the device needs " +
1121
+ "to set.",
1124
1122
  xref: { document: "cluster", section: "4.3.10.2.1" }
1125
1123
  }),
1126
1124
 
@@ -1145,14 +1143,14 @@ export const Thermostat = Cluster(
1145
1143
  details: "This field shall indicate how the application decodes the setpoint fields of each transition in the " +
1146
1144
  "Transitions list." +
1147
1145
  "\n" +
1148
- "If the HeatSetpointPresent bit is On, the HeatSetpoint field shall NOT be null in every entry of " +
1149
- "the Transitions list." +
1146
+ "If the HeatSetpointPresent bit is On, the HeatSetpoint field shall NOT be null in every entry of the " +
1147
+ "Transitions list." +
1150
1148
  "\n" +
1151
1149
  "If the HeatSetpointPresent bit is Off, the HeatSetpoint field shall be null in every entry of the " +
1152
1150
  "Transitions list." +
1153
1151
  "\n" +
1154
- "If the CoolSetpointPresent bit is On, the CoolSetpoint field shall NOT be null in every entry of " +
1155
- "the Transitions list." +
1152
+ "If the CoolSetpointPresent bit is On, the CoolSetpoint field shall NOT be null in every entry of the " +
1153
+ "Transitions list." +
1156
1154
  "\n" +
1157
1155
  "If the CoolSetpointPresent bit is Off, the CoolSetpoint field shall be null in every entry of the " +
1158
1156
  "Transitions list." +
@@ -1187,8 +1185,8 @@ export const Thermostat = Cluster(
1187
1185
  Field({
1188
1186
  name: "DaysToReturn", id: 0x0, type: "ScheduleDayOfWeekBitmap", conformance: "M",
1189
1187
  constraint: "desc",
1190
- details: "This field shall indicate the number of days the client would like to return the setpoint values " +
1191
- "for and could be any combination of single days or the entire week.",
1188
+ details: "This field shall indicate the number of days the client would like to return the setpoint values for " +
1189
+ "and could be any combination of single days or the entire week.",
1192
1190
  xref: { document: "cluster", section: "4.3.10.3.1" }
1193
1191
  }),
1194
1192
 
@@ -1451,10 +1449,17 @@ export const Thermostat = Cluster(
1451
1449
  )
1452
1450
  ),
1453
1451
 
1454
- Datatype({
1455
- name: "OccupancyBitmap", type: "OccupancySensing.OccupancyBitmap",
1456
- xref: { document: "cluster", section: "4.3.8.7" }
1457
- }),
1452
+ Datatype(
1453
+ { name: "OccupancyBitmap", type: "map8", xref: { document: "cluster", section: "4.3.8.7" } },
1454
+
1455
+ Field({
1456
+ name: "Occupied", constraint: "0", description: "Indicates the occupancy state",
1457
+ details: "If this bit is set, it shall indicate the occupied state else if the bit if not set, it shall " +
1458
+ "indicate the unoccupied state.",
1459
+ xref: { document: "cluster", section: "4.3.8.7.1" }
1460
+ })
1461
+ ),
1462
+
1458
1463
  Datatype(
1459
1464
  { name: "PresetTypeFeaturesBitmap", type: "map16", xref: { document: "cluster", section: "4.3.8.8" } },
1460
1465
  Field({ name: "Automatic", constraint: "0", description: "Preset may be automatically activated by the thermostat" }),
@@ -1870,8 +1875,8 @@ export const Thermostat = Cluster(
1870
1875
  name: "ScheduleHandle", id: 0x0, type: "octstr", conformance: "M", constraint: "max 16",
1871
1876
  quality: "X",
1872
1877
 
1873
- details: "This field shall indicate a device generated identifier for this schedule. It shall be unique on " +
1874
- "the device, and shall NOT be reused after the associated schedule has been deleted." +
1878
+ details: "This field shall indicate a device generated identifier for this schedule. It shall be unique on the " +
1879
+ "device, and shall NOT be reused after the associated schedule has been deleted." +
1875
1880
  "\n" +
1876
1881
  "This field shall only be null when the encompassing ScheduleStruct is appended to the Schedules " +
1877
1882
  "attribute for the purpose of creating a new Schedule. Refer to Schedules for the creation of " +
@@ -1926,10 +1931,9 @@ export const Thermostat = Cluster(
1926
1931
  "the current day of the week, the server shall attempt the same process to identify the active " +
1927
1932
  "ScheduleTransitionStruct for the day preceding the previously attempted day of the week, repeating " +
1928
1933
  "until an active ScheduleTransitionStruct is found or the attempted day is the current day of the " +
1929
- "week again. If no active ScheduleTransitionStruct is found, then the active " +
1930
- "ScheduleTransitionStruct shall be the ScheduleTransitionStruct with the largest TransitionTime " +
1931
- "field from the set of ScheduleTransitionStructs whose DayOfWeek field matches the current day of " +
1932
- "the week.",
1934
+ "week again. If no active ScheduleTransitionStruct is found, then the active ScheduleTransitionStruct " +
1935
+ "shall be the ScheduleTransitionStruct with the largest TransitionTime field from the set of " +
1936
+ "ScheduleTransitionStructs whose DayOfWeek field matches the current day of the week.",
1933
1937
 
1934
1938
  xref: { document: "cluster", section: "4.3.8.31.5" }
1935
1939
  },
@@ -1961,8 +1965,8 @@ export const Thermostat = Cluster(
1961
1965
  " a. If the SystemMode field is provided, the HeatingSetpoint and CoolingSetpoint fields shall be " +
1962
1966
  " interpreted using the SystemMode field" +
1963
1967
  "\n" +
1964
- " b. If the SystemMode field is not provided, the HeatingSetpoint and CoolingSetpoint fields " +
1965
- " shall be interpreted using the SystemMode field on the parent ScheduleStruct" +
1968
+ " b. If the SystemMode field is not provided, the HeatingSetpoint and CoolingSetpoint fields shall " +
1969
+ " be interpreted using the SystemMode field on the parent ScheduleStruct" +
1966
1970
  "\n" +
1967
1971
  " 3. If neither the PresetHandle field or any Setpoint field is provided, then the PresetHandle " +
1968
1972
  " field on the parent ScheduleStruct shall be used to determine the active PresetStruct" +
@@ -2044,15 +2048,15 @@ export const Thermostat = Cluster(
2044
2048
 
2045
2049
  Field({
2046
2050
  name: "CoolingSetpoint", id: 0x4, type: "temperature", conformance: "[COOL]", constraint: "desc",
2047
- details: "This field shall specify the cooling setpoint for the transition. If PresetHandle is set, this " +
2048
- "field shall NOT be included. Refer to Setpoint Limits for value constraints.",
2051
+ details: "This field shall specify the cooling setpoint for the transition. If PresetHandle is set, this field " +
2052
+ "shall NOT be included. Refer to Setpoint Limits for value constraints.",
2049
2053
  xref: { document: "cluster", section: "4.3.8.32.5" }
2050
2054
  }),
2051
2055
 
2052
2056
  Field({
2053
2057
  name: "HeatingSetpoint", id: 0x5, type: "temperature", conformance: "[HEAT]", constraint: "desc",
2054
- details: "This field shall specify the cooling setpoint for the transition. If PresetHandle is set, this " +
2055
- "field shall NOT be included. Refer to Setpoint Limits for value constraints.",
2058
+ details: "This field shall specify the cooling setpoint for the transition. If PresetHandle is set, this field " +
2059
+ "shall NOT be included. Refer to Setpoint Limits for value constraints.",
2056
2060
  xref: { document: "cluster", section: "4.3.8.32.6" }
2057
2061
  })
2058
2062
  ),
@@ -2062,8 +2066,8 @@ export const Thermostat = Cluster(
2062
2066
 
2063
2067
  Field({
2064
2068
  name: "SystemMode", id: 0x0, type: "SystemModeEnum", conformance: "M", constraint: "desc",
2065
- details: "This field shall specify a SystemModeEnum supported by this thermostat for Schedules. The only " +
2066
- "valid values for this field shall be Auto, Heat, and Cool.",
2069
+ details: "This field shall specify a SystemModeEnum supported by this thermostat for Schedules. The only valid " +
2070
+ "values for this field shall be Auto, Heat, and Cool.",
2067
2071
  xref: { document: "cluster", section: "4.3.8.33.1" }
2068
2072
  }),
2069
2073
 
@@ -18,8 +18,8 @@ export const ThermostatUserInterfaceConfiguration = Cluster(
18
18
  {
19
19
  name: "ThermostatUserInterfaceConfiguration", id: 0x204, classification: "application",
20
20
  pics: "TSUIC",
21
- details: "This cluster provides an interface to allow configuration of the user interface for a thermostat, " +
22
- "or a thermostat controller device, that supports a keypad and LCD screen.",
21
+ details: "This cluster provides an interface to allow configuration of the user interface for a thermostat, or " +
22
+ "a thermostat controller device, that supports a keypad and LCD screen.",
23
23
  xref: { document: "cluster", section: "4.5" }
24
24
  },
25
25
 
@@ -43,10 +43,10 @@ export const ThermostatUserInterfaceConfiguration = Cluster(
43
43
  name: "ScheduleProgrammingVisibility", id: 0x2, type: "ScheduleProgrammingVisibilityEnum",
44
44
  access: "RW VM", conformance: "O", default: 0,
45
45
 
46
- details: "This attribute is used to hide the weekly schedule programming functionality or menu on a " +
47
- "thermostat from a user to prevent local user programming of the weekly schedule. The schedule " +
48
- "programming may still be performed via a remote interface, and the thermostat may operate in " +
49
- "schedule programming mode." +
46
+ details: "This attribute is used to hide the weekly schedule programming functionality or menu on a thermostat " +
47
+ "from a user to prevent local user programming of the weekly schedule. The schedule programming may " +
48
+ "still be performed via a remote interface, and the thermostat may operate in schedule programming " +
49
+ "mode." +
50
50
  "\n" +
51
51
  "This attribute is designed to prevent local tampering with or disabling of schedules that may have " +
52
52
  "been programmed by users or service providers via a more capable remote interface. The programming " +
@@ -31,14 +31,14 @@ export const ThreadBorderRouterManagement = Cluster(
31
31
  Field({
32
32
  name: "PC", conformance: "O", constraint: "0", description: "PanChange",
33
33
 
34
- details: "This feature shall indicate the ability of the Border Router to change its already configured PAN " +
35
- "to another, by setting a pending dataset." +
34
+ details: "This feature shall indicate the ability of the Border Router to change its already configured PAN to " +
35
+ "another, by setting a pending dataset." +
36
36
  "\n" +
37
37
  "NOTE" +
38
38
  "\n" +
39
- "This feature flag can be used to protect an already-configured network from accidental " +
40
- "configuration change, e.g. when the Thread Border Router serves non-Matter devices that do not " +
41
- "support PAN change for an implementation-specific reason.",
39
+ "This feature flag can be used to protect an already-configured network from accidental configuration " +
40
+ "change, e.g. when the Thread Border Router serves non-Matter devices that do not support PAN change " +
41
+ "for an implementation-specific reason.",
42
42
 
43
43
  xref: { document: "cluster", section: "10.3.4.1" }
44
44
  })
@@ -92,8 +92,8 @@ export const ThreadBorderRouterManagement = Cluster(
92
92
  default: 0, quality: "X N",
93
93
  details: "Null if the Thread Border Router has no Pending dataset configured, otherwise it shall be the " +
94
94
  "timestamp value extracted from the Pending Dataset value configured by the Thread Node to which the " +
95
- "border router is connected. This attribute shall be updated when a new Pending dataset is " +
96
- "configured on the Thread network to which the border router is connected.",
95
+ "border router is connected. This attribute shall be updated when a new Pending dataset is configured " +
96
+ "on the Thread network to which the border router is connected.",
97
97
  xref: { document: "cluster", section: "10.3.5.6" }
98
98
  }),
99
99
 
@@ -144,9 +144,9 @@ export const ThreadBorderRouterManagement = Cluster(
144
144
  name: "Dataset", id: 0x0, type: "octstr", conformance: "M", constraint: "max 254",
145
145
  details: "If no dataset (active or pending as requested) is configured, this field shall be set to empty." +
146
146
  "\n" +
147
- "Otherwise, this field shall contain the active or pending dataset of the Thread network to which " +
148
- "the Border Router is connected as an octet string containing the raw Thread TLV value of the " +
149
- "dataset, as defined in the Thread specification.",
147
+ "Otherwise, this field shall contain the active or pending dataset of the Thread network to which the " +
148
+ "Border Router is connected as an octet string containing the raw Thread TLV value of the dataset, as " +
149
+ "defined in the Thread specification.",
150
150
  xref: { document: "cluster", section: "10.3.6.3.1" }
151
151
  })
152
152
  ),