@matter/types 0.13.0-alpha.0-20250304-d4a7592a4 → 0.13.0-alpha.0-20250307-ebf84a05a

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 (807) hide show
  1. package/dist/cjs/clusters/access-control.d.ts +3972 -522
  2. package/dist/cjs/clusters/access-control.d.ts.map +1 -1
  3. package/dist/cjs/clusters/access-control.js +640 -116
  4. package/dist/cjs/clusters/access-control.js.map +2 -2
  5. package/dist/cjs/clusters/actions.d.ts +10 -9
  6. package/dist/cjs/clusters/actions.d.ts.map +1 -1
  7. package/dist/cjs/clusters/actions.js +4 -4
  8. package/dist/cjs/clusters/actions.js.map +1 -1
  9. package/dist/cjs/clusters/administrator-commissioning.d.ts +156 -129
  10. package/dist/cjs/clusters/administrator-commissioning.d.ts.map +1 -1
  11. package/dist/cjs/clusters/administrator-commissioning.js +40 -35
  12. package/dist/cjs/clusters/administrator-commissioning.js.map +1 -1
  13. package/dist/cjs/clusters/alarm-base.d.ts +9 -12
  14. package/dist/cjs/clusters/alarm-base.d.ts.map +1 -1
  15. package/dist/cjs/clusters/alarm-base.js +3 -4
  16. package/dist/cjs/clusters/alarm-base.js.map +1 -1
  17. package/dist/cjs/clusters/application-launcher.d.ts +27 -15
  18. package/dist/cjs/clusters/application-launcher.d.ts.map +1 -1
  19. package/dist/cjs/clusters/application-launcher.js +7 -4
  20. package/dist/cjs/clusters/application-launcher.js.map +1 -1
  21. package/dist/cjs/clusters/ballast-configuration.d.ts +7 -7
  22. package/dist/cjs/clusters/ballast-configuration.js +7 -7
  23. package/dist/cjs/clusters/basic-information.d.ts +29 -21
  24. package/dist/cjs/clusters/basic-information.d.ts.map +1 -1
  25. package/dist/cjs/clusters/basic-information.js +29 -21
  26. package/dist/cjs/clusters/basic-information.js.map +1 -1
  27. package/dist/cjs/clusters/bridged-device-basic-information.d.ts +816 -34
  28. package/dist/cjs/clusters/bridged-device-basic-information.d.ts.map +1 -1
  29. package/dist/cjs/clusters/bridged-device-basic-information.js +182 -29
  30. package/dist/cjs/clusters/bridged-device-basic-information.js.map +2 -2
  31. package/dist/cjs/clusters/channel.d.ts +115 -124
  32. package/dist/cjs/clusters/channel.d.ts.map +1 -1
  33. package/dist/cjs/clusters/channel.js +15 -16
  34. package/dist/cjs/clusters/channel.js.map +1 -1
  35. package/dist/cjs/clusters/color-control.d.ts +3076 -1366
  36. package/dist/cjs/clusters/color-control.d.ts.map +1 -1
  37. package/dist/cjs/clusters/color-control.js +423 -357
  38. package/dist/cjs/clusters/color-control.js.map +2 -2
  39. package/dist/cjs/clusters/commissioner-control.d.ts +268 -0
  40. package/dist/cjs/clusters/commissioner-control.d.ts.map +1 -0
  41. package/dist/cjs/clusters/commissioner-control.js +194 -0
  42. package/dist/cjs/clusters/commissioner-control.js.map +6 -0
  43. package/dist/cjs/clusters/content-control.d.ts +497 -221
  44. package/dist/cjs/clusters/content-control.d.ts.map +1 -1
  45. package/dist/cjs/clusters/content-control.js +59 -41
  46. package/dist/cjs/clusters/content-control.js.map +2 -2
  47. package/dist/cjs/clusters/content-launcher.d.ts +248 -215
  48. package/dist/cjs/clusters/content-launcher.d.ts.map +1 -1
  49. package/dist/cjs/clusters/content-launcher.js +16 -15
  50. package/dist/cjs/clusters/content-launcher.js.map +1 -1
  51. package/dist/cjs/clusters/device-energy-management-mode.d.ts +76 -333
  52. package/dist/cjs/clusters/device-energy-management-mode.d.ts.map +1 -1
  53. package/dist/cjs/clusters/device-energy-management-mode.js +26 -73
  54. package/dist/cjs/clusters/device-energy-management-mode.js.map +1 -1
  55. package/dist/cjs/clusters/device-energy-management.d.ts +1299 -930
  56. package/dist/cjs/clusters/device-energy-management.d.ts.map +1 -1
  57. package/dist/cjs/clusters/device-energy-management.js +189 -160
  58. package/dist/cjs/clusters/device-energy-management.js.map +2 -2
  59. package/dist/cjs/clusters/dishwasher-alarm.d.ts +14 -17
  60. package/dist/cjs/clusters/dishwasher-alarm.d.ts.map +1 -1
  61. package/dist/cjs/clusters/dishwasher-alarm.js +3 -4
  62. package/dist/cjs/clusters/dishwasher-alarm.js.map +1 -1
  63. package/dist/cjs/clusters/dishwasher-mode.d.ts +65 -105
  64. package/dist/cjs/clusters/dishwasher-mode.d.ts.map +1 -1
  65. package/dist/cjs/clusters/dishwasher-mode.js +12 -24
  66. package/dist/cjs/clusters/dishwasher-mode.js.map +1 -1
  67. package/dist/cjs/clusters/door-lock.d.ts +2751 -5427
  68. package/dist/cjs/clusters/door-lock.d.ts.map +1 -1
  69. package/dist/cjs/clusters/door-lock.js +480 -802
  70. package/dist/cjs/clusters/door-lock.js.map +2 -2
  71. package/dist/cjs/clusters/ecosystem-information.d.ts +186 -0
  72. package/dist/cjs/clusters/ecosystem-information.d.ts.map +1 -0
  73. package/dist/cjs/clusters/ecosystem-information.js +154 -0
  74. package/dist/cjs/clusters/ecosystem-information.js.map +6 -0
  75. package/dist/cjs/clusters/electrical-energy-measurement.d.ts +363 -368
  76. package/dist/cjs/clusters/electrical-energy-measurement.d.ts.map +1 -1
  77. package/dist/cjs/clusters/electrical-energy-measurement.js +15 -16
  78. package/dist/cjs/clusters/electrical-energy-measurement.js.map +1 -1
  79. package/dist/cjs/clusters/energy-evse-mode.d.ts +92 -330
  80. package/dist/cjs/clusters/energy-evse-mode.d.ts.map +1 -1
  81. package/dist/cjs/clusters/energy-evse-mode.js +25 -72
  82. package/dist/cjs/clusters/energy-evse-mode.js.map +1 -1
  83. package/dist/cjs/clusters/energy-evse.d.ts +557 -273
  84. package/dist/cjs/clusters/energy-evse.d.ts.map +1 -1
  85. package/dist/cjs/clusters/energy-evse.js +107 -55
  86. package/dist/cjs/clusters/energy-evse.js.map +1 -1
  87. package/dist/cjs/clusters/energy-preference.d.ts +76 -76
  88. package/dist/cjs/clusters/energy-preference.d.ts.map +1 -1
  89. package/dist/cjs/clusters/energy-preference.js +15 -18
  90. package/dist/cjs/clusters/energy-preference.js.map +1 -1
  91. package/dist/cjs/clusters/ethernet-network-diagnostics.d.ts +3 -9
  92. package/dist/cjs/clusters/ethernet-network-diagnostics.d.ts.map +1 -1
  93. package/dist/cjs/clusters/ethernet-network-diagnostics.js +1 -3
  94. package/dist/cjs/clusters/ethernet-network-diagnostics.js.map +1 -1
  95. package/dist/cjs/clusters/fan-control.d.ts +12 -12
  96. package/dist/cjs/clusters/fan-control.js +4 -4
  97. package/dist/cjs/clusters/fixed-label.d.ts +7 -2
  98. package/dist/cjs/clusters/fixed-label.d.ts.map +1 -1
  99. package/dist/cjs/clusters/fixed-label.js.map +1 -1
  100. package/dist/cjs/clusters/flow-measurement.d.ts +4 -4
  101. package/dist/cjs/clusters/flow-measurement.d.ts.map +1 -1
  102. package/dist/cjs/clusters/flow-measurement.js +6 -6
  103. package/dist/cjs/clusters/flow-measurement.js.map +1 -1
  104. package/dist/cjs/clusters/general-commissioning.d.ts +1416 -111
  105. package/dist/cjs/clusters/general-commissioning.d.ts.map +1 -1
  106. package/dist/cjs/clusters/general-commissioning.js +272 -54
  107. package/dist/cjs/clusters/general-commissioning.js.map +2 -2
  108. package/dist/cjs/clusters/general-diagnostics.d.ts +115 -122
  109. package/dist/cjs/clusters/general-diagnostics.d.ts.map +1 -1
  110. package/dist/cjs/clusters/general-diagnostics.js +31 -33
  111. package/dist/cjs/clusters/general-diagnostics.js.map +1 -1
  112. package/dist/cjs/clusters/group-key-management.d.ts +72 -82
  113. package/dist/cjs/clusters/group-key-management.d.ts.map +1 -1
  114. package/dist/cjs/clusters/group-key-management.js +19 -22
  115. package/dist/cjs/clusters/group-key-management.js.map +1 -1
  116. package/dist/cjs/clusters/groups.d.ts +9 -6
  117. package/dist/cjs/clusters/groups.d.ts.map +1 -1
  118. package/dist/cjs/clusters/groups.js +3 -2
  119. package/dist/cjs/clusters/groups.js.map +1 -1
  120. package/dist/cjs/clusters/icd-management.d.ts +223 -66
  121. package/dist/cjs/clusters/icd-management.d.ts.map +1 -1
  122. package/dist/cjs/clusters/icd-management.js +61 -23
  123. package/dist/cjs/clusters/icd-management.js.map +2 -2
  124. package/dist/cjs/clusters/identify.d.ts +12 -13
  125. package/dist/cjs/clusters/identify.d.ts.map +1 -1
  126. package/dist/cjs/clusters/identify.js +9 -10
  127. package/dist/cjs/clusters/identify.js.map +1 -1
  128. package/dist/cjs/clusters/illuminance-measurement.d.ts +7 -8
  129. package/dist/cjs/clusters/illuminance-measurement.d.ts.map +1 -1
  130. package/dist/cjs/clusters/illuminance-measurement.js +9 -10
  131. package/dist/cjs/clusters/illuminance-measurement.js.map +1 -1
  132. package/dist/cjs/clusters/index.d.ts +11 -1
  133. package/dist/cjs/clusters/index.d.ts.map +1 -1
  134. package/dist/cjs/clusters/index.js +33 -3
  135. package/dist/cjs/clusters/index.js.map +1 -1
  136. package/dist/cjs/clusters/joint-fabric-datastore-cluster.d.ts +1239 -0
  137. package/dist/cjs/clusters/joint-fabric-datastore-cluster.d.ts.map +1 -0
  138. package/dist/cjs/clusters/joint-fabric-datastore-cluster.js +490 -0
  139. package/dist/cjs/clusters/joint-fabric-datastore-cluster.js.map +6 -0
  140. package/dist/cjs/clusters/joint-fabric-pki.d.ts +174 -0
  141. package/dist/cjs/clusters/joint-fabric-pki.d.ts.map +1 -0
  142. package/dist/cjs/clusters/joint-fabric-pki.js +120 -0
  143. package/dist/cjs/clusters/joint-fabric-pki.js.map +6 -0
  144. package/dist/cjs/clusters/keypad-input.d.ts +2 -2
  145. package/dist/cjs/clusters/laundry-dryer-controls.d.ts +6 -7
  146. package/dist/cjs/clusters/laundry-dryer-controls.d.ts.map +1 -1
  147. package/dist/cjs/clusters/laundry-dryer-controls.js +5 -9
  148. package/dist/cjs/clusters/laundry-dryer-controls.js.map +1 -1
  149. package/dist/cjs/clusters/laundry-washer-controls.d.ts +74 -62
  150. package/dist/cjs/clusters/laundry-washer-controls.d.ts.map +1 -1
  151. package/dist/cjs/clusters/laundry-washer-controls.js +26 -25
  152. package/dist/cjs/clusters/laundry-washer-controls.js.map +1 -1
  153. package/dist/cjs/clusters/laundry-washer-mode.d.ts +69 -109
  154. package/dist/cjs/clusters/laundry-washer-mode.d.ts.map +1 -1
  155. package/dist/cjs/clusters/laundry-washer-mode.js +13 -25
  156. package/dist/cjs/clusters/laundry-washer-mode.js.map +1 -1
  157. package/dist/cjs/clusters/level-control.d.ts +209 -70
  158. package/dist/cjs/clusters/level-control.d.ts.map +1 -1
  159. package/dist/cjs/clusters/level-control.js +45 -12
  160. package/dist/cjs/clusters/level-control.js.map +1 -1
  161. package/dist/cjs/clusters/localization-configuration.d.ts +5 -6
  162. package/dist/cjs/clusters/localization-configuration.d.ts.map +1 -1
  163. package/dist/cjs/clusters/localization-configuration.js +5 -6
  164. package/dist/cjs/clusters/localization-configuration.js.map +1 -1
  165. package/dist/cjs/clusters/media-input.d.ts +9 -6
  166. package/dist/cjs/clusters/media-input.d.ts.map +1 -1
  167. package/dist/cjs/clusters/media-input.js +3 -2
  168. package/dist/cjs/clusters/media-input.js.map +1 -1
  169. package/dist/cjs/clusters/media-playback.d.ts +29 -24
  170. package/dist/cjs/clusters/media-playback.d.ts.map +1 -1
  171. package/dist/cjs/clusters/media-playback.js +5 -4
  172. package/dist/cjs/clusters/media-playback.js.map +1 -1
  173. package/dist/cjs/clusters/microwave-oven-control.d.ts +54 -48
  174. package/dist/cjs/clusters/microwave-oven-control.d.ts.map +1 -1
  175. package/dist/cjs/clusters/microwave-oven-control.js +19 -17
  176. package/dist/cjs/clusters/microwave-oven-control.js.map +1 -1
  177. package/dist/cjs/clusters/microwave-oven-mode.d.ts +63 -69
  178. package/dist/cjs/clusters/microwave-oven-mode.d.ts.map +1 -1
  179. package/dist/cjs/clusters/microwave-oven-mode.js +14 -11
  180. package/dist/cjs/clusters/microwave-oven-mode.js.map +1 -1
  181. package/dist/cjs/clusters/mode-base.d.ts +27 -46
  182. package/dist/cjs/clusters/mode-base.d.ts.map +1 -1
  183. package/dist/cjs/clusters/mode-base.js +9 -10
  184. package/dist/cjs/clusters/mode-base.js.map +1 -1
  185. package/dist/cjs/clusters/mode-select.d.ts +33 -27
  186. package/dist/cjs/clusters/mode-select.d.ts.map +1 -1
  187. package/dist/cjs/clusters/mode-select.js +14 -13
  188. package/dist/cjs/clusters/mode-select.js.map +1 -1
  189. package/dist/cjs/clusters/network-commissioning.d.ts +263 -240
  190. package/dist/cjs/clusters/network-commissioning.d.ts.map +1 -1
  191. package/dist/cjs/clusters/network-commissioning.js +46 -39
  192. package/dist/cjs/clusters/network-commissioning.js.map +1 -1
  193. package/dist/cjs/clusters/occupancy-sensing.d.ts +1002 -63
  194. package/dist/cjs/clusters/occupancy-sensing.d.ts.map +1 -1
  195. package/dist/cjs/clusters/occupancy-sensing.js +278 -63
  196. package/dist/cjs/clusters/occupancy-sensing.js.map +2 -2
  197. package/dist/cjs/clusters/on-off.d.ts +18 -24
  198. package/dist/cjs/clusters/on-off.d.ts.map +1 -1
  199. package/dist/cjs/clusters/on-off.js +3 -4
  200. package/dist/cjs/clusters/on-off.js.map +1 -1
  201. package/dist/cjs/clusters/operational-credentials.d.ts +98 -85
  202. package/dist/cjs/clusters/operational-credentials.d.ts.map +1 -1
  203. package/dist/cjs/clusters/operational-credentials.js +56 -49
  204. package/dist/cjs/clusters/operational-credentials.js.map +1 -1
  205. package/dist/cjs/clusters/operational-state.d.ts +136 -57
  206. package/dist/cjs/clusters/operational-state.d.ts.map +1 -1
  207. package/dist/cjs/clusters/operational-state.js +62 -36
  208. package/dist/cjs/clusters/operational-state.js.map +2 -2
  209. package/dist/cjs/clusters/ota-software-update-provider.d.ts +43 -42
  210. package/dist/cjs/clusters/ota-software-update-provider.d.ts.map +1 -1
  211. package/dist/cjs/clusters/ota-software-update-provider.js +20 -19
  212. package/dist/cjs/clusters/ota-software-update-provider.js.map +1 -1
  213. package/dist/cjs/clusters/ota-software-update-requestor.d.ts +6 -10
  214. package/dist/cjs/clusters/ota-software-update-requestor.d.ts.map +1 -1
  215. package/dist/cjs/clusters/ota-software-update-requestor.js +4 -6
  216. package/dist/cjs/clusters/ota-software-update-requestor.js.map +1 -1
  217. package/dist/cjs/clusters/oven-cavity-operational-state.d.ts +44 -154
  218. package/dist/cjs/clusters/oven-cavity-operational-state.d.ts.map +1 -1
  219. package/dist/cjs/clusters/oven-cavity-operational-state.js +39 -156
  220. package/dist/cjs/clusters/oven-cavity-operational-state.js.map +1 -1
  221. package/dist/cjs/clusters/oven-mode.d.ts +79 -349
  222. package/dist/cjs/clusters/oven-mode.d.ts.map +1 -1
  223. package/dist/cjs/clusters/oven-mode.js +26 -82
  224. package/dist/cjs/clusters/oven-mode.js.map +1 -1
  225. package/dist/cjs/clusters/power-source.d.ts +169 -44
  226. package/dist/cjs/clusters/power-source.d.ts.map +1 -1
  227. package/dist/cjs/clusters/power-source.js +40 -16
  228. package/dist/cjs/clusters/power-source.js.map +1 -1
  229. package/dist/cjs/clusters/pressure-measurement.js +2 -2
  230. package/dist/cjs/clusters/pressure-measurement.js.map +1 -1
  231. package/dist/cjs/clusters/pump-configuration-and-control.d.ts +73 -63
  232. package/dist/cjs/clusters/pump-configuration-and-control.d.ts.map +1 -1
  233. package/dist/cjs/clusters/pump-configuration-and-control.js +19 -20
  234. package/dist/cjs/clusters/pump-configuration-and-control.js.map +1 -1
  235. package/dist/cjs/clusters/refrigerator-alarm.d.ts +2 -1
  236. package/dist/cjs/clusters/refrigerator-alarm.d.ts.map +1 -1
  237. package/dist/cjs/clusters/refrigerator-alarm.js.map +1 -1
  238. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +59 -91
  239. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  240. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +11 -19
  241. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  242. package/dist/cjs/clusters/relative-humidity-measurement.js +1 -1
  243. package/dist/cjs/clusters/relative-humidity-measurement.js.map +1 -1
  244. package/dist/cjs/clusters/rvc-clean-mode.d.ts +59 -103
  245. package/dist/cjs/clusters/rvc-clean-mode.d.ts.map +1 -1
  246. package/dist/cjs/clusters/rvc-clean-mode.js +11 -15
  247. package/dist/cjs/clusters/rvc-clean-mode.js.map +1 -1
  248. package/dist/cjs/clusters/rvc-operational-state.d.ts +81 -25
  249. package/dist/cjs/clusters/rvc-operational-state.d.ts.map +1 -1
  250. package/dist/cjs/clusters/rvc-operational-state.js +49 -20
  251. package/dist/cjs/clusters/rvc-operational-state.js.map +1 -1
  252. package/dist/cjs/clusters/rvc-run-mode.d.ts +85 -129
  253. package/dist/cjs/clusters/rvc-run-mode.d.ts.map +1 -1
  254. package/dist/cjs/clusters/rvc-run-mode.js +16 -15
  255. package/dist/cjs/clusters/rvc-run-mode.js.map +1 -1
  256. package/dist/cjs/clusters/scenes-management.d.ts +328 -181
  257. package/dist/cjs/clusters/scenes-management.d.ts.map +1 -1
  258. package/dist/cjs/clusters/scenes-management.js +37 -22
  259. package/dist/cjs/clusters/scenes-management.js.map +1 -1
  260. package/dist/cjs/clusters/service-area.d.ts +2052 -0
  261. package/dist/cjs/clusters/service-area.d.ts.map +1 -0
  262. package/dist/cjs/clusters/service-area.js +582 -0
  263. package/dist/cjs/clusters/service-area.js.map +6 -0
  264. package/dist/cjs/clusters/smoke-co-alarm.d.ts +10 -18
  265. package/dist/cjs/clusters/smoke-co-alarm.d.ts.map +1 -1
  266. package/dist/cjs/clusters/smoke-co-alarm.js +2 -3
  267. package/dist/cjs/clusters/smoke-co-alarm.js.map +1 -1
  268. package/dist/cjs/clusters/switch.d.ts +478 -191
  269. package/dist/cjs/clusters/switch.d.ts.map +1 -1
  270. package/dist/cjs/clusters/switch.js +145 -57
  271. package/dist/cjs/clusters/switch.js.map +1 -1
  272. package/dist/cjs/clusters/target-navigator.d.ts +1 -1
  273. package/dist/cjs/clusters/target-navigator.js +1 -1
  274. package/dist/cjs/clusters/thermostat.d.ts +3877 -830
  275. package/dist/cjs/clusters/thermostat.d.ts.map +1 -1
  276. package/dist/cjs/clusters/thermostat.js +841 -159
  277. package/dist/cjs/clusters/thermostat.js.map +2 -2
  278. package/dist/cjs/clusters/thread-border-router-management.d.ts +711 -0
  279. package/dist/cjs/clusters/thread-border-router-management.d.ts.map +1 -0
  280. package/dist/cjs/clusters/thread-border-router-management.js +265 -0
  281. package/dist/cjs/clusters/thread-border-router-management.js.map +6 -0
  282. package/dist/cjs/clusters/thread-network-diagnostics.d.ts +81 -55
  283. package/dist/cjs/clusters/thread-network-diagnostics.d.ts.map +1 -1
  284. package/dist/cjs/clusters/thread-network-diagnostics.js +32 -21
  285. package/dist/cjs/clusters/thread-network-diagnostics.js.map +1 -1
  286. package/dist/cjs/clusters/thread-network-directory.d.ts +250 -0
  287. package/dist/cjs/clusters/thread-network-directory.d.ts.map +1 -0
  288. package/dist/cjs/clusters/thread-network-directory.js +187 -0
  289. package/dist/cjs/clusters/thread-network-directory.js.map +6 -0
  290. package/dist/cjs/clusters/time-synchronization.d.ts +101 -76
  291. package/dist/cjs/clusters/time-synchronization.d.ts.map +1 -1
  292. package/dist/cjs/clusters/time-synchronization.js +30 -23
  293. package/dist/cjs/clusters/time-synchronization.js.map +1 -1
  294. package/dist/cjs/clusters/unit-localization.d.ts +3 -4
  295. package/dist/cjs/clusters/unit-localization.d.ts.map +1 -1
  296. package/dist/cjs/clusters/unit-localization.js.map +1 -1
  297. package/dist/cjs/clusters/user-label.d.ts +2 -1
  298. package/dist/cjs/clusters/user-label.d.ts.map +1 -1
  299. package/dist/cjs/clusters/user-label.js.map +1 -1
  300. package/dist/cjs/clusters/water-heater-management.d.ts +1371 -0
  301. package/dist/cjs/clusters/water-heater-management.d.ts.map +1 -0
  302. package/dist/cjs/clusters/water-heater-management.js +336 -0
  303. package/dist/cjs/clusters/water-heater-management.js.map +6 -0
  304. package/dist/cjs/clusters/water-heater-mode.d.ts +491 -0
  305. package/dist/cjs/clusters/water-heater-mode.d.ts.map +1 -0
  306. package/dist/cjs/clusters/water-heater-mode.js +195 -0
  307. package/dist/cjs/clusters/water-heater-mode.js.map +6 -0
  308. package/dist/cjs/clusters/water-tank-level-monitoring.d.ts +162 -0
  309. package/dist/cjs/clusters/water-tank-level-monitoring.d.ts.map +1 -0
  310. package/dist/cjs/clusters/water-tank-level-monitoring.js +47 -0
  311. package/dist/cjs/clusters/water-tank-level-monitoring.js.map +6 -0
  312. package/dist/cjs/clusters/wi-fi-network-diagnostics.d.ts +20 -27
  313. package/dist/cjs/clusters/wi-fi-network-diagnostics.d.ts.map +1 -1
  314. package/dist/cjs/clusters/wi-fi-network-diagnostics.js +6 -8
  315. package/dist/cjs/clusters/wi-fi-network-diagnostics.js.map +1 -1
  316. package/dist/cjs/clusters/wi-fi-network-management.d.ts +91 -0
  317. package/dist/cjs/clusters/wi-fi-network-management.d.ts.map +1 -0
  318. package/dist/cjs/clusters/wi-fi-network-management.js +122 -0
  319. package/dist/cjs/clusters/wi-fi-network-management.js.map +6 -0
  320. package/dist/cjs/clusters/window-covering.d.ts +66 -78
  321. package/dist/cjs/clusters/window-covering.d.ts.map +1 -1
  322. package/dist/cjs/clusters/window-covering.js +26 -37
  323. package/dist/cjs/clusters/window-covering.js.map +1 -1
  324. package/dist/cjs/globals/AtomicAttributeStatus.d.ts +34 -0
  325. package/dist/cjs/globals/AtomicAttributeStatus.d.ts.map +1 -0
  326. package/dist/cjs/globals/AtomicAttributeStatus.js +46 -0
  327. package/dist/cjs/globals/AtomicAttributeStatus.js.map +6 -0
  328. package/dist/cjs/globals/AtomicRequestType.d.ts +24 -0
  329. package/dist/cjs/globals/AtomicRequestType.d.ts.map +1 -0
  330. package/dist/cjs/globals/AtomicRequestType.js +35 -0
  331. package/dist/cjs/globals/AtomicRequestType.js.map +6 -0
  332. package/dist/cjs/globals/Locationdesc.d.ts +79 -0
  333. package/dist/cjs/globals/Locationdesc.d.ts.map +1 -0
  334. package/dist/cjs/globals/Locationdesc.js +89 -0
  335. package/dist/cjs/globals/Locationdesc.js.map +6 -0
  336. package/dist/cjs/globals/Priority.d.ts +1 -1
  337. package/dist/cjs/globals/Semtag.d.ts +6 -6
  338. package/dist/cjs/globals/Semtag.js +4 -4
  339. package/dist/cjs/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
  340. package/dist/cjs/globals/Status.d.ts +18 -3
  341. package/dist/cjs/globals/Status.d.ts.map +1 -1
  342. package/dist/cjs/globals/Status.js +3 -1
  343. package/dist/cjs/globals/Status.js.map +1 -1
  344. package/dist/cjs/globals/Tod.d.ts +2 -2
  345. package/dist/cjs/globals/index.d.ts +3 -0
  346. package/dist/cjs/globals/index.d.ts.map +1 -1
  347. package/dist/cjs/globals/index.js +3 -0
  348. package/dist/cjs/globals/index.js.map +1 -1
  349. package/dist/cjs/schema/QrCodeSchema.d.ts.map +1 -1
  350. package/dist/cjs/schema/QrCodeSchema.js +4 -1
  351. package/dist/cjs/schema/QrCodeSchema.js.map +1 -1
  352. package/dist/esm/clusters/access-control.d.ts +3972 -522
  353. package/dist/esm/clusters/access-control.d.ts.map +1 -1
  354. package/dist/esm/clusters/access-control.js +645 -120
  355. package/dist/esm/clusters/access-control.js.map +2 -2
  356. package/dist/esm/clusters/actions.d.ts +10 -9
  357. package/dist/esm/clusters/actions.d.ts.map +1 -1
  358. package/dist/esm/clusters/actions.js +4 -4
  359. package/dist/esm/clusters/actions.js.map +1 -1
  360. package/dist/esm/clusters/administrator-commissioning.d.ts +156 -129
  361. package/dist/esm/clusters/administrator-commissioning.d.ts.map +1 -1
  362. package/dist/esm/clusters/administrator-commissioning.js +40 -35
  363. package/dist/esm/clusters/administrator-commissioning.js.map +1 -1
  364. package/dist/esm/clusters/alarm-base.d.ts +9 -12
  365. package/dist/esm/clusters/alarm-base.d.ts.map +1 -1
  366. package/dist/esm/clusters/alarm-base.js +3 -4
  367. package/dist/esm/clusters/alarm-base.js.map +1 -1
  368. package/dist/esm/clusters/application-launcher.d.ts +27 -15
  369. package/dist/esm/clusters/application-launcher.d.ts.map +1 -1
  370. package/dist/esm/clusters/application-launcher.js +7 -4
  371. package/dist/esm/clusters/application-launcher.js.map +1 -1
  372. package/dist/esm/clusters/ballast-configuration.d.ts +7 -7
  373. package/dist/esm/clusters/ballast-configuration.js +7 -7
  374. package/dist/esm/clusters/basic-information.d.ts +29 -21
  375. package/dist/esm/clusters/basic-information.d.ts.map +1 -1
  376. package/dist/esm/clusters/basic-information.js +29 -21
  377. package/dist/esm/clusters/basic-information.js.map +1 -1
  378. package/dist/esm/clusters/bridged-device-basic-information.d.ts +816 -34
  379. package/dist/esm/clusters/bridged-device-basic-information.d.ts.map +1 -1
  380. package/dist/esm/clusters/bridged-device-basic-information.js +188 -32
  381. package/dist/esm/clusters/bridged-device-basic-information.js.map +2 -2
  382. package/dist/esm/clusters/channel.d.ts +115 -124
  383. package/dist/esm/clusters/channel.d.ts.map +1 -1
  384. package/dist/esm/clusters/channel.js +15 -16
  385. package/dist/esm/clusters/channel.js.map +1 -1
  386. package/dist/esm/clusters/color-control.d.ts +3076 -1366
  387. package/dist/esm/clusters/color-control.d.ts.map +1 -1
  388. package/dist/esm/clusters/color-control.js +424 -358
  389. package/dist/esm/clusters/color-control.js.map +2 -2
  390. package/dist/esm/clusters/commissioner-control.d.ts +268 -0
  391. package/dist/esm/clusters/commissioner-control.d.ts.map +1 -0
  392. package/dist/esm/clusters/commissioner-control.js +174 -0
  393. package/dist/esm/clusters/commissioner-control.js.map +6 -0
  394. package/dist/esm/clusters/content-control.d.ts +497 -221
  395. package/dist/esm/clusters/content-control.d.ts.map +1 -1
  396. package/dist/esm/clusters/content-control.js +60 -42
  397. package/dist/esm/clusters/content-control.js.map +2 -2
  398. package/dist/esm/clusters/content-launcher.d.ts +248 -215
  399. package/dist/esm/clusters/content-launcher.d.ts.map +1 -1
  400. package/dist/esm/clusters/content-launcher.js +16 -15
  401. package/dist/esm/clusters/content-launcher.js.map +1 -1
  402. package/dist/esm/clusters/device-energy-management-mode.d.ts +76 -333
  403. package/dist/esm/clusters/device-energy-management-mode.d.ts.map +1 -1
  404. package/dist/esm/clusters/device-energy-management-mode.js +26 -80
  405. package/dist/esm/clusters/device-energy-management-mode.js.map +1 -1
  406. package/dist/esm/clusters/device-energy-management.d.ts +1299 -930
  407. package/dist/esm/clusters/device-energy-management.d.ts.map +1 -1
  408. package/dist/esm/clusters/device-energy-management.js +189 -160
  409. package/dist/esm/clusters/device-energy-management.js.map +2 -2
  410. package/dist/esm/clusters/dishwasher-alarm.d.ts +14 -17
  411. package/dist/esm/clusters/dishwasher-alarm.d.ts.map +1 -1
  412. package/dist/esm/clusters/dishwasher-alarm.js +3 -4
  413. package/dist/esm/clusters/dishwasher-alarm.js.map +1 -1
  414. package/dist/esm/clusters/dishwasher-mode.d.ts +65 -105
  415. package/dist/esm/clusters/dishwasher-mode.d.ts.map +1 -1
  416. package/dist/esm/clusters/dishwasher-mode.js +13 -25
  417. package/dist/esm/clusters/dishwasher-mode.js.map +1 -1
  418. package/dist/esm/clusters/door-lock.d.ts +2751 -5427
  419. package/dist/esm/clusters/door-lock.d.ts.map +1 -1
  420. package/dist/esm/clusters/door-lock.js +482 -804
  421. package/dist/esm/clusters/door-lock.js.map +2 -2
  422. package/dist/esm/clusters/ecosystem-information.d.ts +186 -0
  423. package/dist/esm/clusters/ecosystem-information.d.ts.map +1 -0
  424. package/dist/esm/clusters/ecosystem-information.js +134 -0
  425. package/dist/esm/clusters/ecosystem-information.js.map +6 -0
  426. package/dist/esm/clusters/electrical-energy-measurement.d.ts +363 -368
  427. package/dist/esm/clusters/electrical-energy-measurement.d.ts.map +1 -1
  428. package/dist/esm/clusters/electrical-energy-measurement.js +15 -16
  429. package/dist/esm/clusters/electrical-energy-measurement.js.map +1 -1
  430. package/dist/esm/clusters/energy-evse-mode.d.ts +92 -330
  431. package/dist/esm/clusters/energy-evse-mode.d.ts.map +1 -1
  432. package/dist/esm/clusters/energy-evse-mode.js +25 -79
  433. package/dist/esm/clusters/energy-evse-mode.js.map +1 -1
  434. package/dist/esm/clusters/energy-evse.d.ts +557 -273
  435. package/dist/esm/clusters/energy-evse.d.ts.map +1 -1
  436. package/dist/esm/clusters/energy-evse.js +107 -55
  437. package/dist/esm/clusters/energy-evse.js.map +1 -1
  438. package/dist/esm/clusters/energy-preference.d.ts +76 -76
  439. package/dist/esm/clusters/energy-preference.d.ts.map +1 -1
  440. package/dist/esm/clusters/energy-preference.js +15 -18
  441. package/dist/esm/clusters/energy-preference.js.map +1 -1
  442. package/dist/esm/clusters/ethernet-network-diagnostics.d.ts +3 -9
  443. package/dist/esm/clusters/ethernet-network-diagnostics.d.ts.map +1 -1
  444. package/dist/esm/clusters/ethernet-network-diagnostics.js +1 -3
  445. package/dist/esm/clusters/ethernet-network-diagnostics.js.map +1 -1
  446. package/dist/esm/clusters/fan-control.d.ts +12 -12
  447. package/dist/esm/clusters/fan-control.js +4 -4
  448. package/dist/esm/clusters/fixed-label.d.ts +7 -2
  449. package/dist/esm/clusters/fixed-label.d.ts.map +1 -1
  450. package/dist/esm/clusters/fixed-label.js.map +1 -1
  451. package/dist/esm/clusters/flow-measurement.d.ts +4 -4
  452. package/dist/esm/clusters/flow-measurement.d.ts.map +1 -1
  453. package/dist/esm/clusters/flow-measurement.js +6 -6
  454. package/dist/esm/clusters/flow-measurement.js.map +1 -1
  455. package/dist/esm/clusters/general-commissioning.d.ts +1416 -111
  456. package/dist/esm/clusters/general-commissioning.d.ts.map +1 -1
  457. package/dist/esm/clusters/general-commissioning.js +274 -56
  458. package/dist/esm/clusters/general-commissioning.js.map +2 -2
  459. package/dist/esm/clusters/general-diagnostics.d.ts +115 -122
  460. package/dist/esm/clusters/general-diagnostics.d.ts.map +1 -1
  461. package/dist/esm/clusters/general-diagnostics.js +31 -33
  462. package/dist/esm/clusters/general-diagnostics.js.map +1 -1
  463. package/dist/esm/clusters/group-key-management.d.ts +72 -82
  464. package/dist/esm/clusters/group-key-management.d.ts.map +1 -1
  465. package/dist/esm/clusters/group-key-management.js +19 -22
  466. package/dist/esm/clusters/group-key-management.js.map +1 -1
  467. package/dist/esm/clusters/groups.d.ts +9 -6
  468. package/dist/esm/clusters/groups.d.ts.map +1 -1
  469. package/dist/esm/clusters/groups.js +3 -2
  470. package/dist/esm/clusters/groups.js.map +1 -1
  471. package/dist/esm/clusters/icd-management.d.ts +223 -66
  472. package/dist/esm/clusters/icd-management.d.ts.map +1 -1
  473. package/dist/esm/clusters/icd-management.js +61 -23
  474. package/dist/esm/clusters/icd-management.js.map +2 -2
  475. package/dist/esm/clusters/identify.d.ts +12 -13
  476. package/dist/esm/clusters/identify.d.ts.map +1 -1
  477. package/dist/esm/clusters/identify.js +9 -10
  478. package/dist/esm/clusters/identify.js.map +1 -1
  479. package/dist/esm/clusters/illuminance-measurement.d.ts +7 -8
  480. package/dist/esm/clusters/illuminance-measurement.d.ts.map +1 -1
  481. package/dist/esm/clusters/illuminance-measurement.js +9 -10
  482. package/dist/esm/clusters/illuminance-measurement.js.map +1 -1
  483. package/dist/esm/clusters/index.d.ts +11 -1
  484. package/dist/esm/clusters/index.d.ts.map +1 -1
  485. package/dist/esm/clusters/index.js +36 -3
  486. package/dist/esm/clusters/index.js.map +1 -1
  487. package/dist/esm/clusters/joint-fabric-datastore-cluster.d.ts +1239 -0
  488. package/dist/esm/clusters/joint-fabric-datastore-cluster.d.ts.map +1 -0
  489. package/dist/esm/clusters/joint-fabric-datastore-cluster.js +470 -0
  490. package/dist/esm/clusters/joint-fabric-datastore-cluster.js.map +6 -0
  491. package/dist/esm/clusters/joint-fabric-pki.d.ts +174 -0
  492. package/dist/esm/clusters/joint-fabric-pki.d.ts.map +1 -0
  493. package/dist/esm/clusters/joint-fabric-pki.js +100 -0
  494. package/dist/esm/clusters/joint-fabric-pki.js.map +6 -0
  495. package/dist/esm/clusters/keypad-input.d.ts +2 -2
  496. package/dist/esm/clusters/laundry-dryer-controls.d.ts +6 -7
  497. package/dist/esm/clusters/laundry-dryer-controls.d.ts.map +1 -1
  498. package/dist/esm/clusters/laundry-dryer-controls.js +6 -10
  499. package/dist/esm/clusters/laundry-dryer-controls.js.map +1 -1
  500. package/dist/esm/clusters/laundry-washer-controls.d.ts +74 -62
  501. package/dist/esm/clusters/laundry-washer-controls.d.ts.map +1 -1
  502. package/dist/esm/clusters/laundry-washer-controls.js +26 -25
  503. package/dist/esm/clusters/laundry-washer-controls.js.map +1 -1
  504. package/dist/esm/clusters/laundry-washer-mode.d.ts +69 -109
  505. package/dist/esm/clusters/laundry-washer-mode.d.ts.map +1 -1
  506. package/dist/esm/clusters/laundry-washer-mode.js +14 -26
  507. package/dist/esm/clusters/laundry-washer-mode.js.map +1 -1
  508. package/dist/esm/clusters/level-control.d.ts +209 -70
  509. package/dist/esm/clusters/level-control.d.ts.map +1 -1
  510. package/dist/esm/clusters/level-control.js +45 -12
  511. package/dist/esm/clusters/level-control.js.map +1 -1
  512. package/dist/esm/clusters/localization-configuration.d.ts +5 -6
  513. package/dist/esm/clusters/localization-configuration.d.ts.map +1 -1
  514. package/dist/esm/clusters/localization-configuration.js +5 -6
  515. package/dist/esm/clusters/localization-configuration.js.map +1 -1
  516. package/dist/esm/clusters/media-input.d.ts +9 -6
  517. package/dist/esm/clusters/media-input.d.ts.map +1 -1
  518. package/dist/esm/clusters/media-input.js +3 -2
  519. package/dist/esm/clusters/media-input.js.map +1 -1
  520. package/dist/esm/clusters/media-playback.d.ts +29 -24
  521. package/dist/esm/clusters/media-playback.d.ts.map +1 -1
  522. package/dist/esm/clusters/media-playback.js +5 -4
  523. package/dist/esm/clusters/media-playback.js.map +1 -1
  524. package/dist/esm/clusters/microwave-oven-control.d.ts +54 -48
  525. package/dist/esm/clusters/microwave-oven-control.d.ts.map +1 -1
  526. package/dist/esm/clusters/microwave-oven-control.js +19 -17
  527. package/dist/esm/clusters/microwave-oven-control.js.map +1 -1
  528. package/dist/esm/clusters/microwave-oven-mode.d.ts +63 -69
  529. package/dist/esm/clusters/microwave-oven-mode.d.ts.map +1 -1
  530. package/dist/esm/clusters/microwave-oven-mode.js +14 -11
  531. package/dist/esm/clusters/microwave-oven-mode.js.map +1 -1
  532. package/dist/esm/clusters/mode-base.d.ts +27 -46
  533. package/dist/esm/clusters/mode-base.d.ts.map +1 -1
  534. package/dist/esm/clusters/mode-base.js +9 -10
  535. package/dist/esm/clusters/mode-base.js.map +1 -1
  536. package/dist/esm/clusters/mode-select.d.ts +33 -27
  537. package/dist/esm/clusters/mode-select.d.ts.map +1 -1
  538. package/dist/esm/clusters/mode-select.js +14 -13
  539. package/dist/esm/clusters/mode-select.js.map +1 -1
  540. package/dist/esm/clusters/network-commissioning.d.ts +263 -240
  541. package/dist/esm/clusters/network-commissioning.d.ts.map +1 -1
  542. package/dist/esm/clusters/network-commissioning.js +46 -39
  543. package/dist/esm/clusters/network-commissioning.js.map +1 -1
  544. package/dist/esm/clusters/occupancy-sensing.d.ts +1002 -63
  545. package/dist/esm/clusters/occupancy-sensing.d.ts.map +1 -1
  546. package/dist/esm/clusters/occupancy-sensing.js +287 -65
  547. package/dist/esm/clusters/occupancy-sensing.js.map +2 -2
  548. package/dist/esm/clusters/on-off.d.ts +18 -24
  549. package/dist/esm/clusters/on-off.d.ts.map +1 -1
  550. package/dist/esm/clusters/on-off.js +3 -4
  551. package/dist/esm/clusters/on-off.js.map +1 -1
  552. package/dist/esm/clusters/operational-credentials.d.ts +98 -85
  553. package/dist/esm/clusters/operational-credentials.d.ts.map +1 -1
  554. package/dist/esm/clusters/operational-credentials.js +56 -49
  555. package/dist/esm/clusters/operational-credentials.js.map +1 -1
  556. package/dist/esm/clusters/operational-state.d.ts +136 -57
  557. package/dist/esm/clusters/operational-state.d.ts.map +1 -1
  558. package/dist/esm/clusters/operational-state.js +63 -37
  559. package/dist/esm/clusters/operational-state.js.map +2 -2
  560. package/dist/esm/clusters/ota-software-update-provider.d.ts +43 -42
  561. package/dist/esm/clusters/ota-software-update-provider.d.ts.map +1 -1
  562. package/dist/esm/clusters/ota-software-update-provider.js +20 -19
  563. package/dist/esm/clusters/ota-software-update-provider.js.map +1 -1
  564. package/dist/esm/clusters/ota-software-update-requestor.d.ts +6 -10
  565. package/dist/esm/clusters/ota-software-update-requestor.d.ts.map +1 -1
  566. package/dist/esm/clusters/ota-software-update-requestor.js +4 -6
  567. package/dist/esm/clusters/ota-software-update-requestor.js.map +1 -1
  568. package/dist/esm/clusters/oven-cavity-operational-state.d.ts +44 -154
  569. package/dist/esm/clusters/oven-cavity-operational-state.d.ts.map +1 -1
  570. package/dist/esm/clusters/oven-cavity-operational-state.js +41 -166
  571. package/dist/esm/clusters/oven-cavity-operational-state.js.map +1 -1
  572. package/dist/esm/clusters/oven-mode.d.ts +79 -349
  573. package/dist/esm/clusters/oven-mode.d.ts.map +1 -1
  574. package/dist/esm/clusters/oven-mode.js +26 -89
  575. package/dist/esm/clusters/oven-mode.js.map +1 -1
  576. package/dist/esm/clusters/power-source.d.ts +169 -44
  577. package/dist/esm/clusters/power-source.d.ts.map +1 -1
  578. package/dist/esm/clusters/power-source.js +40 -16
  579. package/dist/esm/clusters/power-source.js.map +1 -1
  580. package/dist/esm/clusters/pressure-measurement.js +2 -2
  581. package/dist/esm/clusters/pressure-measurement.js.map +1 -1
  582. package/dist/esm/clusters/pump-configuration-and-control.d.ts +73 -63
  583. package/dist/esm/clusters/pump-configuration-and-control.d.ts.map +1 -1
  584. package/dist/esm/clusters/pump-configuration-and-control.js +19 -20
  585. package/dist/esm/clusters/pump-configuration-and-control.js.map +1 -1
  586. package/dist/esm/clusters/refrigerator-alarm.d.ts +2 -1
  587. package/dist/esm/clusters/refrigerator-alarm.d.ts.map +1 -1
  588. package/dist/esm/clusters/refrigerator-alarm.js.map +1 -1
  589. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +59 -91
  590. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  591. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +12 -20
  592. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  593. package/dist/esm/clusters/relative-humidity-measurement.js +1 -1
  594. package/dist/esm/clusters/relative-humidity-measurement.js.map +1 -1
  595. package/dist/esm/clusters/rvc-clean-mode.d.ts +59 -103
  596. package/dist/esm/clusters/rvc-clean-mode.d.ts.map +1 -1
  597. package/dist/esm/clusters/rvc-clean-mode.js +11 -15
  598. package/dist/esm/clusters/rvc-clean-mode.js.map +1 -1
  599. package/dist/esm/clusters/rvc-operational-state.d.ts +81 -25
  600. package/dist/esm/clusters/rvc-operational-state.d.ts.map +1 -1
  601. package/dist/esm/clusters/rvc-operational-state.js +49 -20
  602. package/dist/esm/clusters/rvc-operational-state.js.map +1 -1
  603. package/dist/esm/clusters/rvc-run-mode.d.ts +85 -129
  604. package/dist/esm/clusters/rvc-run-mode.d.ts.map +1 -1
  605. package/dist/esm/clusters/rvc-run-mode.js +16 -15
  606. package/dist/esm/clusters/rvc-run-mode.js.map +1 -1
  607. package/dist/esm/clusters/scenes-management.d.ts +328 -181
  608. package/dist/esm/clusters/scenes-management.d.ts.map +1 -1
  609. package/dist/esm/clusters/scenes-management.js +37 -22
  610. package/dist/esm/clusters/scenes-management.js.map +1 -1
  611. package/dist/esm/clusters/service-area.d.ts +2052 -0
  612. package/dist/esm/clusters/service-area.d.ts.map +1 -0
  613. package/dist/esm/clusters/service-area.js +562 -0
  614. package/dist/esm/clusters/service-area.js.map +6 -0
  615. package/dist/esm/clusters/smoke-co-alarm.d.ts +10 -18
  616. package/dist/esm/clusters/smoke-co-alarm.d.ts.map +1 -1
  617. package/dist/esm/clusters/smoke-co-alarm.js +2 -3
  618. package/dist/esm/clusters/smoke-co-alarm.js.map +1 -1
  619. package/dist/esm/clusters/switch.d.ts +478 -191
  620. package/dist/esm/clusters/switch.d.ts.map +1 -1
  621. package/dist/esm/clusters/switch.js +145 -57
  622. package/dist/esm/clusters/switch.js.map +1 -1
  623. package/dist/esm/clusters/target-navigator.d.ts +1 -1
  624. package/dist/esm/clusters/target-navigator.js +1 -1
  625. package/dist/esm/clusters/thermostat.d.ts +3877 -830
  626. package/dist/esm/clusters/thermostat.d.ts.map +1 -1
  627. package/dist/esm/clusters/thermostat.js +842 -160
  628. package/dist/esm/clusters/thermostat.js.map +2 -2
  629. package/dist/esm/clusters/thread-border-router-management.d.ts +711 -0
  630. package/dist/esm/clusters/thread-border-router-management.d.ts.map +1 -0
  631. package/dist/esm/clusters/thread-border-router-management.js +245 -0
  632. package/dist/esm/clusters/thread-border-router-management.js.map +6 -0
  633. package/dist/esm/clusters/thread-network-diagnostics.d.ts +81 -55
  634. package/dist/esm/clusters/thread-network-diagnostics.d.ts.map +1 -1
  635. package/dist/esm/clusters/thread-network-diagnostics.js +32 -21
  636. package/dist/esm/clusters/thread-network-diagnostics.js.map +1 -1
  637. package/dist/esm/clusters/thread-network-directory.d.ts +250 -0
  638. package/dist/esm/clusters/thread-network-directory.d.ts.map +1 -0
  639. package/dist/esm/clusters/thread-network-directory.js +167 -0
  640. package/dist/esm/clusters/thread-network-directory.js.map +6 -0
  641. package/dist/esm/clusters/time-synchronization.d.ts +101 -76
  642. package/dist/esm/clusters/time-synchronization.d.ts.map +1 -1
  643. package/dist/esm/clusters/time-synchronization.js +30 -23
  644. package/dist/esm/clusters/time-synchronization.js.map +1 -1
  645. package/dist/esm/clusters/unit-localization.d.ts +3 -4
  646. package/dist/esm/clusters/unit-localization.d.ts.map +1 -1
  647. package/dist/esm/clusters/unit-localization.js.map +1 -1
  648. package/dist/esm/clusters/user-label.d.ts +2 -1
  649. package/dist/esm/clusters/user-label.d.ts.map +1 -1
  650. package/dist/esm/clusters/user-label.js.map +1 -1
  651. package/dist/esm/clusters/water-heater-management.d.ts +1371 -0
  652. package/dist/esm/clusters/water-heater-management.d.ts.map +1 -0
  653. package/dist/esm/clusters/water-heater-management.js +325 -0
  654. package/dist/esm/clusters/water-heater-management.js.map +6 -0
  655. package/dist/esm/clusters/water-heater-mode.d.ts +491 -0
  656. package/dist/esm/clusters/water-heater-mode.d.ts.map +1 -0
  657. package/dist/esm/clusters/water-heater-mode.js +175 -0
  658. package/dist/esm/clusters/water-heater-mode.js.map +6 -0
  659. package/dist/esm/clusters/water-tank-level-monitoring.d.ts +162 -0
  660. package/dist/esm/clusters/water-tank-level-monitoring.d.ts.map +1 -0
  661. package/dist/esm/clusters/water-tank-level-monitoring.js +27 -0
  662. package/dist/esm/clusters/water-tank-level-monitoring.js.map +6 -0
  663. package/dist/esm/clusters/wi-fi-network-diagnostics.d.ts +20 -27
  664. package/dist/esm/clusters/wi-fi-network-diagnostics.d.ts.map +1 -1
  665. package/dist/esm/clusters/wi-fi-network-diagnostics.js +6 -8
  666. package/dist/esm/clusters/wi-fi-network-diagnostics.js.map +1 -1
  667. package/dist/esm/clusters/wi-fi-network-management.d.ts +91 -0
  668. package/dist/esm/clusters/wi-fi-network-management.d.ts.map +1 -0
  669. package/dist/esm/clusters/wi-fi-network-management.js +102 -0
  670. package/dist/esm/clusters/wi-fi-network-management.js.map +6 -0
  671. package/dist/esm/clusters/window-covering.d.ts +66 -78
  672. package/dist/esm/clusters/window-covering.d.ts.map +1 -1
  673. package/dist/esm/clusters/window-covering.js +26 -37
  674. package/dist/esm/clusters/window-covering.js.map +1 -1
  675. package/dist/esm/globals/AtomicAttributeStatus.d.ts +34 -0
  676. package/dist/esm/globals/AtomicAttributeStatus.d.ts.map +1 -0
  677. package/dist/esm/globals/AtomicAttributeStatus.js +26 -0
  678. package/dist/esm/globals/AtomicAttributeStatus.js.map +6 -0
  679. package/dist/esm/globals/AtomicRequestType.d.ts +24 -0
  680. package/dist/esm/globals/AtomicRequestType.d.ts.map +1 -0
  681. package/dist/esm/globals/AtomicRequestType.js +15 -0
  682. package/dist/esm/globals/AtomicRequestType.js.map +6 -0
  683. package/dist/esm/globals/Locationdesc.d.ts +79 -0
  684. package/dist/esm/globals/Locationdesc.d.ts.map +1 -0
  685. package/dist/esm/globals/Locationdesc.js +69 -0
  686. package/dist/esm/globals/Locationdesc.js.map +6 -0
  687. package/dist/esm/globals/Priority.d.ts +1 -1
  688. package/dist/esm/globals/Semtag.d.ts +6 -6
  689. package/dist/esm/globals/Semtag.js +4 -4
  690. package/dist/esm/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
  691. package/dist/esm/globals/Status.d.ts +18 -3
  692. package/dist/esm/globals/Status.d.ts.map +1 -1
  693. package/dist/esm/globals/Status.js +3 -1
  694. package/dist/esm/globals/Status.js.map +1 -1
  695. package/dist/esm/globals/Tod.d.ts +2 -2
  696. package/dist/esm/globals/index.d.ts +3 -0
  697. package/dist/esm/globals/index.d.ts.map +1 -1
  698. package/dist/esm/globals/index.js +3 -0
  699. package/dist/esm/globals/index.js.map +1 -1
  700. package/dist/esm/schema/QrCodeSchema.d.ts.map +1 -1
  701. package/dist/esm/schema/QrCodeSchema.js +4 -1
  702. package/dist/esm/schema/QrCodeSchema.js.map +1 -1
  703. package/package.json +5 -5
  704. package/src/clusters/access-control.ts +926 -171
  705. package/src/clusters/actions.ts +12 -11
  706. package/src/clusters/administrator-commissioning.ts +54 -35
  707. package/src/clusters/alarm-base.ts +3 -4
  708. package/src/clusters/application-launcher.ts +22 -7
  709. package/src/clusters/ballast-configuration.ts +7 -7
  710. package/src/clusters/basic-information.ts +29 -21
  711. package/src/clusters/bridged-device-basic-information.ts +264 -41
  712. package/src/clusters/channel.ts +20 -17
  713. package/src/clusters/color-control.ts +589 -426
  714. package/src/clusters/commissioner-control.ts +282 -0
  715. package/src/clusters/content-control.ts +48 -54
  716. package/src/clusters/content-launcher.ts +16 -15
  717. package/src/clusters/device-energy-management-mode.ts +63 -161
  718. package/src/clusters/device-energy-management.ts +246 -193
  719. package/src/clusters/dishwasher-alarm.ts +5 -5
  720. package/src/clusters/dishwasher-mode.ts +46 -87
  721. package/src/clusters/door-lock.ts +786 -1235
  722. package/src/clusters/ecosystem-information.ts +200 -0
  723. package/src/clusters/electrical-energy-measurement.ts +15 -16
  724. package/src/clusters/energy-evse-mode.ts +81 -158
  725. package/src/clusters/energy-evse.ts +138 -72
  726. package/src/clusters/energy-preference.ts +34 -28
  727. package/src/clusters/ethernet-network-diagnostics.ts +1 -3
  728. package/src/clusters/fan-control.ts +5 -5
  729. package/src/clusters/fixed-label.ts +7 -2
  730. package/src/clusters/flow-measurement.ts +6 -6
  731. package/src/clusters/general-commissioning.ts +396 -96
  732. package/src/clusters/general-diagnostics.ts +31 -33
  733. package/src/clusters/group-key-management.ts +22 -24
  734. package/src/clusters/groups.ts +3 -2
  735. package/src/clusters/icd-management.ts +88 -31
  736. package/src/clusters/identify.ts +9 -10
  737. package/src/clusters/illuminance-measurement.ts +9 -10
  738. package/src/clusters/index.ts +14 -1
  739. package/src/clusters/joint-fabric-datastore-cluster.ts +657 -0
  740. package/src/clusters/joint-fabric-pki.ts +202 -0
  741. package/src/clusters/keypad-input.ts +2 -2
  742. package/src/clusters/laundry-dryer-controls.ts +6 -10
  743. package/src/clusters/laundry-washer-controls.ts +28 -27
  744. package/src/clusters/laundry-washer-mode.ts +49 -90
  745. package/src/clusters/level-control.ts +45 -12
  746. package/src/clusters/localization-configuration.ts +5 -6
  747. package/src/clusters/media-input.ts +3 -2
  748. package/src/clusters/media-playback.ts +9 -7
  749. package/src/clusters/microwave-oven-control.ts +19 -17
  750. package/src/clusters/microwave-oven-mode.ts +42 -61
  751. package/src/clusters/mode-base.ts +16 -33
  752. package/src/clusters/mode-select.ts +17 -14
  753. package/src/clusters/network-commissioning.ts +47 -40
  754. package/src/clusters/occupancy-sensing.ts +433 -72
  755. package/src/clusters/on-off.ts +6 -8
  756. package/src/clusters/operational-credentials.ts +54 -47
  757. package/src/clusters/operational-state.ts +136 -58
  758. package/src/clusters/ota-software-update-provider.ts +23 -23
  759. package/src/clusters/ota-software-update-requestor.ts +4 -6
  760. package/src/clusters/oven-cavity-operational-state.ts +43 -171
  761. package/src/clusters/oven-mode.ts +76 -178
  762. package/src/clusters/power-source.ts +45 -21
  763. package/src/clusters/pressure-measurement.ts +2 -2
  764. package/src/clusters/pump-configuration-and-control.ts +35 -23
  765. package/src/clusters/refrigerator-alarm.ts +2 -1
  766. package/src/clusters/refrigerator-and-temperature-controlled-cabinet-mode.ts +41 -78
  767. package/src/clusters/relative-humidity-measurement.ts +1 -1
  768. package/src/clusters/rvc-clean-mode.ts +42 -101
  769. package/src/clusters/rvc-operational-state.ts +87 -25
  770. package/src/clusters/rvc-run-mode.ts +62 -126
  771. package/src/clusters/scenes-management.ts +38 -23
  772. package/src/clusters/service-area.ts +904 -0
  773. package/src/clusters/smoke-co-alarm.ts +6 -12
  774. package/src/clusters/switch.ts +177 -78
  775. package/src/clusters/target-navigator.ts +1 -1
  776. package/src/clusters/thermostat.ts +1245 -214
  777. package/src/clusters/thread-border-router-management.ts +355 -0
  778. package/src/clusters/thread-network-diagnostics.ts +34 -21
  779. package/src/clusters/thread-network-directory.ts +256 -0
  780. package/src/clusters/time-synchronization.ts +30 -23
  781. package/src/clusters/unit-localization.ts +3 -4
  782. package/src/clusters/user-label.ts +2 -1
  783. package/src/clusters/water-heater-management.ts +457 -0
  784. package/src/clusters/water-heater-mode.ts +301 -0
  785. package/src/clusters/water-tank-level-monitoring.ts +50 -0
  786. package/src/clusters/wi-fi-network-diagnostics.ts +6 -8
  787. package/src/clusters/wi-fi-network-management.ts +119 -0
  788. package/src/clusters/window-covering.ts +26 -37
  789. package/src/globals/AtomicAttributeStatus.ts +41 -0
  790. package/src/globals/AtomicRequestType.ts +27 -0
  791. package/src/globals/Locationdesc.ts +88 -0
  792. package/src/globals/Priority.ts +1 -1
  793. package/src/globals/Semtag.ts +6 -6
  794. package/src/globals/SoftwareVersionCertificationStatus.ts +1 -1
  795. package/src/globals/Status.ts +20 -3
  796. package/src/globals/Tod.ts +2 -2
  797. package/src/globals/index.ts +3 -0
  798. package/src/schema/QrCodeSchema.ts +7 -2
  799. package/dist/cjs/clusters/pulse-width-modulation.d.ts +0 -2023
  800. package/dist/cjs/clusters/pulse-width-modulation.d.ts.map +0 -1
  801. package/dist/cjs/clusters/pulse-width-modulation.js +0 -51
  802. package/dist/cjs/clusters/pulse-width-modulation.js.map +0 -6
  803. package/dist/esm/clusters/pulse-width-modulation.d.ts +0 -2023
  804. package/dist/esm/clusters/pulse-width-modulation.d.ts.map +0 -1
  805. package/dist/esm/clusters/pulse-width-modulation.js +0 -31
  806. package/dist/esm/clusters/pulse-width-modulation.js.map +0 -6
  807. package/src/clusters/pulse-width-modulation.ts +0 -54
@@ -8,8 +8,8 @@
8
8
 
9
9
  import { MutableCluster } from "../cluster/mutation/MutableCluster.js";
10
10
  import { Attribute, Command, TlvNoResponse, Event, EventPriority, FixedAttribute } from "../cluster/Cluster.js";
11
- import { TlvArray } from "../tlv/TlvArray.js";
12
11
  import { TlvField, TlvObject, TlvOptionalField } from "../tlv/TlvObject.js";
12
+ import { TlvArray } from "../tlv/TlvArray.js";
13
13
  import { TlvInt64, TlvUInt32, TlvEnum, TlvUInt16, TlvEpochS, TlvInt32, TlvUInt8, TlvInt8 } from "../tlv/TlvNumber.js";
14
14
  import { TypeFromSchema } from "../tlv/TlvSchema.js";
15
15
  import { TlvNullable } from "../tlv/TlvNullable.js";
@@ -34,14 +34,15 @@ export namespace DeviceEnergyManagement {
34
34
  * curtail power requirements during peak periods, but can also be used to turn on an ESA if there is excess
35
35
  * renewable or local generation (Solar PV).
36
36
  *
37
- * For example, a home may have solar PV which often produces more power than the home requires,
38
- *
39
- * resulting in the excess power flowing into the grid. This excess power naturally fluctuates when clouds pass
40
- * overhead and other loads in the home are switched on and off.
37
+ * For example, a home may have solar PV which often produces more power than the home requires, resulting in
38
+ * the excess power flowing into the grid. This excess power naturally fluctuates when clouds pass overhead and
39
+ * other loads in the home are switched on and off.
41
40
  *
42
41
  * EVSE Example: An EMS may therefore be able to turn on the EVSE (if the vehicle is plugged in) and can start
43
42
  * charging the vehicle, and periodically modify the charging power depending on PV generation and other home
44
- * loads, so as to minimize import and export to the grid.
43
+ * loads, so as to minimize import and export to the grid. An EMS may also use this feature to control the
44
+ * discharging (and re-charging) of the vehicle if the EVSE and vehicle support the V2X feature of the EVSE
45
+ * cluster of the associated EVSE device.
45
46
  *
46
47
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.4.1
47
48
  */
@@ -139,8 +140,9 @@ export namespace DeviceEnergyManagement {
139
140
  /**
140
141
  * Pausable (PAU)
141
142
  *
142
- * ESAs which support the Pausable feature, allow an EMS to recommend a pause in the middle of a forecast power
143
- * profile that the ESA is currently using.
143
+ * ESAs which support the Pausable feature, allow an EMS to recommend a pause in the middle of a
144
+ *
145
+ * forecast power profile that the ESA is currently using.
144
146
  *
145
147
  * Washing machine example: A Washing Machine is in operation, and starting its water heating step.
146
148
  *
@@ -197,8 +199,9 @@ export namespace DeviceEnergyManagement {
197
199
  *
198
200
  * ESAs which support the Constraint-Based Adjustment feature allow an EMS to inform the ESA of periods during
199
201
  * which power usage should be modified (for example when the EMS has been made aware that the grid supplier
200
- * has requested reduced energy usage due to overall peak grid demand) and may cause the ESA to modify the
201
- * intended power profile has previously suggested it would use.
202
+ * has requested reduced energy usage due to overall peak grid demand)
203
+ *
204
+ * and may cause the ESA to modify the intended power profile has previously suggested it would use.
202
205
  *
203
206
  * EVSE example: An EVSE scheduling system may have determined that the vehicle would be charged starting at a
204
207
  * moderate rate at 1am, so that it has enough charge by the time it is needed later that morning.
@@ -206,9 +209,8 @@ export namespace DeviceEnergyManagement {
206
209
  * However, the DSR service provider has informed the EMS that due to high forecast winds it is now forecast
207
210
  * that there will be very cheap energy available from wind generation between 2am and 3am.
208
211
  *
209
- * The EMS first requests the Forecast data from each of its registered ESAs. It determines that the
210
- *
211
- * EVSE has a power profile suggesting it plans to start charging the vehicle at 1am.
212
+ * The EMS first requests the Forecast data from each of its registered ESAs. It determines that the EVSE has a
213
+ * power profile suggesting it plans to start charging the vehicle at 1am.
212
214
  *
213
215
  * The EMS can then try to reduce the cost of charging the EV by informing the EVSE of the desire to increase
214
216
  * the charging between scheduled times.
@@ -223,41 +225,37 @@ export namespace DeviceEnergyManagement {
223
225
  }
224
226
 
225
227
  /**
226
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9
228
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10
227
229
  */
228
230
  export const TlvPowerAdjust = TlvObject({
229
231
  /**
230
232
  * This field shall indicate the minimum power that the ESA can have its power adjusted to.
231
233
  *
232
- * Note that this is a signed value. Negative values indicate power flows away from loads (e.g. charging a
233
- * battery inverter).
234
+ * Note that this is a signed value. Negative values indicate power flows out of the node (e.g. discharging a
235
+ * battery).
234
236
  *
235
- * MinPower shall be less than MaxPower.
236
- *
237
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.1
237
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.1
238
238
  */
239
239
  minPower: TlvField(0, TlvInt64),
240
240
 
241
241
  /**
242
242
  * This field shall indicate the maximum power that the ESA can have its power adjusted to.
243
243
  *
244
- * Note that this is a signed value. Negative values indicate power flows away from loads (e.g. charging a
245
- * battery inverter).
246
- *
247
- * MinPower shall be less than MaxPower.
244
+ * Note that this is a signed value. Negative values indicate power flows out of the node (e.g. discharging a
245
+ * battery).
248
246
  *
249
247
  * For example, if the charging current of an EVSE can be adjusted within the range of 6A to 32A on a 230V
250
248
  * supply, then the power adjustment range is between 1380W and 7360W. Here the MinPower would be 1380W, and
251
249
  * MaxPower would be 7360W.
252
250
  *
253
- * For example, if a battery storage inverter can discharge between 0 to 3000W towards a load, then its
254
- * MinPower would be 0W and its MaxPower would be 3000W.
251
+ * For example, if a battery storage inverter can discharge between 0 to 3000W towards a load, then power is
252
+ * flowing out of the node and is therefore negative. Its MinPower would be -3000W and its MaxPower would be 0W.
255
253
  *
256
254
  * In another example, if a battery storage inverter can charge its internal battery, between 0W and 2000W.
257
- * Here power is flowing away from the home loads, so the power values need to be negative. As such the
258
- * MinPower becomes -2000W and MaxPower becomes 0W.
255
+ * Here power is flowing into the node when charging. As such the MinPower becomes 0W and MaxPower becomes
256
+ * 2000W.
259
257
  *
260
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.2
258
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.2
261
259
  */
262
260
  maxPower: TlvField(1, TlvInt64),
263
261
 
@@ -266,9 +264,7 @@ export namespace DeviceEnergyManagement {
266
264
  * adjustment. Manufacturers may use this to as an anti-cycling capability to avoid controllers from rapidly
267
265
  * making power adjustments.
268
266
  *
269
- * Note that MinDuration shall be less than MaxDuration.
270
- *
271
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.3
267
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.3
272
268
  */
273
269
  minDuration: TlvField(2, TlvUInt32),
274
270
 
@@ -277,18 +273,68 @@ export namespace DeviceEnergyManagement {
277
273
  * adjustment. Manufacturers may use this to protect the user experience, to avoid over heating of the ESA,
278
274
  * ensuring that there is sufficient headroom to use or store energy in the ESA or for any other reason.
279
275
  *
280
- * Note that MinDuration shall be less than MaxDuration.
281
- *
282
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.4
276
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.4
283
277
  */
284
278
  maxDuration: TlvField(3, TlvUInt32)
285
279
  });
286
280
 
287
281
  /**
288
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9
282
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10
289
283
  */
290
284
  export interface PowerAdjust extends TypeFromSchema<typeof TlvPowerAdjust> {}
291
285
 
286
+ /**
287
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8
288
+ */
289
+ export enum PowerAdjustReason {
290
+ /**
291
+ * There is no Power Adjustment active
292
+ */
293
+ NoAdjustment = 0,
294
+
295
+ /**
296
+ * There is PowerAdjustment active due to local EMS optimization
297
+ */
298
+ LocalOptimizationAdjustment = 1,
299
+
300
+ /**
301
+ * There is PowerAdjustment active due to local EMS optimization
302
+ */
303
+ GridOptimizationAdjustment = 2
304
+ }
305
+
306
+ /**
307
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11
308
+ */
309
+ export const TlvPowerAdjustCapability = TlvObject({
310
+ /**
311
+ * This field shall indicate how the ESA can be adjusted at the current time.
312
+ *
313
+ * For example, a battery storage inverter may need to regulate its internal temperature, or the charging rate
314
+ * of the battery may be limited due to cold temperatures, or a change in the state of charge of the battery
315
+ * may mean that the maximum charging or discharging rate is limited.
316
+ *
317
+ * An empty list shall indicate that no power adjustment is currently possible.
318
+ *
319
+ * Multiple entries in the list allow indicating that permutations of scenarios may be possible.
320
+ *
321
+ * For example, a 10kWh battery could be at 80% state of charge. If charging at 2kW, then it would be full in 1
322
+ * hour. However, it could be discharged at 2kW for 4 hours.
323
+ *
324
+ * In this example the list of PowerAdjustStructs allows multiple scenarios to be offered as follows:
325
+ *
326
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12
327
+ */
328
+ powerAdjustCapability: TlvField(0, TlvNullable(TlvArray(TlvPowerAdjust, { maxLength: 8 }))),
329
+
330
+ cause: TlvField(1, TlvEnum<PowerAdjustReason>())
331
+ });
332
+
333
+ /**
334
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11
335
+ */
336
+ export interface PowerAdjustCapability extends TypeFromSchema<typeof TlvPowerAdjustCapability> {}
337
+
292
338
  /**
293
339
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.6
294
340
  */
@@ -398,9 +444,9 @@ export namespace DeviceEnergyManagement {
398
444
  /**
399
445
  * This field shall indicate the approximate energy used by the ESA during the session.
400
446
  *
401
- * For example, if the ESA was on and was adjusted to be switched off, then this shall be 0W. If this was a
402
- * battery inverter that was requested to charge it would have a negative energy use. If this was a normal load
403
- * that was turned on, then it will have positive value.
447
+ * For example, if the ESA was on and was adjusted to be switched off, then this shall be 0 mWh. If this was a
448
+ * battery inverter that was requested to discharge it would have a negative EnergyUse value. If this was a
449
+ * normal load that was turned on, then it will have positive value.
404
450
  *
405
451
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.10.2.3
406
452
  */
@@ -466,13 +512,13 @@ export namespace DeviceEnergyManagement {
466
512
  * This indicates a generic mechanism for expressing cost to run an appliance, in terms of financial, GHG
467
513
  * emissions, comfort value etc.
468
514
  *
469
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8
515
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9
470
516
  */
471
517
  export const TlvCost = TlvObject({
472
518
  /**
473
519
  * This field shall indicate the type of cost being represented (see CostTypeEnum).
474
520
  *
475
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8.1
521
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.1
476
522
  */
477
523
  costType: TlvField(0, TlvEnum<CostType>()),
478
524
 
@@ -482,7 +528,7 @@ export namespace DeviceEnergyManagement {
482
528
  *
483
529
  * For example, if the Value was -302 and DecimalPoints was 2, then this would represent a benefit of 3.02.
484
530
  *
485
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8.2
531
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.2
486
532
  */
487
533
  value: TlvField(1, TlvInt32),
488
534
 
@@ -490,7 +536,7 @@ export namespace DeviceEnergyManagement {
490
536
  * This field shall indicate the number of digits to the right of the decimal point in the Value field. For
491
537
  * example, if the Value was 102 and DecimalPoints was 2, then this would represent a cost of 1.02.
492
538
  *
493
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8.3
539
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.3
494
540
  */
495
541
  decimalPoints: TlvField(2, TlvUInt8),
496
542
 
@@ -500,7 +546,7 @@ export namespace DeviceEnergyManagement {
500
546
  *
501
547
  * This is an optional field. It shall be included if CostType is Financial.
502
548
  *
503
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8.4
549
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9.4
504
550
  */
505
551
  currency: TlvOptionalField(3, TlvUInt16.bound({ max: 999 }))
506
552
  });
@@ -509,34 +555,34 @@ export namespace DeviceEnergyManagement {
509
555
  * This indicates a generic mechanism for expressing cost to run an appliance, in terms of financial, GHG
510
556
  * emissions, comfort value etc.
511
557
  *
512
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.8
558
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.9
513
559
  */
514
560
  export interface Cost extends TypeFromSchema<typeof TlvCost> {}
515
561
 
516
562
  /**
517
563
  * This indicates a specific stage of an ESA’s operation.
518
564
  *
519
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11
565
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14
520
566
  */
521
567
  export const TlvSlot = TlvObject({
522
568
  /**
523
569
  * This field shall indicate the minimum time (in seconds) that the appliance expects to be in this slot for.
524
570
  *
525
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.1
571
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.1
526
572
  */
527
573
  minDuration: TlvField(0, TlvUInt32),
528
574
 
529
575
  /**
530
576
  * This field shall indicate the maximum time (in seconds) that the appliance expects to be in this slot for.
531
577
  *
532
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.2
578
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.2
533
579
  */
534
580
  maxDuration: TlvField(1, TlvUInt32),
535
581
 
536
582
  /**
537
583
  * This field shall indicate the expected time (in seconds) that the appliance expects to be in this slot for.
538
584
  *
539
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.3
585
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.3
540
586
  */
541
587
  defaultDuration: TlvField(2, TlvUInt32),
542
588
 
@@ -550,7 +596,7 @@ export namespace DeviceEnergyManagement {
550
596
  *
551
597
  * When the Forecast attribute is read, then this value shall be the most recent value.
552
598
  *
553
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.4
599
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.4
554
600
  */
555
601
  elapsedSlotTime: TlvField(3, TlvUInt32),
556
602
 
@@ -563,29 +609,34 @@ export namespace DeviceEnergyManagement {
563
609
  * When subscribed to, a change in this field value shall NOT cause the Forecast attribute to be updated, since
564
610
  * this value may change every 1 second.
565
611
  *
566
- * Note that if the ESA is currently paused, then this value shall not change.
612
+ * Note that if the ESA is currently paused, then this value shall NOT change.
567
613
  *
568
614
  * When the Forecast attribute is read, then this value shall be the most recent value.
569
615
  *
570
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.5
616
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.5
571
617
  */
572
618
  remainingSlotTime: TlvField(4, TlvUInt32),
573
619
 
574
- slotIsPauseable: TlvOptionalField(5, TlvBoolean),
620
+ /**
621
+ * This field shall indicate whether this slot can be paused.
622
+ *
623
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.6
624
+ */
625
+ slotIsPausable: TlvOptionalField(5, TlvBoolean),
575
626
 
576
627
  /**
577
628
  * This field shall indicate the shortest period that the slot can be paused for. This can be set to avoid
578
629
  * controllers trying to pause ESAs for short periods and then resuming operation in a cyclic fashion which may
579
630
  * damage or cause excess energy to be consumed with restarting of an operation.
580
631
  *
581
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.7
632
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.7
582
633
  */
583
634
  minPauseDuration: TlvOptionalField(6, TlvUInt32),
584
635
 
585
636
  /**
586
637
  * This field shall indicate the longest period that the slot can be paused for.
587
638
  *
588
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.8
639
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.8
589
640
  */
590
641
  maxPauseDuration: TlvOptionalField(7, TlvUInt32),
591
642
 
@@ -605,11 +656,11 @@ export namespace DeviceEnergyManagement {
605
656
  * NOTE An ESA shall always use the same value to represent the same operating state.
606
657
  *
607
658
  * By providing this information a smart EMS may be able to learn the observed power draw when the ESA is put
608
- * into a specific state. It can potentially then use the information in the PowerForecastReporting data to
609
- * predict the power draw from the appliance and potentially ask it to modify its timing via one of the
610
- * adjustment request commands, or adjust other ESAs power to compensate.
659
+ * into a specific state. It can potentially then use the ManufacturerESAState field in the Forecast attribute
660
+ * along with observed power drawn to predict the power draw from the appliance and potentially ask it to
661
+ * modify its timing via one of the adjustment request commands, or adjust other ESAs power to compensate.
611
662
  *
612
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.9
663
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.9
613
664
  */
614
665
  manufacturerEsaState: TlvOptionalField(8, TlvUInt16),
615
666
 
@@ -618,7 +669,7 @@ export namespace DeviceEnergyManagement {
618
669
  * considered the average value over the slot, and some variation from this would be expected (for example, as
619
670
  * it is ramping up).
620
671
  *
621
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.10
672
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.10
622
673
  */
623
674
  nominalPower: TlvOptionalField(9, TlvInt64),
624
675
 
@@ -628,7 +679,7 @@ export namespace DeviceEnergyManagement {
628
679
  *
629
680
  * Some appliances (e.g. battery inverters which can charge and discharge) may have a negative power.
630
681
  *
631
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.11
682
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.11
632
683
  */
633
684
  minPower: TlvOptionalField(10, TlvInt64),
634
685
 
@@ -638,7 +689,7 @@ export namespace DeviceEnergyManagement {
638
689
  *
639
690
  * Some appliances (e.g. battery inverters which can charge and discharge) may have a negative power.
640
691
  *
641
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.12
692
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.12
642
693
  */
643
694
  maxPower: TlvOptionalField(11, TlvInt64),
644
695
 
@@ -647,7 +698,7 @@ export namespace DeviceEnergyManagement {
647
698
  *
648
699
  * Some appliances (e.g. battery inverters which can charge and discharge) may have a negative energy.
649
700
  *
650
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.13
701
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.13
651
702
  */
652
703
  nominalEnergy: TlvOptionalField(12, TlvInt64),
653
704
 
@@ -671,7 +722,7 @@ export namespace DeviceEnergyManagement {
671
722
  * If the ESA cannot calculate its cost for any reason (such as losing its connection to a Price server) it may
672
723
  * omit this field. This is treated as extra meta data that an EMS may use to optimize a system.
673
724
  *
674
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.14
725
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.14
675
726
  */
676
727
  costs: TlvOptionalField(13, TlvArray(TlvCost, { maxLength: 5 })),
677
728
 
@@ -682,7 +733,7 @@ export namespace DeviceEnergyManagement {
682
733
  * If the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this allows an ESA to
683
734
  * indicate it could be switched on to charge, but this would be the minimum power limit it can be set to.
684
735
  *
685
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.15
736
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.15
686
737
  */
687
738
  minPowerAdjustment: TlvOptionalField(14, TlvInt64),
688
739
 
@@ -693,7 +744,7 @@ export namespace DeviceEnergyManagement {
693
744
  * the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this allows an ESA to
694
745
  * indicate it could be switched on to charge, but this would be the maximum power limit it can be set to.
695
746
  *
696
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.16
747
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.16
697
748
  */
698
749
  maxPowerAdjustment: TlvOptionalField(15, TlvInt64),
699
750
 
@@ -706,7 +757,7 @@ export namespace DeviceEnergyManagement {
706
757
  *
707
758
  * For example, a heat pump compressor may have a minimum cycle time of order a few minutes.
708
759
  *
709
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.17
760
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.17
710
761
  */
711
762
  minDurationAdjustment: TlvOptionalField(16, TlvUInt32),
712
763
 
@@ -719,7 +770,7 @@ export namespace DeviceEnergyManagement {
719
770
  * which can be discharged, it may equally indicate the maximum time the battery could be discharged for (at
720
771
  * the MaxPowerAdjustment power level).
721
772
  *
722
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11.18
773
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14.18
723
774
  */
724
775
  maxDurationAdjustment: TlvOptionalField(17, TlvUInt32)
725
776
  });
@@ -727,7 +778,7 @@ export namespace DeviceEnergyManagement {
727
778
  /**
728
779
  * This indicates a specific stage of an ESA’s operation.
729
780
  *
730
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.11
781
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.14
731
782
  */
732
783
  export interface Slot extends TypeFromSchema<typeof TlvSlot> {}
733
784
 
@@ -760,7 +811,7 @@ export namespace DeviceEnergyManagement {
760
811
  *
761
812
  * feature and instead report its internal state.
762
813
  *
763
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10
814
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13
764
815
  */
765
816
  export const TlvForecast = TlvObject({
766
817
  /**
@@ -771,40 +822,39 @@ export namespace DeviceEnergyManagement {
771
822
  * previous subscriptions are lost if a device reboots. The loss of a subscription and subsequent
772
823
  * re-subscription allows the EMS to learn about any new forecasts.
773
824
  *
774
- * The value of ForecastId is allowed to wrap.
825
+ * The value of ForecastID is allowed to wrap.
775
826
  *
776
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.1
827
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.1
777
828
  */
778
- forecastId: TlvField(0, TlvUInt16),
829
+ forecastId: TlvField(0, TlvUInt32),
779
830
 
780
831
  /**
781
832
  * This field shall indicate which element of the Slots list is currently active in the Forecast sequence. A
782
833
  * null value indicates that the sequence has not yet started.
783
834
  *
784
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.2
835
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.2
785
836
  */
786
837
  activeSlotNumber: TlvField(1, TlvNullable(TlvUInt16)),
787
838
 
788
839
  /**
789
840
  * This field shall indicate the planned start time, in UTC, for the entire Forecast.
790
841
  *
791
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.3
842
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.3
792
843
  */
793
844
  startTime: TlvField(2, TlvEpochS),
794
845
 
795
846
  /**
796
847
  * This field shall indicate the planned end time, in UTC, for the entire Forecast.
797
848
  *
798
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.4
849
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.4
799
850
  */
800
851
  endTime: TlvField(3, TlvEpochS),
801
852
 
802
853
  /**
803
- * This field shall indicate the earliest start time, in UTC, that the entire Forecast can be shifted to.
804
- *
805
- * A null value indicates that it can be started immediately.
854
+ * This field shall indicate the earliest start time, in UTC, that the entire Forecast can be shifted to. A
855
+ * null value indicates that it can be started immediately.
806
856
  *
807
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.5
857
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.5
808
858
  */
809
859
  earliestStartTime: TlvOptionalField(4, TlvNullable(TlvEpochS)),
810
860
 
@@ -814,7 +864,7 @@ export namespace DeviceEnergyManagement {
814
864
  * e.g. for an EVSE charging session, this may indicate the departure time for the vehicle, by which time the
815
865
  * charging session must end.
816
866
  *
817
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.6
867
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.6
818
868
  */
819
869
  latestEndTime: TlvOptionalField(5, TlvEpochS),
820
870
 
@@ -823,23 +873,23 @@ export namespace DeviceEnergyManagement {
823
873
  * this flag and if it is false, then none of the slots contain SlotIsPausable set to true. This can save a
824
874
  * client from having to check each slot in the list.
825
875
  *
826
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.7
876
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.7
827
877
  */
828
- isPauseable: TlvField(6, TlvBoolean),
878
+ isPausable: TlvField(6, TlvBoolean),
829
879
 
830
880
  /**
831
881
  * This field shall contain a list of SlotStructs.
832
882
  *
833
883
  * It shall contain at least 1 entry, and a maximum of 10.
834
884
  *
835
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.8
885
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.8
836
886
  */
837
887
  slots: TlvField(7, TlvArray(TlvSlot, { maxLength: 10 })),
838
888
 
839
889
  /**
840
890
  * This field shall contain the reason the current Forecast was generated.
841
891
  *
842
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10.9
892
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.9
843
893
  */
844
894
  forecastUpdateReason: TlvField(8, TlvEnum<ForecastUpdateReason>())
845
895
  });
@@ -853,7 +903,7 @@ export namespace DeviceEnergyManagement {
853
903
  *
854
904
  * feature and instead report its internal state.
855
905
  *
856
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.10
906
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13
857
907
  */
858
908
  export interface Forecast extends TypeFromSchema<typeof TlvForecast> {}
859
909
 
@@ -969,7 +1019,7 @@ export namespace DeviceEnergyManagement {
969
1019
  export interface StartTimeAdjustRequest extends TypeFromSchema<typeof TlvStartTimeAdjustRequest> {}
970
1020
 
971
1021
  /**
972
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12
1022
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.15
973
1023
  */
974
1024
  export const TlvSlotAdjustment = TlvObject({
975
1025
  /**
@@ -977,30 +1027,33 @@ export namespace DeviceEnergyManagement {
977
1027
  * be less than the actual length of the Slots list (implicitly it must be in the range 0 to 9 based on the
978
1028
  * maximum length of the Slots list constraint).
979
1029
  *
980
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12.1
1030
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.15.1
981
1031
  */
982
1032
  slotIndex: TlvField(0, TlvUInt8),
983
1033
 
984
1034
  /**
985
1035
  * This field shall indicate the new requested power that the ESA shall operate at. It MUST be between the
986
- * MinPowerAdjustment and MaxPowerAdjustment for the slot as advertised by the ESA.
1036
+ * AbsMinPower and AbsMaxPower attributes as advertised by the ESA if it supports PFR.
1037
+ *
1038
+ * This is a signed value and can be used to indicate charging or discharging. If the ESA does NOT support PFR
1039
+ * this value shall be ignored by the ESA.
987
1040
  *
988
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12.2
1041
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.15.2
989
1042
  */
990
- nominalPower: TlvField(1, TlvInt64),
1043
+ nominalPower: TlvOptionalField(1, TlvInt64),
991
1044
 
992
1045
  /**
993
1046
  * This field shall indicate the new requested duration, in seconds, that the ESA shall extend or shorten the
994
1047
  * slot duration to. It MUST be between the MinDurationAdjustment and MaxDurationAdjustment for the slot as
995
1048
  * advertised by the ESA.
996
1049
  *
997
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12.3
1050
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.15.3
998
1051
  */
999
1052
  duration: TlvField(2, TlvUInt32)
1000
1053
  });
1001
1054
 
1002
1055
  /**
1003
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.12
1056
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.15
1004
1057
  */
1005
1058
  export interface SlotAdjustment extends TypeFromSchema<typeof TlvSlotAdjustment> {}
1006
1059
 
@@ -1011,7 +1064,7 @@ export namespace DeviceEnergyManagement {
1011
1064
  */
1012
1065
  export const TlvModifyForecastRequest = TlvObject({
1013
1066
  /**
1014
- * This field shall indicate the ForecastId that is to be modified.
1067
+ * This field shall indicate the ForecastID that is to be modified.
1015
1068
  *
1016
1069
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.9.6.1
1017
1070
  */
@@ -1019,7 +1072,7 @@ export namespace DeviceEnergyManagement {
1019
1072
 
1020
1073
  /**
1021
1074
  * This field shall contain a list of SlotAdjustment parameters that should be modified in the corresponding
1022
- * Forecast with matching ForecastId.
1075
+ * Forecast with matching ForecastID.
1023
1076
  *
1024
1077
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.9.6.2
1025
1078
  */
@@ -1045,7 +1098,7 @@ export namespace DeviceEnergyManagement {
1045
1098
  * perhaps excess solar PV). The format allows the client to suggest that the ESA can either turn up its energy
1046
1099
  * consumption, or turn down its energy consumption during this period.
1047
1100
  *
1048
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13
1101
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16
1049
1102
  */
1050
1103
  export const TlvConstraints = TlvObject({
1051
1104
  /**
@@ -1054,26 +1107,25 @@ export namespace DeviceEnergyManagement {
1054
1107
  *
1055
1108
  * This value is in UTC and MUST be in the future.
1056
1109
  *
1057
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.1
1110
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16.1
1058
1111
  */
1059
1112
  startTime: TlvField(0, TlvEpochS),
1060
1113
 
1061
1114
  /**
1062
1115
  * This field shall indicate the duration of the constraint in seconds.
1063
1116
  *
1064
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.2
1117
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16.2
1065
1118
  */
1066
- duration: TlvField(1, TlvUInt32.bound({ min: 0, max: 86400 })),
1119
+ duration: TlvField(1, TlvUInt32.bound({ max: 86400 })),
1067
1120
 
1068
1121
  /**
1069
1122
  * This field shall indicate the nominal power that client wishes the ESA to operate at during the constrained
1070
1123
  * period. It MUST be between the AbsMinPower and AbsMaxPower attributes as advertised by the ESA if it
1071
1124
  * supports PFR.
1072
1125
  *
1073
- * This is a signed value and can be used to indicate charging or discharging. If the ESA does NOT support PFR
1074
- * this value shall be ignored by the ESA.
1126
+ * This is a signed value and can be used to indicate charging or discharging.
1075
1127
  *
1076
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.3
1128
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16.3
1077
1129
  */
1078
1130
  nominalPower: TlvOptionalField(2, TlvInt64),
1079
1131
 
@@ -1081,10 +1133,9 @@ export namespace DeviceEnergyManagement {
1081
1133
  * This field shall indicate the maximum energy that can be transferred to or from the ESA during the
1082
1134
  * constraint period.
1083
1135
  *
1084
- * This is a signed value and can be used to indicate charging or discharging. If the ESA does NOT support PFR
1085
- * this value may be ignored by the ESA.
1136
+ * This is a signed value and can be used to indicate charging or discharging.
1086
1137
  *
1087
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.4
1138
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16.4
1088
1139
  */
1089
1140
  maximumEnergy: TlvOptionalField(3, TlvInt64),
1090
1141
 
@@ -1098,7 +1149,7 @@ export namespace DeviceEnergyManagement {
1098
1149
  *
1099
1150
  * Note that the mapping between values and operation is manufacturer specific.
1100
1151
  *
1101
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13.5
1152
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16.5
1102
1153
  */
1103
1154
  loadControl: TlvOptionalField(4, TlvInt8)
1104
1155
  });
@@ -1108,7 +1159,7 @@ export namespace DeviceEnergyManagement {
1108
1159
  * perhaps excess solar PV). The format allows the client to suggest that the ESA can either turn up its energy
1109
1160
  * consumption, or turn down its energy consumption during this period.
1110
1161
  *
1111
- * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.13
1162
+ * @see {@link MatterSpecification.v13.Cluster} § 9.2.7.16
1112
1163
  */
1113
1164
  export interface Constraints extends TypeFromSchema<typeof TlvConstraints> {}
1114
1165
 
@@ -1120,7 +1171,8 @@ export namespace DeviceEnergyManagement {
1120
1171
  export const TlvRequestConstraintBasedForecastRequest = TlvObject({
1121
1172
  /**
1122
1173
  * This field shall indicate the series of turn up or turn down power requests that the ESA is being asked to
1123
- * constrain its operation within.
1174
+ * constrain its operation within. These requests shall be in the future, shall be in chronological order,
1175
+ * starting with the earliest start time, and shall NOT overlap in time.
1124
1176
  *
1125
1177
  * For example, a grid event which requires devices to reduce power (turn down) between 4pm and 6pm and due to
1126
1178
  * excess power on the grid overnight, may request ESAs to increase their power demand (turn up) between
@@ -1129,8 +1181,9 @@ export namespace DeviceEnergyManagement {
1129
1181
  * If this ESA supports PFR this would have 2 entries in the list as follows:
1130
1182
  *
1131
1183
  * If this ESA supports SFR where it does not know the actual power, but has an understanding of the functions
1132
- * that use more energy, it could be requested to use more or less energy using the LoadControl field as
1133
- * follows:
1184
+ * that use more energy, it could be requested to use more or less energy using the LoadCon
1185
+ *
1186
+ * trol field as follows:
1134
1187
  *
1135
1188
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.9.7.1
1136
1189
  */
@@ -1267,29 +1320,23 @@ export namespace DeviceEnergyManagement {
1267
1320
  export const PowerAdjustmentComponent = MutableCluster.Component({
1268
1321
  attributes: {
1269
1322
  /**
1270
- * Indicates how the ESA can be adjusted at the current time. This attribute SHOULD be updated regularly by
1271
- * ESAs.
1323
+ * Indicates how the ESA can be adjusted at the current time, and the state of any active adjustment.
1272
1324
  *
1273
- * For example, a battery storage inverter may need to regulate its internal temperature, or the charging
1274
- * rate of the battery may be limited due to cold temperatures, or a change in the state of charge of the
1275
- * battery may mean that the maximum charging or discharging rate is limited.
1325
+ * A null value indicates that no power adjustment is currently possible, and nor is any adjustment
1326
+ * currently active.
1276
1327
  *
1277
- * An empty list shall indicate that no power adjustment is currently possible.
1328
+ * This attribute SHOULD be updated periodically by ESAs to reflect any changes in internal state, for
1329
+ * example temperature or stored energy, which would affect the power or duration limits.
1278
1330
  *
1279
- * Multiple entries in the list allow to indicate that permutations of scenarios may be possible.
1331
+ * Changes to this attribute shall only be marked as reportable in the following cases:
1280
1332
  *
1281
- * For example, a 10kWh battery could be at 80% state of charge. If charging at 2kW, then it would be full
1282
- * in 1 hour. However, it could be discharged at 2kW for 4 hours.
1333
+ * At most once every 10 seconds on changes, or
1283
1334
  *
1284
- * In this example the list of PowerAdjustStructs allows multiple scenarios to be offered as follows:
1335
+ * When it changes from null to any other value and vice versa.
1285
1336
  *
1286
1337
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.8.6
1287
1338
  */
1288
- powerAdjustmentCapability: Attribute(
1289
- 0x5,
1290
- TlvNullable(TlvArray(TlvPowerAdjust, { maxLength: 8 })),
1291
- { default: null }
1292
- )
1339
+ powerAdjustmentCapability: Attribute(0x5, TlvNullable(TlvPowerAdjustCapability), { default: null })
1293
1340
  },
1294
1341
 
1295
1342
  commands: {
@@ -1335,13 +1382,23 @@ export namespace DeviceEnergyManagement {
1335
1382
  * This attribute allows an ESA to share its intended forecast with a client (such as an Energy Management
1336
1383
  * System).
1337
1384
  *
1338
- * A null value indicates that there is no forecast currently available
1339
- *
1340
- * yet been selected by the user).
1385
+ * A null value indicates that there is no forecast currently available (for example, a program has not yet
1386
+ * been selected by the user).
1341
1387
  *
1342
1388
  * A server may reset this value attribute to null on a reboot, and it does not need to persist any
1343
1389
  * previous forecasts.
1344
1390
  *
1391
+ * Changes to this attribute shall only be marked as reportable in the following cases:
1392
+ *
1393
+ * • At most once every 10 seconds on changes, or
1394
+ *
1395
+ * • When it changes from null to any other value and vice versa, or
1396
+ *
1397
+ * • As a result of a command which causes the forecast to be updated, or
1398
+ *
1399
+ * • As a result of a change in the opt-out status which in turn may cause the ESA to recalculate its
1400
+ * forecast.
1401
+ *
1345
1402
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.8.7
1346
1403
  */
1347
1404
  forecast: Attribute(0x6, TlvNullable(TlvForecast), { default: null })
@@ -1363,8 +1420,29 @@ export namespace DeviceEnergyManagement {
1363
1420
  * optimization reasons, it shall reject any commands which have the AdjustmentCauseEnum value
1364
1421
  * LocalOptimization. If the ESA is in the GridOptOut or OptOut states, so it cannot be controlled by an
1365
1422
  * EMS for grid optimization reasons, it shall reject any commands which have the AdjustmentCauseEnum value
1366
- * GridOptimization. If the ESA is in the LocalOptOut, GridOptOut, or NoOptOut states, the device is still
1367
- * permitted to optimize its own energy usage, for example, using tariff information it may obtain.
1423
+ * GridOptimization.
1424
+ *
1425
+ * If the user changes the Opt-Out state of the ESA which is currently operating with a Forecast that is
1426
+ * due to a previous StartTimeAdjustRequest, ModifyForecastRequest or RequestConstraintBasedForecast
1427
+ * command that would now not be permitted due to the new Opt-out state
1428
+ *
1429
+ * attribute ForecastUpdateReason field currently contains a reason which is now opted out), the ESA shall
1430
+ * behave as if it had received a CancelRequest command.
1431
+ *
1432
+ * If the user changes the Opt-Out state of the ESA which currently has the ESAStateEnum with value Paused
1433
+ * due to a previous PauseRequest command that would now not be permitted due to the new Opt-out state, and
1434
+ * the ESA supports the PFR or SFR features (i.e. the Forecast attribute ForecastUpdateReason field
1435
+ * currently contains a reason which is now opted out), the ESA shall behave as if it had received a
1436
+ * ResumeRequest command.
1437
+ *
1438
+ * If the user changes the Opt-Out state of the ESA which currently has the ESAStateEnum with value
1439
+ * PowerAdjustActive due to a previous PowerAdjustRequest command that would now not be permitted due to
1440
+ * the new Opt-out state (i.e. the Forecast attribute ForecastUpdateReason field currently contains a
1441
+ * reason which is now opted out), the ESA shall behave as if it had received a CancelPowerAdjustRequest
1442
+ * command.
1443
+ *
1444
+ * If the ESA is in the LocalOptOut, GridOptOut, or NoOptOut states, the device is still permitted to
1445
+ * optimize its own energy usage, for example, using tariff information it may obtain.
1368
1446
  *
1369
1447
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.8.8
1370
1448
  */
@@ -1474,7 +1552,7 @@ export namespace DeviceEnergyManagement {
1474
1552
  export const Base = MutableCluster.Component({
1475
1553
  id: 0x98,
1476
1554
  name: "DeviceEnergyManagement",
1477
- revision: 3,
1555
+ revision: 4,
1478
1556
 
1479
1557
  features: {
1480
1558
  /**
@@ -1485,14 +1563,15 @@ export namespace DeviceEnergyManagement {
1485
1563
  * be to curtail power requirements during peak periods, but can also be used to turn on an ESA if there is
1486
1564
  * excess renewable or local generation (Solar PV).
1487
1565
  *
1488
- * For example, a home may have solar PV which often produces more power than the home requires,
1489
- *
1490
- * resulting in the excess power flowing into the grid. This excess power naturally fluctuates when clouds
1491
- * pass overhead and other loads in the home are switched on and off.
1566
+ * For example, a home may have solar PV which often produces more power than the home requires, resulting
1567
+ * in the excess power flowing into the grid. This excess power naturally fluctuates when clouds pass
1568
+ * overhead and other loads in the home are switched on and off.
1492
1569
  *
1493
1570
  * EVSE Example: An EMS may therefore be able to turn on the EVSE (if the vehicle is plugged in) and can
1494
1571
  * start charging the vehicle, and periodically modify the charging power depending on PV generation and
1495
- * other home loads, so as to minimize import and export to the grid.
1572
+ * other home loads, so as to minimize import and export to the grid. An EMS may also use this feature to
1573
+ * control the discharging (and re-charging) of the vehicle if the EVSE and vehicle support the V2X feature
1574
+ * of the EVSE cluster of the associated EVSE device.
1496
1575
  *
1497
1576
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.4.1
1498
1577
  */
@@ -1592,8 +1671,9 @@ export namespace DeviceEnergyManagement {
1592
1671
  /**
1593
1672
  * Pausable
1594
1673
  *
1595
- * ESAs which support the Pausable feature, allow an EMS to recommend a pause in the middle of a forecast
1596
- * power profile that the ESA is currently using.
1674
+ * ESAs which support the Pausable feature, allow an EMS to recommend a pause in the middle of a
1675
+ *
1676
+ * forecast power profile that the ESA is currently using.
1597
1677
  *
1598
1678
  * Washing machine example: A Washing Machine is in operation, and starting its water heating step.
1599
1679
  *
@@ -1651,8 +1731,9 @@ export namespace DeviceEnergyManagement {
1651
1731
  *
1652
1732
  * ESAs which support the Constraint-Based Adjustment feature allow an EMS to inform the ESA of periods
1653
1733
  * during which power usage should be modified (for example when the EMS has been made aware that the grid
1654
- * supplier has requested reduced energy usage due to overall peak grid demand) and may cause the ESA to
1655
- * modify the intended power profile has previously suggested it would use.
1734
+ * supplier has requested reduced energy usage due to overall peak grid demand)
1735
+ *
1736
+ * and may cause the ESA to modify the intended power profile has previously suggested it would use.
1656
1737
  *
1657
1738
  * EVSE example: An EVSE scheduling system may have determined that the vehicle would be charged starting
1658
1739
  * at a moderate rate at 1am, so that it has enough charge by the time it is needed later that morning.
@@ -1660,9 +1741,8 @@ export namespace DeviceEnergyManagement {
1660
1741
  * However, the DSR service provider has informed the EMS that due to high forecast winds it is now
1661
1742
  * forecast that there will be very cheap energy available from wind generation between 2am and 3am.
1662
1743
  *
1663
- * The EMS first requests the Forecast data from each of its registered ESAs. It determines that the
1664
- *
1665
- * EVSE has a power profile suggesting it plans to start charging the vehicle at 1am.
1744
+ * The EMS first requests the Forecast data from each of its registered ESAs. It determines that the EVSE
1745
+ * has a power profile suggesting it plans to start charging the vehicle at 1am.
1666
1746
  *
1667
1747
  * The EMS can then try to reduce the cost of charging the EV by informing the EVSE of the desire to
1668
1748
  * increase the charging between scheduled times.
@@ -1700,17 +1780,17 @@ export namespace DeviceEnergyManagement {
1700
1780
  * the power values reported by the ESA need to have their sign inverted when dealing with forecasts and
1701
1781
  * adjustments.
1702
1782
  *
1703
- * For example, a solar PV inverter (being a generator) may produce positive values to indicate generation,
1704
- * however an EMS when predicting the total home load would need to subtract these positive values from the
1705
- * loads to compute a net import at the grid meter.
1783
+ * For example, a solar PV inverter (being a generator) may produce negative values to indicate generation
1784
+ * (since power is flowing out of the node into the home), however a display showing the power to the
1785
+ * consumers may need to present a positive solar production value to the consumer.
1706
1786
  *
1707
1787
  * For example, a home battery storage system (BESS) which needs to charge the battery and then discharge
1708
1788
  * to the home loads, would be classed as a generator. These types of devices shall have this field set to
1709
1789
  * true. When generating its forecast or advertising its PowerAdjustmentCapability, the power values shall
1710
- * be positive to indicate discharging to the loads in the home, and negative to indicate when it is
1790
+ * be negative to indicate discharging to the loads in the home, and positive to indicate when it is
1711
1791
  * charging its battery.
1712
1792
  *
1713
- * GRID meter = Σ LoadPowers - Σ GeneratorPowers
1793
+ * GRID meter = Σ LoadPowers + Σ GeneratorPowers
1714
1794
  *
1715
1795
  * Example:
1716
1796
  *
@@ -1737,9 +1817,11 @@ export namespace DeviceEnergyManagement {
1737
1817
  * Indicates the minimum electrical power that the ESA can consume when switched on. This does not include
1738
1818
  * when in power save or standby modes.
1739
1819
  *
1740
- * Note that for Generator ESAs that can charge an internal battery (such as a battery storage inverter),
1741
- * the AbsMinPower will be a negative number representing the maximum power that the ESA can charge its
1742
- * internal battery.
1820
+ * NOTE
1821
+ *
1822
+ * For Generator ESAs that can discharge an internal battery (such as a battery storage inverter) to loads
1823
+ * in the home, the AbsMinPower will be a negative number representing the maximum power that the ESA can
1824
+ * discharge its internal battery.
1743
1825
  *
1744
1826
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.8.4
1745
1827
  */
@@ -1748,16 +1830,12 @@ export namespace DeviceEnergyManagement {
1748
1830
  /**
1749
1831
  * Indicates the maximum electrical power that the ESA can consume when switched on.
1750
1832
  *
1751
- * The value of the AbsMaxPower attribute shall be limited
1752
- *
1753
- * AbsMaxPower >= AbsMinPower
1754
- *
1755
- * Note that for Generator ESAs that can discharge a battery to loads in the home (such as a battery
1756
- * storage inverter), the AbsMaxPower will be a positive number representing the maximum power at which the
1757
- * ESA can discharge its internal battery.
1833
+ * Note that for Generator ESAs that can charge a battery by importing power into the node (such as a
1834
+ * battery storage inverter), the AbsMaxPower will be a positive number representing the maximum power at
1835
+ * which the ESA can charge its internal battery.
1758
1836
  *
1759
1837
  * For example, a battery storage inverter that can charge its battery at a maximum power of 2000W and can
1760
- * discharge the battery at a maximum power of 3000W, would have a AbsMinPower: -2000, AbsMaxPower: 3000W.
1838
+ * discharge the battery at a maximum power of 3000W, would have a AbsMinPower: -3000, AbsMaxPower: 2000W.
1761
1839
  *
1762
1840
  * @see {@link MatterSpecification.v13.Cluster} § 9.2.8.5
1763
1841
  */
@@ -1814,34 +1892,9 @@ export namespace DeviceEnergyManagement {
1814
1892
  flags: { constraintBasedAdjustment: true },
1815
1893
  component: StartTimeAdjustmentOrForecastAdjustmentOrConstraintBasedAdjustmentComponent
1816
1894
  },
1817
- { flags: { feature: false, startTimeAdjustment: true, stateForecastReporting: false }, component: false },
1818
- { flags: { feature: false, pausable: true, stateForecastReporting: false }, component: false },
1819
- { flags: { feature: false, forecastAdjustment: true, stateForecastReporting: false }, component: false },
1820
- {
1821
- flags: { feature: false, constraintBasedAdjustment: true, stateForecastReporting: false },
1822
- component: false
1823
- },
1824
- { flags: { feature: false, startTimeAdjustment: true, powerForecastReporting: false }, component: false },
1825
- { flags: { feature: false, pausable: true, powerForecastReporting: false }, component: false },
1826
- { flags: { feature: false, forecastAdjustment: true, powerForecastReporting: false }, component: false },
1827
- {
1828
- flags: { feature: false, constraintBasedAdjustment: true, powerForecastReporting: false },
1829
- component: false
1830
- },
1831
-
1832
- {
1833
- flags: {
1834
- powerAdjustment: false,
1835
- powerForecastReporting: false,
1836
- stateForecastReporting: false,
1837
- startTimeAdjustment: false,
1838
- pausable: false,
1839
- forecastAdjustment: false,
1840
- constraintBasedAdjustment: false
1841
- },
1842
-
1843
- component: false
1844
- }
1895
+ { flags: { staTrue: true, pauTrue: false, faTrue: false, conTrue: false }, component: false },
1896
+ { flags: { powerForecastReporting: true, stateForecastReporting: true }, component: false },
1897
+ { flags: { powerForecastReporting: false, stateForecastReporting: false }, component: false }
1845
1898
  )
1846
1899
  });
1847
1900
 
@@ -1851,12 +1904,14 @@ export namespace DeviceEnergyManagement {
1851
1904
  export const ClusterInstance = MutableCluster.ExtensibleOnly(Base);
1852
1905
 
1853
1906
  /**
1854
- * This cluster allows a client to manage the power draw of a device. An example of such a client could be an
1855
- * Energy Management System (EMS) which controls an Energy Smart Appliance (ESA).
1907
+ * This cluster allows a client to manage the power draw of a device. An example of such a client could
1908
+ *
1909
+ * be an Energy Management System (EMS) which controls an Energy Smart Appliance (ESA).
1856
1910
  *
1857
- * In most deployments the EMS will be the client, and the ESA will host the Energy Management Cluster server.
1911
+ * In most deployments the EMS will be the client, and the ESA will host the Device Energy Management Cluster
1912
+ * server.
1858
1913
  *
1859
- * Figure 15. Example of the how an EMS is a client of multiple ESAs Energy Management clusters.
1914
+ * Figure 17. Example of the how an EMS is a client of multiple ESAs Device Energy Management clusters.
1860
1915
  *
1861
1916
  * This cluster is intended to be generic in nature and could apply to any electrical load or generator (e.g. a
1862
1917
  * Battery Electric Storage System - BESS, solar PV inverter, EVSE, HVAC, heat pump, hot water heater, white goods
@@ -1884,7 +1939,7 @@ export namespace DeviceEnergyManagement {
1884
1939
  * intensity', 'time of use' or 'type of use' tariffs to schedule its operation to run at the cheapest and greenest
1885
1940
  * times.
1886
1941
  *
1887
- * Figure 16. Example of the how an HVAC may use multiple clusters
1942
+ * Figure 18. Example of the how an HVAC may use multiple clusters
1888
1943
  *
1889
1944
  * NOTE
1890
1945
  *
@@ -1896,8 +1951,6 @@ export namespace DeviceEnergyManagement {
1896
1951
  * Different markets may follow different approaches, but the UK [PAS1878] and [EUCodeOfConduct] give examples of
1897
1952
  * how ESAs may be mandated to support these features in the future.
1898
1953
  *
1899
- * NOTE Support of Device Energy Management Cluster is provisional.
1900
- *
1901
1954
  * Per the Matter specification you cannot use {@link DeviceEnergyManagementCluster} without enabling certain
1902
1955
  * feature combinations. You must use the {@link with} factory method to obtain a working cluster.
1903
1956
  *