@matter/protocol 0.12.2-alpha.0-20250130-d012e3082 → 0.12.2-alpha.0-20250201-eb5d40a2f

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 (49) hide show
  1. package/dist/cjs/interaction/AccessControlManager.d.ts +8 -5
  2. package/dist/cjs/interaction/AccessControlManager.d.ts.map +1 -1
  3. package/dist/cjs/interaction/AccessControlManager.js +1 -1
  4. package/dist/cjs/interaction/AccessControlManager.js.map +1 -1
  5. package/dist/cjs/interaction/AttributeDataEncoder.d.ts +8 -1
  6. package/dist/cjs/interaction/AttributeDataEncoder.d.ts.map +1 -1
  7. package/dist/cjs/interaction/AttributeDataEncoder.js.map +1 -1
  8. package/dist/cjs/interaction/InteractionMessenger.d.ts +7 -4
  9. package/dist/cjs/interaction/InteractionMessenger.d.ts.map +1 -1
  10. package/dist/cjs/interaction/InteractionMessenger.js +33 -26
  11. package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
  12. package/dist/cjs/interaction/InteractionServer.d.ts +22 -6
  13. package/dist/cjs/interaction/InteractionServer.d.ts.map +1 -1
  14. package/dist/cjs/interaction/InteractionServer.js +178 -165
  15. package/dist/cjs/interaction/InteractionServer.js.map +1 -1
  16. package/dist/cjs/interaction/ServerSubscription.d.ts +13 -3
  17. package/dist/cjs/interaction/ServerSubscription.d.ts.map +1 -1
  18. package/dist/cjs/interaction/ServerSubscription.js +121 -91
  19. package/dist/cjs/interaction/ServerSubscription.js.map +2 -2
  20. package/dist/cjs/peer/ControllerCommissioningFlow.js +7 -6
  21. package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
  22. package/dist/esm/interaction/AccessControlManager.d.ts +8 -5
  23. package/dist/esm/interaction/AccessControlManager.d.ts.map +1 -1
  24. package/dist/esm/interaction/AccessControlManager.js +8 -2
  25. package/dist/esm/interaction/AccessControlManager.js.map +1 -1
  26. package/dist/esm/interaction/AttributeDataEncoder.d.ts +8 -1
  27. package/dist/esm/interaction/AttributeDataEncoder.d.ts.map +1 -1
  28. package/dist/esm/interaction/AttributeDataEncoder.js.map +1 -1
  29. package/dist/esm/interaction/InteractionMessenger.d.ts +7 -4
  30. package/dist/esm/interaction/InteractionMessenger.d.ts.map +1 -1
  31. package/dist/esm/interaction/InteractionMessenger.js +41 -27
  32. package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
  33. package/dist/esm/interaction/InteractionServer.d.ts +22 -6
  34. package/dist/esm/interaction/InteractionServer.d.ts.map +1 -1
  35. package/dist/esm/interaction/InteractionServer.js +178 -165
  36. package/dist/esm/interaction/InteractionServer.js.map +1 -1
  37. package/dist/esm/interaction/ServerSubscription.d.ts +13 -3
  38. package/dist/esm/interaction/ServerSubscription.d.ts.map +1 -1
  39. package/dist/esm/interaction/ServerSubscription.js +121 -91
  40. package/dist/esm/interaction/ServerSubscription.js.map +2 -2
  41. package/dist/esm/peer/ControllerCommissioningFlow.js +7 -6
  42. package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
  43. package/package.json +6 -6
  44. package/src/interaction/AccessControlManager.ts +20 -8
  45. package/src/interaction/AttributeDataEncoder.ts +11 -1
  46. package/src/interaction/InteractionMessenger.ts +65 -33
  47. package/src/interaction/InteractionServer.ts +224 -188
  48. package/src/interaction/ServerSubscription.ts +155 -108
  49. package/src/peer/ControllerCommissioningFlow.ts +7 -7
@@ -261,7 +261,7 @@ class ServerSubscription extends Subscription {
261
261
  async updateSubscription() {
262
262
  const { newAttributes } = this.registerNewAttributes();
263
263
  for (const { path, attribute } of newAttributes) {
264
- const { version, value } = await this.#context.readAttribute(path, attribute);
264
+ const { version, value } = this.#context.readAttribute(path, attribute);
265
265
  this.#outstandingAttributeUpdates.set(attributePathToId(path), {
266
266
  attribute,
267
267
  path,
@@ -440,51 +440,7 @@ class ServerSubscription extends Subscription {
440
440
  await this.#sendUpdate(true);
441
441
  }
442
442
  }
443
- async sendInitialReport(messenger) {
444
- this.#updateTimer.stop();
445
- const { newAttributes, attributeErrors } = this.registerNewAttributes();
446
- const dataVersionFilterMap = new Map(
447
- this.criteria.dataVersionFilters?.map(({ path, dataVersion }) => [clusterPathToId(path), dataVersion]) ?? []
448
- );
449
- let attributesFilteredWithVersion = false;
450
- const attributes = new Array();
451
- for (const { path, attribute } of newAttributes) {
452
- try {
453
- const { value, version } = await this.#context.readAttribute(path, attribute);
454
- if (value === void 0) continue;
455
- const { nodeId, endpointId, clusterId } = path;
456
- const versionFilterValue = endpointId !== void 0 && clusterId !== void 0 ? dataVersionFilterMap.get(clusterPathToId({ nodeId, endpointId, clusterId })) : void 0;
457
- if (versionFilterValue !== void 0 && versionFilterValue === version) {
458
- attributesFilteredWithVersion = true;
459
- continue;
460
- }
461
- attributes.push({ path, value, version, schema: attribute.schema, attribute });
462
- } catch (error) {
463
- if (StatusResponseError.is(error, StatusCode.UnsupportedAccess)) {
464
- logger.warn(`Permission denied reading attribute ${this.#structure.resolveAttributeName(path)}`);
465
- } else {
466
- logger.warn(`Error reading attribute ${this.#structure.resolveAttributeName(path)}:`, error);
467
- }
468
- }
469
- }
470
- const attributeReportsPayload = attributes.map(
471
- ({ path, schema, value, version, attribute }) => ({
472
- hasFabricSensitiveData: attribute.hasFabricSensitiveData,
473
- attributeData: {
474
- path,
475
- dataVersion: version,
476
- payload: value,
477
- schema
478
- }
479
- })
480
- );
481
- attributeErrors.forEach(
482
- (attributeStatus) => attributeReportsPayload.push({
483
- hasFabricSensitiveData: false,
484
- attributeStatus
485
- })
486
- );
487
- const { newEvents, eventErrors } = this.#registerNewEvents();
443
+ async #collectInitialEventReportPayloads(newEvents) {
488
444
  let eventsFiltered = false;
489
445
  const eventReportsPayload = new Array();
490
446
  for (const { path, event } of newEvents) {
@@ -527,32 +483,98 @@ class ServerSubscription extends Subscription {
527
483
  return 0;
528
484
  }
529
485
  });
530
- if (attributes.length === 0 && !attributesFilteredWithVersion && eventReportsPayload.length === 0 && !eventsFiltered) {
486
+ return { eventReportsPayload, eventsFiltered };
487
+ }
488
+ /**
489
+ * Returns an iterator that yields the initial subscription data to be sent to the controller.
490
+ * The iterator will yield all attributes and events that match the subscription criteria.
491
+ * A thrown exception will cancel the sending process immediately.
492
+ * TODO: Streamline all this with the normal Read flow to also handle Concrete Path subscriptions with errors correctly
493
+ */
494
+ *#iterateInitialSubscriptionData(attributesToSend, eventsToSend) {
495
+ const dataVersionFilterMap = new Map(
496
+ this.criteria.dataVersionFilters?.map(({ path, dataVersion }) => [clusterPathToId(path), dataVersion]) ?? []
497
+ );
498
+ const { newAttributes, attributeErrors } = attributesToSend;
499
+ const { eventReportsPayload, eventsFiltered, eventErrors } = eventsToSend;
500
+ logger.debug(
501
+ `Initializes Subscription with ${newAttributes.length} attributes and ${eventReportsPayload.length} events.`
502
+ );
503
+ let attributesFilteredWithVersion = false;
504
+ const attributesPerCluster = /* @__PURE__ */ new Map();
505
+ for (const { path, attribute } of newAttributes) {
506
+ const { endpointId } = path;
507
+ const endpointAttributes = attributesPerCluster.get(endpointId) ?? new Array();
508
+ endpointAttributes.push({ path, attribute });
509
+ attributesPerCluster.set(endpointId, endpointAttributes);
510
+ }
511
+ let attributesCounter = 0;
512
+ for (const endpointId of attributesPerCluster.keys()) {
513
+ const endpointAttributes = attributesPerCluster.get(endpointId);
514
+ attributesPerCluster.delete(endpointId);
515
+ for (const { path, attribute, value, version } of this.#context.readEndpointAttributesForSubscription(
516
+ endpointId,
517
+ endpointAttributes
518
+ )) {
519
+ if (value === void 0) continue;
520
+ const { nodeId, endpointId: endpointId2, clusterId } = path;
521
+ const versionFilterValue = endpointId2 !== void 0 && clusterId !== void 0 ? dataVersionFilterMap.get(clusterPathToId({ nodeId, endpointId: endpointId2, clusterId })) : void 0;
522
+ if (versionFilterValue !== void 0 && versionFilterValue === version) {
523
+ attributesFilteredWithVersion = true;
524
+ continue;
525
+ }
526
+ attributesCounter++;
527
+ yield {
528
+ hasFabricSensitiveData: attribute.hasFabricSensitiveData,
529
+ attributeData: {
530
+ path,
531
+ dataVersion: version,
532
+ payload: value,
533
+ schema: attribute.schema
534
+ }
535
+ };
536
+ }
537
+ }
538
+ for (const attributeStatus of attributeErrors) {
539
+ yield {
540
+ hasFabricSensitiveData: false,
541
+ attributeStatus
542
+ };
543
+ }
544
+ if (attributesCounter === 0 && !attributesFilteredWithVersion && eventReportsPayload.length === 0 && !eventsFiltered) {
531
545
  throw new StatusResponseError(
532
546
  "Subscription failed because no attributes or events are matching the query",
533
547
  StatusCode.InvalidAction
534
548
  );
535
549
  }
536
- eventErrors.forEach(
537
- (eventStatus) => eventReportsPayload.push({
550
+ for (const eventReport of eventReportsPayload) {
551
+ yield eventReport;
552
+ }
553
+ for (const eventStatus of eventErrors) {
554
+ yield {
538
555
  hasFabricSensitiveData: false,
539
556
  eventStatus
540
- })
541
- );
542
- logger.debug(
543
- `Initialize Subscription with ${attributes.length} attributes and ${eventReportsPayload.length} events.`
544
- );
557
+ };
558
+ }
545
559
  this.#lastUpdateTimeMs = Time.nowMs();
560
+ }
561
+ async sendInitialReport(messenger) {
562
+ this.#updateTimer.stop();
563
+ const { newAttributes, attributeErrors } = this.registerNewAttributes();
564
+ const { newEvents, eventErrors } = this.#registerNewEvents();
565
+ const { eventReportsPayload, eventsFiltered } = await this.#collectInitialEventReportPayloads(newEvents);
546
566
  await messenger.sendDataReport(
547
567
  {
548
568
  suppressResponse: false,
549
569
  // we always need proper response for initial report
550
570
  subscriptionId: this.id,
551
- interactionModelRevision: Specification.INTERACTION_MODEL_REVISION,
552
- attributeReportsPayload,
553
- eventReportsPayload
571
+ interactionModelRevision: Specification.INTERACTION_MODEL_REVISION
554
572
  },
555
- this.criteria.isFabricFiltered
573
+ this.criteria.isFabricFiltered,
574
+ this.#iterateInitialSubscriptionData(
575
+ { newAttributes, attributeErrors },
576
+ { eventReportsPayload, eventsFiltered, eventErrors }
577
+ )
556
578
  );
557
579
  }
558
580
  attributeChangeListener(path, schema, version, value) {
@@ -567,16 +589,15 @@ class ServerSubscription extends Subscription {
567
589
  if (attributeListenerData === void 0) return;
568
590
  const { attribute } = attributeListenerData;
569
591
  if (attribute instanceof FabricScopedAttributeServer) {
570
- return this.#context.readAttribute(path, attribute, true).then(({ value: value2 }) => {
571
- this.#outstandingAttributeUpdates.set(attributePathToId(path), {
572
- attribute,
573
- path,
574
- schema,
575
- version,
576
- value: value2
577
- });
578
- this.#prepareDataUpdate();
592
+ const { value: value2 } = this.#context.readAttribute(path, attribute, true);
593
+ this.#outstandingAttributeUpdates.set(attributePathToId(path), {
594
+ attribute,
595
+ path,
596
+ schema,
597
+ version,
598
+ value: value2
579
599
  });
600
+ this.#prepareDataUpdate();
580
601
  }
581
602
  this.#outstandingAttributeUpdates.set(attributePathToId(path), { attribute, path, schema, version, value });
582
603
  this.#prepareDataUpdate();
@@ -630,6 +651,36 @@ class ServerSubscription extends Subscription {
630
651
  }
631
652
  await super.close();
632
653
  }
654
+ /**
655
+ * Iterates over all attributes and events that have changed since the last update and sends them to
656
+ * the controller.
657
+ * A thrown exception will cancel the sending process immediately.
658
+ */
659
+ *#iterateDataUpdate(attributes, events) {
660
+ for (const {
661
+ path,
662
+ schema,
663
+ value: payload,
664
+ version: dataVersion,
665
+ attribute: { hasFabricSensitiveData }
666
+ } of attributes) {
667
+ yield {
668
+ hasFabricSensitiveData,
669
+ attributeData: { path, dataVersion, schema, payload }
670
+ };
671
+ }
672
+ for (const {
673
+ path,
674
+ schema,
675
+ event,
676
+ data: { number: eventNumber, priority, epochTimestamp, payload }
677
+ } of events) {
678
+ yield {
679
+ hasFabricSensitiveData: event.hasFabricSensitiveData,
680
+ eventData: { path, eventNumber, priority, epochTimestamp, schema, payload }
681
+ };
682
+ }
683
+ }
633
684
  async sendUpdateMessage(attributes, events) {
634
685
  const exchange = this.#context.initiateExchange(this.peerAddress, INTERACTION_PROTOCOL_ID);
635
686
  if (exchange === void 0) return;
@@ -651,6 +702,7 @@ class ServerSubscription extends Subscription {
651
702
  interactionModelRevision: Specification.INTERACTION_MODEL_REVISION
652
703
  },
653
704
  this.criteria.isFabricFiltered,
705
+ void 0,
654
706
  !this.isClosed
655
707
  // Do not wait for ack when closed
656
708
  );
@@ -660,32 +712,10 @@ class ServerSubscription extends Subscription {
660
712
  suppressResponse: false,
661
713
  // Non-empty data reports always need to send response
662
714
  subscriptionId: this.id,
663
- interactionModelRevision: Specification.INTERACTION_MODEL_REVISION,
664
- attributeReportsPayload: attributes.map(({ path, schema, value, version, attribute }) => ({
665
- hasFabricSensitiveData: attribute.hasFabricSensitiveData,
666
- attributeData: {
667
- path,
668
- dataVersion: version,
669
- schema,
670
- payload: value
671
- }
672
- })),
673
- eventReportsPayload: events.map(({ path, schema, event, data }) => {
674
- const { number, priority, epochTimestamp, payload } = data;
675
- return {
676
- hasFabricSensitiveData: event.hasFabricSensitiveData,
677
- eventData: {
678
- path,
679
- eventNumber: number,
680
- priority,
681
- epochTimestamp,
682
- schema,
683
- payload
684
- }
685
- };
686
- })
715
+ interactionModelRevision: Specification.INTERACTION_MODEL_REVISION
687
716
  },
688
717
  this.criteria.isFabricFiltered,
718
+ this.#iterateDataUpdate(attributes, events),
689
719
  !this.isClosed
690
720
  // Do not wait for ack when closed
691
721
  );
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/interaction/ServerSubscription.ts"],
4
- "mappings": "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",
5
- "names": ["ServerSubscriptionConfig", "path", "value"]
4
+ "mappings": "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",
5
+ "names": ["ServerSubscriptionConfig", "path", "endpointId", "value"]
6
6
  }
@@ -175,12 +175,6 @@ class ControllerCommissioningFlow {
175
175
  name: "OperationalCredentials.Certificates",
176
176
  stepLogic: () => this.#certificates()
177
177
  });
178
- this.#commissioningSteps.push({
179
- stepNumber: 9,
180
- subStepNumber: 2,
181
- name: "OperationalCredentials.UpdateFabricLabel",
182
- stepLogic: () => this.#updateFabricLabel()
183
- });
184
178
  this.#commissioningSteps.push({
185
179
  stepNumber: 11,
186
180
  subStepNumber: 1,
@@ -233,6 +227,13 @@ class ControllerCommissioningFlow {
233
227
  name: "GeneralCommissioning.Complete",
234
228
  stepLogic: () => this.#completeCommissioning()
235
229
  });
230
+ this.#commissioningSteps.push({
231
+ stepNumber: 17,
232
+ // Should be allowed in Step 9, but Tasmota is not supporting this
233
+ subStepNumber: 1,
234
+ name: "OperationalCredentials.UpdateFabricLabel",
235
+ stepLogic: () => this.#updateFabricLabel()
236
+ });
236
237
  }
237
238
  #sortSteps() {
238
239
  this.#commissioningSteps.sort((a, b) => {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/peer/ControllerCommissioningFlow.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["CommissioningStepResultCode"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/protocol",
3
- "version": "0.12.2-alpha.0-20250130-d012e3082",
3
+ "version": "0.12.2-alpha.0-20250201-eb5d40a2f",
4
4
  "description": "Low-level APIs for Matter interaction",
5
5
  "keywords": [
6
6
  "iot",
@@ -40,14 +40,14 @@
40
40
  "#*": "./src/*"
41
41
  },
42
42
  "dependencies": {
43
- "@matter/general": "0.12.2-alpha.0-20250130-d012e3082",
44
- "@matter/model": "0.12.2-alpha.0-20250130-d012e3082",
45
- "@matter/types": "0.12.2-alpha.0-20250130-d012e3082",
43
+ "@matter/general": "0.12.2-alpha.0-20250201-eb5d40a2f",
44
+ "@matter/model": "0.12.2-alpha.0-20250201-eb5d40a2f",
45
+ "@matter/types": "0.12.2-alpha.0-20250201-eb5d40a2f",
46
46
  "@noble/curves": "^1.8.1"
47
47
  },
48
48
  "devDependencies": {
49
- "@matter/tools": "0.12.2-alpha.0-20250130-d012e3082",
50
- "@matter/testing": "0.12.2-alpha.0-20250130-d012e3082"
49
+ "@matter/tools": "0.12.2-alpha.0-20250201-eb5d40a2f",
50
+ "@matter/testing": "0.12.2-alpha.0-20250201-eb5d40a2f"
51
51
  },
52
52
  "files": [
53
53
  "dist/**/*",
@@ -6,8 +6,16 @@
6
6
  import { AccessControl } from "#clusters/access-control";
7
7
  import { Logger, MatterFlowError, toHex } from "#general";
8
8
  import { AccessLevel } from "#model";
9
- import { CaseAuthenticatedTag, ClusterId, FabricIndex, NodeId, StatusCode, StatusResponseError } from "#types";
10
- import { EndpointInterface } from "../endpoint/EndpointInterface.js";
9
+ import {
10
+ CaseAuthenticatedTag,
11
+ ClusterId,
12
+ DeviceTypeId,
13
+ EndpointNumber,
14
+ FabricIndex,
15
+ NodeId,
16
+ StatusCode,
17
+ StatusResponseError,
18
+ } from "#types";
11
19
  import { Fabric } from "../fabric/Fabric.js";
12
20
  import { SecureSession } from "../session/SecureSession.js";
13
21
 
@@ -21,6 +29,11 @@ export type AclList = AclEntry[];
21
29
  export type AclExtensionEntry = AccessControl.AccessControlExtension;
22
30
  export type AclExtensionList = AclExtensionEntry[];
23
31
 
32
+ export type AclEndpointContext = {
33
+ number: EndpointNumber;
34
+ deviceTypes: DeviceTypeId[];
35
+ };
36
+
24
37
  const ImplicitDefaultPaseAclEntry: AclEntry = {
25
38
  fabricIndex: FabricIndex.NO_FABRIC, // not fabric-specific
26
39
  privilege: AccessLevel.Administer,
@@ -55,7 +68,7 @@ export class AccessControlManager {
55
68
  aclList: AclList,
56
69
  aclEntry: AclEntry,
57
70
  subjectDesc: IncomingSubjectDescriptor,
58
- endpoint: EndpointInterface,
71
+ endpoint: AclEndpointContext,
59
72
  clusterId: ClusterId,
60
73
  ) => boolean = () => true;
61
74
 
@@ -65,7 +78,7 @@ export class AccessControlManager {
65
78
  aclList: AclList,
66
79
  aclEntry: AclEntry,
67
80
  subjectDesc: IncomingSubjectDescriptor,
68
- endpoint: EndpointInterface,
81
+ endpoint: AclEndpointContext,
69
82
  clusterId: ClusterId,
70
83
  ) => boolean,
71
84
  ) {
@@ -140,7 +153,7 @@ export class AccessControlManager {
140
153
  */
141
154
  allowsPrivilege(
142
155
  session: SecureSession,
143
- endpoint: EndpointInterface,
156
+ endpoint: AclEndpointContext,
144
157
  clusterId: ClusterId,
145
158
  privilege: AccessLevel,
146
159
  ): boolean {
@@ -166,7 +179,7 @@ export class AccessControlManager {
166
179
  /**
167
180
  * Determines the granted privileges for the given session, endpoint, and cluster ID and returns them.
168
181
  */
169
- getGrantedPrivileges(session: SecureSession, endpoint: EndpointInterface, clusterId: ClusterId): AccessLevel[] {
182
+ getGrantedPrivileges(session: SecureSession, endpoint: AclEndpointContext, clusterId: ClusterId): AccessLevel[] {
170
183
  const endpointId = endpoint.number;
171
184
  const fabric = session.fabric;
172
185
  const subjectDesc = this.#getIsdFromMessage(session);
@@ -258,8 +271,7 @@ export class AccessControlManager {
258
271
  continue;
259
272
  }
260
273
  // Endpoint may be specified indirectly via device type
261
- // TODO adjust to array check once we use multiple devicetypes
262
- if (targetDeviceType !== null && endpoint.deviceType !== targetDeviceType) {
274
+ if (targetDeviceType !== null && !endpoint.deviceTypes.includes(targetDeviceType)) {
263
275
  continue;
264
276
  }
265
277
  matchedTarget = true;
@@ -54,12 +54,22 @@ export type EventDataPayload = Omit<TypeFromSchema<typeof TlvEventData>, "data">
54
54
  payload: any;
55
55
  };
56
56
 
57
+ export type EventOrAttributeDataPayload = AttributeReportPayload | EventReportPayload;
58
+
59
+ /** A base type for a DataReport which removes the fields of the actual attribute or event content */
60
+ export type BaseDataReport = Omit<TypeFromSchema<typeof TlvDataReport>, "attributeReports" | "eventReports">;
61
+
57
62
  /** Type for TlvDataReport where the real data are represented with the schema and the JS value. */
58
- export type DataReportPayload = Omit<TypeFromSchema<typeof TlvDataReport>, "attributeReports" | "eventReports"> & {
63
+ export type DataReportPayload = BaseDataReport & {
59
64
  attributeReportsPayload?: AttributeReportPayload[];
60
65
  eventReportsPayload?: EventReportPayload[];
61
66
  };
62
67
 
68
+ /**
69
+ * Type for the DataReport Generator function to send all data
70
+ */
71
+ export type DataReportPayloadIterator = IterableIterator<EventOrAttributeDataPayload>;
72
+
63
73
  /** Encodes an AttributeReportPayload into a TlvStream (used for TlvAny type). */
64
74
  export function encodeAttributePayload(
65
75
  attributePayload: AttributeReportPayload,