@matter/types 0.11.9-alpha.0-20241205-ccf69a00a → 0.11.9-alpha.0-20241206-22f233334

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 (180) hide show
  1. package/dist/cjs/clusters/bridged-device-basic-information.d.ts +58 -7
  2. package/dist/cjs/clusters/bridged-device-basic-information.d.ts.map +1 -1
  3. package/dist/cjs/clusters/bridged-device-basic-information.js +19 -2
  4. package/dist/cjs/clusters/bridged-device-basic-information.js.map +1 -1
  5. package/dist/cjs/clusters/content-launcher.d.ts +10 -10
  6. package/dist/cjs/clusters/content-launcher.d.ts.map +1 -1
  7. package/dist/cjs/clusters/content-launcher.js +22 -22
  8. package/dist/cjs/clusters/content-launcher.js.map +2 -2
  9. package/dist/cjs/clusters/device-energy-management-mode.d.ts +411 -25
  10. package/dist/cjs/clusters/device-energy-management-mode.d.ts.map +1 -1
  11. package/dist/cjs/clusters/device-energy-management-mode.js +90 -1
  12. package/dist/cjs/clusters/device-energy-management-mode.js.map +1 -1
  13. package/dist/cjs/clusters/dishwasher-alarm.d.ts +1253 -42
  14. package/dist/cjs/clusters/dishwasher-alarm.d.ts.map +1 -1
  15. package/dist/cjs/clusters/dishwasher-alarm.js +72 -9
  16. package/dist/cjs/clusters/dishwasher-alarm.js.map +1 -1
  17. package/dist/cjs/clusters/dishwasher-mode.d.ts +340 -17
  18. package/dist/cjs/clusters/dishwasher-mode.d.ts.map +1 -1
  19. package/dist/cjs/clusters/dishwasher-mode.js +91 -2
  20. package/dist/cjs/clusters/dishwasher-mode.js.map +1 -1
  21. package/dist/cjs/clusters/door-lock.d.ts +1287 -135
  22. package/dist/cjs/clusters/door-lock.d.ts.map +1 -1
  23. package/dist/cjs/clusters/door-lock.js +199 -3
  24. package/dist/cjs/clusters/door-lock.js.map +1 -1
  25. package/dist/cjs/clusters/energy-evse-mode.d.ts +409 -25
  26. package/dist/cjs/clusters/energy-evse-mode.d.ts.map +1 -1
  27. package/dist/cjs/clusters/energy-evse-mode.js +90 -1
  28. package/dist/cjs/clusters/energy-evse-mode.js.map +1 -1
  29. package/dist/cjs/clusters/fan-control.d.ts +5 -0
  30. package/dist/cjs/clusters/fan-control.d.ts.map +1 -1
  31. package/dist/cjs/clusters/fan-control.js.map +1 -1
  32. package/dist/cjs/clusters/groups.d.ts +12 -0
  33. package/dist/cjs/clusters/groups.d.ts.map +1 -1
  34. package/dist/cjs/clusters/groups.js +7 -1
  35. package/dist/cjs/clusters/groups.js.map +1 -1
  36. package/dist/cjs/clusters/laundry-washer-mode.d.ts +340 -17
  37. package/dist/cjs/clusters/laundry-washer-mode.d.ts.map +1 -1
  38. package/dist/cjs/clusters/laundry-washer-mode.js +91 -2
  39. package/dist/cjs/clusters/laundry-washer-mode.js.map +1 -1
  40. package/dist/cjs/clusters/microwave-oven-mode.d.ts +330 -13
  41. package/dist/cjs/clusters/microwave-oven-mode.d.ts.map +1 -1
  42. package/dist/cjs/clusters/microwave-oven-mode.js +90 -2
  43. package/dist/cjs/clusters/microwave-oven-mode.js.map +1 -1
  44. package/dist/cjs/clusters/mode-base.d.ts +68 -68
  45. package/dist/cjs/clusters/mode-base.d.ts.map +1 -1
  46. package/dist/cjs/clusters/mode-base.js +16 -16
  47. package/dist/cjs/clusters/mode-base.js.map +2 -2
  48. package/dist/cjs/clusters/oven-mode.d.ts +409 -25
  49. package/dist/cjs/clusters/oven-mode.d.ts.map +1 -1
  50. package/dist/cjs/clusters/oven-mode.js +90 -1
  51. package/dist/cjs/clusters/oven-mode.js.map +1 -1
  52. package/dist/cjs/clusters/pump-configuration-and-control.d.ts +15 -0
  53. package/dist/cjs/clusters/pump-configuration-and-control.d.ts.map +1 -1
  54. package/dist/cjs/clusters/pump-configuration-and-control.js +6 -1
  55. package/dist/cjs/clusters/pump-configuration-and-control.js.map +1 -1
  56. package/dist/cjs/clusters/refrigerator-alarm.d.ts +364 -36
  57. package/dist/cjs/clusters/refrigerator-alarm.d.ts.map +1 -1
  58. package/dist/cjs/clusters/refrigerator-alarm.js +46 -8
  59. package/dist/cjs/clusters/refrigerator-alarm.js.map +1 -1
  60. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +340 -17
  61. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  62. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +91 -2
  63. package/dist/cjs/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  64. package/dist/cjs/clusters/rvc-clean-mode.d.ts +374 -23
  65. package/dist/cjs/clusters/rvc-clean-mode.d.ts.map +1 -1
  66. package/dist/cjs/clusters/rvc-clean-mode.js +99 -6
  67. package/dist/cjs/clusters/rvc-clean-mode.js.map +2 -2
  68. package/dist/cjs/clusters/rvc-operational-state.d.ts +248 -22
  69. package/dist/cjs/clusters/rvc-operational-state.d.ts.map +1 -1
  70. package/dist/cjs/clusters/rvc-operational-state.js +59 -10
  71. package/dist/cjs/clusters/rvc-operational-state.js.map +1 -1
  72. package/dist/cjs/clusters/rvc-run-mode.d.ts +401 -40
  73. package/dist/cjs/clusters/rvc-run-mode.d.ts.map +1 -1
  74. package/dist/cjs/clusters/rvc-run-mode.js +101 -8
  75. package/dist/cjs/clusters/rvc-run-mode.js.map +2 -2
  76. package/dist/cjs/clusters/thermostat.d.ts +262 -61
  77. package/dist/cjs/clusters/thermostat.d.ts.map +1 -1
  78. package/dist/cjs/clusters/thermostat.js +72 -58
  79. package/dist/cjs/clusters/thermostat.js.map +1 -1
  80. package/dist/esm/clusters/bridged-device-basic-information.d.ts +58 -7
  81. package/dist/esm/clusters/bridged-device-basic-information.d.ts.map +1 -1
  82. package/dist/esm/clusters/bridged-device-basic-information.js +19 -2
  83. package/dist/esm/clusters/bridged-device-basic-information.js.map +1 -1
  84. package/dist/esm/clusters/content-launcher.d.ts +10 -10
  85. package/dist/esm/clusters/content-launcher.d.ts.map +1 -1
  86. package/dist/esm/clusters/content-launcher.js +22 -22
  87. package/dist/esm/clusters/content-launcher.js.map +2 -2
  88. package/dist/esm/clusters/device-energy-management-mode.d.ts +411 -25
  89. package/dist/esm/clusters/device-energy-management-mode.d.ts.map +1 -1
  90. package/dist/esm/clusters/device-energy-management-mode.js +91 -2
  91. package/dist/esm/clusters/device-energy-management-mode.js.map +1 -1
  92. package/dist/esm/clusters/dishwasher-alarm.d.ts +1253 -42
  93. package/dist/esm/clusters/dishwasher-alarm.d.ts.map +1 -1
  94. package/dist/esm/clusters/dishwasher-alarm.js +72 -9
  95. package/dist/esm/clusters/dishwasher-alarm.js.map +1 -1
  96. package/dist/esm/clusters/dishwasher-mode.d.ts +340 -17
  97. package/dist/esm/clusters/dishwasher-mode.d.ts.map +1 -1
  98. package/dist/esm/clusters/dishwasher-mode.js +91 -2
  99. package/dist/esm/clusters/dishwasher-mode.js.map +1 -1
  100. package/dist/esm/clusters/door-lock.d.ts +1287 -135
  101. package/dist/esm/clusters/door-lock.d.ts.map +1 -1
  102. package/dist/esm/clusters/door-lock.js +199 -3
  103. package/dist/esm/clusters/door-lock.js.map +1 -1
  104. package/dist/esm/clusters/energy-evse-mode.d.ts +409 -25
  105. package/dist/esm/clusters/energy-evse-mode.d.ts.map +1 -1
  106. package/dist/esm/clusters/energy-evse-mode.js +91 -2
  107. package/dist/esm/clusters/energy-evse-mode.js.map +1 -1
  108. package/dist/esm/clusters/fan-control.d.ts +5 -0
  109. package/dist/esm/clusters/fan-control.d.ts.map +1 -1
  110. package/dist/esm/clusters/fan-control.js.map +1 -1
  111. package/dist/esm/clusters/groups.d.ts +12 -0
  112. package/dist/esm/clusters/groups.d.ts.map +1 -1
  113. package/dist/esm/clusters/groups.js +7 -1
  114. package/dist/esm/clusters/groups.js.map +1 -1
  115. package/dist/esm/clusters/laundry-washer-mode.d.ts +340 -17
  116. package/dist/esm/clusters/laundry-washer-mode.d.ts.map +1 -1
  117. package/dist/esm/clusters/laundry-washer-mode.js +91 -2
  118. package/dist/esm/clusters/laundry-washer-mode.js.map +1 -1
  119. package/dist/esm/clusters/microwave-oven-mode.d.ts +330 -13
  120. package/dist/esm/clusters/microwave-oven-mode.d.ts.map +1 -1
  121. package/dist/esm/clusters/microwave-oven-mode.js +91 -3
  122. package/dist/esm/clusters/microwave-oven-mode.js.map +1 -1
  123. package/dist/esm/clusters/mode-base.d.ts +68 -68
  124. package/dist/esm/clusters/mode-base.d.ts.map +1 -1
  125. package/dist/esm/clusters/mode-base.js +17 -17
  126. package/dist/esm/clusters/mode-base.js.map +2 -2
  127. package/dist/esm/clusters/oven-mode.d.ts +409 -25
  128. package/dist/esm/clusters/oven-mode.d.ts.map +1 -1
  129. package/dist/esm/clusters/oven-mode.js +91 -2
  130. package/dist/esm/clusters/oven-mode.js.map +1 -1
  131. package/dist/esm/clusters/pump-configuration-and-control.d.ts +15 -0
  132. package/dist/esm/clusters/pump-configuration-and-control.d.ts.map +1 -1
  133. package/dist/esm/clusters/pump-configuration-and-control.js +6 -1
  134. package/dist/esm/clusters/pump-configuration-and-control.js.map +1 -1
  135. package/dist/esm/clusters/refrigerator-alarm.d.ts +364 -36
  136. package/dist/esm/clusters/refrigerator-alarm.d.ts.map +1 -1
  137. package/dist/esm/clusters/refrigerator-alarm.js +46 -8
  138. package/dist/esm/clusters/refrigerator-alarm.js.map +1 -1
  139. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts +340 -17
  140. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.d.ts.map +1 -1
  141. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js +91 -2
  142. package/dist/esm/clusters/refrigerator-and-temperature-controlled-cabinet-mode.js.map +1 -1
  143. package/dist/esm/clusters/rvc-clean-mode.d.ts +374 -23
  144. package/dist/esm/clusters/rvc-clean-mode.d.ts.map +1 -1
  145. package/dist/esm/clusters/rvc-clean-mode.js +99 -6
  146. package/dist/esm/clusters/rvc-clean-mode.js.map +2 -2
  147. package/dist/esm/clusters/rvc-operational-state.d.ts +248 -22
  148. package/dist/esm/clusters/rvc-operational-state.d.ts.map +1 -1
  149. package/dist/esm/clusters/rvc-operational-state.js +60 -11
  150. package/dist/esm/clusters/rvc-operational-state.js.map +1 -1
  151. package/dist/esm/clusters/rvc-run-mode.d.ts +401 -40
  152. package/dist/esm/clusters/rvc-run-mode.d.ts.map +1 -1
  153. package/dist/esm/clusters/rvc-run-mode.js +101 -8
  154. package/dist/esm/clusters/rvc-run-mode.js.map +2 -2
  155. package/dist/esm/clusters/thermostat.d.ts +262 -61
  156. package/dist/esm/clusters/thermostat.d.ts.map +1 -1
  157. package/dist/esm/clusters/thermostat.js +72 -58
  158. package/dist/esm/clusters/thermostat.js.map +1 -1
  159. package/package.json +5 -5
  160. package/src/clusters/bridged-device-basic-information.ts +46 -2
  161. package/src/clusters/content-launcher.ts +5 -5
  162. package/src/clusters/device-energy-management-mode.ts +184 -3
  163. package/src/clusters/dishwasher-alarm.ts +115 -9
  164. package/src/clusters/dishwasher-mode.ts +188 -3
  165. package/src/clusters/door-lock.ts +247 -3
  166. package/src/clusters/energy-evse-mode.ts +182 -3
  167. package/src/clusters/fan-control.ts +5 -0
  168. package/src/clusters/groups.ts +8 -1
  169. package/src/clusters/laundry-washer-mode.ts +188 -3
  170. package/src/clusters/microwave-oven-mode.ts +182 -4
  171. package/src/clusters/mode-base.ts +77 -77
  172. package/src/clusters/oven-mode.ts +182 -3
  173. package/src/clusters/pump-configuration-and-control.ts +7 -1
  174. package/src/clusters/refrigerator-alarm.ts +76 -8
  175. package/src/clusters/refrigerator-and-temperature-controlled-cabinet-mode.ts +188 -3
  176. package/src/clusters/rvc-clean-mode.ts +227 -10
  177. package/src/clusters/rvc-operational-state.ts +112 -11
  178. package/src/clusters/rvc-run-mode.ts +253 -26
  179. package/src/clusters/thermostat.ts +80 -65
  180. package/src/globals/WildcardPathFlags.ts +1 -1
@@ -26,8 +26,11 @@ var import_MutableCluster = require("../cluster/mutation/MutableCluster.js");
26
26
  var import_BitmapSchema = require("../schema/BitmapSchema.js");
27
27
  var import_Cluster = require("../cluster/Cluster.js");
28
28
  var import_TlvArray = require("../tlv/TlvArray.js");
29
- var import_mode_base = require("./mode-base.js");
29
+ var import_TlvObject = require("../tlv/TlvObject.js");
30
+ var import_TlvString = require("../tlv/TlvString.js");
30
31
  var import_TlvNumber = require("../tlv/TlvNumber.js");
32
+ var import_VendorId = require("../datatype/VendorId.js");
33
+ var import_mode_base = require("./mode-base.js");
31
34
  var import_ClusterRegistry = require("../cluster/ClusterRegistry.js");
32
35
  /**
33
36
  * @license
@@ -46,7 +49,93 @@ var LaundryWasherMode;
46
49
  ModeTag2[ModeTag2["Delicate"] = 16385] = "Delicate";
47
50
  ModeTag2[ModeTag2["Heavy"] = 16386] = "Heavy";
48
51
  ModeTag2[ModeTag2["Whites"] = 16387] = "Whites";
52
+ ModeTag2[ModeTag2["Auto"] = 0] = "Auto";
53
+ ModeTag2[ModeTag2["Quick"] = 1] = "Quick";
54
+ ModeTag2[ModeTag2["Quiet"] = 2] = "Quiet";
55
+ ModeTag2[ModeTag2["LowNoise"] = 3] = "LowNoise";
56
+ ModeTag2[ModeTag2["LowEnergy"] = 4] = "LowEnergy";
57
+ ModeTag2[ModeTag2["Vacation"] = 5] = "Vacation";
58
+ ModeTag2[ModeTag2["Min"] = 6] = "Min";
59
+ ModeTag2[ModeTag2["Max"] = 7] = "Max";
60
+ ModeTag2[ModeTag2["Night"] = 8] = "Night";
61
+ ModeTag2[ModeTag2["Day"] = 9] = "Day";
49
62
  })(ModeTag = LaundryWasherMode2.ModeTag || (LaundryWasherMode2.ModeTag = {}));
63
+ LaundryWasherMode2.TlvModeTagStruct = (0, import_TlvObject.TlvObject)({
64
+ /**
65
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
66
+ * 1.10.8, “Mode Namespace”).
67
+ *
68
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
69
+ *
70
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
71
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
72
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
73
+ * salt.
74
+ *
75
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
76
+ */
77
+ mfgCode: (0, import_TlvObject.TlvOptionalField)(0, import_VendorId.TlvVendorId),
78
+ /**
79
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
80
+ * standard.
81
+ *
82
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
83
+ */
84
+ value: (0, import_TlvObject.TlvField)(1, (0, import_TlvNumber.TlvEnum)())
85
+ });
86
+ LaundryWasherMode2.TlvModeOption = (0, import_TlvObject.TlvObject)({
87
+ /**
88
+ * This field shall indicate readable text that describes the mode option, so that a client can provide it to
89
+ * the user to indicate what this option means. This field is meant to be readable and understandable by the
90
+ * user.
91
+ *
92
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.1
93
+ */
94
+ label: (0, import_TlvObject.TlvField)(0, import_TlvString.TlvString.bound({ maxLength: 64 })),
95
+ /**
96
+ * This field is used to identify the mode option.
97
+ *
98
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.2
99
+ */
100
+ mode: (0, import_TlvObject.TlvField)(1, import_TlvNumber.TlvUInt8),
101
+ /**
102
+ * This field shall contain a list of tags that are associated with the mode option. This may be used by
103
+ * clients to determine the full or the partial semantics of a certain mode, depending on which tags they
104
+ * understand, using standard definitions and/or manufacturer specific namespace definitions.
105
+ *
106
+ * The standard mode tags are defined in this cluster specification. For the derived cluster instances, if the
107
+ * specification of the derived cluster defines a namespace, the set of standard mode tags also includes the
108
+ * mode tag values from that namespace.
109
+ *
110
+ * Mode tags can help clients look for options that meet certain criteria, render the user interface, use
111
+ *
112
+ * the mode in an automation, or to craft help text their voice-driven interfaces. A mode tag shall be either a
113
+ * standard tag or a manufacturer specific tag, as defined in each ModeTagStruct list entry.
114
+ *
115
+ * A mode option may have more than one mode tag. A mode option may be associated with a mixture of standard
116
+ * and manufacturer specific mode tags. A mode option shall be associated with at least one standard mode tag.
117
+ *
118
+ * A few examples are provided below.
119
+ *
120
+ * • A mode named "100%" can have both the High (manufacturer specific) and Max (standard) mode tag. Clients
121
+ * seeking the mode for either High or Max will find the same mode in this case.
122
+ *
123
+ * • A mode that includes a LowEnergy tag can be displayed by the client using a widget icon that shows a
124
+ * green leaf.
125
+ *
126
+ * • A mode that includes a LowNoise tag may be used by the client when the user wishes for a lower level of
127
+ * audible sound, less likely to disturb the household’s activities.
128
+ *
129
+ * • A mode that includes a LowEnergy tag (standard, defined in this cluster specification) and also a
130
+ * Delicate tag (standard, defined in the namespace of a Laundry Mode derived cluster).
131
+ *
132
+ * • A mode that includes both a generic Quick tag (defined here), and Vacuum and Mop tags, (defined in the
133
+ * RVC Clean cluster that is a derivation of this cluster).
134
+ *
135
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.3
136
+ */
137
+ modeTags: (0, import_TlvObject.TlvField)(2, (0, import_TlvArray.TlvArray)(LaundryWasherMode2.TlvModeTagStruct, { maxLength: 8 }))
138
+ });
50
139
  LaundryWasherMode2.Base = import_MutableCluster.MutableCluster.Component({
51
140
  id: 81,
52
141
  name: "LaundryWasherMode",
@@ -68,7 +157,7 @@ var LaundryWasherMode;
68
157
  */
69
158
  supportedModes: (0, import_Cluster.FixedAttribute)(
70
159
  0,
71
- (0, import_TlvArray.TlvArray)(import_mode_base.ModeBase.TlvModeOption, { minLength: 2, maxLength: 255 }),
160
+ (0, import_TlvArray.TlvArray)(LaundryWasherMode2.TlvModeOption, { minLength: 2, maxLength: 255 }),
72
161
  { default: [] }
73
162
  ),
74
163
  /**
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/clusters/laundry-washer-mode.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,4BAA+B;AAC/B,0BAAwB;AACxB,qBAAqF;AACrF,sBAAyB;AACzB,uBAAyB;AACzB,uBAAyB;AAEzB,6BAAgC;AAfhC;AAAA;AAAA;AAAA;AAAA;AAiBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AAMI,MAAK;AAAL,IAAKC,aAAL;AASH,IAAAA,SAAA,WAAQ;AAAA,KATA,UAAAD,mBAAA,YAAAA,mBAAA;AAYL,MAAK;AAAL,IAAKE,aAAL;AAMH,IAAAA,kBAAA,YAAS,SAAT;AAOA,IAAAA,kBAAA,cAAW,SAAX;AAOA,IAAAA,kBAAA,WAAQ,SAAR;AAOA,IAAAA,kBAAA,YAAS,SAAT;AAAA,KA3BQ,UAAAF,mBAAA,YAAAA,mBAAA;AAiCL,EAAMA,mBAAA,OAAO,qCAAe,UAAU;AAAA,IACzC,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,UAAU;AAAA,IAEV,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASN,WAAO,6BAAQ,CAAC;AAAA,IACpB;AAAA,IAEA,YAAY;AAAA;AAAA;AAAA;AAAA,MAIR,oBAAgB;AAAA,QACZ;AAAA,YACA,0BAAS,0BAAS,eAAe,EAAE,WAAW,GAAG,WAAW,IAAI,CAAC;AAAA,QACjE,EAAE,SAAS,CAAC,EAAE;AAAA,MAClB;AAAA;AAAA;AAAA;AAAA,MAKA,iBAAa,0BAAU,GAAK,2BAAU,EAAE,OAAO,MAAM,YAAY,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASvE,iBAAa,kCAAkB,GAAK,2BAAU,EAAE,YAAY,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA,MAKlE,YAAQ,kCAAkB,GAAK,2BAAU,EAAE,YAAY,KAAK,CAAC;AAAA,IACjE;AAAA,IAEA,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQN,kBAAc,wBAAQ,GAAK,0BAAS,wBAAwB,GAAK,4BAAa;AAAA,IAClF;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAY,qCAAe,WAAW;AAAA,EAC1C,CAAC;AAKM,EAAMA,mBAAA,sBAAkB,sCAAeA,mBAAA,IAAI;AAa3C,EAAMA,mBAAA,UAAmBA,mBAAA;AACzB,EAAMA,mBAAA,WAAWA,mBAAA;AAAA,GArIX;AAyIV,MAAM,2BAA2B,kBAAkB;AAC1D,uCAAgB,SAAS,kBAAkB,QAAQ;",
4
+ "mappings": "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",
5
5
  "names": ["LaundryWasherMode", "Feature", "ModeTag"]
6
6
  }
@@ -7,6 +7,7 @@
7
7
  import { MutableCluster } from "../cluster/mutation/MutableCluster.js";
8
8
  import { BitFlag } from "../schema/BitmapSchema.js";
9
9
  import { FixedAttribute, Attribute } from "../cluster/Cluster.js";
10
+ import { TypeFromSchema } from "../tlv/TlvSchema.js";
10
11
  import { Identity } from "#general";
11
12
  export declare namespace MicrowaveOvenMode {
12
13
  /**
@@ -37,7 +38,189 @@ export declare namespace MicrowaveOvenMode {
37
38
  *
38
39
  * @see {@link MatterSpecification.v13.Cluster} § 8.12.6.1
39
40
  */
40
- Defrost = 16385
41
+ Defrost = 16385,
42
+ /**
43
+ * The device decides which options, features and setting values to use.
44
+ *
45
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
46
+ */
47
+ Auto = 0,
48
+ /**
49
+ * The mode of the device is optimizing for faster completion.
50
+ *
51
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
52
+ */
53
+ Quick = 1,
54
+ /**
55
+ * The device is silent or barely audible while in this mode.
56
+ *
57
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
58
+ */
59
+ Quiet = 2,
60
+ /**
61
+ * Either the mode is inherently low noise or the device optimizes for that.
62
+ *
63
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
64
+ */
65
+ LowNoise = 3,
66
+ /**
67
+ * The device is optimizing for lower energy usage in this mode. Sometimes called "Eco mode".
68
+ *
69
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
70
+ */
71
+ LowEnergy = 4,
72
+ /**
73
+ * A mode suitable for use during vacations or other extended absences.
74
+ *
75
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
76
+ */
77
+ Vacation = 5,
78
+ /**
79
+ * The mode uses the lowest available setting value.
80
+ *
81
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
82
+ */
83
+ Min = 6,
84
+ /**
85
+ * The mode uses the highest available setting value.
86
+ *
87
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
88
+ */
89
+ Max = 7,
90
+ /**
91
+ * The mode is recommended or suitable for use during night time.
92
+ *
93
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
94
+ */
95
+ Night = 8,
96
+ /**
97
+ * The mode is recommended or suitable for use during day time.
98
+ *
99
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.8
100
+ */
101
+ Day = 9
102
+ }
103
+ /**
104
+ * A Mode Tag is meant to be interpreted by the client for the purpose the cluster serves.
105
+ *
106
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1
107
+ */
108
+ const TlvModeTagStruct: import("../tlv/TlvObject.js").ObjectSchema<{
109
+ /**
110
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
111
+ * 1.10.8, “Mode Namespace”).
112
+ *
113
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
114
+ *
115
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
116
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
117
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
118
+ * salt.
119
+ *
120
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
121
+ */
122
+ mfgCode: import("../tlv/TlvObject.js").OptionalFieldType<import("../datatype/VendorId.js").VendorId>;
123
+ /**
124
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
125
+ * standard.
126
+ *
127
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
128
+ */
129
+ value: import("../tlv/TlvObject.js").FieldType<ModeTag>;
130
+ }>;
131
+ /**
132
+ * A Mode Tag is meant to be interpreted by the client for the purpose the cluster serves.
133
+ *
134
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1
135
+ */
136
+ interface ModeTagStruct extends TypeFromSchema<typeof TlvModeTagStruct> {
137
+ }
138
+ /**
139
+ * This is a struct representing a possible mode of the server.
140
+ *
141
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2
142
+ */
143
+ const TlvModeOption: import("../tlv/TlvObject.js").ObjectSchema<{
144
+ /**
145
+ * This field shall indicate readable text that describes the mode option, so that a client can provide it to
146
+ * the user to indicate what this option means. This field is meant to be readable and understandable by the
147
+ * user.
148
+ *
149
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.1
150
+ */
151
+ label: import("../tlv/TlvObject.js").FieldType<string>;
152
+ /**
153
+ * This field is used to identify the mode option.
154
+ *
155
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.2
156
+ */
157
+ mode: import("../tlv/TlvObject.js").FieldType<number>;
158
+ /**
159
+ * This field shall contain a list of tags that are associated with the mode option. This may be used by
160
+ * clients to determine the full or the partial semantics of a certain mode, depending on which tags they
161
+ * understand, using standard definitions and/or manufacturer specific namespace definitions.
162
+ *
163
+ * The standard mode tags are defined in this cluster specification. For the derived cluster instances, if the
164
+ * specification of the derived cluster defines a namespace, the set of standard mode tags also includes the
165
+ * mode tag values from that namespace.
166
+ *
167
+ * Mode tags can help clients look for options that meet certain criteria, render the user interface, use
168
+ *
169
+ * the mode in an automation, or to craft help text their voice-driven interfaces. A mode tag shall be either a
170
+ * standard tag or a manufacturer specific tag, as defined in each ModeTagStruct list entry.
171
+ *
172
+ * A mode option may have more than one mode tag. A mode option may be associated with a mixture of standard
173
+ * and manufacturer specific mode tags. A mode option shall be associated with at least one standard mode tag.
174
+ *
175
+ * A few examples are provided below.
176
+ *
177
+ * • A mode named "100%" can have both the High (manufacturer specific) and Max (standard) mode tag. Clients
178
+ * seeking the mode for either High or Max will find the same mode in this case.
179
+ *
180
+ * • A mode that includes a LowEnergy tag can be displayed by the client using a widget icon that shows a
181
+ * green leaf.
182
+ *
183
+ * • A mode that includes a LowNoise tag may be used by the client when the user wishes for a lower level of
184
+ * audible sound, less likely to disturb the household’s activities.
185
+ *
186
+ * • A mode that includes a LowEnergy tag (standard, defined in this cluster specification) and also a
187
+ * Delicate tag (standard, defined in the namespace of a Laundry Mode derived cluster).
188
+ *
189
+ * • A mode that includes both a generic Quick tag (defined here), and Vacuum and Mop tags, (defined in the
190
+ * RVC Clean cluster that is a derivation of this cluster).
191
+ *
192
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.3
193
+ */
194
+ modeTags: import("../tlv/TlvObject.js").FieldType<import("../tlv/TlvObject.js").TypeFromFields<{
195
+ /**
196
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
197
+ * 1.10.8, “Mode Namespace”).
198
+ *
199
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
200
+ *
201
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
202
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
203
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
204
+ * salt.
205
+ *
206
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
207
+ */
208
+ mfgCode: import("../tlv/TlvObject.js").OptionalFieldType<import("../datatype/VendorId.js").VendorId>;
209
+ /**
210
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
211
+ * standard.
212
+ *
213
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
214
+ */
215
+ value: import("../tlv/TlvObject.js").FieldType<ModeTag>;
216
+ }>[]>;
217
+ }>;
218
+ /**
219
+ * This is a struct representing a possible mode of the server.
220
+ *
221
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2
222
+ */
223
+ interface ModeOption extends TypeFromSchema<typeof TlvModeOption> {
41
224
  }
42
225
  /**
43
226
  * These elements and properties are present in all MicrowaveOvenMode clusters.
@@ -61,12 +244,79 @@ export declare namespace MicrowaveOvenMode {
61
244
  /**
62
245
  * @see {@link MatterSpecification.v13.Cluster} § 8.12.4
63
246
  */
64
- readonly supportedModes: FixedAttribute<import("../index.js").TypeFromFields<{
65
- label: import("../index.js").FieldType<string>;
66
- mode: import("../index.js").FieldType<number>;
67
- modeTags: import("../index.js").FieldType<import("../index.js").TypeFromFields<{
68
- mfgCode: import("../index.js").OptionalFieldType<import("../index.js").VendorId>;
69
- value: import("../index.js").FieldType<number>;
247
+ readonly supportedModes: FixedAttribute<import("../tlv/TlvObject.js").TypeFromFields<{
248
+ /**
249
+ * This field shall indicate readable text that describes the mode option, so that a client can provide it to
250
+ * the user to indicate what this option means. This field is meant to be readable and understandable by the
251
+ * user.
252
+ *
253
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.1
254
+ */
255
+ label: import("../tlv/TlvObject.js").FieldType<string>;
256
+ /**
257
+ * This field is used to identify the mode option.
258
+ *
259
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.2
260
+ */
261
+ mode: import("../tlv/TlvObject.js").FieldType<number>;
262
+ /**
263
+ * This field shall contain a list of tags that are associated with the mode option. This may be used by
264
+ * clients to determine the full or the partial semantics of a certain mode, depending on which tags they
265
+ * understand, using standard definitions and/or manufacturer specific namespace definitions.
266
+ *
267
+ * The standard mode tags are defined in this cluster specification. For the derived cluster instances, if the
268
+ * specification of the derived cluster defines a namespace, the set of standard mode tags also includes the
269
+ * mode tag values from that namespace.
270
+ *
271
+ * Mode tags can help clients look for options that meet certain criteria, render the user interface, use
272
+ *
273
+ * the mode in an automation, or to craft help text their voice-driven interfaces. A mode tag shall be either a
274
+ * standard tag or a manufacturer specific tag, as defined in each ModeTagStruct list entry.
275
+ *
276
+ * A mode option may have more than one mode tag. A mode option may be associated with a mixture of standard
277
+ * and manufacturer specific mode tags. A mode option shall be associated with at least one standard mode tag.
278
+ *
279
+ * A few examples are provided below.
280
+ *
281
+ * • A mode named "100%" can have both the High (manufacturer specific) and Max (standard) mode tag. Clients
282
+ * seeking the mode for either High or Max will find the same mode in this case.
283
+ *
284
+ * • A mode that includes a LowEnergy tag can be displayed by the client using a widget icon that shows a
285
+ * green leaf.
286
+ *
287
+ * • A mode that includes a LowNoise tag may be used by the client when the user wishes for a lower level of
288
+ * audible sound, less likely to disturb the household’s activities.
289
+ *
290
+ * • A mode that includes a LowEnergy tag (standard, defined in this cluster specification) and also a
291
+ * Delicate tag (standard, defined in the namespace of a Laundry Mode derived cluster).
292
+ *
293
+ * • A mode that includes both a generic Quick tag (defined here), and Vacuum and Mop tags, (defined in the
294
+ * RVC Clean cluster that is a derivation of this cluster).
295
+ *
296
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.3
297
+ */
298
+ modeTags: import("../tlv/TlvObject.js").FieldType<import("../tlv/TlvObject.js").TypeFromFields<{
299
+ /**
300
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
301
+ * 1.10.8, “Mode Namespace”).
302
+ *
303
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
304
+ *
305
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
306
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
307
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
308
+ * salt.
309
+ *
310
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
311
+ */
312
+ mfgCode: import("../tlv/TlvObject.js").OptionalFieldType<import("../datatype/VendorId.js").VendorId>;
313
+ /**
314
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
315
+ * standard.
316
+ *
317
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
318
+ */
319
+ value: import("../tlv/TlvObject.js").FieldType<ModeTag>;
70
320
  }>[]>;
71
321
  }>[], any>;
72
322
  /**
@@ -102,12 +352,79 @@ export declare namespace MicrowaveOvenMode {
102
352
  /**
103
353
  * @see {@link MatterSpecification.v13.Cluster} § 8.12.4
104
354
  */
105
- readonly supportedModes: FixedAttribute<import("../index.js").TypeFromFields<{
106
- label: import("../index.js").FieldType<string>;
107
- mode: import("../index.js").FieldType<number>;
108
- modeTags: import("../index.js").FieldType<import("../index.js").TypeFromFields<{
109
- mfgCode: import("../index.js").OptionalFieldType<import("../index.js").VendorId>;
110
- value: import("../index.js").FieldType<number>;
355
+ readonly supportedModes: FixedAttribute<import("../tlv/TlvObject.js").TypeFromFields<{
356
+ /**
357
+ * This field shall indicate readable text that describes the mode option, so that a client can provide it to
358
+ * the user to indicate what this option means. This field is meant to be readable and understandable by the
359
+ * user.
360
+ *
361
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.1
362
+ */
363
+ label: import("../tlv/TlvObject.js").FieldType<string>;
364
+ /**
365
+ * This field is used to identify the mode option.
366
+ *
367
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.2
368
+ */
369
+ mode: import("../tlv/TlvObject.js").FieldType<number>;
370
+ /**
371
+ * This field shall contain a list of tags that are associated with the mode option. This may be used by
372
+ * clients to determine the full or the partial semantics of a certain mode, depending on which tags they
373
+ * understand, using standard definitions and/or manufacturer specific namespace definitions.
374
+ *
375
+ * The standard mode tags are defined in this cluster specification. For the derived cluster instances, if the
376
+ * specification of the derived cluster defines a namespace, the set of standard mode tags also includes the
377
+ * mode tag values from that namespace.
378
+ *
379
+ * Mode tags can help clients look for options that meet certain criteria, render the user interface, use
380
+ *
381
+ * the mode in an automation, or to craft help text their voice-driven interfaces. A mode tag shall be either a
382
+ * standard tag or a manufacturer specific tag, as defined in each ModeTagStruct list entry.
383
+ *
384
+ * A mode option may have more than one mode tag. A mode option may be associated with a mixture of standard
385
+ * and manufacturer specific mode tags. A mode option shall be associated with at least one standard mode tag.
386
+ *
387
+ * A few examples are provided below.
388
+ *
389
+ * • A mode named "100%" can have both the High (manufacturer specific) and Max (standard) mode tag. Clients
390
+ * seeking the mode for either High or Max will find the same mode in this case.
391
+ *
392
+ * • A mode that includes a LowEnergy tag can be displayed by the client using a widget icon that shows a
393
+ * green leaf.
394
+ *
395
+ * • A mode that includes a LowNoise tag may be used by the client when the user wishes for a lower level of
396
+ * audible sound, less likely to disturb the household’s activities.
397
+ *
398
+ * • A mode that includes a LowEnergy tag (standard, defined in this cluster specification) and also a
399
+ * Delicate tag (standard, defined in the namespace of a Laundry Mode derived cluster).
400
+ *
401
+ * • A mode that includes both a generic Quick tag (defined here), and Vacuum and Mop tags, (defined in the
402
+ * RVC Clean cluster that is a derivation of this cluster).
403
+ *
404
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.3
405
+ */
406
+ modeTags: import("../tlv/TlvObject.js").FieldType<import("../tlv/TlvObject.js").TypeFromFields<{
407
+ /**
408
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
409
+ * 1.10.8, “Mode Namespace”).
410
+ *
411
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
412
+ *
413
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
414
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
415
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
416
+ * salt.
417
+ *
418
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
419
+ */
420
+ mfgCode: import("../tlv/TlvObject.js").OptionalFieldType<import("../datatype/VendorId.js").VendorId>;
421
+ /**
422
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
423
+ * standard.
424
+ *
425
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
426
+ */
427
+ value: import("../tlv/TlvObject.js").FieldType<ModeTag>;
111
428
  }>[]>;
112
429
  }>[], any>;
113
430
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"microwave-oven-mode.d.ts","sourceRoot":"","sources":["../../../src/clusters/microwave-oven-mode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6CAA6C;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIlE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,yBAAiB,iBAAiB,CAAC;IAC/B;;;;OAIG;IACH,KAAY,OAAO;QACf;;;;;;;WAOG;QACH,KAAK,UAAU;KAClB;IAED,KAAY,OAAO;QACf;;;;WAIG;QACH,MAAM,QAAQ;QAEd;;;;WAIG;QACH,OAAO,QAAQ;KAClB;IAED;;OAEG;IACI,MAAM,IAAI;;;;;YAMT;;;;;;;eAOG;;;;YAKH;;eAEG;;;;;;;;;YAOH;;eAEG;;;QAIP;;;WAGG;;KAEL,CAAC;IAEH;;OAEG;IACI,MAAM,eAAe;;;;;YArCpB;;;;;;;eAOG;;;;YAKH;;eAEG;;;;;;;;;YAOH;;eAEG;;;QAIP;;;WAGG;;UAO4C,CAAC;IAEpD;;;;;;;;OAQG;IACH,UAAiB,OAAQ,SAAQ,QAAQ,CAAC,OAAO,eAAe,CAAC;KAAG;IAE7D,MAAM,OAAO,EAAE,OAAyB,CAAC;IACzC,MAAM,QAAQ,SAAU,CAAC;CACnC;AAED,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,CAAC,OAAO,CAAC;AACjE,eAAO,MAAM,wBAAwB,2BAA4B,CAAC"}
1
+ {"version":3,"file":"microwave-oven-mode.d.ts","sourceRoot":"","sources":["../../../src/clusters/microwave-oven-mode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6CAA6C;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAMlE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,yBAAiB,iBAAiB,CAAC;IAC/B;;;;OAIG;IACH,KAAY,OAAO;QACf;;;;;;;WAOG;QACH,KAAK,UAAU;KAClB;IAED,KAAY,OAAO;QACf;;;;WAIG;QACH,MAAM,QAAQ;QAEd;;;;WAIG;QACH,OAAO,QAAQ;QAEf;;;;WAIG;QACH,IAAI,IAAI;QAER;;;;WAIG;QACH,KAAK,IAAI;QAET;;;;WAIG;QACH,KAAK,IAAI;QAET;;;;WAIG;QACH,QAAQ,IAAI;QAEZ;;;;WAIG;QACH,SAAS,IAAI;QAEb;;;;WAIG;QACH,QAAQ,IAAI;QAEZ;;;;WAIG;QACH,GAAG,IAAI;QAEP;;;;WAIG;QACH,GAAG,IAAI;QAEP;;;;WAIG;QACH,KAAK,IAAI;QAET;;;;WAIG;QACH,GAAG,IAAI;KACV;IAED;;;;OAIG;IACI,MAAM,gBAAgB;QACzB;;;;;;;;;;;;WAYG;;QAGH;;;;;WAKG;;MAEL,CAAC;IAEH;;;;OAIG;IACH,UAAiB,aAAc,SAAQ,cAAc,CAAC,OAAO,gBAAgB,CAAC;KAAG;IAEjF;;;;OAIG;IACI,MAAM,aAAa;QACtB;;;;;;WAMG;;QAGH;;;;WAIG;;QAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAmCG;;YAxFH;;;;;;;;;;;;eAYG;;YAGH;;;;;eAKG;;;MAsEL,CAAC;IAEH;;;;OAIG;IACH,UAAiB,UAAW,SAAQ,cAAc,CAAC,OAAO,aAAa,CAAC;KAAG;IAE3E;;OAEG;IACI,MAAM,IAAI;;;;;YAMT;;;;;;;eAOG;;;;YAKH;;eAEG;;gBArFP;;;;;;mBAMG;;gBAGH;;;;mBAIG;;gBAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAmCG;;oBAxFH;;;;;;;;;;;;uBAYG;;oBAGH;;;;;uBAKG;;;;YA6GC;;eAEG;;;QAIP;;;WAGG;;KAEL,CAAC;IAEH;;OAEG;IACI,MAAM,eAAe;;;;;YArCpB;;;;;;;eAOG;;;;YAKH;;eAEG;;gBArFP;;;;;;mBAMG;;gBAGH;;;;mBAIG;;gBAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAmCG;;oBAxFH;;;;;;;;;;;;uBAYG;;oBAGH;;;;;uBAKG;;;;YA6GC;;eAEG;;;QAIP;;;WAGG;;UAO4C,CAAC;IAEpD;;;;;;;;OAQG;IACH,UAAiB,OAAQ,SAAQ,QAAQ,CAAC,OAAO,eAAe,CAAC;KAAG;IAE7D,MAAM,OAAO,EAAE,OAAyB,CAAC;IACzC,MAAM,QAAQ,SAAU,CAAC;CACnC;AAED,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,CAAC,OAAO,CAAC;AACjE,eAAO,MAAM,wBAAwB,2BAA4B,CAAC"}
@@ -26,8 +26,10 @@ var import_MutableCluster = require("../cluster/mutation/MutableCluster.js");
26
26
  var import_BitmapSchema = require("../schema/BitmapSchema.js");
27
27
  var import_Cluster = require("../cluster/Cluster.js");
28
28
  var import_TlvArray = require("../tlv/TlvArray.js");
29
- var import_mode_base = require("./mode-base.js");
29
+ var import_TlvObject = require("../tlv/TlvObject.js");
30
+ var import_TlvString = require("../tlv/TlvString.js");
30
31
  var import_TlvNumber = require("../tlv/TlvNumber.js");
32
+ var import_VendorId = require("../datatype/VendorId.js");
31
33
  var import_ClusterRegistry = require("../cluster/ClusterRegistry.js");
32
34
  /**
33
35
  * @license
@@ -44,7 +46,93 @@ var MicrowaveOvenMode;
44
46
  ((ModeTag2) => {
45
47
  ModeTag2[ModeTag2["Normal"] = 16384] = "Normal";
46
48
  ModeTag2[ModeTag2["Defrost"] = 16385] = "Defrost";
49
+ ModeTag2[ModeTag2["Auto"] = 0] = "Auto";
50
+ ModeTag2[ModeTag2["Quick"] = 1] = "Quick";
51
+ ModeTag2[ModeTag2["Quiet"] = 2] = "Quiet";
52
+ ModeTag2[ModeTag2["LowNoise"] = 3] = "LowNoise";
53
+ ModeTag2[ModeTag2["LowEnergy"] = 4] = "LowEnergy";
54
+ ModeTag2[ModeTag2["Vacation"] = 5] = "Vacation";
55
+ ModeTag2[ModeTag2["Min"] = 6] = "Min";
56
+ ModeTag2[ModeTag2["Max"] = 7] = "Max";
57
+ ModeTag2[ModeTag2["Night"] = 8] = "Night";
58
+ ModeTag2[ModeTag2["Day"] = 9] = "Day";
47
59
  })(ModeTag = MicrowaveOvenMode2.ModeTag || (MicrowaveOvenMode2.ModeTag = {}));
60
+ MicrowaveOvenMode2.TlvModeTagStruct = (0, import_TlvObject.TlvObject)({
61
+ /**
62
+ * If the MfgCode field exists, the Value field shall be in the manufacturer-specific value range (see Section
63
+ * 1.10.8, “Mode Namespace”).
64
+ *
65
+ * This field shall indicate the manufacturer’s VendorID and it shall determine the meaning of the Value field.
66
+ *
67
+ * The same manufacturer code and mode tag value in separate cluster instances are part of the same namespace
68
+ * and have the same meaning. For example: a manufacturer tag meaning "pinch" can be used both in a cluster
69
+ * whose purpose is to choose the amount of sugar, or in a cluster whose purpose is to choose the amount of
70
+ * salt.
71
+ *
72
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.1
73
+ */
74
+ mfgCode: (0, import_TlvObject.TlvOptionalField)(0, import_VendorId.TlvVendorId),
75
+ /**
76
+ * This field shall indicate the mode tag within a mode tag namespace which is either manufacturer specific or
77
+ * standard.
78
+ *
79
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.1.2
80
+ */
81
+ value: (0, import_TlvObject.TlvField)(1, (0, import_TlvNumber.TlvEnum)())
82
+ });
83
+ MicrowaveOvenMode2.TlvModeOption = (0, import_TlvObject.TlvObject)({
84
+ /**
85
+ * This field shall indicate readable text that describes the mode option, so that a client can provide it to
86
+ * the user to indicate what this option means. This field is meant to be readable and understandable by the
87
+ * user.
88
+ *
89
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.1
90
+ */
91
+ label: (0, import_TlvObject.TlvField)(0, import_TlvString.TlvString.bound({ maxLength: 64 })),
92
+ /**
93
+ * This field is used to identify the mode option.
94
+ *
95
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.2
96
+ */
97
+ mode: (0, import_TlvObject.TlvField)(1, import_TlvNumber.TlvUInt8),
98
+ /**
99
+ * This field shall contain a list of tags that are associated with the mode option. This may be used by
100
+ * clients to determine the full or the partial semantics of a certain mode, depending on which tags they
101
+ * understand, using standard definitions and/or manufacturer specific namespace definitions.
102
+ *
103
+ * The standard mode tags are defined in this cluster specification. For the derived cluster instances, if the
104
+ * specification of the derived cluster defines a namespace, the set of standard mode tags also includes the
105
+ * mode tag values from that namespace.
106
+ *
107
+ * Mode tags can help clients look for options that meet certain criteria, render the user interface, use
108
+ *
109
+ * the mode in an automation, or to craft help text their voice-driven interfaces. A mode tag shall be either a
110
+ * standard tag or a manufacturer specific tag, as defined in each ModeTagStruct list entry.
111
+ *
112
+ * A mode option may have more than one mode tag. A mode option may be associated with a mixture of standard
113
+ * and manufacturer specific mode tags. A mode option shall be associated with at least one standard mode tag.
114
+ *
115
+ * A few examples are provided below.
116
+ *
117
+ * • A mode named "100%" can have both the High (manufacturer specific) and Max (standard) mode tag. Clients
118
+ * seeking the mode for either High or Max will find the same mode in this case.
119
+ *
120
+ * • A mode that includes a LowEnergy tag can be displayed by the client using a widget icon that shows a
121
+ * green leaf.
122
+ *
123
+ * • A mode that includes a LowNoise tag may be used by the client when the user wishes for a lower level of
124
+ * audible sound, less likely to disturb the household’s activities.
125
+ *
126
+ * • A mode that includes a LowEnergy tag (standard, defined in this cluster specification) and also a
127
+ * Delicate tag (standard, defined in the namespace of a Laundry Mode derived cluster).
128
+ *
129
+ * • A mode that includes both a generic Quick tag (defined here), and Vacuum and Mop tags, (defined in the
130
+ * RVC Clean cluster that is a derivation of this cluster).
131
+ *
132
+ * @see {@link MatterSpecification.v13.Cluster} § 1.10.5.2.3
133
+ */
134
+ modeTags: (0, import_TlvObject.TlvField)(2, (0, import_TlvArray.TlvArray)(MicrowaveOvenMode2.TlvModeTagStruct, { maxLength: 8 }))
135
+ });
48
136
  MicrowaveOvenMode2.Base = import_MutableCluster.MutableCluster.Component({
49
137
  id: 94,
50
138
  name: "MicrowaveOvenMode",
@@ -66,7 +154,7 @@ var MicrowaveOvenMode;
66
154
  */
67
155
  supportedModes: (0, import_Cluster.FixedAttribute)(
68
156
  0,
69
- (0, import_TlvArray.TlvArray)(import_mode_base.ModeBase.TlvModeOption, { minLength: 2, maxLength: 255 }),
157
+ (0, import_TlvArray.TlvArray)(MicrowaveOvenMode2.TlvModeOption, { minLength: 2, maxLength: 255 }),
70
158
  { default: [] }
71
159
  ),
72
160
  /**
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/clusters/microwave-oven-mode.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,4BAA+B;AAC/B,0BAAwB;AACxB,qBAA0C;AAC1C,sBAAyB;AACzB,uBAAyB;AACzB,uBAAyB;AAEzB,6BAAgC;AAfhC;AAAA;AAAA;AAAA;AAAA;AAiBO,IAAU;AAAA,CAAV,CAAUA,uBAAV;AAMI,MAAK;AAAL,IAAKC,aAAL;AASH,IAAAA,SAAA,WAAQ;AAAA,KATA,UAAAD,mBAAA,YAAAA,mBAAA;AAYL,MAAK;AAAL,IAAKE,aAAL;AAMH,IAAAA,kBAAA,YAAS,SAAT;AAOA,IAAAA,kBAAA,aAAU,SAAV;AAAA,KAbQ,UAAAF,mBAAA,YAAAA,mBAAA;AAmBL,EAAMA,mBAAA,OAAO,qCAAe,UAAU;AAAA,IACzC,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,UAAU;AAAA,IAEV,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASN,WAAO,6BAAQ,CAAC;AAAA,IACpB;AAAA,IAEA,YAAY;AAAA;AAAA;AAAA;AAAA,MAIR,oBAAgB;AAAA,QACZ;AAAA,YACA,0BAAS,0BAAS,eAAe,EAAE,WAAW,GAAG,WAAW,IAAI,CAAC;AAAA,QACjE,EAAE,SAAS,CAAC,EAAE;AAAA,MAClB;AAAA;AAAA;AAAA;AAAA,MAKA,iBAAa,0BAAU,GAAK,2BAAU,EAAE,OAAO,MAAM,YAAY,KAAK,CAAC;AAAA,IAC3E;AAAA;AAAA;AAAA;AAAA;AAAA,IAMA,YAAY,qCAAe,WAAW;AAAA,EAC1C,CAAC;AAKM,EAAMA,mBAAA,sBAAkB,sCAAeA,mBAAA,IAAI;AAa3C,EAAMA,mBAAA,UAAmBA,mBAAA;AACzB,EAAMA,mBAAA,WAAWA,mBAAA;AAAA,GA9FX;AAkGV,MAAM,2BAA2B,kBAAkB;AAC1D,uCAAgB,SAAS,kBAAkB,QAAQ;",
4
+ "mappings": "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",
5
5
  "names": ["MicrowaveOvenMode", "Feature", "ModeTag"]
6
6
  }