@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
@@ -5,14 +5,137 @@
5
5
  */
6
6
  /*** THIS FILE IS GENERATED, DO NOT EDIT ***/
7
7
  import { MutableCluster } from "../cluster/mutation/MutableCluster.js";
8
- import { WritableAttribute, FixedAttribute, Attribute, Command } from "../cluster/Cluster.js";
8
+ import { Attribute, Command, WritableAttribute, FixedAttribute } from "../cluster/Cluster.js";
9
9
  import { TypeFromSchema } from "../tlv/TlvSchema.js";
10
+ import { BitFlag } from "../schema/BitmapSchema.js";
10
11
  import { Identity } from "#general";
11
12
  export declare namespace GeneralCommissioning {
13
+ /**
14
+ * These are optional features supported by GeneralCommissioningCluster.
15
+ *
16
+ * @see {@link MatterSpecification.v13.Core} § 11.10.4
17
+ */
18
+ enum Feature {
19
+ /**
20
+ * TermsAndConditions (TC)
21
+ *
22
+ * Supports Terms & Conditions acknowledgement
23
+ */
24
+ TermsAndConditions = "TermsAndConditions"
25
+ }
26
+ /**
27
+ * Input to the GeneralCommissioning setTcAcknowledgements command
28
+ *
29
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8
30
+ */
31
+ const TlvSetTcAcknowledgementsRequest: import("../tlv/TlvObject.js").ObjectSchema<{
32
+ /**
33
+ * This field shall contain the version of the Enhanced Setup Flow Terms & Conditions that were presented to
34
+ * the user.
35
+ *
36
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.1
37
+ */
38
+ tcVersion: import("../tlv/TlvObject.js").FieldType<number>;
39
+ /**
40
+ * This field shall contain the user responses to the Enhanced Setup Flow Terms & Conditions as a map where
41
+ * each bit set in the bitmap corresponds to an accepted term in the file located at EnhancedSetupFlowTCUrl.
42
+ *
43
+ * ### Effect on Receipt
44
+ *
45
+ * This command shall copy the user responses and accepted version to the presented Enhanced Setup Flow Terms &
46
+ * Conditions from the values provided in the TCUserResponse and TCVersion fields to the TCAcknowledgements
47
+ * Attribute and the TCAcceptedVersion Attribute fields respectively.
48
+ *
49
+ * This command shall result in success with an ErrorCode value of OK in the SetTCAcknowledgementsResponse if
50
+ * all required terms were accepted by the user. Specifically, all bits have a value of 1 in TCAcknowledgements
51
+ * whose ordinal is marked as required in the file located at EnhancedSe
52
+ *
53
+ * tupFlowTCUrl.
54
+ *
55
+ * If the TCVersion field is less than the TCMinRequiredVersion, then the ErrorCode of TCMinVersionNotMet shall
56
+ * be returned and TCAcknowledgements shall remain unchanged.
57
+ *
58
+ * If TCVersion is greater than or equal to TCMinRequiredVersion, but the TCUserResponse value indicates that
59
+ * not all required terms were accepted by the user, then the ErrorCode of RequiredTCNotAccepted shall be
60
+ * returned and TCAcknowledgements shall remain unchanged.
61
+ *
62
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.2
63
+ */
64
+ tcUserResponse: import("../tlv/TlvObject.js").FieldType<number>;
65
+ }>;
66
+ /**
67
+ * Input to the GeneralCommissioning setTcAcknowledgements command
68
+ *
69
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8
70
+ */
71
+ interface SetTcAcknowledgementsRequest extends TypeFromSchema<typeof TlvSetTcAcknowledgementsRequest> {
72
+ }
73
+ /**
74
+ * This enumeration is used by several response commands in this cluster to indicate particular errors.
75
+ *
76
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.1
77
+ */
78
+ enum CommissioningError {
79
+ /**
80
+ * No error
81
+ */
82
+ Ok = 0,
83
+ /**
84
+ * Attempting to set regulatory configuration to a region or indoor/outdoor mode for which the server does not
85
+ * have proper configuration.
86
+ */
87
+ ValueOutsideRange = 1,
88
+ /**
89
+ * Executed CommissioningComplete outside CASE session.
90
+ */
91
+ InvalidAuthentication = 2,
92
+ /**
93
+ * Executed CommissioningComplete when there was no active Fail-Safe context.
94
+ */
95
+ NoFailSafe = 3,
96
+ /**
97
+ * Attempting to arm fail- safe or execute CommissioningComplete from a fabric different than the one
98
+ * associated with the current fail- safe context.
99
+ */
100
+ BusyWithOtherAdmin = 4,
101
+ /**
102
+ * One or more required TC features from the Enhanced Setup Flow were not accepted.
103
+ */
104
+ RequiredTcNotAccepted = 5,
105
+ /**
106
+ * No acknowledgements from the user for the TC features were received.
107
+ */
108
+ TcAcknowledgementsNotReceived = 6,
109
+ /**
110
+ * The version of the TC features acknowledged by the user did not meet the minimum required version.
111
+ */
112
+ TcMinVersionNotMet = 7
113
+ }
114
+ /**
115
+ * This command is used to convey the result from SetTCAcknowledgements.
116
+ *
117
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9
118
+ */
119
+ const TlvSetTcAcknowledgementsResponse: import("../tlv/TlvObject.js").ObjectSchema<{
120
+ /**
121
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
122
+ * description of the SetTCAcknowledgements command.
123
+ *
124
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9.1
125
+ */
126
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
127
+ }>;
128
+ /**
129
+ * This command is used to convey the result from SetTCAcknowledgements.
130
+ *
131
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9
132
+ */
133
+ interface SetTcAcknowledgementsResponse extends TypeFromSchema<typeof TlvSetTcAcknowledgementsResponse> {
134
+ }
12
135
  /**
13
136
  * This structure provides some constant values that may be of use to all commissioners.
14
137
  *
15
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3
138
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3
16
139
  */
17
140
  const TlvBasicCommissioningInfo: import("../tlv/TlvObject.js").ObjectSchema<{
18
141
  /**
@@ -21,25 +144,25 @@ export declare namespace GeneralCommissioning {
21
144
  * Commissionee. This value, if used in the ArmFailSafe command’s ExpiryLengthSeconds field SHOULD allow a
22
145
  * Commissioner to proceed with a nominal commissioning without having to-rearm the fail-safe, with some margin.
23
146
  *
24
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3.1
147
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.1
25
148
  */
26
149
  failSafeExpiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
27
150
  /**
28
151
  * This field shall contain a conservative value in seconds denoting the maximum total duration for which a
29
- * fail safe timer can be re-armed. See Section 11.10.6.2.1, “Fail Safe Context”.
152
+ * fail safe timer can be re-armed. See Section 11.10.7.2.1, “Fail Safe Context”.
30
153
  *
31
154
  * The value of this field shall be greater than or equal to the FailSafeExpiryLengthSeconds. Absent additional
32
155
  * guidelines, it is recommended that the value of this field be aligned with the initial Announcement Duration
33
156
  * and default to 900 seconds.
34
157
  *
35
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3.2
158
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.2
36
159
  */
37
160
  maxCumulativeFailsafeSeconds: import("../tlv/TlvObject.js").FieldType<number>;
38
161
  }>;
39
162
  /**
40
163
  * This structure provides some constant values that may be of use to all commissioners.
41
164
  *
42
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3
165
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3
43
166
  */
44
167
  interface BasicCommissioningInfo extends TypeFromSchema<typeof TlvBasicCommissioningInfo> {
45
168
  }
@@ -47,7 +170,7 @@ export declare namespace GeneralCommissioning {
47
170
  * This enumeration is used by the RegulatoryConfig and LocationCapability attributes to indicate possible radio
48
171
  * usage.
49
172
  *
50
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.2
173
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.2
51
174
  */
52
175
  enum RegulatoryLocationType {
53
176
  /**
@@ -66,7 +189,7 @@ export declare namespace GeneralCommissioning {
66
189
  /**
67
190
  * Input to the GeneralCommissioning armFailSafe command
68
191
  *
69
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.2
192
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.2
70
193
  */
71
194
  const TlvArmFailSafeRequest: import("../tlv/TlvObject.js").ObjectSchema<{
72
195
  expiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
@@ -75,66 +198,37 @@ export declare namespace GeneralCommissioning {
75
198
  /**
76
199
  * Input to the GeneralCommissioning armFailSafe command
77
200
  *
78
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.2
201
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.2
79
202
  */
80
203
  interface ArmFailSafeRequest extends TypeFromSchema<typeof TlvArmFailSafeRequest> {
81
204
  }
82
205
  /**
83
- * This enumeration is used by several response commands in this cluster to indicate particular errors.
84
- *
85
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.1
86
- */
87
- enum CommissioningError {
88
- /**
89
- * No error
90
- */
91
- Ok = 0,
92
- /**
93
- * Attempting to set regulatory configuration to a region or indoor/outdoor mode for which the server does not
94
- * have proper configuration.
95
- */
96
- ValueOutsideRange = 1,
97
- /**
98
- * Executed CommissioningComplete outside CASE session.
99
- */
100
- InvalidAuthentication = 2,
101
- /**
102
- * Executed CommissioningComplete when there was no active Fail-Safe context.
103
- */
104
- NoFailSafe = 3,
105
- /**
106
- * Attempting to arm fail- safe or execute CommissioningComplete from a fabric different than the one
107
- * associated with the current fail- safe context.
108
- */
109
- BusyWithOtherAdmin = 4
110
- }
111
- /**
112
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3
206
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3
113
207
  */
114
208
  const TlvArmFailSafeResponse: import("../tlv/TlvObject.js").ObjectSchema<{
115
209
  /**
116
210
  * This field shall contain the result of the operation, based on the behavior specified in the functional
117
211
  * description of the ArmFailSafe command.
118
212
  *
119
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3.1
213
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.1
120
214
  */
121
215
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
122
216
  /**
123
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
217
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
124
218
  *
125
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3.2
219
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.2
126
220
  */
127
221
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
128
222
  }>;
129
223
  /**
130
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3
224
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3
131
225
  */
132
226
  interface ArmFailSafeResponse extends TypeFromSchema<typeof TlvArmFailSafeResponse> {
133
227
  }
134
228
  /**
135
229
  * Input to the GeneralCommissioning setRegulatoryConfig command
136
230
  *
137
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.4
231
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.4
138
232
  */
139
233
  const TlvSetRegulatoryConfigRequest: import("../tlv/TlvObject.js").ObjectSchema<{
140
234
  newRegulatoryConfig: import("../tlv/TlvObject.js").FieldType<RegulatoryLocationType>;
@@ -144,63 +238,197 @@ export declare namespace GeneralCommissioning {
144
238
  /**
145
239
  * Input to the GeneralCommissioning setRegulatoryConfig command
146
240
  *
147
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.4
241
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.4
148
242
  */
149
243
  interface SetRegulatoryConfigRequest extends TypeFromSchema<typeof TlvSetRegulatoryConfigRequest> {
150
244
  }
151
245
  /**
152
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5
246
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5
153
247
  */
154
248
  const TlvSetRegulatoryConfigResponse: import("../tlv/TlvObject.js").ObjectSchema<{
155
249
  /**
156
250
  * This field shall contain the result of the operation, based on the behavior specified in the functional
157
251
  * description of the SetRegulatoryConfig command.
158
252
  *
159
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5.1
253
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.1
160
254
  */
161
255
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
162
256
  /**
163
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
257
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
164
258
  *
165
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5.2
259
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.2
166
260
  */
167
261
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
168
262
  }>;
169
263
  /**
170
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5
264
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5
171
265
  */
172
266
  interface SetRegulatoryConfigResponse extends TypeFromSchema<typeof TlvSetRegulatoryConfigResponse> {
173
267
  }
174
268
  /**
175
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7
269
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7
176
270
  */
177
271
  const TlvCommissioningCompleteResponse: import("../tlv/TlvObject.js").ObjectSchema<{
178
272
  /**
179
273
  * This field shall contain the result of the operation, based on the behavior specified in the functional
180
274
  * description of the CommissioningComplete command.
181
275
  *
182
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7.1
276
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.1
183
277
  */
184
278
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
185
279
  /**
186
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
280
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
187
281
  *
188
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7.2
282
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.2
189
283
  */
190
284
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
191
285
  }>;
192
286
  /**
193
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7
287
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7
194
288
  */
195
289
  interface CommissioningCompleteResponse extends TypeFromSchema<typeof TlvCommissioningCompleteResponse> {
196
290
  }
197
291
  /**
198
- * @see {@link Cluster}
292
+ * A GeneralCommissioningCluster supports these elements if it supports feature TermsAndConditions.
199
293
  */
200
- const ClusterInstance: MutableCluster<{
294
+ const TermsAndConditionsComponent: {
295
+ readonly attributes: {
296
+ /**
297
+ * Indicates the last version of the T&Cs for which the device received user acknowledgements. On factory
298
+ * reset this field shall be reset to 0.
299
+ *
300
+ * When Custom Commissioning Flow is used to obtain user consent (e. g. because the Commissioner does not
301
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
302
+ * this attribute is set to a value which is greater than or equal to TCMinRequiredVersion before returning
303
+ * the user back to the originating Commissioner (see Enhanced Setup Flow).
304
+ *
305
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.6
306
+ */
307
+ readonly tcAcceptedVersion: Attribute<number, any>;
308
+ /**
309
+ * Indicates the minimum version of the texts presented by the Enhanced Setup Flow that need to be accepted
310
+ * by the user for this device. This attribute may change as the result of an OTA update.
311
+ *
312
+ * If an event such as a software update causes TCAcceptedVersion to become less than TCMinRequiredVersion,
313
+ * then the device shall update TCAcknowledgementsRequired to True so that an administrator can detect that
314
+ * a newer version of the texts needs to be presented to the user.
315
+ *
316
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.7
317
+ */
318
+ readonly tcMinRequiredVersion: Attribute<number, any>;
319
+ /**
320
+ * Indicates the user’s response to the presented terms. Each bit position corresponds to a user response
321
+ * for the associated index of matching text, such that bit 0 (bit value 1) is for text index 0. Bit 15
322
+ * (bit value 0x8000) is for text index 15. A bit value of 1 indicates acceptance and a value of 0
323
+ * indicates non-acceptance. For example, if there are two texts that were presented where the first (bit
324
+ * 0, value 1) was declined and the second accepted (bit 1, value 2), we would expect the resulting value
325
+ * of the map to be 2.
326
+ *
327
+ * Whenever a user provides responses to newly presented terms and conditions, this attribute shall be
328
+ * updated with the latest responses. This may happen in response to updated terms that were presented to
329
+ * the user. On a factory reset this field shall be reset with all bits set to 0.
330
+ *
331
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.8
332
+ */
333
+ readonly tcAcknowledgements: Attribute<number, any>;
334
+ /**
335
+ * Indicates whether SetTCAcknowledgements is currently required to be called with the inclusion of
336
+ * mandatory terms accepted.
337
+ *
338
+ * This attribute may be present and False in the case where no terms and conditions are currently
339
+ * mandatory to accept for CommissioningComplete to succeed.
340
+ *
341
+ * This attribute may appear, or become True after commissioning (e.g. due to a firmware update) to
342
+ * indicate that new Terms & Conditions are available that the user must accept.
343
+ *
344
+ * Upon Factory Data Reset, this attribute shall be set to a value of True.
345
+ *
346
+ * When Custom Commissioning Flow is used to obtain user consent (e.g. because the Commissioner does not
347
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
348
+ * this attribute is set to False before returning the user back to the original Commissioner (see Enhanced
349
+ * Setup Flow).
350
+ *
351
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.9
352
+ */
353
+ readonly tcAcknowledgementsRequired: Attribute<boolean, any>;
354
+ /**
355
+ * Indicates the System Time in seconds when any functionality limitations will begin due to a lack of
356
+ * acceptance of updated Terms and Conditions, as described in Section 5.7.4.5, “Presenting Updated Terms
357
+ * and Conditions”.
358
+ *
359
+ * A null value indicates that there is no pending deadline for updated TC acceptance.
360
+ *
361
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.10
362
+ */
363
+ readonly tcUpdateDeadline: Attribute<number | null, any>;
364
+ };
365
+ readonly commands: {
366
+ /**
367
+ * This command sets the user acknowledgements received in the Enhanced Setup Flow Terms & Conditions into
368
+ * the node.
369
+ *
370
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8
371
+ */
372
+ readonly setTcAcknowledgements: Command<import("../tlv/TlvObject.js").TypeFromFields<{
373
+ /**
374
+ * This field shall contain the version of the Enhanced Setup Flow Terms & Conditions that were presented to
375
+ * the user.
376
+ *
377
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.1
378
+ */
379
+ tcVersion: import("../tlv/TlvObject.js").FieldType<number>;
380
+ /**
381
+ * This field shall contain the user responses to the Enhanced Setup Flow Terms & Conditions as a map where
382
+ * each bit set in the bitmap corresponds to an accepted term in the file located at EnhancedSetupFlowTCUrl.
383
+ *
384
+ * ### Effect on Receipt
385
+ *
386
+ * This command shall copy the user responses and accepted version to the presented Enhanced Setup Flow Terms &
387
+ * Conditions from the values provided in the TCUserResponse and TCVersion fields to the TCAcknowledgements
388
+ * Attribute and the TCAcceptedVersion Attribute fields respectively.
389
+ *
390
+ * This command shall result in success with an ErrorCode value of OK in the SetTCAcknowledgementsResponse if
391
+ * all required terms were accepted by the user. Specifically, all bits have a value of 1 in TCAcknowledgements
392
+ * whose ordinal is marked as required in the file located at EnhancedSe
393
+ *
394
+ * tupFlowTCUrl.
395
+ *
396
+ * If the TCVersion field is less than the TCMinRequiredVersion, then the ErrorCode of TCMinVersionNotMet shall
397
+ * be returned and TCAcknowledgements shall remain unchanged.
398
+ *
399
+ * If TCVersion is greater than or equal to TCMinRequiredVersion, but the TCUserResponse value indicates that
400
+ * not all required terms were accepted by the user, then the ErrorCode of RequiredTCNotAccepted shall be
401
+ * returned and TCAcknowledgements shall remain unchanged.
402
+ *
403
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.2
404
+ */
405
+ tcUserResponse: import("../tlv/TlvObject.js").FieldType<number>;
406
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
407
+ /**
408
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
409
+ * description of the SetTCAcknowledgements command.
410
+ *
411
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9.1
412
+ */
413
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
414
+ }>, any>;
415
+ };
416
+ };
417
+ /**
418
+ * These elements and properties are present in all GeneralCommissioning clusters.
419
+ */
420
+ const Base: {
201
421
  readonly id: 48;
202
422
  readonly name: "GeneralCommissioning";
203
- readonly revision: 1;
423
+ readonly revision: 2;
424
+ readonly features: {
425
+ /**
426
+ * TermsAndConditions
427
+ *
428
+ * Supports Terms & Conditions acknowledgement
429
+ */
430
+ readonly termsAndConditions: BitFlag;
431
+ };
204
432
  readonly attributes: {
205
433
  /**
206
434
  * This attribute allows for the storage of a client-provided small payload which Administrators and
@@ -218,14 +446,14 @@ export declare namespace GeneralCommissioning {
218
446
  * functioning of any cluster, other than being set as a side-effect of commands where this behavior is
219
447
  * described.
220
448
  *
221
- * @see {@link MatterSpecification.v13.Core} § 11.10.5.1
449
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.1
222
450
  */
223
451
  readonly breadcrumb: WritableAttribute<number | bigint, any>;
224
452
  /**
225
453
  * This attribute shall describe critical parameters needed at the beginning of commissioning flow. See
226
454
  * BasicCommissioningInfo for more information.
227
455
  *
228
- * @see {@link MatterSpecification.v13.Core} § 11.10.5.2
456
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.2
229
457
  */
230
458
  readonly basicCommissioningInfo: FixedAttribute<import("../tlv/TlvObject.js").TypeFromFields<{
231
459
  /**
@@ -234,18 +462,18 @@ export declare namespace GeneralCommissioning {
234
462
  * Commissionee. This value, if used in the ArmFailSafe command’s ExpiryLengthSeconds field SHOULD allow a
235
463
  * Commissioner to proceed with a nominal commissioning without having to-rearm the fail-safe, with some margin.
236
464
  *
237
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3.1
465
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.1
238
466
  */
239
467
  failSafeExpiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
240
468
  /**
241
469
  * This field shall contain a conservative value in seconds denoting the maximum total duration for which a
242
- * fail safe timer can be re-armed. See Section 11.10.6.2.1, “Fail Safe Context”.
470
+ * fail safe timer can be re-armed. See Section 11.10.7.2.1, “Fail Safe Context”.
243
471
  *
244
472
  * The value of this field shall be greater than or equal to the FailSafeExpiryLengthSeconds. Absent additional
245
473
  * guidelines, it is recommended that the value of this field be aligned with the initial Announcement Duration
246
474
  * and default to 900 seconds.
247
475
  *
248
- * @see {@link MatterSpecification.v13.Core} § 11.10.4.3.2
476
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.2
249
477
  */
250
478
  maxCumulativeFailsafeSeconds: import("../tlv/TlvObject.js").FieldType<number>;
251
479
  }>, any>;
@@ -255,15 +483,16 @@ export declare namespace GeneralCommissioning {
255
483
  * Note that the country code is part of Basic Information Cluster and therefore NOT listed on the
256
484
  * RegulatoryConfig attribute.
257
485
  *
258
- * @see {@link MatterSpecification.v13.Core} § 11.10.5.3
486
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.3
259
487
  */
260
488
  readonly regulatoryConfig: Attribute<RegulatoryLocationType, any>;
261
489
  /**
262
490
  * LocationCapability is statically set by the manufacturer and indicates if this Node needs to be told an
263
491
  * exact RegulatoryLocation. For example a Node which is "Indoor Only" would not be certified for outdoor
264
492
  * use at all, and thus there is no need for a commissioner to set or ask the user about whether the device
265
- * will be used inside or outside. However a device which states its capability is "Indoor/Outdoor" means
266
- * it would like clarification if possible.
493
+ * will be used inside or outside. However a device which states its capability is
494
+ *
495
+ * "Indoor/Outdoor" means it would like clarification if possible.
267
496
  *
268
497
  * For Nodes without radio network interfaces (e.g. Ethernet-only devices), the value IndoorOutdoor shall
269
498
  * always be used.
@@ -272,14 +501,14 @@ export declare namespace GeneralCommissioning {
272
501
  * means devices always have a safe default value, and Commissioners which choose to implement smarter
273
502
  * handling can.
274
503
  *
275
- * @see {@link MatterSpecification.v13.Core} § 11.10.5.4
504
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.4
276
505
  */
277
506
  readonly locationCapability: FixedAttribute<RegulatoryLocationType, any>;
278
507
  /**
279
508
  * Indicates whether this device supports "concurrent connection flow" commissioning mode (see Section 5.5,
280
509
  * “Commissioning Flows”). If false, the device only supports "non-concurrent connection flow" mode.
281
510
  *
282
- * @see {@link MatterSpecification.v13.Core} § 11.10.5.5
511
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.5
283
512
  */
284
513
  readonly supportsConcurrentConnection: FixedAttribute<boolean, any>;
285
514
  };
@@ -298,9 +527,8 @@ export declare namespace GeneralCommissioning {
298
527
  * of ExpiryLengthSeconds, or disarm it, depending on the situation:
299
528
  *
300
529
  * • If ExpiryLengthSeconds is 0 and the fail-safe timer was already armed and the accessing fabric
301
- * matches the Fabric currently associated with the fail-safe context, then the fail-safe timer
302
- *
303
- * shall be immediately expired (see further below for side-effects of expiration).
530
+ * matches the Fabric currently associated with the fail-safe context, then the fail-safe timer shall
531
+ * be immediately expired (see further below for side-effects of expiration).
304
532
  *
305
533
  * • If ExpiryLengthSeconds is 0 and the fail-safe timer was not armed, then this command invocation
306
534
  * shall lead to a success response with no side-effects against the fail-safe context.
@@ -316,8 +544,8 @@ export declare namespace GeneralCommissioning {
316
544
  * with ArmFailSafeResponse containing an ErrorCode value of BusyWithOtherAdmin, indicating a likely
317
545
  * conflict between commissioners.
318
546
  *
319
- * The value of the Breadcrumb field shall be written to the Breadcrumb Attribute on successful execution
320
- * of the command.
547
+ * The value of the Breadcrumb field shall be written to the Breadcrumb on successful execution of the
548
+ * command.
321
549
  *
322
550
  * If the receiver restarts unexpectedly (e.g., power interruption, software crash, or other reset) the
323
551
  * receiver shall behave as if the fail-safe timer expired and perform the sequence of clean-up steps
@@ -362,7 +590,7 @@ export declare namespace GeneralCommissioning {
362
590
  * timer (CFSC timer) serves to limit the lifetime of any particular Fail Safe Context; it shall NOT be
363
591
  * extended or modified on subsequent invocations of ArmFailSafe associated with this Fail Safe Context.
364
592
  * Upon expiry of the CFSC timer, the receiver shall execute cleanup behavior equivalent to that of
365
- * fail-safe timer expiration as detailed in Section 11.10.6.2.2, “Behavior on expiry of Fail-Safe timer”.
593
+ * fail-safe timer expiration as detailed in Section 11.10.7.2.2, “Behavior on expiry of Fail-Safe timer”.
366
594
  * Termination of the session prior to the expiration of that timer for any reason (including a successful
367
595
  * end of commissioning or an expiry of a fail-safe timer) shall also delete the CFSC timer.
368
596
  *
@@ -375,11 +603,11 @@ export declare namespace GeneralCommissioning {
375
603
  * Server.
376
604
  *
377
605
  * 2. Revoke the temporary administrative privileges granted to any open PASE session (see Section
378
- * 6.6.2.8, “Bootstrapping of the Access Control Cluster”) at the Server.
606
+ * 6.6.2.9, “Bootstrapping of the Access Control Cluster”) at the Server.
379
607
  *
380
608
  * 3. If an AddNOC or UpdateNOC command has been successfully invoked, terminate all CASE sessions
381
- * associated with the Fabric whose Fabric Index is recorded in the Fail-Safe context (see Section
382
- * 11.10.6.2, “ArmFailSafe Command”) by clearing any associated Secure Session Context at the Server.
609
+ * associated with the Fabric whose Fabric Index is recorded in the Fail-Safe context (see
610
+ * ArmFailSafe) by clearing any associated Secure Session Context at the Server.
383
611
  *
384
612
  * 4. Reset the configuration of all Network Commissioning Networks attribute to their state prior to the
385
613
  * Fail-Safe being armed.
@@ -405,11 +633,10 @@ export declare namespace GeneralCommissioning {
405
633
  *
406
634
  * 9. Reset the Breadcrumb attribute to zero.
407
635
  *
408
- * 10. Optionally: if no factory-reset resulted from the previous steps, it is recommended that the
636
+ * 10. Optionally: if no factory-reset resulted from the previous steps, it is recommended that the Node
637
+ * rollback the state of all non fabric-scoped data present in the Fail-Safe context.
409
638
  *
410
- * Node rollback the state of all non fabric-scoped data present in the Fail-Safe context.
411
- *
412
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.2
639
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.2
413
640
  */
414
641
  readonly armFailSafe: Command<import("../tlv/TlvObject.js").TypeFromFields<{
415
642
  expiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
@@ -419,13 +646,13 @@ export declare namespace GeneralCommissioning {
419
646
  * This field shall contain the result of the operation, based on the behavior specified in the functional
420
647
  * description of the ArmFailSafe command.
421
648
  *
422
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3.1
649
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.1
423
650
  */
424
651
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
425
652
  /**
426
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
653
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
427
654
  *
428
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.3.2
655
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.2
429
656
  */
430
657
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
431
658
  }>, any>;
@@ -445,8 +672,9 @@ export declare namespace GeneralCommissioning {
445
672
  * Location attribute reflected by the Basic Information Cluster configuration, but the
446
673
  * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error.
447
674
  *
448
- * If the LocationCapability attribute is not Indoor/Outdoor and the NewRegulatoryConfig value received
449
- * does not match either the Indoor or Outdoor fixed value in LocationCapability, then the
675
+ * If the LocationCapability attribute is not Indoor/Outdoor and the NewRegulatoryConfig value
676
+ *
677
+ * received does not match either the Indoor or Outdoor fixed value in LocationCapability, then the
450
678
  * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error and
451
679
  * the RegulatoryConfig attribute and associated internal radio configuration shall remain unchanged.
452
680
  *
@@ -460,7 +688,7 @@ export declare namespace GeneralCommissioning {
460
688
  * command, when SetRegulatoryConfigResponse has the ErrorCode field set to OK. If the command fails, the
461
689
  * Breadcrumb attribute shall be left unchanged.
462
690
  *
463
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.4
691
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.4
464
692
  */
465
693
  readonly setRegulatoryConfig: Command<import("../tlv/TlvObject.js").TypeFromFields<{
466
694
  newRegulatoryConfig: import("../tlv/TlvObject.js").FieldType<RegulatoryLocationType>;
@@ -471,13 +699,13 @@ export declare namespace GeneralCommissioning {
471
699
  * This field shall contain the result of the operation, based on the behavior specified in the functional
472
700
  * description of the SetRegulatoryConfig command.
473
701
  *
474
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5.1
702
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.1
475
703
  */
476
704
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
477
705
  /**
478
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
706
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
479
707
  *
480
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.5.2
708
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.2
481
709
  */
482
710
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
483
711
  }>, any>;
@@ -492,15 +720,20 @@ export declare namespace GeneralCommissioning {
492
720
  * steps needed during the Fail-Safe period, such as commissioning (see Section 5.5, “Commissioning Flows”)
493
721
  * or other Administrator operations requiring usage of the Fail Safe timer. It ensures that the Server is
494
722
  * configured in a state such that it still has all necessary elements to be fully operable within a
495
- * Fabric, such as ACL entries (see Access Control Cluster) and operational credentials (see Section 6.4,
496
- * “Node Operational Credentials Specification”), and that the Node is reach
723
+ * Fabric, such as ACL entries (see Section 9.10, “Access Control Cluster) and operational credentials
724
+ * (see Section 6.4, “Node Operational Credentials Specification”), and that the Node is reachable using
725
+ * CASE
497
726
  *
498
- * able using CASE (see Section 4.14.2, “Certificate Authenticated Session Establishment (CASE)”) over an
499
- * operational network.
727
+ * (CASE)”) over an operational network.
500
728
  *
501
729
  * An ErrorCode of NoFailSafe shall be responded to the invoker if the CommissioningComplete command was
502
730
  * received when no Fail-Safe context exists.
503
731
  *
732
+ * If Terms and Conditions are required, then an ErrorCode of TCAcknowledgementsNotReceived shall be
733
+ * responded to the invoker if the user acknowledgements to the required Terms and Conditions have not been
734
+ * provided. If the TCAcceptedVersion for the provided acknowledgements is less than TCMinRequiredVersion,
735
+ * then an ErrorCode of TCMinVersionNotMet shall be responded to the invoker.
736
+ *
504
737
  * This command is fabric-scoped, so cannot be issued over a session that does not have an associated
505
738
  * fabric, i.e. over PASE session prior to an AddNOC command. In addition, this command is only permitted
506
739
  * over CASE and must be issued by a node associated with the ongoing Fail-Safe context. An ErrorCode of
@@ -527,7 +760,7 @@ export declare namespace GeneralCommissioning {
527
760
  * 2. The commissioning window at the Server shall be closed.
528
761
  *
529
762
  * 3. Any temporary administrative privileges automatically granted to any open PASE session shall be
530
- * revoked (see Section 6.6.2.8, “Bootstrapping of the Access Control Cluster”).
763
+ * revoked (see Section 6.6.2.9, “Bootstrapping of the Access Control Cluster”).
531
764
  *
532
765
  * 4. The Secure Session Context of any PASE session still established at the Server shall be cleared.
533
766
  *
@@ -537,38 +770,1110 @@ export declare namespace GeneralCommissioning {
537
770
  * any previously established PASE session to still be usable, due to the server having cleared such
538
771
  * sessions.
539
772
  *
540
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.6
773
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.6
541
774
  */
542
775
  readonly commissioningComplete: Command<void, import("../tlv/TlvObject.js").TypeFromFields<{
543
776
  /**
544
777
  * This field shall contain the result of the operation, based on the behavior specified in the functional
545
778
  * description of the CommissioningComplete command.
546
779
  *
547
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7.1
780
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.1
548
781
  */
549
782
  errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
550
783
  /**
551
- * See Section 11.10.6.1, “Common fields in General Commissioning cluster responses”.
784
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
552
785
  *
553
- * @see {@link MatterSpecification.v13.Core} § 11.10.6.7.2
786
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.2
554
787
  */
555
788
  debugText: import("../tlv/TlvObject.js").FieldType<string>;
556
789
  }>, any>;
557
790
  };
558
- }, []>;
791
+ /**
792
+ * This metadata controls which GeneralCommissioningCluster elements matter.js activates for specific feature
793
+ * combinations.
794
+ */
795
+ readonly extensions: readonly [{
796
+ readonly flags: {
797
+ readonly termsAndConditions: true;
798
+ };
799
+ readonly component: {
800
+ readonly attributes: {
801
+ /**
802
+ * Indicates the last version of the T&Cs for which the device received user acknowledgements. On factory
803
+ * reset this field shall be reset to 0.
804
+ *
805
+ * When Custom Commissioning Flow is used to obtain user consent (e. g. because the Commissioner does not
806
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
807
+ * this attribute is set to a value which is greater than or equal to TCMinRequiredVersion before returning
808
+ * the user back to the originating Commissioner (see Enhanced Setup Flow).
809
+ *
810
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.6
811
+ */
812
+ readonly tcAcceptedVersion: Attribute<number, any>;
813
+ /**
814
+ * Indicates the minimum version of the texts presented by the Enhanced Setup Flow that need to be accepted
815
+ * by the user for this device. This attribute may change as the result of an OTA update.
816
+ *
817
+ * If an event such as a software update causes TCAcceptedVersion to become less than TCMinRequiredVersion,
818
+ * then the device shall update TCAcknowledgementsRequired to True so that an administrator can detect that
819
+ * a newer version of the texts needs to be presented to the user.
820
+ *
821
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.7
822
+ */
823
+ readonly tcMinRequiredVersion: Attribute<number, any>;
824
+ /**
825
+ * Indicates the user’s response to the presented terms. Each bit position corresponds to a user response
826
+ * for the associated index of matching text, such that bit 0 (bit value 1) is for text index 0. Bit 15
827
+ * (bit value 0x8000) is for text index 15. A bit value of 1 indicates acceptance and a value of 0
828
+ * indicates non-acceptance. For example, if there are two texts that were presented where the first (bit
829
+ * 0, value 1) was declined and the second accepted (bit 1, value 2), we would expect the resulting value
830
+ * of the map to be 2.
831
+ *
832
+ * Whenever a user provides responses to newly presented terms and conditions, this attribute shall be
833
+ * updated with the latest responses. This may happen in response to updated terms that were presented to
834
+ * the user. On a factory reset this field shall be reset with all bits set to 0.
835
+ *
836
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.8
837
+ */
838
+ readonly tcAcknowledgements: Attribute<number, any>;
839
+ /**
840
+ * Indicates whether SetTCAcknowledgements is currently required to be called with the inclusion of
841
+ * mandatory terms accepted.
842
+ *
843
+ * This attribute may be present and False in the case where no terms and conditions are currently
844
+ * mandatory to accept for CommissioningComplete to succeed.
845
+ *
846
+ * This attribute may appear, or become True after commissioning (e.g. due to a firmware update) to
847
+ * indicate that new Terms & Conditions are available that the user must accept.
848
+ *
849
+ * Upon Factory Data Reset, this attribute shall be set to a value of True.
850
+ *
851
+ * When Custom Commissioning Flow is used to obtain user consent (e.g. because the Commissioner does not
852
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
853
+ * this attribute is set to False before returning the user back to the original Commissioner (see Enhanced
854
+ * Setup Flow).
855
+ *
856
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.9
857
+ */
858
+ readonly tcAcknowledgementsRequired: Attribute<boolean, any>;
859
+ /**
860
+ * Indicates the System Time in seconds when any functionality limitations will begin due to a lack of
861
+ * acceptance of updated Terms and Conditions, as described in Section 5.7.4.5, “Presenting Updated Terms
862
+ * and Conditions”.
863
+ *
864
+ * A null value indicates that there is no pending deadline for updated TC acceptance.
865
+ *
866
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.10
867
+ */
868
+ readonly tcUpdateDeadline: Attribute<number | null, any>;
869
+ };
870
+ readonly commands: {
871
+ /**
872
+ * This command sets the user acknowledgements received in the Enhanced Setup Flow Terms & Conditions into
873
+ * the node.
874
+ *
875
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8
876
+ */
877
+ readonly setTcAcknowledgements: Command<import("../tlv/TlvObject.js").TypeFromFields<{
878
+ /**
879
+ * This field shall contain the version of the Enhanced Setup Flow Terms & Conditions that were presented to
880
+ * the user.
881
+ *
882
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.1
883
+ */
884
+ tcVersion: import("../tlv/TlvObject.js").FieldType<number>;
885
+ /**
886
+ * This field shall contain the user responses to the Enhanced Setup Flow Terms & Conditions as a map where
887
+ * each bit set in the bitmap corresponds to an accepted term in the file located at EnhancedSetupFlowTCUrl.
888
+ *
889
+ * ### Effect on Receipt
890
+ *
891
+ * This command shall copy the user responses and accepted version to the presented Enhanced Setup Flow Terms &
892
+ * Conditions from the values provided in the TCUserResponse and TCVersion fields to the TCAcknowledgements
893
+ * Attribute and the TCAcceptedVersion Attribute fields respectively.
894
+ *
895
+ * This command shall result in success with an ErrorCode value of OK in the SetTCAcknowledgementsResponse if
896
+ * all required terms were accepted by the user. Specifically, all bits have a value of 1 in TCAcknowledgements
897
+ * whose ordinal is marked as required in the file located at EnhancedSe
898
+ *
899
+ * tupFlowTCUrl.
900
+ *
901
+ * If the TCVersion field is less than the TCMinRequiredVersion, then the ErrorCode of TCMinVersionNotMet shall
902
+ * be returned and TCAcknowledgements shall remain unchanged.
903
+ *
904
+ * If TCVersion is greater than or equal to TCMinRequiredVersion, but the TCUserResponse value indicates that
905
+ * not all required terms were accepted by the user, then the ErrorCode of RequiredTCNotAccepted shall be
906
+ * returned and TCAcknowledgements shall remain unchanged.
907
+ *
908
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.2
909
+ */
910
+ tcUserResponse: import("../tlv/TlvObject.js").FieldType<number>;
911
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
912
+ /**
913
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
914
+ * description of the SetTCAcknowledgements command.
915
+ *
916
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9.1
917
+ */
918
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
919
+ }>, any>;
920
+ };
921
+ };
922
+ }];
923
+ };
559
924
  /**
560
- * This cluster is used to manage basic commissioning lifecycle.
561
- *
562
- * This cluster also represents responsibilities related to commissioning that don’t well fit other commissioning
563
- * clusters, like Section 11.9, “Network Commissioning Cluster”. It also hosts functionalities those other clusters
564
- * may depend on.
565
- *
566
- * @see {@link MatterSpecification.v13.Core} § 11.10
925
+ * @see {@link Cluster}
567
926
  */
568
- interface Cluster extends Identity<typeof ClusterInstance> {
569
- }
570
- const Cluster: Cluster;
571
- const Complete: Cluster;
927
+ const ClusterInstance: MutableCluster<{
928
+ readonly id: 48;
929
+ readonly name: "GeneralCommissioning";
930
+ readonly revision: 2;
931
+ readonly features: {
932
+ /**
933
+ * TermsAndConditions
934
+ *
935
+ * Supports Terms & Conditions acknowledgement
936
+ */
937
+ readonly termsAndConditions: BitFlag;
938
+ };
939
+ readonly attributes: {
940
+ /**
941
+ * This attribute allows for the storage of a client-provided small payload which Administrators and
942
+ * Commissioners may write and then subsequently read, to keep track of their own progress. This may be
943
+ * used by the Commissioner to avoid repeating already-executed actions upon re-establishing a
944
+ * commissioning link after an error.
945
+ *
946
+ * On start/restart of the server, such as when a device is power-cycled, this attribute shall be reset to
947
+ * zero.
948
+ *
949
+ * Some commands related to commissioning also have a side-effect of updating or resetting this attribute
950
+ * and this is specified in their respective functional descriptions.
951
+ *
952
+ * The format of the value within this attribute is unspecified and its value is not otherwise used by the
953
+ * functioning of any cluster, other than being set as a side-effect of commands where this behavior is
954
+ * described.
955
+ *
956
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.1
957
+ */
958
+ readonly breadcrumb: WritableAttribute<number | bigint, any>;
959
+ /**
960
+ * This attribute shall describe critical parameters needed at the beginning of commissioning flow. See
961
+ * BasicCommissioningInfo for more information.
962
+ *
963
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.2
964
+ */
965
+ readonly basicCommissioningInfo: FixedAttribute<import("../tlv/TlvObject.js").TypeFromFields<{
966
+ /**
967
+ * This field shall contain a conservative initial duration (in seconds) to set in the FailSafe for the
968
+ * commissioning flow to complete successfully. This may vary depending on the speed or sleepiness of the
969
+ * Commissionee. This value, if used in the ArmFailSafe command’s ExpiryLengthSeconds field SHOULD allow a
970
+ * Commissioner to proceed with a nominal commissioning without having to-rearm the fail-safe, with some margin.
971
+ *
972
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.1
973
+ */
974
+ failSafeExpiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
975
+ /**
976
+ * This field shall contain a conservative value in seconds denoting the maximum total duration for which a
977
+ * fail safe timer can be re-armed. See Section 11.10.7.2.1, “Fail Safe Context”.
978
+ *
979
+ * The value of this field shall be greater than or equal to the FailSafeExpiryLengthSeconds. Absent additional
980
+ * guidelines, it is recommended that the value of this field be aligned with the initial Announcement Duration
981
+ * and default to 900 seconds.
982
+ *
983
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.2
984
+ */
985
+ maxCumulativeFailsafeSeconds: import("../tlv/TlvObject.js").FieldType<number>;
986
+ }>, any>;
987
+ /**
988
+ * Indicates the regulatory configuration for the product.
989
+ *
990
+ * Note that the country code is part of Basic Information Cluster and therefore NOT listed on the
991
+ * RegulatoryConfig attribute.
992
+ *
993
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.3
994
+ */
995
+ readonly regulatoryConfig: Attribute<RegulatoryLocationType, any>;
996
+ /**
997
+ * LocationCapability is statically set by the manufacturer and indicates if this Node needs to be told an
998
+ * exact RegulatoryLocation. For example a Node which is "Indoor Only" would not be certified for outdoor
999
+ * use at all, and thus there is no need for a commissioner to set or ask the user about whether the device
1000
+ * will be used inside or outside. However a device which states its capability is
1001
+ *
1002
+ * "Indoor/Outdoor" means it would like clarification if possible.
1003
+ *
1004
+ * For Nodes without radio network interfaces (e.g. Ethernet-only devices), the value IndoorOutdoor shall
1005
+ * always be used.
1006
+ *
1007
+ * The default value of the RegulatoryConfig attribute is the value of LocationCapability attribute. This
1008
+ * means devices always have a safe default value, and Commissioners which choose to implement smarter
1009
+ * handling can.
1010
+ *
1011
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.4
1012
+ */
1013
+ readonly locationCapability: FixedAttribute<RegulatoryLocationType, any>;
1014
+ /**
1015
+ * Indicates whether this device supports "concurrent connection flow" commissioning mode (see Section 5.5,
1016
+ * “Commissioning Flows”). If false, the device only supports "non-concurrent connection flow" mode.
1017
+ *
1018
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.5
1019
+ */
1020
+ readonly supportsConcurrentConnection: FixedAttribute<boolean, any>;
1021
+ };
1022
+ readonly commands: {
1023
+ /**
1024
+ * Success or failure of this command shall be communicated by the ArmFailSafeResponse command, unless some
1025
+ * data model validations caused a failure status code to be issued during the processing of the command.
1026
+ *
1027
+ * If the fail-safe timer is not currently armed, the commissioning window is open, and the command was
1028
+ * received over a CASE session, the command shall leave the current fail-safe state unchanged and
1029
+ * immediately respond with an ArmFailSafeResponse containing an ErrorCode value of BusyWithOtherAdmin.
1030
+ * This is done to allow commissioners, which use PASE connections, the opportunity to use the failsafe
1031
+ * during the relatively short commissioning window.
1032
+ *
1033
+ * Otherwise, the command shall arm or re-arm the "fail-safe timer" with an expiry time set for a duration
1034
+ * of ExpiryLengthSeconds, or disarm it, depending on the situation:
1035
+ *
1036
+ * • If ExpiryLengthSeconds is 0 and the fail-safe timer was already armed and the accessing fabric
1037
+ * matches the Fabric currently associated with the fail-safe context, then the fail-safe timer shall
1038
+ * be immediately expired (see further below for side-effects of expiration).
1039
+ *
1040
+ * • If ExpiryLengthSeconds is 0 and the fail-safe timer was not armed, then this command invocation
1041
+ * shall lead to a success response with no side-effects against the fail-safe context.
1042
+ *
1043
+ * • If ExpiryLengthSeconds is non-zero and the fail-safe timer was not currently armed, then the
1044
+ * fail-safe timer shall be armed for that duration.
1045
+ *
1046
+ * • If ExpiryLengthSeconds is non-zero and the fail-safe timer was currently armed, and the accessing
1047
+ * Fabric matches the fail-safe context’s associated Fabric, then the fail-safe timer shall be re-
1048
+ * armed to expire in ExpiryLengthSeconds.
1049
+ *
1050
+ * • Otherwise, the command shall leave the current fail-safe state unchanged and immediately respond
1051
+ * with ArmFailSafeResponse containing an ErrorCode value of BusyWithOtherAdmin, indicating a likely
1052
+ * conflict between commissioners.
1053
+ *
1054
+ * The value of the Breadcrumb field shall be written to the Breadcrumb on successful execution of the
1055
+ * command.
1056
+ *
1057
+ * If the receiver restarts unexpectedly (e.g., power interruption, software crash, or other reset) the
1058
+ * receiver shall behave as if the fail-safe timer expired and perform the sequence of clean-up steps
1059
+ * listed below.
1060
+ *
1061
+ * On successful execution of the command, the ErrorCode field of the ArmFailSafeResponse shall be set to
1062
+ * OK.
1063
+ *
1064
+ * ### Fail Safe Context
1065
+ *
1066
+ * When first arming the fail-safe timer, a 'Fail Safe Context' shall be created on the receiver, to track
1067
+ * the following state information while the fail-safe is armed:
1068
+ *
1069
+ * • The fail-safe timer duration.
1070
+ *
1071
+ * • The state of all Network Commissioning Networks attribute configurations, to allow recovery of
1072
+ * connectivity after Fail-Safe expiry.
1073
+ *
1074
+ * • Whether an AddNOC command or UpdateNOC command has taken place.
1075
+ *
1076
+ * • A Fabric Index for the fabric-scoping of the context, starting at the accessing fabric index for the
1077
+ * ArmFailSafe command, and updated with the Fabric Index associated with an AddNOC command or an
1078
+ * UpdateNOC command being invoked successfully during the ongoing Fail-Safe timer period.
1079
+ *
1080
+ * • The operational credentials associated with any Fabric whose configuration is affected by the
1081
+ * UpdateNOC command.
1082
+ *
1083
+ * • Optionally: the previous state of non-fabric-scoped data that is mutated during the fail-safe period.
1084
+ *
1085
+ * Note the following to assist in understanding the above state-keeping, which summarizes other normative
1086
+ * requirements in the respective sections:
1087
+ *
1088
+ * • The AddNOC command can only be invoked once per contiguous non-expiring fail-safe timer period, and
1089
+ * only if no UpdateNOC command was previously processed within the same fail-safe timer period.
1090
+ *
1091
+ * • The UpdateNOC command can only be invoked once per contiguous non-expiring fail-safe timer period,
1092
+ * can only be invoked over a CASE session, and only if no AddNOC command was previously processed in
1093
+ * the same fail-safe timer period.
1094
+ *
1095
+ * On creation of the Fail Safe Context a second timer shall be created to expire at
1096
+ * MaxCumulativeFailsafeSeconds as specified in BasicCommissioningInfo. This Cumulative Fail Safe Context
1097
+ * timer (CFSC timer) serves to limit the lifetime of any particular Fail Safe Context; it shall NOT be
1098
+ * extended or modified on subsequent invocations of ArmFailSafe associated with this Fail Safe Context.
1099
+ * Upon expiry of the CFSC timer, the receiver shall execute cleanup behavior equivalent to that of
1100
+ * fail-safe timer expiration as detailed in Section 11.10.7.2.2, “Behavior on expiry of Fail-Safe timer”.
1101
+ * Termination of the session prior to the expiration of that timer for any reason (including a successful
1102
+ * end of commissioning or an expiry of a fail-safe timer) shall also delete the CFSC timer.
1103
+ *
1104
+ * ### Behavior on expiry of Fail-Safe timer
1105
+ *
1106
+ * If the fail-safe timer expires before the CommissioningComplete command is successfully invoked, the
1107
+ * following sequence of clean-up steps shall be executed, in order, by the receiver:
1108
+ *
1109
+ * 1. Terminate any open PASE secure session by clearing any associated Secure Session Context at the
1110
+ * Server.
1111
+ *
1112
+ * 2. Revoke the temporary administrative privileges granted to any open PASE session (see Section
1113
+ * 6.6.2.9, “Bootstrapping of the Access Control Cluster”) at the Server.
1114
+ *
1115
+ * 3. If an AddNOC or UpdateNOC command has been successfully invoked, terminate all CASE sessions
1116
+ * associated with the Fabric whose Fabric Index is recorded in the Fail-Safe context (see
1117
+ * ArmFailSafe) by clearing any associated Secure Session Context at the Server.
1118
+ *
1119
+ * 4. Reset the configuration of all Network Commissioning Networks attribute to their state prior to the
1120
+ * Fail-Safe being armed.
1121
+ *
1122
+ * 5. If an UpdateNOC command had been successfully invoked, revert the state of operational key pair,
1123
+ * NOC and ICAC for that Fabric to the state prior to the Fail-Safe timer being armed, for the Fabric
1124
+ * Index that was the subject of the UpdateNOC command.
1125
+ *
1126
+ * 6. If an AddNOC command had been successfully invoked, achieve the equivalent effect of invoking the
1127
+ * RemoveFabric command against the Fabric Index stored in the Fail-Safe Context for the Fabric Index
1128
+ * that was the subject of the AddNOC command. This shall remove all associations to that Fabric
1129
+ * including all fabric-scoped data, and may possibly factory-reset the device depending on current
1130
+ * device state. This shall only apply to Fabrics added during the fail-safe period as the result of
1131
+ * the AddNOC command.
1132
+ *
1133
+ * 7. If the CSRRequest command had been successfully invoked, but no AddNOC or UpdateNOC command had
1134
+ * been successfully invoked, then the new operational key pair temporarily generated for the
1135
+ * purposes of NOC addition or update (see Node Operational CSR Procedure) shall be removed as it is
1136
+ * no longer needed.
1137
+ *
1138
+ * 8. Remove any RCACs added by the AddTrustedRootCertificate command that are not currently referenced
1139
+ * by any entry in the Fabrics attribute.
1140
+ *
1141
+ * 9. Reset the Breadcrumb attribute to zero.
1142
+ *
1143
+ * 10. Optionally: if no factory-reset resulted from the previous steps, it is recommended that the Node
1144
+ * rollback the state of all non fabric-scoped data present in the Fail-Safe context.
1145
+ *
1146
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.2
1147
+ */
1148
+ readonly armFailSafe: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1149
+ expiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
1150
+ breadcrumb: import("../tlv/TlvObject.js").FieldType<number | bigint>;
1151
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1152
+ /**
1153
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1154
+ * description of the ArmFailSafe command.
1155
+ *
1156
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.1
1157
+ */
1158
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1159
+ /**
1160
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1161
+ *
1162
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.2
1163
+ */
1164
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1165
+ }>, any>;
1166
+ /**
1167
+ * This shall add or update the regulatory configuration in the RegulatoryConfig Attribute to the value
1168
+ * provided in the NewRegulatoryConfig field.
1169
+ *
1170
+ * Success or failure of this command shall be communicated by the SetRegulatoryConfigResponse command,
1171
+ * unless some data model validations caused a failure status code to be issued during the processing of
1172
+ * the command.
1173
+ *
1174
+ * The CountryCode field shall conforms to ISO 3166-1 alpha-2 and shall be used to set the Location
1175
+ * attribute reflected by the Basic Information Cluster.
1176
+ *
1177
+ * If the server limits some of the values (e.g. locked to a particular country, with no regulatory data
1178
+ * for others), then setting regulatory information outside a valid country or location shall still set the
1179
+ * Location attribute reflected by the Basic Information Cluster configuration, but the
1180
+ * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error.
1181
+ *
1182
+ * If the LocationCapability attribute is not Indoor/Outdoor and the NewRegulatoryConfig value
1183
+ *
1184
+ * received does not match either the Indoor or Outdoor fixed value in LocationCapability, then the
1185
+ * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error and
1186
+ * the RegulatoryConfig attribute and associated internal radio configuration shall remain unchanged.
1187
+ *
1188
+ * If the LocationCapability attribute is set to Indoor/Outdoor, then the RegulatoryConfig attribute shall
1189
+ * be set to match the NewRegulatoryConfig field.
1190
+ *
1191
+ * On successful execution of the command, the ErrorCode field of the SetRegulatoryConfigResponse shall be
1192
+ * set to OK.
1193
+ *
1194
+ * The Breadcrumb field shall be used to atomically set the Breadcrumb attribute on success of this
1195
+ * command, when SetRegulatoryConfigResponse has the ErrorCode field set to OK. If the command fails, the
1196
+ * Breadcrumb attribute shall be left unchanged.
1197
+ *
1198
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.4
1199
+ */
1200
+ readonly setRegulatoryConfig: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1201
+ newRegulatoryConfig: import("../tlv/TlvObject.js").FieldType<RegulatoryLocationType>;
1202
+ countryCode: import("../tlv/TlvObject.js").FieldType<string>;
1203
+ breadcrumb: import("../tlv/TlvObject.js").FieldType<number | bigint>;
1204
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1205
+ /**
1206
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1207
+ * description of the SetRegulatoryConfig command.
1208
+ *
1209
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.1
1210
+ */
1211
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1212
+ /**
1213
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1214
+ *
1215
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.2
1216
+ */
1217
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1218
+ }>, any>;
1219
+ /**
1220
+ * This command has no data.
1221
+ *
1222
+ * Success or failure of this command shall be communicated by the CommissioningCompleteResponse command,
1223
+ * unless some data model validations caused a failure status code to be issued during the processing of
1224
+ * the command.
1225
+ *
1226
+ * This command signals the Server that the Commissioner or Administrator has successfully completed all
1227
+ * steps needed during the Fail-Safe period, such as commissioning (see Section 5.5, “Commissioning Flows”)
1228
+ * or other Administrator operations requiring usage of the Fail Safe timer. It ensures that the Server is
1229
+ * configured in a state such that it still has all necessary elements to be fully operable within a
1230
+ * Fabric, such as ACL entries (see Section 9.10, “Access Control Cluster”) and operational credentials
1231
+ * (see Section 6.4, “Node Operational Credentials Specification”), and that the Node is reachable using
1232
+ * CASE
1233
+ *
1234
+ * (CASE)”) over an operational network.
1235
+ *
1236
+ * An ErrorCode of NoFailSafe shall be responded to the invoker if the CommissioningComplete command was
1237
+ * received when no Fail-Safe context exists.
1238
+ *
1239
+ * If Terms and Conditions are required, then an ErrorCode of TCAcknowledgementsNotReceived shall be
1240
+ * responded to the invoker if the user acknowledgements to the required Terms and Conditions have not been
1241
+ * provided. If the TCAcceptedVersion for the provided acknowledgements is less than TCMinRequiredVersion,
1242
+ * then an ErrorCode of TCMinVersionNotMet shall be responded to the invoker.
1243
+ *
1244
+ * This command is fabric-scoped, so cannot be issued over a session that does not have an associated
1245
+ * fabric, i.e. over PASE session prior to an AddNOC command. In addition, this command is only permitted
1246
+ * over CASE and must be issued by a node associated with the ongoing Fail-Safe context. An ErrorCode of
1247
+ * InvalidAuthentication shall be responded to the invoker if the CommissioningComplete command was
1248
+ * received outside a CASE session (e.g., over Group messaging, or PASE session after AddNOC), or if the
1249
+ * accessing fabric is not the one associated with the ongoing Fail-Safe context.
1250
+ *
1251
+ * This command shall only result in success with an ErrorCode value of OK in the
1252
+ * CommissioningCompleteResponse if received over a CASE session and the accessing fabric index matches the
1253
+ * Fabric Index associated with the current Fail-Safe context. In other words:
1254
+ *
1255
+ * • If no AddNOC command had been successfully invoked, the CommissioningComplete command must originate
1256
+ * from the Fabric that initiated the Fail-Safe context.
1257
+ *
1258
+ * • After an AddNOC command has been successfully invoked, the CommissioningComplete command must
1259
+ * originate from the Fabric which was joined through the execution of that command, which updated the
1260
+ * Fail-Safe context’s Fabric Index.
1261
+ *
1262
+ * On successful execution of the CommissioningComplete command, where the CommissioningCompleteResponse
1263
+ * has an ErrorCode of OK, the following actions shall be undertaken on the Server:
1264
+ *
1265
+ * 1. The Fail-Safe timer associated with the current Fail-Safe context shall be disarmed.
1266
+ *
1267
+ * 2. The commissioning window at the Server shall be closed.
1268
+ *
1269
+ * 3. Any temporary administrative privileges automatically granted to any open PASE session shall be
1270
+ * revoked (see Section 6.6.2.9, “Bootstrapping of the Access Control Cluster”).
1271
+ *
1272
+ * 4. The Secure Session Context of any PASE session still established at the Server shall be cleared.
1273
+ *
1274
+ * 5. The Breadcrumb attribute shall be reset to zero.
1275
+ *
1276
+ * After receipt of a CommissioningCompleteResponse with an ErrorCode value of OK, a client cannot expect
1277
+ * any previously established PASE session to still be usable, due to the server having cleared such
1278
+ * sessions.
1279
+ *
1280
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.6
1281
+ */
1282
+ readonly commissioningComplete: Command<void, import("../tlv/TlvObject.js").TypeFromFields<{
1283
+ /**
1284
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1285
+ * description of the CommissioningComplete command.
1286
+ *
1287
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.1
1288
+ */
1289
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1290
+ /**
1291
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1292
+ *
1293
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.2
1294
+ */
1295
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1296
+ }>, any>;
1297
+ };
1298
+ /**
1299
+ * This metadata controls which GeneralCommissioningCluster elements matter.js activates for specific feature
1300
+ * combinations.
1301
+ */
1302
+ readonly extensions: readonly [{
1303
+ readonly flags: {
1304
+ readonly termsAndConditions: true;
1305
+ };
1306
+ readonly component: {
1307
+ readonly attributes: {
1308
+ /**
1309
+ * Indicates the last version of the T&Cs for which the device received user acknowledgements. On factory
1310
+ * reset this field shall be reset to 0.
1311
+ *
1312
+ * When Custom Commissioning Flow is used to obtain user consent (e. g. because the Commissioner does not
1313
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
1314
+ * this attribute is set to a value which is greater than or equal to TCMinRequiredVersion before returning
1315
+ * the user back to the originating Commissioner (see Enhanced Setup Flow).
1316
+ *
1317
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.6
1318
+ */
1319
+ readonly tcAcceptedVersion: Attribute<number, any>;
1320
+ /**
1321
+ * Indicates the minimum version of the texts presented by the Enhanced Setup Flow that need to be accepted
1322
+ * by the user for this device. This attribute may change as the result of an OTA update.
1323
+ *
1324
+ * If an event such as a software update causes TCAcceptedVersion to become less than TCMinRequiredVersion,
1325
+ * then the device shall update TCAcknowledgementsRequired to True so that an administrator can detect that
1326
+ * a newer version of the texts needs to be presented to the user.
1327
+ *
1328
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.7
1329
+ */
1330
+ readonly tcMinRequiredVersion: Attribute<number, any>;
1331
+ /**
1332
+ * Indicates the user’s response to the presented terms. Each bit position corresponds to a user response
1333
+ * for the associated index of matching text, such that bit 0 (bit value 1) is for text index 0. Bit 15
1334
+ * (bit value 0x8000) is for text index 15. A bit value of 1 indicates acceptance and a value of 0
1335
+ * indicates non-acceptance. For example, if there are two texts that were presented where the first (bit
1336
+ * 0, value 1) was declined and the second accepted (bit 1, value 2), we would expect the resulting value
1337
+ * of the map to be 2.
1338
+ *
1339
+ * Whenever a user provides responses to newly presented terms and conditions, this attribute shall be
1340
+ * updated with the latest responses. This may happen in response to updated terms that were presented to
1341
+ * the user. On a factory reset this field shall be reset with all bits set to 0.
1342
+ *
1343
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.8
1344
+ */
1345
+ readonly tcAcknowledgements: Attribute<number, any>;
1346
+ /**
1347
+ * Indicates whether SetTCAcknowledgements is currently required to be called with the inclusion of
1348
+ * mandatory terms accepted.
1349
+ *
1350
+ * This attribute may be present and False in the case where no terms and conditions are currently
1351
+ * mandatory to accept for CommissioningComplete to succeed.
1352
+ *
1353
+ * This attribute may appear, or become True after commissioning (e.g. due to a firmware update) to
1354
+ * indicate that new Terms & Conditions are available that the user must accept.
1355
+ *
1356
+ * Upon Factory Data Reset, this attribute shall be set to a value of True.
1357
+ *
1358
+ * When Custom Commissioning Flow is used to obtain user consent (e.g. because the Commissioner does not
1359
+ * support the TC feature), the manufacturer-provided means for obtaining user consent shall ensure that
1360
+ * this attribute is set to False before returning the user back to the original Commissioner (see Enhanced
1361
+ * Setup Flow).
1362
+ *
1363
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.9
1364
+ */
1365
+ readonly tcAcknowledgementsRequired: Attribute<boolean, any>;
1366
+ /**
1367
+ * Indicates the System Time in seconds when any functionality limitations will begin due to a lack of
1368
+ * acceptance of updated Terms and Conditions, as described in Section 5.7.4.5, “Presenting Updated Terms
1369
+ * and Conditions”.
1370
+ *
1371
+ * A null value indicates that there is no pending deadline for updated TC acceptance.
1372
+ *
1373
+ * @see {@link MatterSpecification.v13.Core} § 11.10.6.10
1374
+ */
1375
+ readonly tcUpdateDeadline: Attribute<number | null, any>;
1376
+ };
1377
+ readonly commands: {
1378
+ /**
1379
+ * This command sets the user acknowledgements received in the Enhanced Setup Flow Terms & Conditions into
1380
+ * the node.
1381
+ *
1382
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8
1383
+ */
1384
+ readonly setTcAcknowledgements: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1385
+ /**
1386
+ * This field shall contain the version of the Enhanced Setup Flow Terms & Conditions that were presented to
1387
+ * the user.
1388
+ *
1389
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.1
1390
+ */
1391
+ tcVersion: import("../tlv/TlvObject.js").FieldType<number>;
1392
+ /**
1393
+ * This field shall contain the user responses to the Enhanced Setup Flow Terms & Conditions as a map where
1394
+ * each bit set in the bitmap corresponds to an accepted term in the file located at EnhancedSetupFlowTCUrl.
1395
+ *
1396
+ * ### Effect on Receipt
1397
+ *
1398
+ * This command shall copy the user responses and accepted version to the presented Enhanced Setup Flow Terms &
1399
+ * Conditions from the values provided in the TCUserResponse and TCVersion fields to the TCAcknowledgements
1400
+ * Attribute and the TCAcceptedVersion Attribute fields respectively.
1401
+ *
1402
+ * This command shall result in success with an ErrorCode value of OK in the SetTCAcknowledgementsResponse if
1403
+ * all required terms were accepted by the user. Specifically, all bits have a value of 1 in TCAcknowledgements
1404
+ * whose ordinal is marked as required in the file located at EnhancedSe
1405
+ *
1406
+ * tupFlowTCUrl.
1407
+ *
1408
+ * If the TCVersion field is less than the TCMinRequiredVersion, then the ErrorCode of TCMinVersionNotMet shall
1409
+ * be returned and TCAcknowledgements shall remain unchanged.
1410
+ *
1411
+ * If TCVersion is greater than or equal to TCMinRequiredVersion, but the TCUserResponse value indicates that
1412
+ * not all required terms were accepted by the user, then the ErrorCode of RequiredTCNotAccepted shall be
1413
+ * returned and TCAcknowledgements shall remain unchanged.
1414
+ *
1415
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.2
1416
+ */
1417
+ tcUserResponse: import("../tlv/TlvObject.js").FieldType<number>;
1418
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1419
+ /**
1420
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1421
+ * description of the SetTCAcknowledgements command.
1422
+ *
1423
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9.1
1424
+ */
1425
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1426
+ }>, any>;
1427
+ };
1428
+ };
1429
+ }];
1430
+ }, []>;
1431
+ /**
1432
+ * This cluster is used to manage basic commissioning lifecycle.
1433
+ *
1434
+ * This cluster also represents responsibilities related to commissioning that don’t well fit other commissioning
1435
+ * clusters, like Section 11.9, “Network Commissioning Cluster”. It also hosts functionalities those other clusters
1436
+ * may depend on.
1437
+ *
1438
+ * GeneralCommissioningCluster supports optional features that you can enable with the
1439
+ * GeneralCommissioningCluster.with() factory method.
1440
+ *
1441
+ * @see {@link MatterSpecification.v13.Core} § 11.10
1442
+ */
1443
+ interface Cluster extends Identity<typeof ClusterInstance> {
1444
+ }
1445
+ const Cluster: Cluster;
1446
+ /**
1447
+ * @see {@link Complete}
1448
+ */
1449
+ const CompleteInstance: MutableCluster<{
1450
+ readonly id: import("#general").Branded<48, "ClusterId">;
1451
+ readonly name: "GeneralCommissioning";
1452
+ readonly revision: 2;
1453
+ readonly features: {
1454
+ /**
1455
+ * TermsAndConditions
1456
+ *
1457
+ * Supports Terms & Conditions acknowledgement
1458
+ */
1459
+ readonly termsAndConditions: BitFlag;
1460
+ };
1461
+ readonly attributes: {
1462
+ readonly tcAcceptedVersion: Attribute<number, any> & {
1463
+ readonly optional: true;
1464
+ readonly isConditional: true;
1465
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1466
+ readonly mandatoryIf: [] | [{
1467
+ termsAndConditions: boolean;
1468
+ }];
1469
+ };
1470
+ readonly tcMinRequiredVersion: Attribute<number, any> & {
1471
+ readonly optional: true;
1472
+ readonly isConditional: true;
1473
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1474
+ readonly mandatoryIf: [] | [{
1475
+ termsAndConditions: boolean;
1476
+ }];
1477
+ };
1478
+ readonly tcAcknowledgements: Attribute<number, any> & {
1479
+ readonly optional: true;
1480
+ readonly isConditional: true;
1481
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1482
+ readonly mandatoryIf: [] | [{
1483
+ termsAndConditions: boolean;
1484
+ }];
1485
+ };
1486
+ readonly tcAcknowledgementsRequired: Attribute<boolean, any> & {
1487
+ readonly optional: true;
1488
+ readonly isConditional: true;
1489
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1490
+ readonly mandatoryIf: [] | [{
1491
+ termsAndConditions: boolean;
1492
+ }];
1493
+ };
1494
+ readonly tcUpdateDeadline: Attribute<number | null, any> & {
1495
+ readonly optional: true;
1496
+ readonly isConditional: true;
1497
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1498
+ readonly mandatoryIf: [] | [{
1499
+ termsAndConditions: boolean;
1500
+ }];
1501
+ };
1502
+ readonly breadcrumb: WritableAttribute<number | bigint, any>;
1503
+ readonly basicCommissioningInfo: FixedAttribute<import("../tlv/TlvObject.js").TypeFromFields<{
1504
+ /**
1505
+ * This field shall contain a conservative initial duration (in seconds) to set in the FailSafe for the
1506
+ * commissioning flow to complete successfully. This may vary depending on the speed or sleepiness of the
1507
+ * Commissionee. This value, if used in the ArmFailSafe command’s ExpiryLengthSeconds field SHOULD allow a
1508
+ * Commissioner to proceed with a nominal commissioning without having to-rearm the fail-safe, with some margin.
1509
+ *
1510
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.1
1511
+ */
1512
+ failSafeExpiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
1513
+ /**
1514
+ * This field shall contain a conservative value in seconds denoting the maximum total duration for which a
1515
+ * fail safe timer can be re-armed. See Section 11.10.7.2.1, “Fail Safe Context”.
1516
+ *
1517
+ * The value of this field shall be greater than or equal to the FailSafeExpiryLengthSeconds. Absent additional
1518
+ * guidelines, it is recommended that the value of this field be aligned with the initial Announcement Duration
1519
+ * and default to 900 seconds.
1520
+ *
1521
+ * @see {@link MatterSpecification.v13.Core} § 11.10.5.3.2
1522
+ */
1523
+ maxCumulativeFailsafeSeconds: import("../tlv/TlvObject.js").FieldType<number>;
1524
+ }>, any>;
1525
+ readonly regulatoryConfig: Attribute<RegulatoryLocationType, any>;
1526
+ readonly locationCapability: FixedAttribute<RegulatoryLocationType, any>;
1527
+ readonly supportsConcurrentConnection: FixedAttribute<boolean, any>;
1528
+ readonly clusterRevision: Attribute<number, never>;
1529
+ readonly featureMap: Attribute<import("../schema/BitmapSchema.js").TypeFromPartialBitSchema<{
1530
+ /**
1531
+ * TermsAndConditions
1532
+ *
1533
+ * Supports Terms & Conditions acknowledgement
1534
+ */
1535
+ readonly termsAndConditions: BitFlag;
1536
+ }>, never>;
1537
+ readonly attributeList: Attribute<import("../index.js").AttributeId[], never>;
1538
+ readonly acceptedCommandList: Attribute<import("../index.js").CommandId[], never>;
1539
+ readonly generatedCommandList: Attribute<import("../index.js").CommandId[], never>;
1540
+ };
1541
+ readonly commands: {
1542
+ readonly setTcAcknowledgements: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1543
+ /**
1544
+ * This field shall contain the version of the Enhanced Setup Flow Terms & Conditions that were presented to
1545
+ * the user.
1546
+ *
1547
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.1
1548
+ */
1549
+ tcVersion: import("../tlv/TlvObject.js").FieldType<number>;
1550
+ /**
1551
+ * This field shall contain the user responses to the Enhanced Setup Flow Terms & Conditions as a map where
1552
+ * each bit set in the bitmap corresponds to an accepted term in the file located at EnhancedSetupFlowTCUrl.
1553
+ *
1554
+ * ### Effect on Receipt
1555
+ *
1556
+ * This command shall copy the user responses and accepted version to the presented Enhanced Setup Flow Terms &
1557
+ * Conditions from the values provided in the TCUserResponse and TCVersion fields to the TCAcknowledgements
1558
+ * Attribute and the TCAcceptedVersion Attribute fields respectively.
1559
+ *
1560
+ * This command shall result in success with an ErrorCode value of OK in the SetTCAcknowledgementsResponse if
1561
+ * all required terms were accepted by the user. Specifically, all bits have a value of 1 in TCAcknowledgements
1562
+ * whose ordinal is marked as required in the file located at EnhancedSe
1563
+ *
1564
+ * tupFlowTCUrl.
1565
+ *
1566
+ * If the TCVersion field is less than the TCMinRequiredVersion, then the ErrorCode of TCMinVersionNotMet shall
1567
+ * be returned and TCAcknowledgements shall remain unchanged.
1568
+ *
1569
+ * If TCVersion is greater than or equal to TCMinRequiredVersion, but the TCUserResponse value indicates that
1570
+ * not all required terms were accepted by the user, then the ErrorCode of RequiredTCNotAccepted shall be
1571
+ * returned and TCAcknowledgements shall remain unchanged.
1572
+ *
1573
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.8.2
1574
+ */
1575
+ tcUserResponse: import("../tlv/TlvObject.js").FieldType<number>;
1576
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1577
+ /**
1578
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1579
+ * description of the SetTCAcknowledgements command.
1580
+ *
1581
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.9.1
1582
+ */
1583
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1584
+ }>, any> & {
1585
+ readonly optional: true;
1586
+ readonly isConditional: true;
1587
+ readonly optionalIf: [] | import("../cluster/Cluster.js").ConditionalFeatureList<import("../schema/BitmapSchema.js").BitSchema>;
1588
+ readonly mandatoryIf: [] | [{
1589
+ termsAndConditions: boolean;
1590
+ }];
1591
+ };
1592
+ /**
1593
+ * Success or failure of this command shall be communicated by the ArmFailSafeResponse command, unless some
1594
+ * data model validations caused a failure status code to be issued during the processing of the command.
1595
+ *
1596
+ * If the fail-safe timer is not currently armed, the commissioning window is open, and the command was
1597
+ * received over a CASE session, the command shall leave the current fail-safe state unchanged and
1598
+ * immediately respond with an ArmFailSafeResponse containing an ErrorCode value of BusyWithOtherAdmin.
1599
+ * This is done to allow commissioners, which use PASE connections, the opportunity to use the failsafe
1600
+ * during the relatively short commissioning window.
1601
+ *
1602
+ * Otherwise, the command shall arm or re-arm the "fail-safe timer" with an expiry time set for a duration
1603
+ * of ExpiryLengthSeconds, or disarm it, depending on the situation:
1604
+ *
1605
+ * • If ExpiryLengthSeconds is 0 and the fail-safe timer was already armed and the accessing fabric
1606
+ * matches the Fabric currently associated with the fail-safe context, then the fail-safe timer shall
1607
+ * be immediately expired (see further below for side-effects of expiration).
1608
+ *
1609
+ * • If ExpiryLengthSeconds is 0 and the fail-safe timer was not armed, then this command invocation
1610
+ * shall lead to a success response with no side-effects against the fail-safe context.
1611
+ *
1612
+ * • If ExpiryLengthSeconds is non-zero and the fail-safe timer was not currently armed, then the
1613
+ * fail-safe timer shall be armed for that duration.
1614
+ *
1615
+ * • If ExpiryLengthSeconds is non-zero and the fail-safe timer was currently armed, and the accessing
1616
+ * Fabric matches the fail-safe context’s associated Fabric, then the fail-safe timer shall be re-
1617
+ * armed to expire in ExpiryLengthSeconds.
1618
+ *
1619
+ * • Otherwise, the command shall leave the current fail-safe state unchanged and immediately respond
1620
+ * with ArmFailSafeResponse containing an ErrorCode value of BusyWithOtherAdmin, indicating a likely
1621
+ * conflict between commissioners.
1622
+ *
1623
+ * The value of the Breadcrumb field shall be written to the Breadcrumb on successful execution of the
1624
+ * command.
1625
+ *
1626
+ * If the receiver restarts unexpectedly (e.g., power interruption, software crash, or other reset) the
1627
+ * receiver shall behave as if the fail-safe timer expired and perform the sequence of clean-up steps
1628
+ * listed below.
1629
+ *
1630
+ * On successful execution of the command, the ErrorCode field of the ArmFailSafeResponse shall be set to
1631
+ * OK.
1632
+ *
1633
+ * ### Fail Safe Context
1634
+ *
1635
+ * When first arming the fail-safe timer, a 'Fail Safe Context' shall be created on the receiver, to track
1636
+ * the following state information while the fail-safe is armed:
1637
+ *
1638
+ * • The fail-safe timer duration.
1639
+ *
1640
+ * • The state of all Network Commissioning Networks attribute configurations, to allow recovery of
1641
+ * connectivity after Fail-Safe expiry.
1642
+ *
1643
+ * • Whether an AddNOC command or UpdateNOC command has taken place.
1644
+ *
1645
+ * • A Fabric Index for the fabric-scoping of the context, starting at the accessing fabric index for the
1646
+ * ArmFailSafe command, and updated with the Fabric Index associated with an AddNOC command or an
1647
+ * UpdateNOC command being invoked successfully during the ongoing Fail-Safe timer period.
1648
+ *
1649
+ * • The operational credentials associated with any Fabric whose configuration is affected by the
1650
+ * UpdateNOC command.
1651
+ *
1652
+ * • Optionally: the previous state of non-fabric-scoped data that is mutated during the fail-safe period.
1653
+ *
1654
+ * Note the following to assist in understanding the above state-keeping, which summarizes other normative
1655
+ * requirements in the respective sections:
1656
+ *
1657
+ * • The AddNOC command can only be invoked once per contiguous non-expiring fail-safe timer period, and
1658
+ * only if no UpdateNOC command was previously processed within the same fail-safe timer period.
1659
+ *
1660
+ * • The UpdateNOC command can only be invoked once per contiguous non-expiring fail-safe timer period,
1661
+ * can only be invoked over a CASE session, and only if no AddNOC command was previously processed in
1662
+ * the same fail-safe timer period.
1663
+ *
1664
+ * On creation of the Fail Safe Context a second timer shall be created to expire at
1665
+ * MaxCumulativeFailsafeSeconds as specified in BasicCommissioningInfo. This Cumulative Fail Safe Context
1666
+ * timer (CFSC timer) serves to limit the lifetime of any particular Fail Safe Context; it shall NOT be
1667
+ * extended or modified on subsequent invocations of ArmFailSafe associated with this Fail Safe Context.
1668
+ * Upon expiry of the CFSC timer, the receiver shall execute cleanup behavior equivalent to that of
1669
+ * fail-safe timer expiration as detailed in Section 11.10.7.2.2, “Behavior on expiry of Fail-Safe timer”.
1670
+ * Termination of the session prior to the expiration of that timer for any reason (including a successful
1671
+ * end of commissioning or an expiry of a fail-safe timer) shall also delete the CFSC timer.
1672
+ *
1673
+ * ### Behavior on expiry of Fail-Safe timer
1674
+ *
1675
+ * If the fail-safe timer expires before the CommissioningComplete command is successfully invoked, the
1676
+ * following sequence of clean-up steps shall be executed, in order, by the receiver:
1677
+ *
1678
+ * 1. Terminate any open PASE secure session by clearing any associated Secure Session Context at the
1679
+ * Server.
1680
+ *
1681
+ * 2. Revoke the temporary administrative privileges granted to any open PASE session (see Section
1682
+ * 6.6.2.9, “Bootstrapping of the Access Control Cluster”) at the Server.
1683
+ *
1684
+ * 3. If an AddNOC or UpdateNOC command has been successfully invoked, terminate all CASE sessions
1685
+ * associated with the Fabric whose Fabric Index is recorded in the Fail-Safe context (see
1686
+ * ArmFailSafe) by clearing any associated Secure Session Context at the Server.
1687
+ *
1688
+ * 4. Reset the configuration of all Network Commissioning Networks attribute to their state prior to the
1689
+ * Fail-Safe being armed.
1690
+ *
1691
+ * 5. If an UpdateNOC command had been successfully invoked, revert the state of operational key pair,
1692
+ * NOC and ICAC for that Fabric to the state prior to the Fail-Safe timer being armed, for the Fabric
1693
+ * Index that was the subject of the UpdateNOC command.
1694
+ *
1695
+ * 6. If an AddNOC command had been successfully invoked, achieve the equivalent effect of invoking the
1696
+ * RemoveFabric command against the Fabric Index stored in the Fail-Safe Context for the Fabric Index
1697
+ * that was the subject of the AddNOC command. This shall remove all associations to that Fabric
1698
+ * including all fabric-scoped data, and may possibly factory-reset the device depending on current
1699
+ * device state. This shall only apply to Fabrics added during the fail-safe period as the result of
1700
+ * the AddNOC command.
1701
+ *
1702
+ * 7. If the CSRRequest command had been successfully invoked, but no AddNOC or UpdateNOC command had
1703
+ * been successfully invoked, then the new operational key pair temporarily generated for the
1704
+ * purposes of NOC addition or update (see Node Operational CSR Procedure) shall be removed as it is
1705
+ * no longer needed.
1706
+ *
1707
+ * 8. Remove any RCACs added by the AddTrustedRootCertificate command that are not currently referenced
1708
+ * by any entry in the Fabrics attribute.
1709
+ *
1710
+ * 9. Reset the Breadcrumb attribute to zero.
1711
+ *
1712
+ * 10. Optionally: if no factory-reset resulted from the previous steps, it is recommended that the Node
1713
+ * rollback the state of all non fabric-scoped data present in the Fail-Safe context.
1714
+ *
1715
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.2
1716
+ */
1717
+ readonly armFailSafe: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1718
+ expiryLengthSeconds: import("../tlv/TlvObject.js").FieldType<number>;
1719
+ breadcrumb: import("../tlv/TlvObject.js").FieldType<number | bigint>;
1720
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1721
+ /**
1722
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1723
+ * description of the ArmFailSafe command.
1724
+ *
1725
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.1
1726
+ */
1727
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1728
+ /**
1729
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1730
+ *
1731
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.3.2
1732
+ */
1733
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1734
+ }>, any>;
1735
+ /**
1736
+ * This shall add or update the regulatory configuration in the RegulatoryConfig Attribute to the value
1737
+ * provided in the NewRegulatoryConfig field.
1738
+ *
1739
+ * Success or failure of this command shall be communicated by the SetRegulatoryConfigResponse command,
1740
+ * unless some data model validations caused a failure status code to be issued during the processing of
1741
+ * the command.
1742
+ *
1743
+ * The CountryCode field shall conforms to ISO 3166-1 alpha-2 and shall be used to set the Location
1744
+ * attribute reflected by the Basic Information Cluster.
1745
+ *
1746
+ * If the server limits some of the values (e.g. locked to a particular country, with no regulatory data
1747
+ * for others), then setting regulatory information outside a valid country or location shall still set the
1748
+ * Location attribute reflected by the Basic Information Cluster configuration, but the
1749
+ * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error.
1750
+ *
1751
+ * If the LocationCapability attribute is not Indoor/Outdoor and the NewRegulatoryConfig value
1752
+ *
1753
+ * received does not match either the Indoor or Outdoor fixed value in LocationCapability, then the
1754
+ * SetRegulatoryConfigResponse replied shall have the ErrorCode field set to ValueOutsideRange error and
1755
+ * the RegulatoryConfig attribute and associated internal radio configuration shall remain unchanged.
1756
+ *
1757
+ * If the LocationCapability attribute is set to Indoor/Outdoor, then the RegulatoryConfig attribute shall
1758
+ * be set to match the NewRegulatoryConfig field.
1759
+ *
1760
+ * On successful execution of the command, the ErrorCode field of the SetRegulatoryConfigResponse shall be
1761
+ * set to OK.
1762
+ *
1763
+ * The Breadcrumb field shall be used to atomically set the Breadcrumb attribute on success of this
1764
+ * command, when SetRegulatoryConfigResponse has the ErrorCode field set to OK. If the command fails, the
1765
+ * Breadcrumb attribute shall be left unchanged.
1766
+ *
1767
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.4
1768
+ */
1769
+ readonly setRegulatoryConfig: Command<import("../tlv/TlvObject.js").TypeFromFields<{
1770
+ newRegulatoryConfig: import("../tlv/TlvObject.js").FieldType<RegulatoryLocationType>;
1771
+ countryCode: import("../tlv/TlvObject.js").FieldType<string>;
1772
+ breadcrumb: import("../tlv/TlvObject.js").FieldType<number | bigint>;
1773
+ }>, import("../tlv/TlvObject.js").TypeFromFields<{
1774
+ /**
1775
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1776
+ * description of the SetRegulatoryConfig command.
1777
+ *
1778
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.1
1779
+ */
1780
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1781
+ /**
1782
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1783
+ *
1784
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.5.2
1785
+ */
1786
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1787
+ }>, any>;
1788
+ /**
1789
+ * This command has no data.
1790
+ *
1791
+ * Success or failure of this command shall be communicated by the CommissioningCompleteResponse command,
1792
+ * unless some data model validations caused a failure status code to be issued during the processing of
1793
+ * the command.
1794
+ *
1795
+ * This command signals the Server that the Commissioner or Administrator has successfully completed all
1796
+ * steps needed during the Fail-Safe period, such as commissioning (see Section 5.5, “Commissioning Flows”)
1797
+ * or other Administrator operations requiring usage of the Fail Safe timer. It ensures that the Server is
1798
+ * configured in a state such that it still has all necessary elements to be fully operable within a
1799
+ * Fabric, such as ACL entries (see Section 9.10, “Access Control Cluster”) and operational credentials
1800
+ * (see Section 6.4, “Node Operational Credentials Specification”), and that the Node is reachable using
1801
+ * CASE
1802
+ *
1803
+ * (CASE)”) over an operational network.
1804
+ *
1805
+ * An ErrorCode of NoFailSafe shall be responded to the invoker if the CommissioningComplete command was
1806
+ * received when no Fail-Safe context exists.
1807
+ *
1808
+ * If Terms and Conditions are required, then an ErrorCode of TCAcknowledgementsNotReceived shall be
1809
+ * responded to the invoker if the user acknowledgements to the required Terms and Conditions have not been
1810
+ * provided. If the TCAcceptedVersion for the provided acknowledgements is less than TCMinRequiredVersion,
1811
+ * then an ErrorCode of TCMinVersionNotMet shall be responded to the invoker.
1812
+ *
1813
+ * This command is fabric-scoped, so cannot be issued over a session that does not have an associated
1814
+ * fabric, i.e. over PASE session prior to an AddNOC command. In addition, this command is only permitted
1815
+ * over CASE and must be issued by a node associated with the ongoing Fail-Safe context. An ErrorCode of
1816
+ * InvalidAuthentication shall be responded to the invoker if the CommissioningComplete command was
1817
+ * received outside a CASE session (e.g., over Group messaging, or PASE session after AddNOC), or if the
1818
+ * accessing fabric is not the one associated with the ongoing Fail-Safe context.
1819
+ *
1820
+ * This command shall only result in success with an ErrorCode value of OK in the
1821
+ * CommissioningCompleteResponse if received over a CASE session and the accessing fabric index matches the
1822
+ * Fabric Index associated with the current Fail-Safe context. In other words:
1823
+ *
1824
+ * • If no AddNOC command had been successfully invoked, the CommissioningComplete command must originate
1825
+ * from the Fabric that initiated the Fail-Safe context.
1826
+ *
1827
+ * • After an AddNOC command has been successfully invoked, the CommissioningComplete command must
1828
+ * originate from the Fabric which was joined through the execution of that command, which updated the
1829
+ * Fail-Safe context’s Fabric Index.
1830
+ *
1831
+ * On successful execution of the CommissioningComplete command, where the CommissioningCompleteResponse
1832
+ * has an ErrorCode of OK, the following actions shall be undertaken on the Server:
1833
+ *
1834
+ * 1. The Fail-Safe timer associated with the current Fail-Safe context shall be disarmed.
1835
+ *
1836
+ * 2. The commissioning window at the Server shall be closed.
1837
+ *
1838
+ * 3. Any temporary administrative privileges automatically granted to any open PASE session shall be
1839
+ * revoked (see Section 6.6.2.9, “Bootstrapping of the Access Control Cluster”).
1840
+ *
1841
+ * 4. The Secure Session Context of any PASE session still established at the Server shall be cleared.
1842
+ *
1843
+ * 5. The Breadcrumb attribute shall be reset to zero.
1844
+ *
1845
+ * After receipt of a CommissioningCompleteResponse with an ErrorCode value of OK, a client cannot expect
1846
+ * any previously established PASE session to still be usable, due to the server having cleared such
1847
+ * sessions.
1848
+ *
1849
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.6
1850
+ */
1851
+ readonly commissioningComplete: Command<void, import("../tlv/TlvObject.js").TypeFromFields<{
1852
+ /**
1853
+ * This field shall contain the result of the operation, based on the behavior specified in the functional
1854
+ * description of the CommissioningComplete command.
1855
+ *
1856
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.1
1857
+ */
1858
+ errorCode: import("../tlv/TlvObject.js").FieldType<CommissioningError>;
1859
+ /**
1860
+ * See Section 11.10.7.1, “Common fields in General Commissioning cluster responses”.
1861
+ *
1862
+ * @see {@link MatterSpecification.v13.Core} § 11.10.7.7.2
1863
+ */
1864
+ debugText: import("../tlv/TlvObject.js").FieldType<string>;
1865
+ }>, any>;
1866
+ };
1867
+ }, []>;
1868
+ /**
1869
+ * This cluster supports all GeneralCommissioning features. It may support illegal feature combinations.
1870
+ *
1871
+ * If you use this cluster you must manually specify which features are active and ensure the set of active
1872
+ * features is legal per the Matter specification.
1873
+ */
1874
+ interface Complete extends Identity<typeof CompleteInstance> {
1875
+ }
1876
+ const Complete: Complete;
572
1877
  }
573
1878
  export type GeneralCommissioningCluster = GeneralCommissioning.Cluster;
574
1879
  export declare const GeneralCommissioningCluster: GeneralCommissioning.Cluster;