@matter/node 0.11.0-alpha.0-20241005-e3e4e4a7a → 0.11.0-alpha.0-20241006-eccb81ae1

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.
@@ -145,14 +145,14 @@ export declare const Transaction: {
145
145
  * A read-only transaction you may use without context.
146
146
  */
147
147
  ReadOnly: {
148
- "__#113515@#participants": Set<Participant>;
149
- "__#113515@#roles": Map<{}, Participant>;
150
- "__#113515@#resources": Set<Resource>;
151
- "__#113515@#status": Status;
152
- "__#113515@#waitingOn"?: Iterable<Transaction>;
153
- "__#113515@#via": string;
154
- "__#113515@#shared"?: import("#general").Observable<[]>;
155
- "__#113515@#closed"?: import("#general").Observable<[]>;
148
+ "__#113517@#participants": Set<Participant>;
149
+ "__#113517@#roles": Map<{}, Participant>;
150
+ "__#113517@#resources": Set<Resource>;
151
+ "__#113517@#status": Status;
152
+ "__#113517@#waitingOn"?: Iterable<Transaction>;
153
+ "__#113517@#via": string;
154
+ "__#113517@#shared"?: import("#general").Observable<[]>;
155
+ "__#113517@#closed"?: import("#general").Observable<[]>;
156
156
  close(): void;
157
157
  readonly via: string;
158
158
  readonly status: Status;
@@ -171,16 +171,16 @@ export declare const Transaction: {
171
171
  rollback(): Promise<void> | undefined;
172
172
  waitFor(others: Set<Transaction>): Promise<void>;
173
173
  toString(): string;
174
- "__#113515@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
175
- "__#113515@#executePreCommit"(): MaybePromise<void>;
176
- "__#113515@#executeCommit"(): MaybePromise;
177
- "__#113515@#executeCommit1"(): MaybePromise;
178
- "__#113515@#executeCommit2"(): Promise<void> | undefined;
179
- "__#113515@#executePostCommit"(participants: Participant[]): MaybePromise;
180
- "__#113515@#executeRollback"(): Promise<void> | undefined;
181
- "__#113515@#log"(...message: unknown[]): void;
182
- "__#113515@#locksChanged"(resources: Set<Resource>, how?: string): void;
183
- "__#113515@#assertAvailable"(): void;
174
+ "__#113517@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
175
+ "__#113517@#executePreCommit"(): MaybePromise<void>;
176
+ "__#113517@#executeCommit"(): MaybePromise;
177
+ "__#113517@#executeCommit1"(): MaybePromise;
178
+ "__#113517@#executeCommit2"(): Promise<void> | undefined;
179
+ "__#113517@#executePostCommit"(participants: Participant[]): MaybePromise;
180
+ "__#113517@#executeRollback"(): Promise<void> | undefined;
181
+ "__#113517@#log"(...message: unknown[]): void;
182
+ "__#113517@#locksChanged"(resources: Set<Resource>, how?: string): void;
183
+ "__#113517@#assertAvailable"(): void;
184
184
  };
185
185
  Status: typeof Status;
186
186
  [Symbol.toStringTag]: string;
@@ -3,8 +3,190 @@
3
3
  * Copyright 2022-2024 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- /*** THIS FILE WILL BE REGENERATED IF YOU DO NOT REMOVE THIS MESSAGE ***/
7
- import { ElectricalEnergyMeasurementBehavior } from "./ElectricalEnergyMeasurementBehavior.js";
6
+ import { ElectricalEnergyMeasurement } from "#clusters/electrical-energy-measurement";
7
+ import { ClusterType } from "#types";
8
+ declare const ElectricalEnergyMeasurementServerBase: import("../../index.js").ClusterBehavior.Type<import("#types").ClusterComposer.WithFeatures<ElectricalEnergyMeasurement.Complete, readonly [ElectricalEnergyMeasurement.Feature.CumulativeEnergy, ElectricalEnergyMeasurement.Feature.PeriodicEnergy, ElectricalEnergyMeasurement.Feature.ImportedEnergy, ElectricalEnergyMeasurement.Feature.ExportedEnergy]>, import("../../index.js").ClusterBehavior.Type<ElectricalEnergyMeasurement.Complete, import("../../index.js").ClusterBehavior.Type<ClusterType.Of<{
9
+ readonly id: 145;
10
+ readonly name: "ElectricalEnergyMeasurement";
11
+ readonly revision: 1;
12
+ readonly features: {
13
+ readonly importedEnergy: import("#types").BitFlag;
14
+ readonly exportedEnergy: import("#types").BitFlag;
15
+ readonly cumulativeEnergy: import("#types").BitFlag;
16
+ readonly periodicEnergy: import("#types").BitFlag;
17
+ };
18
+ readonly attributes: {
19
+ readonly accuracy: import("#types").FixedAttribute<import("#types").TypeFromFields<{
20
+ measurementType: import("#types").FieldType<import("#types").MeasurementType>;
21
+ measured: import("#types").FieldType<boolean>;
22
+ minMeasuredValue: import("#types").FieldType<number | bigint>;
23
+ maxMeasuredValue: import("#types").FieldType<number | bigint>;
24
+ accuracyRanges: import("#types").FieldType<import("#types").TypeFromFields<{
25
+ rangeMin: import("#types").FieldType<number | bigint>;
26
+ rangeMax: import("#types").FieldType<number | bigint>;
27
+ percentMax: import("#types").OptionalFieldType<number>;
28
+ percentMin: import("#types").OptionalFieldType<number>;
29
+ percentTypical: import("#types").OptionalFieldType<number>;
30
+ fixedMax: import("#types").OptionalFieldType<number | bigint>;
31
+ fixedMin: import("#types").OptionalFieldType<number | bigint>;
32
+ fixedTypical: import("#types").OptionalFieldType<number | bigint>;
33
+ }>[]>;
34
+ }>, any>;
35
+ };
36
+ readonly extensions: readonly [{
37
+ readonly flags: {
38
+ readonly importedEnergy: true;
39
+ readonly cumulativeEnergy: true;
40
+ };
41
+ readonly component: {
42
+ readonly attributes: {
43
+ readonly cumulativeEnergyImported: import("#types").Attribute<import("#types").TypeFromFields<{
44
+ energy: import("#types").FieldType<number | bigint>;
45
+ startTimestamp: import("#types").OptionalFieldType<number>;
46
+ endTimestamp: import("#types").OptionalFieldType<number>;
47
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
48
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
49
+ }> | null, any>;
50
+ };
51
+ };
52
+ }, {
53
+ readonly flags: {
54
+ readonly exportedEnergy: true;
55
+ readonly cumulativeEnergy: true;
56
+ };
57
+ readonly component: {
58
+ readonly attributes: {
59
+ readonly cumulativeEnergyExported: import("#types").Attribute<import("#types").TypeFromFields<{
60
+ energy: import("#types").FieldType<number | bigint>;
61
+ startTimestamp: import("#types").OptionalFieldType<number>;
62
+ endTimestamp: import("#types").OptionalFieldType<number>;
63
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
64
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
65
+ }> | null, any>;
66
+ };
67
+ };
68
+ }, {
69
+ readonly flags: {
70
+ readonly importedEnergy: true;
71
+ readonly periodicEnergy: true;
72
+ };
73
+ readonly component: {
74
+ readonly attributes: {
75
+ readonly periodicEnergyImported: import("#types").Attribute<import("#types").TypeFromFields<{
76
+ energy: import("#types").FieldType<number | bigint>;
77
+ startTimestamp: import("#types").OptionalFieldType<number>;
78
+ endTimestamp: import("#types").OptionalFieldType<number>;
79
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
80
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
81
+ }> | null, any>;
82
+ };
83
+ };
84
+ }, {
85
+ readonly flags: {
86
+ readonly exportedEnergy: true;
87
+ readonly periodicEnergy: true;
88
+ };
89
+ readonly component: {
90
+ readonly attributes: {
91
+ readonly periodicEnergyExported: import("#types").Attribute<import("#types").TypeFromFields<{
92
+ energy: import("#types").FieldType<number | bigint>;
93
+ startTimestamp: import("#types").OptionalFieldType<number>;
94
+ endTimestamp: import("#types").OptionalFieldType<number>;
95
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
96
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
97
+ }> | null, any>;
98
+ };
99
+ };
100
+ }, {
101
+ readonly flags: {
102
+ readonly cumulativeEnergy: true;
103
+ };
104
+ readonly component: {
105
+ readonly attributes: {
106
+ readonly cumulativeEnergyReset: import("#types").OptionalAttribute<import("#types").TypeFromFields<{
107
+ importedResetTimestamp: import("#types").OptionalFieldType<number | null>;
108
+ exportedResetTimestamp: import("#types").OptionalFieldType<number | null>;
109
+ importedResetSystime: import("#types").OptionalFieldType<number | bigint | null>;
110
+ exportedResetSystime: import("#types").OptionalFieldType<number | bigint | null>;
111
+ }> | null, any>;
112
+ };
113
+ readonly events: {
114
+ readonly cumulativeEnergyMeasured: import("#types").Event<import("#types").TypeFromFields<{
115
+ energyImported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
116
+ energy: import("#types").FieldType<number | bigint>;
117
+ startTimestamp: import("#types").OptionalFieldType<number>;
118
+ endTimestamp: import("#types").OptionalFieldType<number>;
119
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
120
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
121
+ }>>;
122
+ energyExported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
123
+ energy: import("#types").FieldType<number | bigint>;
124
+ startTimestamp: import("#types").OptionalFieldType<number>;
125
+ endTimestamp: import("#types").OptionalFieldType<number>;
126
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
127
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
128
+ }>>;
129
+ }>, any>;
130
+ };
131
+ };
132
+ }, {
133
+ readonly flags: {
134
+ readonly periodicEnergy: true;
135
+ };
136
+ readonly component: {
137
+ readonly events: {
138
+ readonly periodicEnergyMeasured: import("#types").Event<import("#types").TypeFromFields<{
139
+ energyImported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
140
+ energy: import("#types").FieldType<number | bigint>;
141
+ startTimestamp: import("#types").OptionalFieldType<number>;
142
+ endTimestamp: import("#types").OptionalFieldType<number>;
143
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
144
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
145
+ }>>;
146
+ energyExported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
147
+ energy: import("#types").FieldType<number | bigint>;
148
+ startTimestamp: import("#types").OptionalFieldType<number>;
149
+ endTimestamp: import("#types").OptionalFieldType<number>;
150
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
151
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
152
+ }>>;
153
+ }>, any>;
154
+ };
155
+ };
156
+ }, {
157
+ readonly flags: {
158
+ readonly importedEnergy: false;
159
+ readonly exportedEnergy: false;
160
+ };
161
+ readonly component: false;
162
+ }, {
163
+ readonly flags: {
164
+ readonly cumulativeEnergy: false;
165
+ readonly periodicEnergy: false;
166
+ };
167
+ readonly component: false;
168
+ }];
169
+ }>, typeof import("../../index.js").ClusterBehavior, {
170
+ components: never[];
171
+ }>, {
172
+ components: never[];
173
+ }>, {
174
+ components: never[];
175
+ }>;
176
+ /**
177
+ * Helper Type for setMeasurement method to be used to set the measurement values together and handle as an atomic set
178
+ * to also trigger single events for imported and exported energy values.
179
+ */
180
+ type AtomicElectricalEnergyMeasurement = {
181
+ cumulativeEnergy?: {
182
+ imported?: ElectricalEnergyMeasurement.EnergyMeasurement;
183
+ exported?: ElectricalEnergyMeasurement.EnergyMeasurement;
184
+ };
185
+ periodicEnergy?: {
186
+ imported?: ElectricalEnergyMeasurement.EnergyMeasurement;
187
+ exported?: ElectricalEnergyMeasurement.EnergyMeasurement;
188
+ };
189
+ };
8
190
  /**
9
191
  * This is the default server implementation of {@link ElectricalEnergyMeasurementBehavior}.
10
192
  *
@@ -12,6 +194,183 @@ import { ElectricalEnergyMeasurementBehavior } from "./ElectricalEnergyMeasureme
12
194
  * default. You should use {@link ElectricalEnergyMeasurementServer.with} to specialize the class for the features your
13
195
  * implementation supports.
14
196
  */
15
- export declare class ElectricalEnergyMeasurementServer extends ElectricalEnergyMeasurementBehavior {
197
+ export declare class ElectricalEnergyMeasurementServerLogic extends ElectricalEnergyMeasurementServerBase {
198
+ /**
199
+ * Convenience method to set the measurement values for the cluster in an atomic way. This method updates the
200
+ * attributes with the provided data and also sends the events for the imported and exported energy values.
201
+ */
202
+ setMeasurement(measurement: AtomicElectricalEnergyMeasurement): void;
203
+ }
204
+ export declare namespace ElectricalEnergyMeasurementServerLogic {
205
+ const ExtensionInterface: {
206
+ setMeasurement(measurement: AtomicElectricalEnergyMeasurement): void;
207
+ };
208
+ }
209
+ declare const ElectricalEnergyMeasurementServer_base: import("../../index.js").ClusterBehavior.Type<ClusterType.Of<{
210
+ readonly id: 145;
211
+ readonly name: "ElectricalEnergyMeasurement";
212
+ readonly revision: 1;
213
+ readonly features: {
214
+ readonly importedEnergy: import("#types").BitFlag;
215
+ readonly exportedEnergy: import("#types").BitFlag;
216
+ readonly cumulativeEnergy: import("#types").BitFlag;
217
+ readonly periodicEnergy: import("#types").BitFlag;
218
+ };
219
+ readonly attributes: {
220
+ readonly accuracy: import("#types").FixedAttribute<import("#types").TypeFromFields<{
221
+ measurementType: import("#types").FieldType<import("#types").MeasurementType>;
222
+ measured: import("#types").FieldType<boolean>;
223
+ minMeasuredValue: import("#types").FieldType<number | bigint>;
224
+ maxMeasuredValue: import("#types").FieldType<number | bigint>;
225
+ accuracyRanges: import("#types").FieldType<import("#types").TypeFromFields<{
226
+ rangeMin: import("#types").FieldType<number | bigint>;
227
+ rangeMax: import("#types").FieldType<number | bigint>;
228
+ percentMax: import("#types").OptionalFieldType<number>;
229
+ percentMin: import("#types").OptionalFieldType<number>;
230
+ percentTypical: import("#types").OptionalFieldType<number>;
231
+ fixedMax: import("#types").OptionalFieldType<number | bigint>;
232
+ fixedMin: import("#types").OptionalFieldType<number | bigint>;
233
+ fixedTypical: import("#types").OptionalFieldType<number | bigint>;
234
+ }>[]>;
235
+ }>, any>;
236
+ };
237
+ readonly extensions: readonly [{
238
+ readonly flags: {
239
+ readonly importedEnergy: true;
240
+ readonly cumulativeEnergy: true;
241
+ };
242
+ readonly component: {
243
+ readonly attributes: {
244
+ readonly cumulativeEnergyImported: import("#types").Attribute<import("#types").TypeFromFields<{
245
+ energy: import("#types").FieldType<number | bigint>;
246
+ startTimestamp: import("#types").OptionalFieldType<number>;
247
+ endTimestamp: import("#types").OptionalFieldType<number>;
248
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
249
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
250
+ }> | null, any>;
251
+ };
252
+ };
253
+ }, {
254
+ readonly flags: {
255
+ readonly exportedEnergy: true;
256
+ readonly cumulativeEnergy: true;
257
+ };
258
+ readonly component: {
259
+ readonly attributes: {
260
+ readonly cumulativeEnergyExported: import("#types").Attribute<import("#types").TypeFromFields<{
261
+ energy: import("#types").FieldType<number | bigint>;
262
+ startTimestamp: import("#types").OptionalFieldType<number>;
263
+ endTimestamp: import("#types").OptionalFieldType<number>;
264
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
265
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
266
+ }> | null, any>;
267
+ };
268
+ };
269
+ }, {
270
+ readonly flags: {
271
+ readonly importedEnergy: true;
272
+ readonly periodicEnergy: true;
273
+ };
274
+ readonly component: {
275
+ readonly attributes: {
276
+ readonly periodicEnergyImported: import("#types").Attribute<import("#types").TypeFromFields<{
277
+ energy: import("#types").FieldType<number | bigint>;
278
+ startTimestamp: import("#types").OptionalFieldType<number>;
279
+ endTimestamp: import("#types").OptionalFieldType<number>;
280
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
281
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
282
+ }> | null, any>;
283
+ };
284
+ };
285
+ }, {
286
+ readonly flags: {
287
+ readonly exportedEnergy: true;
288
+ readonly periodicEnergy: true;
289
+ };
290
+ readonly component: {
291
+ readonly attributes: {
292
+ readonly periodicEnergyExported: import("#types").Attribute<import("#types").TypeFromFields<{
293
+ energy: import("#types").FieldType<number | bigint>;
294
+ startTimestamp: import("#types").OptionalFieldType<number>;
295
+ endTimestamp: import("#types").OptionalFieldType<number>;
296
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
297
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
298
+ }> | null, any>;
299
+ };
300
+ };
301
+ }, {
302
+ readonly flags: {
303
+ readonly cumulativeEnergy: true;
304
+ };
305
+ readonly component: {
306
+ readonly attributes: {
307
+ readonly cumulativeEnergyReset: import("#types").OptionalAttribute<import("#types").TypeFromFields<{
308
+ importedResetTimestamp: import("#types").OptionalFieldType<number | null>;
309
+ exportedResetTimestamp: import("#types").OptionalFieldType<number | null>;
310
+ importedResetSystime: import("#types").OptionalFieldType<number | bigint | null>;
311
+ exportedResetSystime: import("#types").OptionalFieldType<number | bigint | null>;
312
+ }> | null, any>;
313
+ };
314
+ readonly events: {
315
+ readonly cumulativeEnergyMeasured: import("#types").Event<import("#types").TypeFromFields<{
316
+ energyImported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
317
+ energy: import("#types").FieldType<number | bigint>;
318
+ startTimestamp: import("#types").OptionalFieldType<number>;
319
+ endTimestamp: import("#types").OptionalFieldType<number>;
320
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
321
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
322
+ }>>;
323
+ energyExported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
324
+ energy: import("#types").FieldType<number | bigint>;
325
+ startTimestamp: import("#types").OptionalFieldType<number>;
326
+ endTimestamp: import("#types").OptionalFieldType<number>;
327
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
328
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
329
+ }>>;
330
+ }>, any>;
331
+ };
332
+ };
333
+ }, {
334
+ readonly flags: {
335
+ readonly periodicEnergy: true;
336
+ };
337
+ readonly component: {
338
+ readonly events: {
339
+ readonly periodicEnergyMeasured: import("#types").Event<import("#types").TypeFromFields<{
340
+ energyImported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
341
+ energy: import("#types").FieldType<number | bigint>;
342
+ startTimestamp: import("#types").OptionalFieldType<number>;
343
+ endTimestamp: import("#types").OptionalFieldType<number>;
344
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
345
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
346
+ }>>;
347
+ energyExported: import("#types").OptionalFieldType<import("#types").TypeFromFields<{
348
+ energy: import("#types").FieldType<number | bigint>;
349
+ startTimestamp: import("#types").OptionalFieldType<number>;
350
+ endTimestamp: import("#types").OptionalFieldType<number>;
351
+ startSystime: import("#types").OptionalFieldType<number | bigint>;
352
+ endSystime: import("#types").OptionalFieldType<number | bigint>;
353
+ }>>;
354
+ }>, any>;
355
+ };
356
+ };
357
+ }, {
358
+ readonly flags: {
359
+ readonly importedEnergy: false;
360
+ readonly exportedEnergy: false;
361
+ };
362
+ readonly component: false;
363
+ }, {
364
+ readonly flags: {
365
+ readonly cumulativeEnergy: false;
366
+ readonly periodicEnergy: false;
367
+ };
368
+ readonly component: false;
369
+ }];
370
+ }>, typeof ElectricalEnergyMeasurementServerLogic, {
371
+ components: never[];
372
+ }>;
373
+ export declare class ElectricalEnergyMeasurementServer extends ElectricalEnergyMeasurementServer_base {
16
374
  }
375
+ export {};
17
376
  //# sourceMappingURL=ElectricalEnergyMeasurementServer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElectricalEnergyMeasurementServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/electrical-energy-measurement/ElectricalEnergyMeasurementServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,yEAAyE;AAEzE,OAAO,EAAE,mCAAmC,EAAE,MAAM,0CAA0C,CAAC;AAE/F;;;;;;GAMG;AACH,qBAAa,iCAAkC,SAAQ,mCAAmC;CAAG"}
1
+ {"version":3,"file":"ElectricalEnergyMeasurementServer.d.ts","sourceRoot":"","sources":["../../../../src/behaviors/electrical-energy-measurement/ElectricalEnergyMeasurementServer.ts"],"names":[],"mappings":"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"}
@@ -18,15 +18,76 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var ElectricalEnergyMeasurementServer_exports = {};
20
20
  __export(ElectricalEnergyMeasurementServer_exports, {
21
- ElectricalEnergyMeasurementServer: () => ElectricalEnergyMeasurementServer
21
+ ElectricalEnergyMeasurementServer: () => ElectricalEnergyMeasurementServer,
22
+ ElectricalEnergyMeasurementServerLogic: () => ElectricalEnergyMeasurementServerLogic
22
23
  });
23
24
  module.exports = __toCommonJS(ElectricalEnergyMeasurementServer_exports);
25
+ var import_electrical_energy_measurement = require("#clusters/electrical-energy-measurement");
26
+ var import_types = require("#types");
24
27
  var import_ElectricalEnergyMeasurementBehavior = require("./ElectricalEnergyMeasurementBehavior.js");
25
28
  /**
26
29
  * @license
27
30
  * Copyright 2022-2024 Matter.js Authors
28
31
  * SPDX-License-Identifier: Apache-2.0
29
32
  */
30
- class ElectricalEnergyMeasurementServer extends import_ElectricalEnergyMeasurementBehavior.ElectricalEnergyMeasurementBehavior {
33
+ const ElectricalEnergyMeasurementServerBase = import_ElectricalEnergyMeasurementBehavior.ElectricalEnergyMeasurementBehavior.for(
34
+ import_electrical_energy_measurement.ElectricalEnergyMeasurement.Complete
35
+ ).with(
36
+ import_electrical_energy_measurement.ElectricalEnergyMeasurement.Feature.CumulativeEnergy,
37
+ import_electrical_energy_measurement.ElectricalEnergyMeasurement.Feature.PeriodicEnergy,
38
+ import_electrical_energy_measurement.ElectricalEnergyMeasurement.Feature.ImportedEnergy,
39
+ import_electrical_energy_measurement.ElectricalEnergyMeasurement.Feature.ExportedEnergy
40
+ );
41
+ class ElectricalEnergyMeasurementServerLogic extends ElectricalEnergyMeasurementServerBase {
42
+ /**
43
+ * Convenience method to set the measurement values for the cluster in an atomic way. This method updates the
44
+ * attributes with the provided data and also sends the events for the imported and exported energy values.
45
+ */
46
+ setMeasurement(measurement) {
47
+ if (this.features.cumulativeEnergy) {
48
+ const useImported = measurement.cumulativeEnergy?.imported !== void 0 && this.features.importedEnergy;
49
+ const useExported = measurement.cumulativeEnergy?.exported !== void 0 && this.features.exportedEnergy;
50
+ if (useImported) {
51
+ this.state.cumulativeEnergyImported = measurement.cumulativeEnergy.imported;
52
+ }
53
+ if (useExported) {
54
+ this.state.cumulativeEnergyExported = measurement.cumulativeEnergy.exported;
55
+ }
56
+ if (useImported || useExported) {
57
+ this.events.cumulativeEnergyMeasured?.emit(
58
+ {
59
+ energyImported: measurement.cumulativeEnergy?.imported,
60
+ energyExported: measurement.cumulativeEnergy?.exported
61
+ },
62
+ this.context
63
+ );
64
+ }
65
+ }
66
+ if (this.features.periodicEnergy) {
67
+ const useImported = measurement.periodicEnergy?.imported !== void 0 && this.features.importedEnergy;
68
+ const useExported = measurement.periodicEnergy?.exported !== void 0 && this.features.exportedEnergy;
69
+ if (useImported) {
70
+ this.state.periodicEnergyImported = measurement.periodicEnergy.imported;
71
+ }
72
+ if (useExported) {
73
+ this.state.periodicEnergyExported = measurement.periodicEnergy.exported;
74
+ }
75
+ if (useImported || useExported) {
76
+ this.events.periodicEnergyMeasured?.emit(
77
+ {
78
+ energyImported: measurement.periodicEnergy?.imported,
79
+ energyExported: measurement.periodicEnergy?.exported
80
+ },
81
+ this.context
82
+ );
83
+ }
84
+ }
85
+ }
86
+ }
87
+ ((ElectricalEnergyMeasurementServerLogic2) => {
88
+ })(ElectricalEnergyMeasurementServerLogic || (ElectricalEnergyMeasurementServerLogic = {}));
89
+ class ElectricalEnergyMeasurementServer extends ElectricalEnergyMeasurementServerLogic.for(
90
+ (0, import_types.ClusterType)(import_electrical_energy_measurement.ElectricalEnergyMeasurement.Base)
91
+ ) {
31
92
  }
32
93
  //# sourceMappingURL=ElectricalEnergyMeasurementServer.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/behaviors/electrical-energy-measurement/ElectricalEnergyMeasurementServer.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,iDAAoD;AARpD;AAAA;AAAA;AAAA;AAAA;AAiBO,MAAM,0CAA0C,+EAAoC;AAAC;",
5
- "names": []
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,2CAA4C;AAC5C,mBAA4B;AAC5B,iDAAoD;AARpD;AAAA;AAAA;AAAA;AAAA;AAUA,MAAM,wCAAwC,+EAAoC;AAAA,EAC9E,iEAA4B;AAChC,EAAE;AAAA,EACE,iEAA4B,QAAQ;AAAA,EACpC,iEAA4B,QAAQ;AAAA,EACpC,iEAA4B,QAAQ;AAAA,EACpC,iEAA4B,QAAQ;AACxC;AAwBO,MAAM,+CAA+C,sCAAsC;AAAA;AAAA;AAAA;AAAA;AAAA,EAK9F,eAAe,aAAgD;AAC3D,QAAI,KAAK,SAAS,kBAAkB;AAChC,YAAM,cAAc,YAAY,kBAAkB,aAAa,UAAa,KAAK,SAAS;AAC1F,YAAM,cAAc,YAAY,kBAAkB,aAAa,UAAa,KAAK,SAAS;AAC1F,UAAI,aAAa;AACb,aAAK,MAAM,2BAA2B,YAAY,iBAAkB;AAAA,MACxE;AACA,UAAI,aAAa;AACb,aAAK,MAAM,2BAA2B,YAAY,iBAAkB;AAAA,MACxE;AACA,UAAI,eAAe,aAAa;AAC5B,aAAK,OAAO,0BAA0B;AAAA,UAClC;AAAA,YACI,gBAAgB,YAAY,kBAAkB;AAAA,YAC9C,gBAAgB,YAAY,kBAAkB;AAAA,UAClD;AAAA,UACA,KAAK;AAAA,QACT;AAAA,MACJ;AAAA,IACJ;AACA,QAAI,KAAK,SAAS,gBAAgB;AAC9B,YAAM,cAAc,YAAY,gBAAgB,aAAa,UAAa,KAAK,SAAS;AACxF,YAAM,cAAc,YAAY,gBAAgB,aAAa,UAAa,KAAK,SAAS;AACxF,UAAI,aAAa;AACb,aAAK,MAAM,yBAAyB,YAAY,eAAgB;AAAA,MACpE;AACA,UAAI,aAAa;AACb,aAAK,MAAM,yBAAyB,YAAY,eAAgB;AAAA,MACpE;AACA,UAAI,eAAe,aAAa;AAC5B,aAAK,OAAO,wBAAwB;AAAA,UAChC;AAAA,YACI,gBAAgB,YAAY,gBAAgB;AAAA,YAC5C,gBAAgB,YAAY,gBAAgB;AAAA,UAChD;AAAA,UACA,KAAK;AAAA,QACT;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ;AACJ;AAAA,CAEO,CAAUA,4CAAV;AAAA,GAAU;AAOV,MAAM,0CAA0C,uCAAuC;AAAA,MAC1F,0BAAY,iEAA4B,IAAI;AAChD,EAAE;AAAC;",
5
+ "names": ["ElectricalEnergyMeasurementServerLogic"]
6
6
  }
@@ -145,14 +145,14 @@ export declare const Transaction: {
145
145
  * A read-only transaction you may use without context.
146
146
  */
147
147
  ReadOnly: {
148
- "__#113515@#participants": Set<Participant>;
149
- "__#113515@#roles": Map<{}, Participant>;
150
- "__#113515@#resources": Set<Resource>;
151
- "__#113515@#status": Status;
152
- "__#113515@#waitingOn"?: Iterable<Transaction>;
153
- "__#113515@#via": string;
154
- "__#113515@#shared"?: import("#general").Observable<[]>;
155
- "__#113515@#closed"?: import("#general").Observable<[]>;
148
+ "__#113517@#participants": Set<Participant>;
149
+ "__#113517@#roles": Map<{}, Participant>;
150
+ "__#113517@#resources": Set<Resource>;
151
+ "__#113517@#status": Status;
152
+ "__#113517@#waitingOn"?: Iterable<Transaction>;
153
+ "__#113517@#via": string;
154
+ "__#113517@#shared"?: import("#general").Observable<[]>;
155
+ "__#113517@#closed"?: import("#general").Observable<[]>;
156
156
  close(): void;
157
157
  readonly via: string;
158
158
  readonly status: Status;
@@ -171,16 +171,16 @@ export declare const Transaction: {
171
171
  rollback(): Promise<void> | undefined;
172
172
  waitFor(others: Set<Transaction>): Promise<void>;
173
173
  toString(): string;
174
- "__#113515@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
175
- "__#113515@#executePreCommit"(): MaybePromise<void>;
176
- "__#113515@#executeCommit"(): MaybePromise;
177
- "__#113515@#executeCommit1"(): MaybePromise;
178
- "__#113515@#executeCommit2"(): Promise<void> | undefined;
179
- "__#113515@#executePostCommit"(participants: Participant[]): MaybePromise;
180
- "__#113515@#executeRollback"(): Promise<void> | undefined;
181
- "__#113515@#log"(...message: unknown[]): void;
182
- "__#113515@#locksChanged"(resources: Set<Resource>, how?: string): void;
183
- "__#113515@#assertAvailable"(): void;
174
+ "__#113517@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
175
+ "__#113517@#executePreCommit"(): MaybePromise<void>;
176
+ "__#113517@#executeCommit"(): MaybePromise;
177
+ "__#113517@#executeCommit1"(): MaybePromise;
178
+ "__#113517@#executeCommit2"(): Promise<void> | undefined;
179
+ "__#113517@#executePostCommit"(participants: Participant[]): MaybePromise;
180
+ "__#113517@#executeRollback"(): Promise<void> | undefined;
181
+ "__#113517@#log"(...message: unknown[]): void;
182
+ "__#113517@#locksChanged"(resources: Set<Resource>, how?: string): void;
183
+ "__#113517@#assertAvailable"(): void;
184
184
  };
185
185
  Status: typeof Status;
186
186
  [Symbol.toStringTag]: string;