CompleteInstance: MutableCluster<{
    attributes: {
        acceptedCommandList: Attribute<.[], never>;
        attributeList: Attribute<.[], never>;
        clusterRevision: Attribute<number, never>;
        defaultNtp: Attribute<string | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstOffset: Attribute<TypeFromFields[], any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstOffsetListMaxSize: FixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        featureMap: Attribute<TypeFromPartialBitSchema, never>;
        generatedCommandList: Attribute<.[], never>;
        granularity: Attribute<TimeSynchronization.Granularity, any>;
        localTime: Attribute<number | bigint | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        ntpServerAvailable: Attribute<boolean, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpServer: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        supportsDnsResolve: FixedAttribute<boolean, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeSource: OptionalAttribute<TimeSynchronization.TimeSource, any>;
        timeZone: Attribute<TypeFromFields[], any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeZoneDatabase: FixedAttribute<TimeSynchronization.TimeZoneDatabase, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeZoneListMaxSize: FixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        trustedTimeSource: Attribute<TypeFromFields | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        utcTime: Attribute<number | bigint | null, any>;
    };
    commands: {
        setDefaultNtp: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setDstOffset: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setTimeZone: Command<TypeFromFields, TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setTrustedTimeSource: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setUtcTime: Command<TypeFromFields, void, any>;
    };
    events: {
        dstStatus: Event<TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstTableEmpty: Event<void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        missingTrustedTimeSource: Event<void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeFailure: Event<void, any>;
        timeZoneStatus: Event<TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
    };
    features: {
        ntpClient: BitFlag;
        ntpServer: BitFlag;
        timeSyncClient: BitFlag;
        timeZone: BitFlag;
    };
    id: @matter/general;
    name: "TimeSynchronization";
    revision: 2;
}, []>

Type declaration

  • Readonlyattributes: {
        acceptedCommandList: Attribute<.[], never>;
        attributeList: Attribute<.[], never>;
        clusterRevision: Attribute<number, never>;
        defaultNtp: Attribute<string | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstOffset: Attribute<TypeFromFields[], any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstOffsetListMaxSize: FixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        featureMap: Attribute<TypeFromPartialBitSchema, never>;
        generatedCommandList: Attribute<.[], never>;
        granularity: Attribute<TimeSynchronization.Granularity, any>;
        localTime: Attribute<number | bigint | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        ntpServerAvailable: Attribute<boolean, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpServer: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        supportsDnsResolve: FixedAttribute<boolean, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeSource: OptionalAttribute<TimeSynchronization.TimeSource, any>;
        timeZone: Attribute<TypeFromFields[], any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeZoneDatabase: FixedAttribute<TimeSynchronization.TimeZoneDatabase, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeZoneListMaxSize: FixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        trustedTimeSource: Attribute<TypeFromFields | null, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        utcTime: Attribute<number | bigint | null, any>;
    }
    • ReadonlyacceptedCommandList: Attribute<.[], never>
    • ReadonlyattributeList: Attribute<.[], never>
    • ReadonlyclusterRevision: Attribute<number, never>
    • ReadonlydefaultNtp: Attribute<string | null, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              ntpClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlydstOffset: Attribute<TypeFromFields[], any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlydstOffsetListMaxSize: FixedAttribute<number, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlyfeatureMap: Attribute<TypeFromPartialBitSchema, never>
    • ReadonlygeneratedCommandList: Attribute<.[], never>
    • Readonlygranularity: Attribute<TimeSynchronization.Granularity, any>
    • ReadonlylocalTime: Attribute<number | bigint | null, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlyntpServerAvailable: Attribute<boolean, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              ntpServer: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlysupportsDnsResolve: FixedAttribute<boolean, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              ntpClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlytimeSource: OptionalAttribute<TimeSynchronization.TimeSource, any>
    • ReadonlytimeZone: Attribute<TypeFromFields[], any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlytimeZoneDatabase: FixedAttribute<TimeSynchronization.TimeZoneDatabase, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlytimeZoneListMaxSize: FixedAttribute<number, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlytrustedTimeSource: Attribute<TypeFromFields | null, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeSyncClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlyutcTime: Attribute<number | bigint | null, any>
  • Readonlycommands: {
        setDefaultNtp: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                ntpClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setDstOffset: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setTimeZone: Command<TypeFromFields, TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setTrustedTimeSource: Command<TypeFromFields, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        setUtcTime: Command<TypeFromFields, void, any>;
    }
    • ReadonlysetDefaultNtp: Command<TypeFromFields, void, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              ntpClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlysetDstOffset: Command<TypeFromFields, void, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlysetTimeZone: Command<TypeFromFields, TypeFromFields, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlysetTrustedTimeSource: Command<TypeFromFields, void, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeSyncClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlysetUtcTime: Command<TypeFromFields, void, any>

      This command may be issued by Administrator to set the time. If the Commissioner does not have a valid time source, it may send a Granularity of NoTimeGranularity.

      Upon receipt of this command, the node may update its UTCTime attribute to match the time specified in the command, if the stated Granularity and TimeSource are acceptable. The node shall update its UTCTime attribute if its current Granularity is NoTimeGranularity.

      If the time is updated, the node shall also update its Granularity attribute based on the granularity specified in the command and the expected clock drift of the node. This SHOULD normally be one level lower than the stated command Granularity. It shall also update its TimeSource attribute to Admin. It shall also update its Last Known Good UTC Time as defined in Section 3.5.6.1, “Last Known Good UTC Time”.

      If the node updates its UTCTime attribute, it shall accept the command with a status code of SUCCESS. If it opts to not update its time, it shall fail the command with a cluster specific Status Code of TimeNotAccepted.

      MatterSpecification.v13.Core § 11.17.9.1

  • Readonlyevents: {
        dstStatus: Event<TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        dstTableEmpty: Event<void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        missingTrustedTimeSource: Event<void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeSyncClient: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
        timeFailure: Event<void, any>;
        timeZoneStatus: Event<TypeFromFields, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                timeZone: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList;
        };
    }
    • ReadonlydstStatus: Event<TypeFromFields, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlydstTableEmpty: Event<void, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlymissingTrustedTimeSource: Event<void, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeSyncClient: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
    • ReadonlytimeFailure: Event<void, any>

      This event shall be generated if the node has not generated a TimeFailure event in the last hour, and the node is unable to get a time from any source. This event SHOULD NOT be generated more often than once per hour.

      MatterSpecification.v13.Core § 11.17.10.4

    • ReadonlytimeZoneStatus: Event<TypeFromFields, any> & {
          isConditional: true;
          mandatoryIf: [] | [{
              timeZone: boolean;
          }];
          optional: true;
          optionalIf: [] | ConditionalFeatureList;
      }
  • Readonlyfeatures: {
        ntpClient: BitFlag;
        ntpServer: BitFlag;
        timeSyncClient: BitFlag;
        timeZone: BitFlag;
    }
    • ReadonlyntpClient: BitFlag

      NtpClient

      Allows a node to use NTP/SNTP for time synchronization.

      MatterSpecification.v13.Core § 11.17.5.2

    • ReadonlyntpServer: BitFlag

      NtpServer

      Allows a Node to host an NTP server for the network so that other Nodes can achieve a high accuracy time synchronization within the network. See Section 11.17.15, “Acting as an NTP Server”.

      MatterSpecification.v13.Core § 11.17.5.3

    • ReadonlytimeSyncClient: BitFlag

      TimeSyncClient

      This node also supports a time synchronization client and can connect to and read time from other nodes.

      MatterSpecification.v13.Core § 11.17.5.4

    • ReadonlytimeZone: BitFlag

      TimeZone

      Allows a server to translate a UTC time to a local time using the time zone and daylight savings time (DST) offsets. If a server supports the TimeZone feature, it shall support the SetTimeZone and SetDSTOffset commands, and TimeZone and DSTOffset attributes, and shall expose the local time through the LocalTime attribute.

      MatterSpecification.v13.Core § 11.17.5.1

  • Readonlyid: @matter/general
  • Readonlyname: "TimeSynchronization"
  • Readonlyrevision: 2