@matter/types 0.12.6-alpha.0-20250304-03716637c → 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 (857) hide show
  1. package/dist/cjs/cluster/Cluster.d.ts.map +1 -1
  2. package/dist/cjs/cluster/ClusterHelper.d.ts.map +1 -1
  3. package/dist/cjs/clusters/access-control.d.ts +3972 -522
  4. package/dist/cjs/clusters/access-control.d.ts.map +1 -1
  5. package/dist/cjs/clusters/access-control.js +640 -116
  6. package/dist/cjs/clusters/access-control.js.map +2 -2
  7. package/dist/cjs/clusters/actions.d.ts +10 -9
  8. package/dist/cjs/clusters/actions.d.ts.map +1 -1
  9. package/dist/cjs/clusters/actions.js +4 -4
  10. package/dist/cjs/clusters/actions.js.map +1 -1
  11. package/dist/cjs/clusters/administrator-commissioning.d.ts +156 -129
  12. package/dist/cjs/clusters/administrator-commissioning.d.ts.map +1 -1
  13. package/dist/cjs/clusters/administrator-commissioning.js +40 -35
  14. package/dist/cjs/clusters/administrator-commissioning.js.map +1 -1
  15. package/dist/cjs/clusters/alarm-base.d.ts +9 -12
  16. package/dist/cjs/clusters/alarm-base.d.ts.map +1 -1
  17. package/dist/cjs/clusters/alarm-base.js +3 -4
  18. package/dist/cjs/clusters/alarm-base.js.map +1 -1
  19. package/dist/cjs/clusters/application-launcher.d.ts +27 -15
  20. package/dist/cjs/clusters/application-launcher.d.ts.map +1 -1
  21. package/dist/cjs/clusters/application-launcher.js +7 -4
  22. package/dist/cjs/clusters/application-launcher.js.map +1 -1
  23. package/dist/cjs/clusters/ballast-configuration.d.ts +7 -7
  24. package/dist/cjs/clusters/ballast-configuration.js +7 -7
  25. package/dist/cjs/clusters/basic-information.d.ts +29 -21
  26. package/dist/cjs/clusters/basic-information.d.ts.map +1 -1
  27. package/dist/cjs/clusters/basic-information.js +29 -21
  28. package/dist/cjs/clusters/basic-information.js.map +1 -1
  29. package/dist/cjs/clusters/bridged-device-basic-information.d.ts +816 -34
  30. package/dist/cjs/clusters/bridged-device-basic-information.d.ts.map +1 -1
  31. package/dist/cjs/clusters/bridged-device-basic-information.js +182 -29
  32. package/dist/cjs/clusters/bridged-device-basic-information.js.map +2 -2
  33. package/dist/cjs/clusters/channel.d.ts +115 -124
  34. package/dist/cjs/clusters/channel.d.ts.map +1 -1
  35. package/dist/cjs/clusters/channel.js +15 -16
  36. package/dist/cjs/clusters/channel.js.map +1 -1
  37. package/dist/cjs/clusters/color-control.d.ts +3076 -1366
  38. package/dist/cjs/clusters/color-control.d.ts.map +1 -1
  39. package/dist/cjs/clusters/color-control.js +423 -357
  40. package/dist/cjs/clusters/color-control.js.map +2 -2
  41. package/dist/cjs/clusters/commissioner-control.d.ts +268 -0
  42. package/dist/cjs/clusters/commissioner-control.d.ts.map +1 -0
  43. package/dist/cjs/clusters/commissioner-control.js +194 -0
  44. package/dist/cjs/clusters/commissioner-control.js.map +6 -0
  45. package/dist/cjs/clusters/content-control.d.ts +497 -221
  46. package/dist/cjs/clusters/content-control.d.ts.map +1 -1
  47. package/dist/cjs/clusters/content-control.js +59 -41
  48. package/dist/cjs/clusters/content-control.js.map +2 -2
  49. package/dist/cjs/clusters/content-launcher.d.ts +248 -215
  50. package/dist/cjs/clusters/content-launcher.d.ts.map +1 -1
  51. package/dist/cjs/clusters/content-launcher.js +16 -15
  52. package/dist/cjs/clusters/content-launcher.js.map +1 -1
  53. package/dist/cjs/clusters/device-energy-management-mode.d.ts +76 -333
  54. package/dist/cjs/clusters/device-energy-management-mode.d.ts.map +1 -1
  55. package/dist/cjs/clusters/device-energy-management-mode.js +26 -73
  56. package/dist/cjs/clusters/device-energy-management-mode.js.map +1 -1
  57. package/dist/cjs/clusters/device-energy-management.d.ts +1299 -930
  58. package/dist/cjs/clusters/device-energy-management.d.ts.map +1 -1
  59. package/dist/cjs/clusters/device-energy-management.js +189 -160
  60. package/dist/cjs/clusters/device-energy-management.js.map +2 -2
  61. package/dist/cjs/clusters/dishwasher-alarm.d.ts +14 -17
  62. package/dist/cjs/clusters/dishwasher-alarm.d.ts.map +1 -1
  63. package/dist/cjs/clusters/dishwasher-alarm.js +3 -4
  64. package/dist/cjs/clusters/dishwasher-alarm.js.map +1 -1
  65. package/dist/cjs/clusters/dishwasher-mode.d.ts +65 -105
  66. package/dist/cjs/clusters/dishwasher-mode.d.ts.map +1 -1
  67. package/dist/cjs/clusters/dishwasher-mode.js +12 -24
  68. package/dist/cjs/clusters/dishwasher-mode.js.map +1 -1
  69. package/dist/cjs/clusters/door-lock.d.ts +2751 -5427
  70. package/dist/cjs/clusters/door-lock.d.ts.map +1 -1
  71. package/dist/cjs/clusters/door-lock.js +480 -802
  72. package/dist/cjs/clusters/door-lock.js.map +2 -2
  73. package/dist/cjs/clusters/ecosystem-information.d.ts +186 -0
  74. package/dist/cjs/clusters/ecosystem-information.d.ts.map +1 -0
  75. package/dist/cjs/clusters/ecosystem-information.js +154 -0
  76. package/dist/cjs/clusters/ecosystem-information.js.map +6 -0
  77. package/dist/cjs/clusters/electrical-energy-measurement.d.ts +363 -368
  78. package/dist/cjs/clusters/electrical-energy-measurement.d.ts.map +1 -1
  79. package/dist/cjs/clusters/electrical-energy-measurement.js +15 -16
  80. package/dist/cjs/clusters/electrical-energy-measurement.js.map +1 -1
  81. package/dist/cjs/clusters/energy-evse-mode.d.ts +92 -330
  82. package/dist/cjs/clusters/energy-evse-mode.d.ts.map +1 -1
  83. package/dist/cjs/clusters/energy-evse-mode.js +25 -72
  84. package/dist/cjs/clusters/energy-evse-mode.js.map +1 -1
  85. package/dist/cjs/clusters/energy-evse.d.ts +557 -273
  86. package/dist/cjs/clusters/energy-evse.d.ts.map +1 -1
  87. package/dist/cjs/clusters/energy-evse.js +107 -55
  88. package/dist/cjs/clusters/energy-evse.js.map +1 -1
  89. package/dist/cjs/clusters/energy-preference.d.ts +76 -76
  90. package/dist/cjs/clusters/energy-preference.d.ts.map +1 -1
  91. package/dist/cjs/clusters/energy-preference.js +15 -18
  92. package/dist/cjs/clusters/energy-preference.js.map +1 -1
  93. package/dist/cjs/clusters/ethernet-network-diagnostics.d.ts +3 -9
  94. package/dist/cjs/clusters/ethernet-network-diagnostics.d.ts.map +1 -1
  95. package/dist/cjs/clusters/ethernet-network-diagnostics.js +1 -3
  96. package/dist/cjs/clusters/ethernet-network-diagnostics.js.map +1 -1
  97. package/dist/cjs/clusters/fan-control.d.ts +12 -12
  98. package/dist/cjs/clusters/fan-control.js +4 -4
  99. package/dist/cjs/clusters/fixed-label.d.ts +7 -2
  100. package/dist/cjs/clusters/fixed-label.d.ts.map +1 -1
  101. package/dist/cjs/clusters/fixed-label.js.map +1 -1
  102. package/dist/cjs/clusters/flow-measurement.d.ts +4 -4
  103. package/dist/cjs/clusters/flow-measurement.d.ts.map +1 -1
  104. package/dist/cjs/clusters/flow-measurement.js +6 -6
  105. package/dist/cjs/clusters/flow-measurement.js.map +1 -1
  106. package/dist/cjs/clusters/general-commissioning.d.ts +1416 -111
  107. package/dist/cjs/clusters/general-commissioning.d.ts.map +1 -1
  108. package/dist/cjs/clusters/general-commissioning.js +272 -54
  109. package/dist/cjs/clusters/general-commissioning.js.map +2 -2
  110. package/dist/cjs/clusters/general-diagnostics.d.ts +115 -122
  111. package/dist/cjs/clusters/general-diagnostics.d.ts.map +1 -1
  112. package/dist/cjs/clusters/general-diagnostics.js +31 -33
  113. package/dist/cjs/clusters/general-diagnostics.js.map +1 -1
  114. package/dist/cjs/clusters/group-key-management.d.ts +72 -82
  115. package/dist/cjs/clusters/group-key-management.d.ts.map +1 -1
  116. package/dist/cjs/clusters/group-key-management.js +19 -22
  117. package/dist/cjs/clusters/group-key-management.js.map +1 -1
  118. package/dist/cjs/clusters/groups.d.ts +9 -6
  119. package/dist/cjs/clusters/groups.d.ts.map +1 -1
  120. package/dist/cjs/clusters/groups.js +3 -2
  121. package/dist/cjs/clusters/groups.js.map +1 -1
  122. package/dist/cjs/clusters/icd-management.d.ts +223 -66
  123. package/dist/cjs/clusters/icd-management.d.ts.map +1 -1
  124. package/dist/cjs/clusters/icd-management.js +61 -23
  125. package/dist/cjs/clusters/icd-management.js.map +2 -2
  126. package/dist/cjs/clusters/identify.d.ts +12 -13
  127. package/dist/cjs/clusters/identify.d.ts.map +1 -1
  128. package/dist/cjs/clusters/identify.js +9 -10
  129. package/dist/cjs/clusters/identify.js.map +1 -1
  130. package/dist/cjs/clusters/illuminance-measurement.d.ts +7 -8
  131. package/dist/cjs/clusters/illuminance-measurement.d.ts.map +1 -1
  132. package/dist/cjs/clusters/illuminance-measurement.js +9 -10
  133. package/dist/cjs/clusters/illuminance-measurement.js.map +1 -1
  134. package/dist/cjs/clusters/index.d.ts +11 -1
  135. package/dist/cjs/clusters/index.d.ts.map +1 -1
  136. package/dist/cjs/clusters/index.js +33 -3
  137. package/dist/cjs/clusters/index.js.map +1 -1
  138. package/dist/cjs/clusters/joint-fabric-datastore-cluster.d.ts +1239 -0
  139. package/dist/cjs/clusters/joint-fabric-datastore-cluster.d.ts.map +1 -0
  140. package/dist/cjs/clusters/joint-fabric-datastore-cluster.js +490 -0
  141. package/dist/cjs/clusters/joint-fabric-datastore-cluster.js.map +6 -0
  142. package/dist/cjs/clusters/joint-fabric-pki.d.ts +174 -0
  143. package/dist/cjs/clusters/joint-fabric-pki.d.ts.map +1 -0
  144. package/dist/cjs/clusters/joint-fabric-pki.js +120 -0
  145. package/dist/cjs/clusters/joint-fabric-pki.js.map +6 -0
  146. package/dist/cjs/clusters/keypad-input.d.ts +2 -2
  147. package/dist/cjs/clusters/laundry-dryer-controls.d.ts +6 -7
  148. package/dist/cjs/clusters/laundry-dryer-controls.d.ts.map +1 -1
  149. package/dist/cjs/clusters/laundry-dryer-controls.js +5 -9
  150. package/dist/cjs/clusters/laundry-dryer-controls.js.map +1 -1
  151. package/dist/cjs/clusters/laundry-washer-controls.d.ts +74 -62
  152. package/dist/cjs/clusters/laundry-washer-controls.d.ts.map +1 -1
  153. package/dist/cjs/clusters/laundry-washer-controls.js +26 -25
  154. package/dist/cjs/clusters/laundry-washer-controls.js.map +1 -1
  155. package/dist/cjs/clusters/laundry-washer-mode.d.ts +69 -109
  156. package/dist/cjs/clusters/laundry-washer-mode.d.ts.map +1 -1
  157. package/dist/cjs/clusters/laundry-washer-mode.js +13 -25
  158. package/dist/cjs/clusters/laundry-washer-mode.js.map +1 -1
  159. package/dist/cjs/clusters/level-control.d.ts +209 -70
  160. package/dist/cjs/clusters/level-control.d.ts.map +1 -1
  161. package/dist/cjs/clusters/level-control.js +45 -12
  162. package/dist/cjs/clusters/level-control.js.map +1 -1
  163. package/dist/cjs/clusters/localization-configuration.d.ts +5 -6
  164. package/dist/cjs/clusters/localization-configuration.d.ts.map +1 -1
  165. package/dist/cjs/clusters/localization-configuration.js +5 -6
  166. package/dist/cjs/clusters/localization-configuration.js.map +1 -1
  167. package/dist/cjs/clusters/media-input.d.ts +9 -6
  168. package/dist/cjs/clusters/media-input.d.ts.map +1 -1
  169. package/dist/cjs/clusters/media-input.js +3 -2
  170. package/dist/cjs/clusters/media-input.js.map +1 -1
  171. package/dist/cjs/clusters/media-playback.d.ts +29 -24
  172. package/dist/cjs/clusters/media-playback.d.ts.map +1 -1
  173. package/dist/cjs/clusters/media-playback.js +5 -4
  174. package/dist/cjs/clusters/media-playback.js.map +1 -1
  175. package/dist/cjs/clusters/microwave-oven-control.d.ts +54 -48
  176. package/dist/cjs/clusters/microwave-oven-control.d.ts.map +1 -1
  177. package/dist/cjs/clusters/microwave-oven-control.js +19 -17
  178. package/dist/cjs/clusters/microwave-oven-control.js.map +1 -1
  179. package/dist/cjs/clusters/microwave-oven-mode.d.ts +63 -69
  180. package/dist/cjs/clusters/microwave-oven-mode.d.ts.map +1 -1
  181. package/dist/cjs/clusters/microwave-oven-mode.js +14 -11
  182. package/dist/cjs/clusters/microwave-oven-mode.js.map +1 -1
  183. package/dist/cjs/clusters/mode-base.d.ts +27 -46
  184. package/dist/cjs/clusters/mode-base.d.ts.map +1 -1
  185. package/dist/cjs/clusters/mode-base.js +9 -10
  186. package/dist/cjs/clusters/mode-base.js.map +1 -1
  187. package/dist/cjs/clusters/mode-select.d.ts +33 -27
  188. package/dist/cjs/clusters/mode-select.d.ts.map +1 -1
  189. package/dist/cjs/clusters/mode-select.js +14 -13
  190. package/dist/cjs/clusters/mode-select.js.map +1 -1
  191. package/dist/cjs/clusters/network-commissioning.d.ts +263 -240
  192. package/dist/cjs/clusters/network-commissioning.d.ts.map +1 -1
  193. package/dist/cjs/clusters/network-commissioning.js +46 -39
  194. package/dist/cjs/clusters/network-commissioning.js.map +1 -1
  195. package/dist/cjs/clusters/occupancy-sensing.d.ts +1002 -63
  196. package/dist/cjs/clusters/occupancy-sensing.d.ts.map +1 -1
  197. package/dist/cjs/clusters/occupancy-sensing.js +278 -63
  198. package/dist/cjs/clusters/occupancy-sensing.js.map +2 -2
  199. package/dist/cjs/clusters/on-off.d.ts +18 -24
  200. package/dist/cjs/clusters/on-off.d.ts.map +1 -1
  201. package/dist/cjs/clusters/on-off.js +3 -4
  202. package/dist/cjs/clusters/on-off.js.map +1 -1
  203. package/dist/cjs/clusters/operational-credentials.d.ts +98 -85
  204. package/dist/cjs/clusters/operational-credentials.d.ts.map +1 -1
  205. package/dist/cjs/clusters/operational-credentials.js +56 -49
  206. package/dist/cjs/clusters/operational-credentials.js.map +1 -1
  207. package/dist/cjs/clusters/operational-state.d.ts +136 -57
  208. package/dist/cjs/clusters/operational-state.d.ts.map +1 -1
  209. package/dist/cjs/clusters/operational-state.js +62 -36
  210. package/dist/cjs/clusters/operational-state.js.map +2 -2
  211. package/dist/cjs/clusters/ota-software-update-provider.d.ts +43 -42
  212. package/dist/cjs/clusters/ota-software-update-provider.d.ts.map +1 -1
  213. package/dist/cjs/clusters/ota-software-update-provider.js +20 -19
  214. package/dist/cjs/clusters/ota-software-update-provider.js.map +1 -1
  215. package/dist/cjs/clusters/ota-software-update-requestor.d.ts +6 -10
  216. package/dist/cjs/clusters/ota-software-update-requestor.d.ts.map +1 -1
  217. package/dist/cjs/clusters/ota-software-update-requestor.js +4 -6
  218. package/dist/cjs/clusters/ota-software-update-requestor.js.map +1 -1
  219. package/dist/cjs/clusters/oven-cavity-operational-state.d.ts +44 -154
  220. package/dist/cjs/clusters/oven-cavity-operational-state.d.ts.map +1 -1
  221. package/dist/cjs/clusters/oven-cavity-operational-state.js +39 -156
  222. package/dist/cjs/clusters/oven-cavity-operational-state.js.map +1 -1
  223. package/dist/cjs/clusters/oven-mode.d.ts +79 -349
  224. package/dist/cjs/clusters/oven-mode.d.ts.map +1 -1
  225. package/dist/cjs/clusters/oven-mode.js +26 -82
  226. package/dist/cjs/clusters/oven-mode.js.map +1 -1
  227. package/dist/cjs/clusters/power-source.d.ts +169 -44
  228. package/dist/cjs/clusters/power-source.d.ts.map +1 -1
  229. package/dist/cjs/clusters/power-source.js +40 -16
  230. package/dist/cjs/clusters/power-source.js.map +1 -1
  231. package/dist/cjs/clusters/pressure-measurement.js +2 -2
  232. package/dist/cjs/clusters/pressure-measurement.js.map +1 -1
  233. package/dist/cjs/clusters/pump-configuration-and-control.d.ts +73 -63
  234. package/dist/cjs/clusters/pump-configuration-and-control.d.ts.map +1 -1
  235. package/dist/cjs/clusters/pump-configuration-and-control.js +19 -20
  236. package/dist/cjs/clusters/pump-configuration-and-control.js.map +1 -1
  237. package/dist/cjs/clusters/refrigerator-alarm.d.ts +2 -1
  238. package/dist/cjs/clusters/refrigerator-alarm.d.ts.map +1 -1
  239. package/dist/cjs/clusters/refrigerator-alarm.js.map +1 -1
  240. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +59 -91
  241. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  242. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +11 -19
  243. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  244. package/dist/cjs/clusters/relative-humidity-measurement.js +1 -1
  245. package/dist/cjs/clusters/relative-humidity-measurement.js.map +1 -1
  246. package/dist/cjs/clusters/rvc-clean-mode.d.ts +59 -103
  247. package/dist/cjs/clusters/rvc-clean-mode.d.ts.map +1 -1
  248. package/dist/cjs/clusters/rvc-clean-mode.js +11 -15
  249. package/dist/cjs/clusters/rvc-clean-mode.js.map +1 -1
  250. package/dist/cjs/clusters/rvc-operational-state.d.ts +81 -25
  251. package/dist/cjs/clusters/rvc-operational-state.d.ts.map +1 -1
  252. package/dist/cjs/clusters/rvc-operational-state.js +49 -20
  253. package/dist/cjs/clusters/rvc-operational-state.js.map +1 -1
  254. package/dist/cjs/clusters/rvc-run-mode.d.ts +85 -129
  255. package/dist/cjs/clusters/rvc-run-mode.d.ts.map +1 -1
  256. package/dist/cjs/clusters/rvc-run-mode.js +16 -15
  257. package/dist/cjs/clusters/rvc-run-mode.js.map +1 -1
  258. package/dist/cjs/clusters/scenes-management.d.ts +328 -181
  259. package/dist/cjs/clusters/scenes-management.d.ts.map +1 -1
  260. package/dist/cjs/clusters/scenes-management.js +37 -22
  261. package/dist/cjs/clusters/scenes-management.js.map +1 -1
  262. package/dist/cjs/clusters/service-area.d.ts +2052 -0
  263. package/dist/cjs/clusters/service-area.d.ts.map +1 -0
  264. package/dist/cjs/clusters/service-area.js +582 -0
  265. package/dist/cjs/clusters/service-area.js.map +6 -0
  266. package/dist/cjs/clusters/smoke-co-alarm.d.ts +10 -18
  267. package/dist/cjs/clusters/smoke-co-alarm.d.ts.map +1 -1
  268. package/dist/cjs/clusters/smoke-co-alarm.js +2 -3
  269. package/dist/cjs/clusters/smoke-co-alarm.js.map +1 -1
  270. package/dist/cjs/clusters/switch.d.ts +478 -191
  271. package/dist/cjs/clusters/switch.d.ts.map +1 -1
  272. package/dist/cjs/clusters/switch.js +145 -57
  273. package/dist/cjs/clusters/switch.js.map +1 -1
  274. package/dist/cjs/clusters/target-navigator.d.ts +1 -1
  275. package/dist/cjs/clusters/target-navigator.js +1 -1
  276. package/dist/cjs/clusters/thermostat.d.ts +3877 -830
  277. package/dist/cjs/clusters/thermostat.d.ts.map +1 -1
  278. package/dist/cjs/clusters/thermostat.js +841 -159
  279. package/dist/cjs/clusters/thermostat.js.map +2 -2
  280. package/dist/cjs/clusters/thread-border-router-management.d.ts +711 -0
  281. package/dist/cjs/clusters/thread-border-router-management.d.ts.map +1 -0
  282. package/dist/cjs/clusters/thread-border-router-management.js +265 -0
  283. package/dist/cjs/clusters/thread-border-router-management.js.map +6 -0
  284. package/dist/cjs/clusters/thread-network-diagnostics.d.ts +81 -55
  285. package/dist/cjs/clusters/thread-network-diagnostics.d.ts.map +1 -1
  286. package/dist/cjs/clusters/thread-network-diagnostics.js +32 -21
  287. package/dist/cjs/clusters/thread-network-diagnostics.js.map +1 -1
  288. package/dist/cjs/clusters/thread-network-directory.d.ts +250 -0
  289. package/dist/cjs/clusters/thread-network-directory.d.ts.map +1 -0
  290. package/dist/cjs/clusters/thread-network-directory.js +187 -0
  291. package/dist/cjs/clusters/thread-network-directory.js.map +6 -0
  292. package/dist/cjs/clusters/time-synchronization.d.ts +101 -76
  293. package/dist/cjs/clusters/time-synchronization.d.ts.map +1 -1
  294. package/dist/cjs/clusters/time-synchronization.js +30 -23
  295. package/dist/cjs/clusters/time-synchronization.js.map +1 -1
  296. package/dist/cjs/clusters/unit-localization.d.ts +3 -4
  297. package/dist/cjs/clusters/unit-localization.d.ts.map +1 -1
  298. package/dist/cjs/clusters/unit-localization.js.map +1 -1
  299. package/dist/cjs/clusters/user-label.d.ts +2 -1
  300. package/dist/cjs/clusters/user-label.d.ts.map +1 -1
  301. package/dist/cjs/clusters/user-label.js.map +1 -1
  302. package/dist/cjs/clusters/water-heater-management.d.ts +1371 -0
  303. package/dist/cjs/clusters/water-heater-management.d.ts.map +1 -0
  304. package/dist/cjs/clusters/water-heater-management.js +336 -0
  305. package/dist/cjs/clusters/water-heater-management.js.map +6 -0
  306. package/dist/cjs/clusters/water-heater-mode.d.ts +491 -0
  307. package/dist/cjs/clusters/water-heater-mode.d.ts.map +1 -0
  308. package/dist/cjs/clusters/water-heater-mode.js +195 -0
  309. package/dist/cjs/clusters/water-heater-mode.js.map +6 -0
  310. package/dist/cjs/clusters/water-tank-level-monitoring.d.ts +162 -0
  311. package/dist/cjs/clusters/water-tank-level-monitoring.d.ts.map +1 -0
  312. package/dist/cjs/clusters/water-tank-level-monitoring.js +47 -0
  313. package/dist/cjs/clusters/water-tank-level-monitoring.js.map +6 -0
  314. package/dist/cjs/clusters/wi-fi-network-diagnostics.d.ts +20 -27
  315. package/dist/cjs/clusters/wi-fi-network-diagnostics.d.ts.map +1 -1
  316. package/dist/cjs/clusters/wi-fi-network-diagnostics.js +6 -8
  317. package/dist/cjs/clusters/wi-fi-network-diagnostics.js.map +1 -1
  318. package/dist/cjs/clusters/wi-fi-network-management.d.ts +91 -0
  319. package/dist/cjs/clusters/wi-fi-network-management.d.ts.map +1 -0
  320. package/dist/cjs/clusters/wi-fi-network-management.js +122 -0
  321. package/dist/cjs/clusters/wi-fi-network-management.js.map +6 -0
  322. package/dist/cjs/clusters/window-covering.d.ts +66 -78
  323. package/dist/cjs/clusters/window-covering.d.ts.map +1 -1
  324. package/dist/cjs/clusters/window-covering.js +26 -37
  325. package/dist/cjs/clusters/window-covering.js.map +1 -1
  326. package/dist/cjs/common/ValidationError.d.ts.map +1 -1
  327. package/dist/cjs/datatype/AttributeId.d.ts.map +1 -1
  328. package/dist/cjs/datatype/CaseAuthenticatedTag.d.ts.map +1 -1
  329. package/dist/cjs/datatype/ClusterId.d.ts.map +1 -1
  330. package/dist/cjs/datatype/CommandId.d.ts +1 -0
  331. package/dist/cjs/datatype/CommandId.d.ts.map +1 -1
  332. package/dist/cjs/datatype/CommandId.js +3 -0
  333. package/dist/cjs/datatype/CommandId.js.map +1 -1
  334. package/dist/cjs/datatype/FieldId.d.ts.map +1 -1
  335. package/dist/cjs/datatype/ManufacturerExtensibleIdentifier.d.ts.map +1 -1
  336. package/dist/cjs/datatype/NodeId.d.ts.map +1 -1
  337. package/dist/cjs/datatype/VendorId.d.ts.map +1 -1
  338. package/dist/cjs/globals/AtomicAttributeStatus.d.ts +34 -0
  339. package/dist/cjs/globals/AtomicAttributeStatus.d.ts.map +1 -0
  340. package/dist/cjs/globals/AtomicAttributeStatus.js +46 -0
  341. package/dist/cjs/globals/AtomicAttributeStatus.js.map +6 -0
  342. package/dist/cjs/globals/AtomicRequestType.d.ts +24 -0
  343. package/dist/cjs/globals/AtomicRequestType.d.ts.map +1 -0
  344. package/dist/cjs/globals/AtomicRequestType.js +35 -0
  345. package/dist/cjs/globals/AtomicRequestType.js.map +6 -0
  346. package/dist/cjs/globals/Locationdesc.d.ts +79 -0
  347. package/dist/cjs/globals/Locationdesc.d.ts.map +1 -0
  348. package/dist/cjs/globals/Locationdesc.js +89 -0
  349. package/dist/cjs/globals/Locationdesc.js.map +6 -0
  350. package/dist/cjs/globals/Priority.d.ts +1 -1
  351. package/dist/cjs/globals/Semtag.d.ts +6 -6
  352. package/dist/cjs/globals/Semtag.js +4 -4
  353. package/dist/cjs/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
  354. package/dist/cjs/globals/Status.d.ts +18 -3
  355. package/dist/cjs/globals/Status.d.ts.map +1 -1
  356. package/dist/cjs/globals/Status.js +3 -1
  357. package/dist/cjs/globals/Status.js.map +1 -1
  358. package/dist/cjs/globals/Tod.d.ts +2 -2
  359. package/dist/cjs/globals/index.d.ts +3 -0
  360. package/dist/cjs/globals/index.d.ts.map +1 -1
  361. package/dist/cjs/globals/index.js +3 -0
  362. package/dist/cjs/globals/index.js.map +1 -1
  363. package/dist/cjs/schema/BitmapSchema.d.ts.map +1 -1
  364. package/dist/cjs/schema/PairingCodeSchema.d.ts +32 -4
  365. package/dist/cjs/schema/PairingCodeSchema.d.ts.map +1 -1
  366. package/dist/cjs/schema/PairingCodeSchema.js +17 -3
  367. package/dist/cjs/schema/PairingCodeSchema.js.map +1 -1
  368. package/dist/cjs/schema/QrCodeSchema.d.ts.map +1 -1
  369. package/dist/cjs/schema/QrCodeSchema.js +4 -1
  370. package/dist/cjs/schema/QrCodeSchema.js.map +1 -1
  371. package/dist/cjs/schema/SpecificationVersionSchema.d.ts.map +1 -1
  372. package/dist/cjs/tlv/TlvArray.d.ts.map +1 -1
  373. package/dist/cjs/tlv/TlvNullable.d.ts.map +1 -1
  374. package/dist/cjs/tlv/TlvNumber.d.ts.map +1 -1
  375. package/dist/cjs/tlv/TlvObject.d.ts.map +1 -1
  376. package/dist/esm/cluster/Cluster.d.ts.map +1 -1
  377. package/dist/esm/cluster/ClusterHelper.d.ts.map +1 -1
  378. package/dist/esm/clusters/access-control.d.ts +3972 -522
  379. package/dist/esm/clusters/access-control.d.ts.map +1 -1
  380. package/dist/esm/clusters/access-control.js +645 -120
  381. package/dist/esm/clusters/access-control.js.map +2 -2
  382. package/dist/esm/clusters/actions.d.ts +10 -9
  383. package/dist/esm/clusters/actions.d.ts.map +1 -1
  384. package/dist/esm/clusters/actions.js +4 -4
  385. package/dist/esm/clusters/actions.js.map +1 -1
  386. package/dist/esm/clusters/administrator-commissioning.d.ts +156 -129
  387. package/dist/esm/clusters/administrator-commissioning.d.ts.map +1 -1
  388. package/dist/esm/clusters/administrator-commissioning.js +40 -35
  389. package/dist/esm/clusters/administrator-commissioning.js.map +1 -1
  390. package/dist/esm/clusters/alarm-base.d.ts +9 -12
  391. package/dist/esm/clusters/alarm-base.d.ts.map +1 -1
  392. package/dist/esm/clusters/alarm-base.js +3 -4
  393. package/dist/esm/clusters/alarm-base.js.map +1 -1
  394. package/dist/esm/clusters/application-launcher.d.ts +27 -15
  395. package/dist/esm/clusters/application-launcher.d.ts.map +1 -1
  396. package/dist/esm/clusters/application-launcher.js +7 -4
  397. package/dist/esm/clusters/application-launcher.js.map +1 -1
  398. package/dist/esm/clusters/ballast-configuration.d.ts +7 -7
  399. package/dist/esm/clusters/ballast-configuration.js +7 -7
  400. package/dist/esm/clusters/basic-information.d.ts +29 -21
  401. package/dist/esm/clusters/basic-information.d.ts.map +1 -1
  402. package/dist/esm/clusters/basic-information.js +29 -21
  403. package/dist/esm/clusters/basic-information.js.map +1 -1
  404. package/dist/esm/clusters/bridged-device-basic-information.d.ts +816 -34
  405. package/dist/esm/clusters/bridged-device-basic-information.d.ts.map +1 -1
  406. package/dist/esm/clusters/bridged-device-basic-information.js +188 -32
  407. package/dist/esm/clusters/bridged-device-basic-information.js.map +2 -2
  408. package/dist/esm/clusters/channel.d.ts +115 -124
  409. package/dist/esm/clusters/channel.d.ts.map +1 -1
  410. package/dist/esm/clusters/channel.js +15 -16
  411. package/dist/esm/clusters/channel.js.map +1 -1
  412. package/dist/esm/clusters/color-control.d.ts +3076 -1366
  413. package/dist/esm/clusters/color-control.d.ts.map +1 -1
  414. package/dist/esm/clusters/color-control.js +424 -358
  415. package/dist/esm/clusters/color-control.js.map +2 -2
  416. package/dist/esm/clusters/commissioner-control.d.ts +268 -0
  417. package/dist/esm/clusters/commissioner-control.d.ts.map +1 -0
  418. package/dist/esm/clusters/commissioner-control.js +174 -0
  419. package/dist/esm/clusters/commissioner-control.js.map +6 -0
  420. package/dist/esm/clusters/content-control.d.ts +497 -221
  421. package/dist/esm/clusters/content-control.d.ts.map +1 -1
  422. package/dist/esm/clusters/content-control.js +60 -42
  423. package/dist/esm/clusters/content-control.js.map +2 -2
  424. package/dist/esm/clusters/content-launcher.d.ts +248 -215
  425. package/dist/esm/clusters/content-launcher.d.ts.map +1 -1
  426. package/dist/esm/clusters/content-launcher.js +16 -15
  427. package/dist/esm/clusters/content-launcher.js.map +1 -1
  428. package/dist/esm/clusters/device-energy-management-mode.d.ts +76 -333
  429. package/dist/esm/clusters/device-energy-management-mode.d.ts.map +1 -1
  430. package/dist/esm/clusters/device-energy-management-mode.js +26 -80
  431. package/dist/esm/clusters/device-energy-management-mode.js.map +1 -1
  432. package/dist/esm/clusters/device-energy-management.d.ts +1299 -930
  433. package/dist/esm/clusters/device-energy-management.d.ts.map +1 -1
  434. package/dist/esm/clusters/device-energy-management.js +189 -160
  435. package/dist/esm/clusters/device-energy-management.js.map +2 -2
  436. package/dist/esm/clusters/dishwasher-alarm.d.ts +14 -17
  437. package/dist/esm/clusters/dishwasher-alarm.d.ts.map +1 -1
  438. package/dist/esm/clusters/dishwasher-alarm.js +3 -4
  439. package/dist/esm/clusters/dishwasher-alarm.js.map +1 -1
  440. package/dist/esm/clusters/dishwasher-mode.d.ts +65 -105
  441. package/dist/esm/clusters/dishwasher-mode.d.ts.map +1 -1
  442. package/dist/esm/clusters/dishwasher-mode.js +13 -25
  443. package/dist/esm/clusters/dishwasher-mode.js.map +1 -1
  444. package/dist/esm/clusters/door-lock.d.ts +2751 -5427
  445. package/dist/esm/clusters/door-lock.d.ts.map +1 -1
  446. package/dist/esm/clusters/door-lock.js +482 -804
  447. package/dist/esm/clusters/door-lock.js.map +2 -2
  448. package/dist/esm/clusters/ecosystem-information.d.ts +186 -0
  449. package/dist/esm/clusters/ecosystem-information.d.ts.map +1 -0
  450. package/dist/esm/clusters/ecosystem-information.js +134 -0
  451. package/dist/esm/clusters/ecosystem-information.js.map +6 -0
  452. package/dist/esm/clusters/electrical-energy-measurement.d.ts +363 -368
  453. package/dist/esm/clusters/electrical-energy-measurement.d.ts.map +1 -1
  454. package/dist/esm/clusters/electrical-energy-measurement.js +15 -16
  455. package/dist/esm/clusters/electrical-energy-measurement.js.map +1 -1
  456. package/dist/esm/clusters/energy-evse-mode.d.ts +92 -330
  457. package/dist/esm/clusters/energy-evse-mode.d.ts.map +1 -1
  458. package/dist/esm/clusters/energy-evse-mode.js +25 -79
  459. package/dist/esm/clusters/energy-evse-mode.js.map +1 -1
  460. package/dist/esm/clusters/energy-evse.d.ts +557 -273
  461. package/dist/esm/clusters/energy-evse.d.ts.map +1 -1
  462. package/dist/esm/clusters/energy-evse.js +107 -55
  463. package/dist/esm/clusters/energy-evse.js.map +1 -1
  464. package/dist/esm/clusters/energy-preference.d.ts +76 -76
  465. package/dist/esm/clusters/energy-preference.d.ts.map +1 -1
  466. package/dist/esm/clusters/energy-preference.js +15 -18
  467. package/dist/esm/clusters/energy-preference.js.map +1 -1
  468. package/dist/esm/clusters/ethernet-network-diagnostics.d.ts +3 -9
  469. package/dist/esm/clusters/ethernet-network-diagnostics.d.ts.map +1 -1
  470. package/dist/esm/clusters/ethernet-network-diagnostics.js +1 -3
  471. package/dist/esm/clusters/ethernet-network-diagnostics.js.map +1 -1
  472. package/dist/esm/clusters/fan-control.d.ts +12 -12
  473. package/dist/esm/clusters/fan-control.js +4 -4
  474. package/dist/esm/clusters/fixed-label.d.ts +7 -2
  475. package/dist/esm/clusters/fixed-label.d.ts.map +1 -1
  476. package/dist/esm/clusters/fixed-label.js.map +1 -1
  477. package/dist/esm/clusters/flow-measurement.d.ts +4 -4
  478. package/dist/esm/clusters/flow-measurement.d.ts.map +1 -1
  479. package/dist/esm/clusters/flow-measurement.js +6 -6
  480. package/dist/esm/clusters/flow-measurement.js.map +1 -1
  481. package/dist/esm/clusters/general-commissioning.d.ts +1416 -111
  482. package/dist/esm/clusters/general-commissioning.d.ts.map +1 -1
  483. package/dist/esm/clusters/general-commissioning.js +274 -56
  484. package/dist/esm/clusters/general-commissioning.js.map +2 -2
  485. package/dist/esm/clusters/general-diagnostics.d.ts +115 -122
  486. package/dist/esm/clusters/general-diagnostics.d.ts.map +1 -1
  487. package/dist/esm/clusters/general-diagnostics.js +31 -33
  488. package/dist/esm/clusters/general-diagnostics.js.map +1 -1
  489. package/dist/esm/clusters/group-key-management.d.ts +72 -82
  490. package/dist/esm/clusters/group-key-management.d.ts.map +1 -1
  491. package/dist/esm/clusters/group-key-management.js +19 -22
  492. package/dist/esm/clusters/group-key-management.js.map +1 -1
  493. package/dist/esm/clusters/groups.d.ts +9 -6
  494. package/dist/esm/clusters/groups.d.ts.map +1 -1
  495. package/dist/esm/clusters/groups.js +3 -2
  496. package/dist/esm/clusters/groups.js.map +1 -1
  497. package/dist/esm/clusters/icd-management.d.ts +223 -66
  498. package/dist/esm/clusters/icd-management.d.ts.map +1 -1
  499. package/dist/esm/clusters/icd-management.js +61 -23
  500. package/dist/esm/clusters/icd-management.js.map +2 -2
  501. package/dist/esm/clusters/identify.d.ts +12 -13
  502. package/dist/esm/clusters/identify.d.ts.map +1 -1
  503. package/dist/esm/clusters/identify.js +9 -10
  504. package/dist/esm/clusters/identify.js.map +1 -1
  505. package/dist/esm/clusters/illuminance-measurement.d.ts +7 -8
  506. package/dist/esm/clusters/illuminance-measurement.d.ts.map +1 -1
  507. package/dist/esm/clusters/illuminance-measurement.js +9 -10
  508. package/dist/esm/clusters/illuminance-measurement.js.map +1 -1
  509. package/dist/esm/clusters/index.d.ts +11 -1
  510. package/dist/esm/clusters/index.d.ts.map +1 -1
  511. package/dist/esm/clusters/index.js +36 -3
  512. package/dist/esm/clusters/index.js.map +1 -1
  513. package/dist/esm/clusters/joint-fabric-datastore-cluster.d.ts +1239 -0
  514. package/dist/esm/clusters/joint-fabric-datastore-cluster.d.ts.map +1 -0
  515. package/dist/esm/clusters/joint-fabric-datastore-cluster.js +470 -0
  516. package/dist/esm/clusters/joint-fabric-datastore-cluster.js.map +6 -0
  517. package/dist/esm/clusters/joint-fabric-pki.d.ts +174 -0
  518. package/dist/esm/clusters/joint-fabric-pki.d.ts.map +1 -0
  519. package/dist/esm/clusters/joint-fabric-pki.js +100 -0
  520. package/dist/esm/clusters/joint-fabric-pki.js.map +6 -0
  521. package/dist/esm/clusters/keypad-input.d.ts +2 -2
  522. package/dist/esm/clusters/laundry-dryer-controls.d.ts +6 -7
  523. package/dist/esm/clusters/laundry-dryer-controls.d.ts.map +1 -1
  524. package/dist/esm/clusters/laundry-dryer-controls.js +6 -10
  525. package/dist/esm/clusters/laundry-dryer-controls.js.map +1 -1
  526. package/dist/esm/clusters/laundry-washer-controls.d.ts +74 -62
  527. package/dist/esm/clusters/laundry-washer-controls.d.ts.map +1 -1
  528. package/dist/esm/clusters/laundry-washer-controls.js +26 -25
  529. package/dist/esm/clusters/laundry-washer-controls.js.map +1 -1
  530. package/dist/esm/clusters/laundry-washer-mode.d.ts +69 -109
  531. package/dist/esm/clusters/laundry-washer-mode.d.ts.map +1 -1
  532. package/dist/esm/clusters/laundry-washer-mode.js +14 -26
  533. package/dist/esm/clusters/laundry-washer-mode.js.map +1 -1
  534. package/dist/esm/clusters/level-control.d.ts +209 -70
  535. package/dist/esm/clusters/level-control.d.ts.map +1 -1
  536. package/dist/esm/clusters/level-control.js +45 -12
  537. package/dist/esm/clusters/level-control.js.map +1 -1
  538. package/dist/esm/clusters/localization-configuration.d.ts +5 -6
  539. package/dist/esm/clusters/localization-configuration.d.ts.map +1 -1
  540. package/dist/esm/clusters/localization-configuration.js +5 -6
  541. package/dist/esm/clusters/localization-configuration.js.map +1 -1
  542. package/dist/esm/clusters/media-input.d.ts +9 -6
  543. package/dist/esm/clusters/media-input.d.ts.map +1 -1
  544. package/dist/esm/clusters/media-input.js +3 -2
  545. package/dist/esm/clusters/media-input.js.map +1 -1
  546. package/dist/esm/clusters/media-playback.d.ts +29 -24
  547. package/dist/esm/clusters/media-playback.d.ts.map +1 -1
  548. package/dist/esm/clusters/media-playback.js +5 -4
  549. package/dist/esm/clusters/media-playback.js.map +1 -1
  550. package/dist/esm/clusters/microwave-oven-control.d.ts +54 -48
  551. package/dist/esm/clusters/microwave-oven-control.d.ts.map +1 -1
  552. package/dist/esm/clusters/microwave-oven-control.js +19 -17
  553. package/dist/esm/clusters/microwave-oven-control.js.map +1 -1
  554. package/dist/esm/clusters/microwave-oven-mode.d.ts +63 -69
  555. package/dist/esm/clusters/microwave-oven-mode.d.ts.map +1 -1
  556. package/dist/esm/clusters/microwave-oven-mode.js +14 -11
  557. package/dist/esm/clusters/microwave-oven-mode.js.map +1 -1
  558. package/dist/esm/clusters/mode-base.d.ts +27 -46
  559. package/dist/esm/clusters/mode-base.d.ts.map +1 -1
  560. package/dist/esm/clusters/mode-base.js +9 -10
  561. package/dist/esm/clusters/mode-base.js.map +1 -1
  562. package/dist/esm/clusters/mode-select.d.ts +33 -27
  563. package/dist/esm/clusters/mode-select.d.ts.map +1 -1
  564. package/dist/esm/clusters/mode-select.js +14 -13
  565. package/dist/esm/clusters/mode-select.js.map +1 -1
  566. package/dist/esm/clusters/network-commissioning.d.ts +263 -240
  567. package/dist/esm/clusters/network-commissioning.d.ts.map +1 -1
  568. package/dist/esm/clusters/network-commissioning.js +46 -39
  569. package/dist/esm/clusters/network-commissioning.js.map +1 -1
  570. package/dist/esm/clusters/occupancy-sensing.d.ts +1002 -63
  571. package/dist/esm/clusters/occupancy-sensing.d.ts.map +1 -1
  572. package/dist/esm/clusters/occupancy-sensing.js +287 -65
  573. package/dist/esm/clusters/occupancy-sensing.js.map +2 -2
  574. package/dist/esm/clusters/on-off.d.ts +18 -24
  575. package/dist/esm/clusters/on-off.d.ts.map +1 -1
  576. package/dist/esm/clusters/on-off.js +3 -4
  577. package/dist/esm/clusters/on-off.js.map +1 -1
  578. package/dist/esm/clusters/operational-credentials.d.ts +98 -85
  579. package/dist/esm/clusters/operational-credentials.d.ts.map +1 -1
  580. package/dist/esm/clusters/operational-credentials.js +56 -49
  581. package/dist/esm/clusters/operational-credentials.js.map +1 -1
  582. package/dist/esm/clusters/operational-state.d.ts +136 -57
  583. package/dist/esm/clusters/operational-state.d.ts.map +1 -1
  584. package/dist/esm/clusters/operational-state.js +63 -37
  585. package/dist/esm/clusters/operational-state.js.map +2 -2
  586. package/dist/esm/clusters/ota-software-update-provider.d.ts +43 -42
  587. package/dist/esm/clusters/ota-software-update-provider.d.ts.map +1 -1
  588. package/dist/esm/clusters/ota-software-update-provider.js +20 -19
  589. package/dist/esm/clusters/ota-software-update-provider.js.map +1 -1
  590. package/dist/esm/clusters/ota-software-update-requestor.d.ts +6 -10
  591. package/dist/esm/clusters/ota-software-update-requestor.d.ts.map +1 -1
  592. package/dist/esm/clusters/ota-software-update-requestor.js +4 -6
  593. package/dist/esm/clusters/ota-software-update-requestor.js.map +1 -1
  594. package/dist/esm/clusters/oven-cavity-operational-state.d.ts +44 -154
  595. package/dist/esm/clusters/oven-cavity-operational-state.d.ts.map +1 -1
  596. package/dist/esm/clusters/oven-cavity-operational-state.js +41 -166
  597. package/dist/esm/clusters/oven-cavity-operational-state.js.map +1 -1
  598. package/dist/esm/clusters/oven-mode.d.ts +79 -349
  599. package/dist/esm/clusters/oven-mode.d.ts.map +1 -1
  600. package/dist/esm/clusters/oven-mode.js +26 -89
  601. package/dist/esm/clusters/oven-mode.js.map +1 -1
  602. package/dist/esm/clusters/power-source.d.ts +169 -44
  603. package/dist/esm/clusters/power-source.d.ts.map +1 -1
  604. package/dist/esm/clusters/power-source.js +40 -16
  605. package/dist/esm/clusters/power-source.js.map +1 -1
  606. package/dist/esm/clusters/pressure-measurement.js +2 -2
  607. package/dist/esm/clusters/pressure-measurement.js.map +1 -1
  608. package/dist/esm/clusters/pump-configuration-and-control.d.ts +73 -63
  609. package/dist/esm/clusters/pump-configuration-and-control.d.ts.map +1 -1
  610. package/dist/esm/clusters/pump-configuration-and-control.js +19 -20
  611. package/dist/esm/clusters/pump-configuration-and-control.js.map +1 -1
  612. package/dist/esm/clusters/refrigerator-alarm.d.ts +2 -1
  613. package/dist/esm/clusters/refrigerator-alarm.d.ts.map +1 -1
  614. package/dist/esm/clusters/refrigerator-alarm.js.map +1 -1
  615. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +59 -91
  616. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  617. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +12 -20
  618. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  619. package/dist/esm/clusters/relative-humidity-measurement.js +1 -1
  620. package/dist/esm/clusters/relative-humidity-measurement.js.map +1 -1
  621. package/dist/esm/clusters/rvc-clean-mode.d.ts +59 -103
  622. package/dist/esm/clusters/rvc-clean-mode.d.ts.map +1 -1
  623. package/dist/esm/clusters/rvc-clean-mode.js +11 -15
  624. package/dist/esm/clusters/rvc-clean-mode.js.map +1 -1
  625. package/dist/esm/clusters/rvc-operational-state.d.ts +81 -25
  626. package/dist/esm/clusters/rvc-operational-state.d.ts.map +1 -1
  627. package/dist/esm/clusters/rvc-operational-state.js +49 -20
  628. package/dist/esm/clusters/rvc-operational-state.js.map +1 -1
  629. package/dist/esm/clusters/rvc-run-mode.d.ts +85 -129
  630. package/dist/esm/clusters/rvc-run-mode.d.ts.map +1 -1
  631. package/dist/esm/clusters/rvc-run-mode.js +16 -15
  632. package/dist/esm/clusters/rvc-run-mode.js.map +1 -1
  633. package/dist/esm/clusters/scenes-management.d.ts +328 -181
  634. package/dist/esm/clusters/scenes-management.d.ts.map +1 -1
  635. package/dist/esm/clusters/scenes-management.js +37 -22
  636. package/dist/esm/clusters/scenes-management.js.map +1 -1
  637. package/dist/esm/clusters/service-area.d.ts +2052 -0
  638. package/dist/esm/clusters/service-area.d.ts.map +1 -0
  639. package/dist/esm/clusters/service-area.js +562 -0
  640. package/dist/esm/clusters/service-area.js.map +6 -0
  641. package/dist/esm/clusters/smoke-co-alarm.d.ts +10 -18
  642. package/dist/esm/clusters/smoke-co-alarm.d.ts.map +1 -1
  643. package/dist/esm/clusters/smoke-co-alarm.js +2 -3
  644. package/dist/esm/clusters/smoke-co-alarm.js.map +1 -1
  645. package/dist/esm/clusters/switch.d.ts +478 -191
  646. package/dist/esm/clusters/switch.d.ts.map +1 -1
  647. package/dist/esm/clusters/switch.js +145 -57
  648. package/dist/esm/clusters/switch.js.map +1 -1
  649. package/dist/esm/clusters/target-navigator.d.ts +1 -1
  650. package/dist/esm/clusters/target-navigator.js +1 -1
  651. package/dist/esm/clusters/thermostat.d.ts +3877 -830
  652. package/dist/esm/clusters/thermostat.d.ts.map +1 -1
  653. package/dist/esm/clusters/thermostat.js +842 -160
  654. package/dist/esm/clusters/thermostat.js.map +2 -2
  655. package/dist/esm/clusters/thread-border-router-management.d.ts +711 -0
  656. package/dist/esm/clusters/thread-border-router-management.d.ts.map +1 -0
  657. package/dist/esm/clusters/thread-border-router-management.js +245 -0
  658. package/dist/esm/clusters/thread-border-router-management.js.map +6 -0
  659. package/dist/esm/clusters/thread-network-diagnostics.d.ts +81 -55
  660. package/dist/esm/clusters/thread-network-diagnostics.d.ts.map +1 -1
  661. package/dist/esm/clusters/thread-network-diagnostics.js +32 -21
  662. package/dist/esm/clusters/thread-network-diagnostics.js.map +1 -1
  663. package/dist/esm/clusters/thread-network-directory.d.ts +250 -0
  664. package/dist/esm/clusters/thread-network-directory.d.ts.map +1 -0
  665. package/dist/esm/clusters/thread-network-directory.js +167 -0
  666. package/dist/esm/clusters/thread-network-directory.js.map +6 -0
  667. package/dist/esm/clusters/time-synchronization.d.ts +101 -76
  668. package/dist/esm/clusters/time-synchronization.d.ts.map +1 -1
  669. package/dist/esm/clusters/time-synchronization.js +30 -23
  670. package/dist/esm/clusters/time-synchronization.js.map +1 -1
  671. package/dist/esm/clusters/unit-localization.d.ts +3 -4
  672. package/dist/esm/clusters/unit-localization.d.ts.map +1 -1
  673. package/dist/esm/clusters/unit-localization.js.map +1 -1
  674. package/dist/esm/clusters/user-label.d.ts +2 -1
  675. package/dist/esm/clusters/user-label.d.ts.map +1 -1
  676. package/dist/esm/clusters/user-label.js.map +1 -1
  677. package/dist/esm/clusters/water-heater-management.d.ts +1371 -0
  678. package/dist/esm/clusters/water-heater-management.d.ts.map +1 -0
  679. package/dist/esm/clusters/water-heater-management.js +325 -0
  680. package/dist/esm/clusters/water-heater-management.js.map +6 -0
  681. package/dist/esm/clusters/water-heater-mode.d.ts +491 -0
  682. package/dist/esm/clusters/water-heater-mode.d.ts.map +1 -0
  683. package/dist/esm/clusters/water-heater-mode.js +175 -0
  684. package/dist/esm/clusters/water-heater-mode.js.map +6 -0
  685. package/dist/esm/clusters/water-tank-level-monitoring.d.ts +162 -0
  686. package/dist/esm/clusters/water-tank-level-monitoring.d.ts.map +1 -0
  687. package/dist/esm/clusters/water-tank-level-monitoring.js +27 -0
  688. package/dist/esm/clusters/water-tank-level-monitoring.js.map +6 -0
  689. package/dist/esm/clusters/wi-fi-network-diagnostics.d.ts +20 -27
  690. package/dist/esm/clusters/wi-fi-network-diagnostics.d.ts.map +1 -1
  691. package/dist/esm/clusters/wi-fi-network-diagnostics.js +6 -8
  692. package/dist/esm/clusters/wi-fi-network-diagnostics.js.map +1 -1
  693. package/dist/esm/clusters/wi-fi-network-management.d.ts +91 -0
  694. package/dist/esm/clusters/wi-fi-network-management.d.ts.map +1 -0
  695. package/dist/esm/clusters/wi-fi-network-management.js +102 -0
  696. package/dist/esm/clusters/wi-fi-network-management.js.map +6 -0
  697. package/dist/esm/clusters/window-covering.d.ts +66 -78
  698. package/dist/esm/clusters/window-covering.d.ts.map +1 -1
  699. package/dist/esm/clusters/window-covering.js +26 -37
  700. package/dist/esm/clusters/window-covering.js.map +1 -1
  701. package/dist/esm/common/ValidationError.d.ts.map +1 -1
  702. package/dist/esm/datatype/AttributeId.d.ts.map +1 -1
  703. package/dist/esm/datatype/CaseAuthenticatedTag.d.ts.map +1 -1
  704. package/dist/esm/datatype/ClusterId.d.ts.map +1 -1
  705. package/dist/esm/datatype/CommandId.d.ts +1 -0
  706. package/dist/esm/datatype/CommandId.d.ts.map +1 -1
  707. package/dist/esm/datatype/CommandId.js +3 -0
  708. package/dist/esm/datatype/CommandId.js.map +1 -1
  709. package/dist/esm/datatype/FieldId.d.ts.map +1 -1
  710. package/dist/esm/datatype/ManufacturerExtensibleIdentifier.d.ts.map +1 -1
  711. package/dist/esm/datatype/NodeId.d.ts.map +1 -1
  712. package/dist/esm/datatype/VendorId.d.ts.map +1 -1
  713. package/dist/esm/globals/AtomicAttributeStatus.d.ts +34 -0
  714. package/dist/esm/globals/AtomicAttributeStatus.d.ts.map +1 -0
  715. package/dist/esm/globals/AtomicAttributeStatus.js +26 -0
  716. package/dist/esm/globals/AtomicAttributeStatus.js.map +6 -0
  717. package/dist/esm/globals/AtomicRequestType.d.ts +24 -0
  718. package/dist/esm/globals/AtomicRequestType.d.ts.map +1 -0
  719. package/dist/esm/globals/AtomicRequestType.js +15 -0
  720. package/dist/esm/globals/AtomicRequestType.js.map +6 -0
  721. package/dist/esm/globals/Locationdesc.d.ts +79 -0
  722. package/dist/esm/globals/Locationdesc.d.ts.map +1 -0
  723. package/dist/esm/globals/Locationdesc.js +69 -0
  724. package/dist/esm/globals/Locationdesc.js.map +6 -0
  725. package/dist/esm/globals/Priority.d.ts +1 -1
  726. package/dist/esm/globals/Semtag.d.ts +6 -6
  727. package/dist/esm/globals/Semtag.js +4 -4
  728. package/dist/esm/globals/SoftwareVersionCertificationStatus.d.ts +1 -1
  729. package/dist/esm/globals/Status.d.ts +18 -3
  730. package/dist/esm/globals/Status.d.ts.map +1 -1
  731. package/dist/esm/globals/Status.js +3 -1
  732. package/dist/esm/globals/Status.js.map +1 -1
  733. package/dist/esm/globals/Tod.d.ts +2 -2
  734. package/dist/esm/globals/index.d.ts +3 -0
  735. package/dist/esm/globals/index.d.ts.map +1 -1
  736. package/dist/esm/globals/index.js +3 -0
  737. package/dist/esm/globals/index.js.map +1 -1
  738. package/dist/esm/schema/BitmapSchema.d.ts.map +1 -1
  739. package/dist/esm/schema/PairingCodeSchema.d.ts +32 -4
  740. package/dist/esm/schema/PairingCodeSchema.d.ts.map +1 -1
  741. package/dist/esm/schema/PairingCodeSchema.js +17 -3
  742. package/dist/esm/schema/PairingCodeSchema.js.map +1 -1
  743. package/dist/esm/schema/QrCodeSchema.d.ts.map +1 -1
  744. package/dist/esm/schema/QrCodeSchema.js +4 -1
  745. package/dist/esm/schema/QrCodeSchema.js.map +1 -1
  746. package/dist/esm/schema/SpecificationVersionSchema.d.ts.map +1 -1
  747. package/dist/esm/tlv/TlvArray.d.ts.map +1 -1
  748. package/dist/esm/tlv/TlvNullable.d.ts.map +1 -1
  749. package/dist/esm/tlv/TlvNumber.d.ts.map +1 -1
  750. package/dist/esm/tlv/TlvObject.d.ts.map +1 -1
  751. package/package.json +5 -5
  752. package/src/clusters/access-control.ts +926 -171
  753. package/src/clusters/actions.ts +12 -11
  754. package/src/clusters/administrator-commissioning.ts +54 -35
  755. package/src/clusters/alarm-base.ts +3 -4
  756. package/src/clusters/application-launcher.ts +22 -7
  757. package/src/clusters/ballast-configuration.ts +7 -7
  758. package/src/clusters/basic-information.ts +29 -21
  759. package/src/clusters/bridged-device-basic-information.ts +264 -41
  760. package/src/clusters/channel.ts +20 -17
  761. package/src/clusters/color-control.ts +589 -426
  762. package/src/clusters/commissioner-control.ts +282 -0
  763. package/src/clusters/content-control.ts +48 -54
  764. package/src/clusters/content-launcher.ts +16 -15
  765. package/src/clusters/device-energy-management-mode.ts +63 -161
  766. package/src/clusters/device-energy-management.ts +246 -193
  767. package/src/clusters/dishwasher-alarm.ts +5 -5
  768. package/src/clusters/dishwasher-mode.ts +46 -87
  769. package/src/clusters/door-lock.ts +786 -1235
  770. package/src/clusters/ecosystem-information.ts +200 -0
  771. package/src/clusters/electrical-energy-measurement.ts +15 -16
  772. package/src/clusters/energy-evse-mode.ts +81 -158
  773. package/src/clusters/energy-evse.ts +138 -72
  774. package/src/clusters/energy-preference.ts +34 -28
  775. package/src/clusters/ethernet-network-diagnostics.ts +1 -3
  776. package/src/clusters/fan-control.ts +5 -5
  777. package/src/clusters/fixed-label.ts +7 -2
  778. package/src/clusters/flow-measurement.ts +6 -6
  779. package/src/clusters/general-commissioning.ts +396 -96
  780. package/src/clusters/general-diagnostics.ts +31 -33
  781. package/src/clusters/group-key-management.ts +22 -24
  782. package/src/clusters/groups.ts +3 -2
  783. package/src/clusters/icd-management.ts +88 -31
  784. package/src/clusters/identify.ts +9 -10
  785. package/src/clusters/illuminance-measurement.ts +9 -10
  786. package/src/clusters/index.ts +14 -1
  787. package/src/clusters/joint-fabric-datastore-cluster.ts +657 -0
  788. package/src/clusters/joint-fabric-pki.ts +202 -0
  789. package/src/clusters/keypad-input.ts +2 -2
  790. package/src/clusters/laundry-dryer-controls.ts +6 -10
  791. package/src/clusters/laundry-washer-controls.ts +28 -27
  792. package/src/clusters/laundry-washer-mode.ts +49 -90
  793. package/src/clusters/level-control.ts +45 -12
  794. package/src/clusters/localization-configuration.ts +5 -6
  795. package/src/clusters/media-input.ts +3 -2
  796. package/src/clusters/media-playback.ts +9 -7
  797. package/src/clusters/microwave-oven-control.ts +19 -17
  798. package/src/clusters/microwave-oven-mode.ts +42 -61
  799. package/src/clusters/mode-base.ts +16 -33
  800. package/src/clusters/mode-select.ts +17 -14
  801. package/src/clusters/network-commissioning.ts +47 -40
  802. package/src/clusters/occupancy-sensing.ts +433 -72
  803. package/src/clusters/on-off.ts +6 -8
  804. package/src/clusters/operational-credentials.ts +54 -47
  805. package/src/clusters/operational-state.ts +136 -58
  806. package/src/clusters/ota-software-update-provider.ts +23 -23
  807. package/src/clusters/ota-software-update-requestor.ts +4 -6
  808. package/src/clusters/oven-cavity-operational-state.ts +43 -171
  809. package/src/clusters/oven-mode.ts +76 -178
  810. package/src/clusters/power-source.ts +45 -21
  811. package/src/clusters/pressure-measurement.ts +2 -2
  812. package/src/clusters/pump-configuration-and-control.ts +35 -23
  813. package/src/clusters/refrigerator-alarm.ts +2 -1
  814. package/src/clusters/refrigerator-and-temperature-controlled-cabinet-mode.ts +41 -78
  815. package/src/clusters/relative-humidity-measurement.ts +1 -1
  816. package/src/clusters/rvc-clean-mode.ts +42 -101
  817. package/src/clusters/rvc-operational-state.ts +87 -25
  818. package/src/clusters/rvc-run-mode.ts +62 -126
  819. package/src/clusters/scenes-management.ts +38 -23
  820. package/src/clusters/service-area.ts +904 -0
  821. package/src/clusters/smoke-co-alarm.ts +6 -12
  822. package/src/clusters/switch.ts +177 -78
  823. package/src/clusters/target-navigator.ts +1 -1
  824. package/src/clusters/thermostat.ts +1245 -214
  825. package/src/clusters/thread-border-router-management.ts +355 -0
  826. package/src/clusters/thread-network-diagnostics.ts +34 -21
  827. package/src/clusters/thread-network-directory.ts +256 -0
  828. package/src/clusters/time-synchronization.ts +30 -23
  829. package/src/clusters/unit-localization.ts +3 -4
  830. package/src/clusters/user-label.ts +2 -1
  831. package/src/clusters/water-heater-management.ts +457 -0
  832. package/src/clusters/water-heater-mode.ts +301 -0
  833. package/src/clusters/water-tank-level-monitoring.ts +50 -0
  834. package/src/clusters/wi-fi-network-diagnostics.ts +6 -8
  835. package/src/clusters/wi-fi-network-management.ts +119 -0
  836. package/src/clusters/window-covering.ts +26 -37
  837. package/src/datatype/CommandId.ts +4 -0
  838. package/src/globals/AtomicAttributeStatus.ts +41 -0
  839. package/src/globals/AtomicRequestType.ts +27 -0
  840. package/src/globals/Locationdesc.ts +88 -0
  841. package/src/globals/Priority.ts +1 -1
  842. package/src/globals/Semtag.ts +6 -6
  843. package/src/globals/SoftwareVersionCertificationStatus.ts +1 -1
  844. package/src/globals/Status.ts +20 -3
  845. package/src/globals/Tod.ts +2 -2
  846. package/src/globals/index.ts +3 -0
  847. package/src/schema/PairingCodeSchema.ts +17 -2
  848. package/src/schema/QrCodeSchema.ts +7 -2
  849. package/dist/cjs/clusters/pulse-width-modulation.d.ts +0 -2023
  850. package/dist/cjs/clusters/pulse-width-modulation.d.ts.map +0 -1
  851. package/dist/cjs/clusters/pulse-width-modulation.js +0 -51
  852. package/dist/cjs/clusters/pulse-width-modulation.js.map +0 -6
  853. package/dist/esm/clusters/pulse-width-modulation.d.ts +0 -2023
  854. package/dist/esm/clusters/pulse-width-modulation.d.ts.map +0 -1
  855. package/dist/esm/clusters/pulse-width-modulation.js +0 -31
  856. package/dist/esm/clusters/pulse-width-modulation.js.map +0 -6
  857. package/src/clusters/pulse-width-modulation.ts +0 -54
@@ -19,7 +19,7 @@ export declare namespace Switch {
19
19
  /**
20
20
  * LatchingSwitch (LS)
21
21
  *
22
- * This feature is for a switch that maintains its position after being pressed (or turned).
22
+ * This feature flag is for a switch that maintains its position after being pressed (or turned).
23
23
  *
24
24
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.1
25
25
  */
@@ -27,7 +27,7 @@ export declare namespace Switch {
27
27
  /**
28
28
  * MomentarySwitch (MS)
29
29
  *
30
- * This feature is for a switch that does not maintain its position after being pressed (or turned). After
30
+ * This feature flag is for a switch that does not maintain its position after being pressed (or turned). After
31
31
  * releasing, it goes back to its idle position.
32
32
  *
33
33
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.2
@@ -36,8 +36,7 @@ export declare namespace Switch {
36
36
  /**
37
37
  * MomentarySwitchRelease (MSR)
38
38
  *
39
- * This feature is for a momentary switch that can distinguish and report release events. When this feature
40
- * flag MSR is present, MS shall be present as well.
39
+ * This feature flag is for a momentary switch that can distinguish and report release events.
41
40
  *
42
41
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.3
43
42
  */
@@ -45,8 +44,7 @@ export declare namespace Switch {
45
44
  /**
46
45
  * MomentarySwitchLongPress (MSL)
47
46
  *
48
- * This feature is for a momentary switch that can distinguish and report long presses from short presses. When
49
- * this feature flag MSL is present, MS and MSR shall be present as well.
47
+ * This feature flag is for a momentary switch that can distinguish and report long presses from short presses.
50
48
  *
51
49
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.4
52
50
  */
@@ -54,45 +52,21 @@ export declare namespace Switch {
54
52
  /**
55
53
  * MomentarySwitchMultiPress (MSM)
56
54
  *
57
- * This feature is for a momentary switch that can distinguish and report double press and potentially multiple
58
- * presses with more events, such as triple press, etc. When this feature flag MSM is present, MS and MSR shall
59
- * be present as well.
55
+ * This feature flag is for a momentary switch that can distinguish and report double press and potentially
56
+ * multiple presses with more events, such as triple press, etc.
60
57
  *
61
58
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.5
62
59
  */
63
- MomentarySwitchMultiPress = "MomentarySwitchMultiPress"
64
- }
65
- /**
66
- * Body of the Switch multiPressOngoing event
67
- *
68
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
69
- */
70
- const TlvMultiPressOngoingEvent: import("../tlv/TlvObject.js").ObjectSchema<{
60
+ MomentarySwitchMultiPress = "MomentarySwitchMultiPress",
71
61
  /**
72
- * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
62
+ * ActionSwitch (AS)
73
63
  *
74
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
75
- */
76
- newPosition: import("../tlv/TlvObject.js").FieldType<number>;
77
- /**
78
- * This field shall contain:
79
- *
80
- * • a value of 2 when the second press of a multi-press sequence has been detected,
81
- *
82
- * • a value of 3 when the third press of a multi-press sequence has been detected,
83
- *
84
- * • a value of N when the Nth press of a multi-press sequence has been detected.
64
+ * This feature flag indicates simplified handling of events for multi-press-capable switches. See Multi Press
65
+ * Details.
85
66
  *
86
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
67
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.6
87
68
  */
88
- currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
89
- }>;
90
- /**
91
- * Body of the Switch multiPressOngoing event
92
- *
93
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
94
- */
95
- interface MultiPressOngoingEvent extends TypeFromSchema<typeof TlvMultiPressOngoingEvent> {
69
+ ActionSwitch = "ActionSwitch"
96
70
  }
97
71
  /**
98
72
  * Body of the Switch multiPressComplete event
@@ -210,6 +184,38 @@ export declare namespace Switch {
210
184
  */
211
185
  interface ShortReleaseEvent extends TypeFromSchema<typeof TlvShortReleaseEvent> {
212
186
  }
187
+ /**
188
+ * Body of the Switch multiPressOngoing event
189
+ *
190
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
191
+ */
192
+ const TlvMultiPressOngoingEvent: import("../tlv/TlvObject.js").ObjectSchema<{
193
+ /**
194
+ * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
195
+ *
196
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
197
+ */
198
+ newPosition: import("../tlv/TlvObject.js").FieldType<number>;
199
+ /**
200
+ * This field shall contain:
201
+ *
202
+ * • a value of 2 when the second press of a multi-press sequence has been detected,
203
+ *
204
+ * • a value of 3 when the third press of a multi-press sequence has been detected,
205
+ *
206
+ * • a value of N when the Nth press of a multi-press sequence has been detected.
207
+ *
208
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
209
+ */
210
+ currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
211
+ }>;
212
+ /**
213
+ * Body of the Switch multiPressOngoing event
214
+ *
215
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
216
+ */
217
+ interface MultiPressOngoingEvent extends TypeFromSchema<typeof TlvMultiPressOngoingEvent> {
218
+ }
213
219
  /**
214
220
  * A SwitchCluster supports these elements if it supports feature MomentarySwitchMultiPress.
215
221
  */
@@ -217,40 +223,32 @@ export declare namespace Switch {
217
223
  readonly attributes: {
218
224
  /**
219
225
  * Indicates how many consecutive presses can be detected and reported by a momentary switch which supports
220
- * multi-press (e.g. it will report the value 3 if it can detect single press, double press and triple
221
- * press, but not quad press and beyond).
226
+ * multi-press (MSM feature flag set).
227
+ *
228
+ * For example, a momentary switch supporting single press, double press and triple press, but not quad
229
+ * press and beyond, would return the value 3.
230
+ *
231
+ * When more than MultiPressMax presses are detected within a multi-press sequence:
232
+ *
233
+ * • The server for cluster revision < 2 SHOULD generate a MultiPressComplete event with the
234
+ * TotalNumberOfPressesCounted field set to the value of the MultiPressMax attribute, and avoid
235
+ * generating any further InitialPress and MultiPressOngoing events until the switch has become fully
236
+ * idle (i.e. no longer in the process of counting presses within the multipress).
237
+ *
238
+ * • The server for cluster revision >= 2 shall generate a MultiPressComplete event with the
239
+ * TotalNumberOfPressesCounted field set to zero (indicating an aborted sequence), and shall NOT
240
+ * generate any further InitialPress and MultiPressOngoing events until the switch has become fully
241
+ * idle (i.e. no longer in the process of counting presses within the multipress).
242
+ *
243
+ * This approach avoids unintentionally causing intermediate actions where there is a very long sequence of
244
+ * presses beyond MultiPressMax that may be taken in account specially by switches (e.g. to trigger special
245
+ * behavior such as factory reset for which generating events towards the client is not appropriate).
222
246
  *
223
247
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.3
224
248
  */
225
249
  readonly multiPressMax: FixedAttribute<number, any>;
226
250
  };
227
251
  readonly events: {
228
- /**
229
- * This event shall be generated to indicate how many times the momentary switch has been pressed in a
230
- * multi-press sequence, during that sequence. See Multi Press Details below.
231
- *
232
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
233
- */
234
- readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
235
- /**
236
- * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
237
- *
238
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
239
- */
240
- newPosition: import("../tlv/TlvObject.js").FieldType<number>;
241
- /**
242
- * This field shall contain:
243
- *
244
- * • a value of 2 when the second press of a multi-press sequence has been detected,
245
- *
246
- * • a value of 3 when the third press of a multi-press sequence has been detected,
247
- *
248
- * • a value of N when the Nth press of a multi-press sequence has been detected.
249
- *
250
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
251
- */
252
- currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
253
- }>, any>;
254
252
  /**
255
253
  * This event shall be generated to indicate how many times the momentary switch has been pressed in a
256
254
  * multi-press sequence, after it has been detected that the sequence has ended. See Multi Press Details.
@@ -260,9 +258,11 @@ export declare namespace Switch {
260
258
  *
261
259
  * The TotalNumberOfPressesCounted field shall contain:
262
260
  *
263
- * • a value of 1 when there was one press in a multi-press sequence (and the sequence has ended),
261
+ * • a value of 0 when there was an aborted multi-press sequence, where the number of presses goes beyond
262
+ * MultiPressMax presses,
264
263
  *
265
- * i.e. there was no double press (or more),
264
+ * a value of 1 when there was exactly one press in a multi-press sequence (and the sequence has
265
+ * ended), i.e. there was no double press (or more),
266
266
  *
267
267
  * • a value of 2 when there were exactly two presses in a multi-press sequence (and the sequence has
268
268
  * ended),
@@ -273,6 +273,14 @@ export declare namespace Switch {
273
273
  * • a value of N when there were exactly N presses in a multi-press sequence (and the sequence has
274
274
  * ended).
275
275
  *
276
+ * NOTE
277
+ *
278
+ * The introduction of TotalNumberOfPressesCounted supporting the value 0 may impact clients of switches
279
+ * using cluster revision 1 since such servers would not use this value of TotalNumberOfPressesCounted to
280
+ * indicate an aborted sequence. Clients SHOULD always act using the TotalNumberOfPressesCounted field
281
+ * taken into account since for values from 1 to MultiPressMax, the user action that led to the event was
282
+ * different depending on the count.
283
+ *
276
284
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.7
277
285
  */
278
286
  readonly multiPressComplete: Event<import("../tlv/TlvObject.js").TypeFromFields<{
@@ -328,8 +336,36 @@ export declare namespace Switch {
328
336
  const MomentarySwitchLongPressComponent: {
329
337
  readonly events: {
330
338
  /**
331
- * This event shall be generated, when the momentary switch has been pressed for a "long" time (this time
332
- * interval is manufacturer determined (e.g. since it depends on the switch physics)).
339
+ * This event shall be generated when the momentary switch has been pressed for a "long" time. The time
340
+ * interval constituting a "long" time is manufacturer-determined, since it depends on the switch physics.
341
+ *
342
+ * • When the AS feature flag is set, this event:
343
+ *
344
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
345
+ * any multi-press cycles);
346
+ *
347
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
348
+ * press is detected after the idle time.
349
+ *
350
+ * • Else, when the MSM feature flag is set, this event:
351
+ *
352
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
353
+ * any multi-press cycles);
354
+ *
355
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
356
+ * press is detected after the idle time;
357
+ *
358
+ * ◦ shall NOT be generated after a MultiPressOngoing event without an intervening MultiPressComplete
359
+ * event.
360
+ *
361
+ * The above constraints imply that for a given activity detection cycle of a switch having MSM and/or MSL
362
+ * feature flags set, the entire activity is either a single long press detection cycle of (InitialPress,
363
+ * LongPress, LongRelease), or a single multi-press detection cycle (ending in MultiPressComplete), where
364
+ * presses that would otherwise be reported as long presses are instead reported as a counted press in the
365
+ * MultiPressComplete event, and as InitialPress/ShortRelease pairs otherwise (where applicable).
366
+ *
367
+ * The rationale for this constraint is the ambiguity of interpretation of events when mixing long presses
368
+ * and multi-press events.
333
369
  *
334
370
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.3
335
371
  */
@@ -365,14 +401,19 @@ export declare namespace Switch {
365
401
  const MomentarySwitchReleaseComponent: {
366
402
  readonly events: {
367
403
  /**
404
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all,
405
+ * since setting the Action Switch feature flag forbids the Momentary Switch ShortRelease (MSR) feature
406
+ * flag from being set. Otherwise, the following paragraphs describe the situations where this event is
407
+ * generated.
408
+ *
368
409
  * This event shall be generated, when the momentary switch has been released (after debouncing).
369
410
  *
370
- * • If the server supports the Momentary Switch LongPress (MSL) feature, this event shall be generated
371
- * when the switch is released if no LongPress event had been generated since the previous InitialPress
372
- * event.
411
+ * • If the server has the Momentary Switch LongPress (MSL) feature flag set, then this event shall be
412
+ * generated when the switch is released if no LongPress event had been generated since the previous
413
+ * InitialPress event.
373
414
  *
374
- * • If the server does not support the Momentary Switch LongPress (MSL) feature, this event shall be
375
- * generated when the switch is released - even when the switch was pressed for a long time.
415
+ * • If the server does not have the Momentary Switch LongPress (MSL) feature flag set, this event shall
416
+ * be generated when the switch is released - even when the switch was pressed for a long time.
376
417
  *
377
418
  * • Also see Section 1.13.7, “Sequence of generated events”.
378
419
  *
@@ -388,18 +429,55 @@ export declare namespace Switch {
388
429
  }>, any>;
389
430
  };
390
431
  };
432
+ /**
433
+ * A SwitchCluster supports these elements if it supports feature MomentarySwitchMultiPress and it doesn't support
434
+ * feature AS.
435
+ */
436
+ const MomentarySwitchMultiPressNotActionSwitchComponent: {
437
+ readonly events: {
438
+ /**
439
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all.
440
+ * Otherwise, the following paragraphs describe the situations where this event is generated.
441
+ *
442
+ * This event shall be generated to indicate how many times the momentary switch has been pressed in a
443
+ * multi-press sequence, during that sequence. See Multi Press Details below.
444
+ *
445
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
446
+ */
447
+ readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
448
+ /**
449
+ * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
450
+ *
451
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
452
+ */
453
+ newPosition: import("../tlv/TlvObject.js").FieldType<number>;
454
+ /**
455
+ * This field shall contain:
456
+ *
457
+ * • a value of 2 when the second press of a multi-press sequence has been detected,
458
+ *
459
+ * • a value of 3 when the third press of a multi-press sequence has been detected,
460
+ *
461
+ * • a value of N when the Nth press of a multi-press sequence has been detected.
462
+ *
463
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
464
+ */
465
+ currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
466
+ }>, any>;
467
+ };
468
+ };
391
469
  /**
392
470
  * These elements and properties are present in all Switch clusters.
393
471
  */
394
472
  const Base: {
395
473
  readonly id: 59;
396
474
  readonly name: "Switch";
397
- readonly revision: 1;
475
+ readonly revision: 2;
398
476
  readonly features: {
399
477
  /**
400
478
  * LatchingSwitch
401
479
  *
402
- * This feature is for a switch that maintains its position after being pressed (or turned).
480
+ * This feature flag is for a switch that maintains its position after being pressed (or turned).
403
481
  *
404
482
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.1
405
483
  */
@@ -407,8 +485,8 @@ export declare namespace Switch {
407
485
  /**
408
486
  * MomentarySwitch
409
487
  *
410
- * This feature is for a switch that does not maintain its position after being pressed (or turned). After
411
- * releasing, it goes back to its idle position.
488
+ * This feature flag is for a switch that does not maintain its position after being pressed (or turned).
489
+ * After releasing, it goes back to its idle position.
412
490
  *
413
491
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.2
414
492
  */
@@ -416,8 +494,7 @@ export declare namespace Switch {
416
494
  /**
417
495
  * MomentarySwitchRelease
418
496
  *
419
- * This feature is for a momentary switch that can distinguish and report release events. When this feature
420
- * flag MSR is present, MS shall be present as well.
497
+ * This feature flag is for a momentary switch that can distinguish and report release events.
421
498
  *
422
499
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.3
423
500
  */
@@ -425,8 +502,8 @@ export declare namespace Switch {
425
502
  /**
426
503
  * MomentarySwitchLongPress
427
504
  *
428
- * This feature is for a momentary switch that can distinguish and report long presses from short presses.
429
- * When this feature flag MSL is present, MS and MSR shall be present as well.
505
+ * This feature flag is for a momentary switch that can distinguish and report long presses from short
506
+ * presses.
430
507
  *
431
508
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.4
432
509
  */
@@ -434,13 +511,21 @@ export declare namespace Switch {
434
511
  /**
435
512
  * MomentarySwitchMultiPress
436
513
  *
437
- * This feature is for a momentary switch that can distinguish and report double press and potentially
438
- * multiple presses with more events, such as triple press, etc. When this feature flag MSM is present, MS
439
- * and MSR shall be present as well.
514
+ * This feature flag is for a momentary switch that can distinguish and report double press and potentially
515
+ * multiple presses with more events, such as triple press, etc.
440
516
  *
441
517
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.5
442
518
  */
443
519
  readonly momentarySwitchMultiPress: BitFlag;
520
+ /**
521
+ * ActionSwitch
522
+ *
523
+ * This feature flag indicates simplified handling of events for multi-press-capable switches. See Multi
524
+ * Press Details.
525
+ *
526
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.6
527
+ */
528
+ readonly actionSwitch: BitFlag;
444
529
  };
445
530
  readonly attributes: {
446
531
  /**
@@ -451,9 +536,10 @@ export declare namespace Switch {
451
536
  */
452
537
  readonly numberOfPositions: FixedAttribute<number, any>;
453
538
  /**
454
- * Indicates the position of the switch. The valid range is zero to NumberOfPositions-1. CurrentPosition
455
- * value 0 shall be assigned to the default position of the switch: for example the "open" state of a
456
- * rocker switch, or the "idle" state of a push button switch.
539
+ * Indicates the position of the switch. The valid range is zero to NumberOfPositions - 1.
540
+ *
541
+ * CurrentPosition value 0 shall be assigned to the default position of the switch: for example the "open"
542
+ * state of a rocker switch, or the "idle" state of a push button switch.
457
543
  *
458
544
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.2
459
545
  */
@@ -470,40 +556,32 @@ export declare namespace Switch {
470
556
  readonly attributes: {
471
557
  /**
472
558
  * Indicates how many consecutive presses can be detected and reported by a momentary switch which supports
473
- * multi-press (e.g. it will report the value 3 if it can detect single press, double press and triple
474
- * press, but not quad press and beyond).
559
+ * multi-press (MSM feature flag set).
560
+ *
561
+ * For example, a momentary switch supporting single press, double press and triple press, but not quad
562
+ * press and beyond, would return the value 3.
563
+ *
564
+ * When more than MultiPressMax presses are detected within a multi-press sequence:
565
+ *
566
+ * • The server for cluster revision < 2 SHOULD generate a MultiPressComplete event with the
567
+ * TotalNumberOfPressesCounted field set to the value of the MultiPressMax attribute, and avoid
568
+ * generating any further InitialPress and MultiPressOngoing events until the switch has become fully
569
+ * idle (i.e. no longer in the process of counting presses within the multipress).
570
+ *
571
+ * • The server for cluster revision >= 2 shall generate a MultiPressComplete event with the
572
+ * TotalNumberOfPressesCounted field set to zero (indicating an aborted sequence), and shall NOT
573
+ * generate any further InitialPress and MultiPressOngoing events until the switch has become fully
574
+ * idle (i.e. no longer in the process of counting presses within the multipress).
575
+ *
576
+ * This approach avoids unintentionally causing intermediate actions where there is a very long sequence of
577
+ * presses beyond MultiPressMax that may be taken in account specially by switches (e.g. to trigger special
578
+ * behavior such as factory reset for which generating events towards the client is not appropriate).
475
579
  *
476
580
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.3
477
581
  */
478
582
  readonly multiPressMax: FixedAttribute<number, any>;
479
583
  };
480
584
  readonly events: {
481
- /**
482
- * This event shall be generated to indicate how many times the momentary switch has been pressed in a
483
- * multi-press sequence, during that sequence. See Multi Press Details below.
484
- *
485
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
486
- */
487
- readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
488
- /**
489
- * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
490
- *
491
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
492
- */
493
- newPosition: import("../tlv/TlvObject.js").FieldType<number>;
494
- /**
495
- * This field shall contain:
496
- *
497
- * • a value of 2 when the second press of a multi-press sequence has been detected,
498
- *
499
- * • a value of 3 when the third press of a multi-press sequence has been detected,
500
- *
501
- * • a value of N when the Nth press of a multi-press sequence has been detected.
502
- *
503
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
504
- */
505
- currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
506
- }>, any>;
507
585
  /**
508
586
  * This event shall be generated to indicate how many times the momentary switch has been pressed in a
509
587
  * multi-press sequence, after it has been detected that the sequence has ended. See Multi Press Details.
@@ -513,9 +591,11 @@ export declare namespace Switch {
513
591
  *
514
592
  * The TotalNumberOfPressesCounted field shall contain:
515
593
  *
516
- * • a value of 1 when there was one press in a multi-press sequence (and the sequence has ended),
594
+ * • a value of 0 when there was an aborted multi-press sequence, where the number of presses goes beyond
595
+ * MultiPressMax presses,
517
596
  *
518
- * i.e. there was no double press (or more),
597
+ * a value of 1 when there was exactly one press in a multi-press sequence (and the sequence has
598
+ * ended), i.e. there was no double press (or more),
519
599
  *
520
600
  * • a value of 2 when there were exactly two presses in a multi-press sequence (and the sequence has
521
601
  * ended),
@@ -526,6 +606,14 @@ export declare namespace Switch {
526
606
  * • a value of N when there were exactly N presses in a multi-press sequence (and the sequence has
527
607
  * ended).
528
608
  *
609
+ * NOTE
610
+ *
611
+ * The introduction of TotalNumberOfPressesCounted supporting the value 0 may impact clients of switches
612
+ * using cluster revision 1 since such servers would not use this value of TotalNumberOfPressesCounted to
613
+ * indicate an aborted sequence. Clients SHOULD always act using the TotalNumberOfPressesCounted field
614
+ * taken into account since for values from 1 to MultiPressMax, the user action that led to the event was
615
+ * different depending on the count.
616
+ *
529
617
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.7
530
618
  */
531
619
  readonly multiPressComplete: Event<import("../tlv/TlvObject.js").TypeFromFields<{
@@ -584,8 +672,36 @@ export declare namespace Switch {
584
672
  readonly component: {
585
673
  readonly events: {
586
674
  /**
587
- * This event shall be generated, when the momentary switch has been pressed for a "long" time (this time
588
- * interval is manufacturer determined (e.g. since it depends on the switch physics)).
675
+ * This event shall be generated when the momentary switch has been pressed for a "long" time. The time
676
+ * interval constituting a "long" time is manufacturer-determined, since it depends on the switch physics.
677
+ *
678
+ * • When the AS feature flag is set, this event:
679
+ *
680
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
681
+ * any multi-press cycles);
682
+ *
683
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
684
+ * press is detected after the idle time.
685
+ *
686
+ * • Else, when the MSM feature flag is set, this event:
687
+ *
688
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
689
+ * any multi-press cycles);
690
+ *
691
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
692
+ * press is detected after the idle time;
693
+ *
694
+ * ◦ shall NOT be generated after a MultiPressOngoing event without an intervening MultiPressComplete
695
+ * event.
696
+ *
697
+ * The above constraints imply that for a given activity detection cycle of a switch having MSM and/or MSL
698
+ * feature flags set, the entire activity is either a single long press detection cycle of (InitialPress,
699
+ * LongPress, LongRelease), or a single multi-press detection cycle (ending in MultiPressComplete), where
700
+ * presses that would otherwise be reported as long presses are instead reported as a counted press in the
701
+ * MultiPressComplete event, and as InitialPress/ShortRelease pairs otherwise (where applicable).
702
+ *
703
+ * The rationale for this constraint is the ambiguity of interpretation of events when mixing long presses
704
+ * and multi-press events.
589
705
  *
590
706
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.3
591
707
  */
@@ -622,14 +738,19 @@ export declare namespace Switch {
622
738
  readonly component: {
623
739
  readonly events: {
624
740
  /**
741
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all,
742
+ * since setting the Action Switch feature flag forbids the Momentary Switch ShortRelease (MSR) feature
743
+ * flag from being set. Otherwise, the following paragraphs describe the situations where this event is
744
+ * generated.
745
+ *
625
746
  * This event shall be generated, when the momentary switch has been released (after debouncing).
626
747
  *
627
- * • If the server supports the Momentary Switch LongPress (MSL) feature, this event shall be generated
628
- * when the switch is released if no LongPress event had been generated since the previous InitialPress
629
- * event.
748
+ * • If the server has the Momentary Switch LongPress (MSL) feature flag set, then this event shall be
749
+ * generated when the switch is released if no LongPress event had been generated since the previous
750
+ * InitialPress event.
630
751
  *
631
- * • If the server does not support the Momentary Switch LongPress (MSL) feature, this event shall be
632
- * generated when the switch is released - even when the switch was pressed for a long time.
752
+ * • If the server does not have the Momentary Switch LongPress (MSL) feature flag set, this event shall
753
+ * be generated when the switch is released - even when the switch was pressed for a long time.
633
754
  *
634
755
  * • Also see Section 1.13.7, “Sequence of generated events”.
635
756
  *
@@ -645,12 +766,56 @@ export declare namespace Switch {
645
766
  }>, any>;
646
767
  };
647
768
  };
769
+ }, {
770
+ readonly flags: {
771
+ readonly momentarySwitchMultiPress: true;
772
+ readonly actionSwitch: false;
773
+ };
774
+ readonly component: {
775
+ readonly events: {
776
+ /**
777
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all.
778
+ * Otherwise, the following paragraphs describe the situations where this event is generated.
779
+ *
780
+ * This event shall be generated to indicate how many times the momentary switch has been pressed in a
781
+ * multi-press sequence, during that sequence. See Multi Press Details below.
782
+ *
783
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
784
+ */
785
+ readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
786
+ /**
787
+ * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
788
+ *
789
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
790
+ */
791
+ newPosition: import("../tlv/TlvObject.js").FieldType<number>;
792
+ /**
793
+ * This field shall contain:
794
+ *
795
+ * • a value of 2 when the second press of a multi-press sequence has been detected,
796
+ *
797
+ * • a value of 3 when the third press of a multi-press sequence has been detected,
798
+ *
799
+ * • a value of N when the Nth press of a multi-press sequence has been detected.
800
+ *
801
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
802
+ */
803
+ currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
804
+ }>, any>;
805
+ };
806
+ };
648
807
  }, {
649
808
  readonly flags: {
650
809
  readonly momentarySwitchRelease: true;
651
810
  readonly momentarySwitch: false;
652
811
  };
653
812
  readonly component: false;
813
+ }, {
814
+ readonly flags: {
815
+ readonly momentarySwitchRelease: true;
816
+ readonly actionSwitch: true;
817
+ };
818
+ readonly component: false;
654
819
  }, {
655
820
  readonly flags: {
656
821
  readonly momentarySwitchLongPress: true;
@@ -661,6 +826,13 @@ export declare namespace Switch {
661
826
  readonly flags: {
662
827
  readonly momentarySwitchLongPress: true;
663
828
  readonly momentarySwitchRelease: false;
829
+ readonly actionSwitch: false;
830
+ };
831
+ readonly component: false;
832
+ }, {
833
+ readonly flags: {
834
+ readonly actionSwitch: true;
835
+ readonly momentarySwitchMultiPress: false;
664
836
  };
665
837
  readonly component: false;
666
838
  }, {
@@ -675,6 +847,12 @@ export declare namespace Switch {
675
847
  readonly momentarySwitchRelease: false;
676
848
  };
677
849
  readonly component: false;
850
+ }, {
851
+ readonly flags: {
852
+ readonly actionSwitch: true;
853
+ readonly momentarySwitch: false;
854
+ };
855
+ readonly component: false;
678
856
  }, {
679
857
  readonly flags: {
680
858
  readonly latchingSwitch: true;
@@ -695,12 +873,12 @@ export declare namespace Switch {
695
873
  const ClusterInstance: MutableCluster.ExtensibleOnly<{
696
874
  readonly id: 59;
697
875
  readonly name: "Switch";
698
- readonly revision: 1;
876
+ readonly revision: 2;
699
877
  readonly features: {
700
878
  /**
701
879
  * LatchingSwitch
702
880
  *
703
- * This feature is for a switch that maintains its position after being pressed (or turned).
881
+ * This feature flag is for a switch that maintains its position after being pressed (or turned).
704
882
  *
705
883
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.1
706
884
  */
@@ -708,8 +886,8 @@ export declare namespace Switch {
708
886
  /**
709
887
  * MomentarySwitch
710
888
  *
711
- * This feature is for a switch that does not maintain its position after being pressed (or turned). After
712
- * releasing, it goes back to its idle position.
889
+ * This feature flag is for a switch that does not maintain its position after being pressed (or turned).
890
+ * After releasing, it goes back to its idle position.
713
891
  *
714
892
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.2
715
893
  */
@@ -717,8 +895,7 @@ export declare namespace Switch {
717
895
  /**
718
896
  * MomentarySwitchRelease
719
897
  *
720
- * This feature is for a momentary switch that can distinguish and report release events. When this feature
721
- * flag MSR is present, MS shall be present as well.
898
+ * This feature flag is for a momentary switch that can distinguish and report release events.
722
899
  *
723
900
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.3
724
901
  */
@@ -726,8 +903,8 @@ export declare namespace Switch {
726
903
  /**
727
904
  * MomentarySwitchLongPress
728
905
  *
729
- * This feature is for a momentary switch that can distinguish and report long presses from short presses.
730
- * When this feature flag MSL is present, MS and MSR shall be present as well.
906
+ * This feature flag is for a momentary switch that can distinguish and report long presses from short
907
+ * presses.
731
908
  *
732
909
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.4
733
910
  */
@@ -735,13 +912,21 @@ export declare namespace Switch {
735
912
  /**
736
913
  * MomentarySwitchMultiPress
737
914
  *
738
- * This feature is for a momentary switch that can distinguish and report double press and potentially
739
- * multiple presses with more events, such as triple press, etc. When this feature flag MSM is present, MS
740
- * and MSR shall be present as well.
915
+ * This feature flag is for a momentary switch that can distinguish and report double press and potentially
916
+ * multiple presses with more events, such as triple press, etc.
741
917
  *
742
918
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.5
743
919
  */
744
920
  readonly momentarySwitchMultiPress: BitFlag;
921
+ /**
922
+ * ActionSwitch
923
+ *
924
+ * This feature flag indicates simplified handling of events for multi-press-capable switches. See Multi
925
+ * Press Details.
926
+ *
927
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.6
928
+ */
929
+ readonly actionSwitch: BitFlag;
745
930
  };
746
931
  readonly attributes: {
747
932
  /**
@@ -752,9 +937,10 @@ export declare namespace Switch {
752
937
  */
753
938
  readonly numberOfPositions: FixedAttribute<number, any>;
754
939
  /**
755
- * Indicates the position of the switch. The valid range is zero to NumberOfPositions-1. CurrentPosition
756
- * value 0 shall be assigned to the default position of the switch: for example the "open" state of a
757
- * rocker switch, or the "idle" state of a push button switch.
940
+ * Indicates the position of the switch. The valid range is zero to NumberOfPositions - 1.
941
+ *
942
+ * CurrentPosition value 0 shall be assigned to the default position of the switch: for example the "open"
943
+ * state of a rocker switch, or the "idle" state of a push button switch.
758
944
  *
759
945
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.2
760
946
  */
@@ -771,40 +957,32 @@ export declare namespace Switch {
771
957
  readonly attributes: {
772
958
  /**
773
959
  * Indicates how many consecutive presses can be detected and reported by a momentary switch which supports
774
- * multi-press (e.g. it will report the value 3 if it can detect single press, double press and triple
775
- * press, but not quad press and beyond).
960
+ * multi-press (MSM feature flag set).
961
+ *
962
+ * For example, a momentary switch supporting single press, double press and triple press, but not quad
963
+ * press and beyond, would return the value 3.
964
+ *
965
+ * When more than MultiPressMax presses are detected within a multi-press sequence:
966
+ *
967
+ * • The server for cluster revision < 2 SHOULD generate a MultiPressComplete event with the
968
+ * TotalNumberOfPressesCounted field set to the value of the MultiPressMax attribute, and avoid
969
+ * generating any further InitialPress and MultiPressOngoing events until the switch has become fully
970
+ * idle (i.e. no longer in the process of counting presses within the multipress).
971
+ *
972
+ * • The server for cluster revision >= 2 shall generate a MultiPressComplete event with the
973
+ * TotalNumberOfPressesCounted field set to zero (indicating an aborted sequence), and shall NOT
974
+ * generate any further InitialPress and MultiPressOngoing events until the switch has become fully
975
+ * idle (i.e. no longer in the process of counting presses within the multipress).
976
+ *
977
+ * This approach avoids unintentionally causing intermediate actions where there is a very long sequence of
978
+ * presses beyond MultiPressMax that may be taken in account specially by switches (e.g. to trigger special
979
+ * behavior such as factory reset for which generating events towards the client is not appropriate).
776
980
  *
777
981
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.3
778
982
  */
779
983
  readonly multiPressMax: FixedAttribute<number, any>;
780
984
  };
781
985
  readonly events: {
782
- /**
783
- * This event shall be generated to indicate how many times the momentary switch has been pressed in a
784
- * multi-press sequence, during that sequence. See Multi Press Details below.
785
- *
786
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
787
- */
788
- readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
789
- /**
790
- * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
791
- *
792
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
793
- */
794
- newPosition: import("../tlv/TlvObject.js").FieldType<number>;
795
- /**
796
- * This field shall contain:
797
- *
798
- * • a value of 2 when the second press of a multi-press sequence has been detected,
799
- *
800
- * • a value of 3 when the third press of a multi-press sequence has been detected,
801
- *
802
- * • a value of N when the Nth press of a multi-press sequence has been detected.
803
- *
804
- * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
805
- */
806
- currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
807
- }>, any>;
808
986
  /**
809
987
  * This event shall be generated to indicate how many times the momentary switch has been pressed in a
810
988
  * multi-press sequence, after it has been detected that the sequence has ended. See Multi Press Details.
@@ -814,9 +992,11 @@ export declare namespace Switch {
814
992
  *
815
993
  * The TotalNumberOfPressesCounted field shall contain:
816
994
  *
817
- * • a value of 1 when there was one press in a multi-press sequence (and the sequence has ended),
995
+ * • a value of 0 when there was an aborted multi-press sequence, where the number of presses goes beyond
996
+ * MultiPressMax presses,
818
997
  *
819
- * i.e. there was no double press (or more),
998
+ * a value of 1 when there was exactly one press in a multi-press sequence (and the sequence has
999
+ * ended), i.e. there was no double press (or more),
820
1000
  *
821
1001
  * • a value of 2 when there were exactly two presses in a multi-press sequence (and the sequence has
822
1002
  * ended),
@@ -827,6 +1007,14 @@ export declare namespace Switch {
827
1007
  * • a value of N when there were exactly N presses in a multi-press sequence (and the sequence has
828
1008
  * ended).
829
1009
  *
1010
+ * NOTE
1011
+ *
1012
+ * The introduction of TotalNumberOfPressesCounted supporting the value 0 may impact clients of switches
1013
+ * using cluster revision 1 since such servers would not use this value of TotalNumberOfPressesCounted to
1014
+ * indicate an aborted sequence. Clients SHOULD always act using the TotalNumberOfPressesCounted field
1015
+ * taken into account since for values from 1 to MultiPressMax, the user action that led to the event was
1016
+ * different depending on the count.
1017
+ *
830
1018
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.7
831
1019
  */
832
1020
  readonly multiPressComplete: Event<import("../tlv/TlvObject.js").TypeFromFields<{
@@ -885,8 +1073,36 @@ export declare namespace Switch {
885
1073
  readonly component: {
886
1074
  readonly events: {
887
1075
  /**
888
- * This event shall be generated, when the momentary switch has been pressed for a "long" time (this time
889
- * interval is manufacturer determined (e.g. since it depends on the switch physics)).
1076
+ * This event shall be generated when the momentary switch has been pressed for a "long" time. The time
1077
+ * interval constituting a "long" time is manufacturer-determined, since it depends on the switch physics.
1078
+ *
1079
+ * • When the AS feature flag is set, this event:
1080
+ *
1081
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
1082
+ * any multi-press cycles);
1083
+ *
1084
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
1085
+ * press is detected after the idle time.
1086
+ *
1087
+ * • Else, when the MSM feature flag is set, this event:
1088
+ *
1089
+ * ◦ shall NOT be generated during a multi-press sequence (since a long press is a separate cycle from
1090
+ * any multi-press cycles);
1091
+ *
1092
+ * ◦ shall only be generated after the first InitialPress following a MultiPressComplete when a long
1093
+ * press is detected after the idle time;
1094
+ *
1095
+ * ◦ shall NOT be generated after a MultiPressOngoing event without an intervening MultiPressComplete
1096
+ * event.
1097
+ *
1098
+ * The above constraints imply that for a given activity detection cycle of a switch having MSM and/or MSL
1099
+ * feature flags set, the entire activity is either a single long press detection cycle of (InitialPress,
1100
+ * LongPress, LongRelease), or a single multi-press detection cycle (ending in MultiPressComplete), where
1101
+ * presses that would otherwise be reported as long presses are instead reported as a counted press in the
1102
+ * MultiPressComplete event, and as InitialPress/ShortRelease pairs otherwise (where applicable).
1103
+ *
1104
+ * The rationale for this constraint is the ambiguity of interpretation of events when mixing long presses
1105
+ * and multi-press events.
890
1106
  *
891
1107
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.3
892
1108
  */
@@ -923,14 +1139,19 @@ export declare namespace Switch {
923
1139
  readonly component: {
924
1140
  readonly events: {
925
1141
  /**
1142
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all,
1143
+ * since setting the Action Switch feature flag forbids the Momentary Switch ShortRelease (MSR) feature
1144
+ * flag from being set. Otherwise, the following paragraphs describe the situations where this event is
1145
+ * generated.
1146
+ *
926
1147
  * This event shall be generated, when the momentary switch has been released (after debouncing).
927
1148
  *
928
- * • If the server supports the Momentary Switch LongPress (MSL) feature, this event shall be generated
929
- * when the switch is released if no LongPress event had been generated since the previous InitialPress
930
- * event.
1149
+ * • If the server has the Momentary Switch LongPress (MSL) feature flag set, then this event shall be
1150
+ * generated when the switch is released if no LongPress event had been generated since the previous
1151
+ * InitialPress event.
931
1152
  *
932
- * • If the server does not support the Momentary Switch LongPress (MSL) feature, this event shall be
933
- * generated when the switch is released - even when the switch was pressed for a long time.
1153
+ * • If the server does not have the Momentary Switch LongPress (MSL) feature flag set, this event shall
1154
+ * be generated when the switch is released - even when the switch was pressed for a long time.
934
1155
  *
935
1156
  * • Also see Section 1.13.7, “Sequence of generated events”.
936
1157
  *
@@ -946,12 +1167,56 @@ export declare namespace Switch {
946
1167
  }>, any>;
947
1168
  };
948
1169
  };
1170
+ }, {
1171
+ readonly flags: {
1172
+ readonly momentarySwitchMultiPress: true;
1173
+ readonly actionSwitch: false;
1174
+ };
1175
+ readonly component: {
1176
+ readonly events: {
1177
+ /**
1178
+ * If the server has the Action Switch (AS) feature flag set, this event shall NOT be generated at all.
1179
+ * Otherwise, the following paragraphs describe the situations where this event is generated.
1180
+ *
1181
+ * This event shall be generated to indicate how many times the momentary switch has been pressed in a
1182
+ * multi-press sequence, during that sequence. See Multi Press Details below.
1183
+ *
1184
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6
1185
+ */
1186
+ readonly multiPressOngoing: Event<import("../tlv/TlvObject.js").TypeFromFields<{
1187
+ /**
1188
+ * This field shall indicate the new value of the CurrentPosition attribute, i.e. while pressed.
1189
+ *
1190
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.1
1191
+ */
1192
+ newPosition: import("../tlv/TlvObject.js").FieldType<number>;
1193
+ /**
1194
+ * This field shall contain:
1195
+ *
1196
+ * • a value of 2 when the second press of a multi-press sequence has been detected,
1197
+ *
1198
+ * • a value of 3 when the third press of a multi-press sequence has been detected,
1199
+ *
1200
+ * • a value of N when the Nth press of a multi-press sequence has been detected.
1201
+ *
1202
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.6.6.2
1203
+ */
1204
+ currentNumberOfPressesCounted: import("../tlv/TlvObject.js").FieldType<number>;
1205
+ }>, any>;
1206
+ };
1207
+ };
949
1208
  }, {
950
1209
  readonly flags: {
951
1210
  readonly momentarySwitchRelease: true;
952
1211
  readonly momentarySwitch: false;
953
1212
  };
954
1213
  readonly component: false;
1214
+ }, {
1215
+ readonly flags: {
1216
+ readonly momentarySwitchRelease: true;
1217
+ readonly actionSwitch: true;
1218
+ };
1219
+ readonly component: false;
955
1220
  }, {
956
1221
  readonly flags: {
957
1222
  readonly momentarySwitchLongPress: true;
@@ -962,6 +1227,13 @@ export declare namespace Switch {
962
1227
  readonly flags: {
963
1228
  readonly momentarySwitchLongPress: true;
964
1229
  readonly momentarySwitchRelease: false;
1230
+ readonly actionSwitch: false;
1231
+ };
1232
+ readonly component: false;
1233
+ }, {
1234
+ readonly flags: {
1235
+ readonly actionSwitch: true;
1236
+ readonly momentarySwitchMultiPress: false;
965
1237
  };
966
1238
  readonly component: false;
967
1239
  }, {
@@ -976,6 +1248,12 @@ export declare namespace Switch {
976
1248
  readonly momentarySwitchRelease: false;
977
1249
  };
978
1250
  readonly component: false;
1251
+ }, {
1252
+ readonly flags: {
1253
+ readonly actionSwitch: true;
1254
+ readonly momentarySwitch: false;
1255
+ };
1256
+ readonly component: false;
979
1257
  }, {
980
1258
  readonly flags: {
981
1259
  readonly latchingSwitch: true;
@@ -1018,12 +1296,12 @@ export declare namespace Switch {
1018
1296
  const CompleteInstance: MutableCluster<{
1019
1297
  readonly id: 59;
1020
1298
  readonly name: "Switch";
1021
- readonly revision: 1;
1299
+ readonly revision: 2;
1022
1300
  readonly features: {
1023
1301
  /**
1024
1302
  * LatchingSwitch
1025
1303
  *
1026
- * This feature is for a switch that maintains its position after being pressed (or turned).
1304
+ * This feature flag is for a switch that maintains its position after being pressed (or turned).
1027
1305
  *
1028
1306
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.1
1029
1307
  */
@@ -1031,8 +1309,8 @@ export declare namespace Switch {
1031
1309
  /**
1032
1310
  * MomentarySwitch
1033
1311
  *
1034
- * This feature is for a switch that does not maintain its position after being pressed (or turned). After
1035
- * releasing, it goes back to its idle position.
1312
+ * This feature flag is for a switch that does not maintain its position after being pressed (or turned).
1313
+ * After releasing, it goes back to its idle position.
1036
1314
  *
1037
1315
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.2
1038
1316
  */
@@ -1040,8 +1318,7 @@ export declare namespace Switch {
1040
1318
  /**
1041
1319
  * MomentarySwitchRelease
1042
1320
  *
1043
- * This feature is for a momentary switch that can distinguish and report release events. When this feature
1044
- * flag MSR is present, MS shall be present as well.
1321
+ * This feature flag is for a momentary switch that can distinguish and report release events.
1045
1322
  *
1046
1323
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.3
1047
1324
  */
@@ -1049,8 +1326,8 @@ export declare namespace Switch {
1049
1326
  /**
1050
1327
  * MomentarySwitchLongPress
1051
1328
  *
1052
- * This feature is for a momentary switch that can distinguish and report long presses from short presses.
1053
- * When this feature flag MSL is present, MS and MSR shall be present as well.
1329
+ * This feature flag is for a momentary switch that can distinguish and report long presses from short
1330
+ * presses.
1054
1331
  *
1055
1332
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.4
1056
1333
  */
@@ -1058,13 +1335,21 @@ export declare namespace Switch {
1058
1335
  /**
1059
1336
  * MomentarySwitchMultiPress
1060
1337
  *
1061
- * This feature is for a momentary switch that can distinguish and report double press and potentially
1062
- * multiple presses with more events, such as triple press, etc. When this feature flag MSM is present, MS
1063
- * and MSR shall be present as well.
1338
+ * This feature flag is for a momentary switch that can distinguish and report double press and potentially
1339
+ * multiple presses with more events, such as triple press, etc.
1064
1340
  *
1065
1341
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.5
1066
1342
  */
1067
1343
  readonly momentarySwitchMultiPress: BitFlag;
1344
+ /**
1345
+ * ActionSwitch
1346
+ *
1347
+ * This feature flag indicates simplified handling of events for multi-press-capable switches. See Multi
1348
+ * Press Details.
1349
+ *
1350
+ * @see {@link MatterSpecification.v13.Cluster} § 1.13.4.6
1351
+ */
1352
+ readonly actionSwitch: BitFlag;
1068
1353
  };
1069
1354
  readonly attributes: {
1070
1355
  readonly multiPressMax: FixedAttribute<number, any> & {
@@ -1083,9 +1368,10 @@ export declare namespace Switch {
1083
1368
  */
1084
1369
  readonly numberOfPositions: FixedAttribute<number, any>;
1085
1370
  /**
1086
- * Indicates the position of the switch. The valid range is zero to NumberOfPositions-1. CurrentPosition
1087
- * value 0 shall be assigned to the default position of the switch: for example the "open" state of a
1088
- * rocker switch, or the "idle" state of a push button switch.
1371
+ * Indicates the position of the switch. The valid range is zero to NumberOfPositions - 1.
1372
+ *
1373
+ * CurrentPosition value 0 shall be assigned to the default position of the switch: for example the "open"
1374
+ * state of a rocker switch, or the "idle" state of a push button switch.
1089
1375
  *
1090
1376
  * @see {@link MatterSpecification.v13.Cluster} § 1.13.5.2
1091
1377
  */
@@ -1192,6 +1478,7 @@ export declare namespace Switch {
1192
1478
  readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1193
1479
  readonly mandatoryIf: [] | [{
1194
1480
  momentarySwitchMultiPress: boolean;
1481
+ actionSwitch: boolean;
1195
1482
  }];
1196
1483
  };
1197
1484
  readonly multiPressComplete: Event<import("../tlv/TlvObject.js").TypeFromFields<{