Nodes should be expected to be deployed to any and all regions of the world. These global regions may have differing preferences for the units in which values are conveyed in communication to a

user. As such, Nodes that visually or audibly convey measurable values to the user need a mechanism by which they can be configured to use a user’s preferred unit.

This cluster supports an interface to a Node. It provides attributes for determining and configuring the units that a Node shall utilize when conveying values in communication to a user.

UnitLocalizationCluster supports optional features that you can enable with the UnitLocalizationCluster.with() factory method.

MatterSpecification.v13.Core § 11.5

interface Cluster {
    attributes: {};
    base: undefined;
    commands: {};
    events: {};
    extensions: readonly [{
        component: {
            attributes: {
                temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
            };
        };
        flags: {
            temperatureUnit: true;
        };
    }];
    features: {
        temperatureUnit: BitFlag;
    };
    id: Branded<45, "ClusterId">;
    name: "UnitLocalization";
    revision: 1;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: {}
base: undefined
commands: {}
events: {}
extensions: readonly [{
    component: {
        attributes: {
            temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
        };
    };
    flags: {
        temperatureUnit: true;
    };
}]
features: {
    temperatureUnit: BitFlag;
}

Type declaration

  • ReadonlytemperatureUnit: BitFlag

    TemperatureUnit

    The Node can be configured to use different units of temperature when conveying values to a user.

id: Branded<45, "ClusterId">
name
revision
supportedFeatures: {}
unknown

Methods

  • Modify elements using ElementModifier.alter.

    Type Parameters

    • const AlterationsT extends Alterations<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                  };
              };
              flags: {
                  temperatureUnit: true;
              };
          }];
          features: {
              temperatureUnit: BitFlag;
          };
          id: 45;
          name: "UnitLocalization";
          revision: 1;
      }>>

    Parameters

    Returns WithAlterations<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, AlterationsT>

  • Modify elements using ElementModifier.enable.

    Type Parameters

    • const FlagsT extends ElementFlags<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                  };
              };
              flags: {
                  temperatureUnit: true;
              };
          }];
          features: {
              temperatureUnit: BitFlag;
          };
          id: 45;
          name: "UnitLocalization";
          revision: 1;
      }>>

    Parameters

    Returns WithFlags<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, FlagsT>

  • Modify elements using ElementModifier.set.

    Type Parameters

    • const ValuesT extends {}

    Parameters

    Returns WithValues<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, ValuesT>

  • Select features using ClusterComposer.compose.

    Type Parameters

    • const SelectionT extends FeatureSelection<Of<{
          extensions: readonly [{
              component: {
                  attributes: {
                      temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                  };
              };
              flags: {
                  temperatureUnit: true;
              };
          }];
          features: {
              temperatureUnit: BitFlag;
          };
          id: 45;
          name: "UnitLocalization";
          revision: 1;
      }>>

    Parameters

    Returns Of<Of<{
        extensions: readonly [{
            component: {
                attributes: {
                    temperatureUnit: WritableAttribute<UnitLocalization.TempUnit, any>;
                };
            };
            flags: {
                temperatureUnit: true;
            };
        }];
        features: {
            temperatureUnit: BitFlag;
        };
        id: 45;
        name: "UnitLocalization";
        revision: 1;
    }>, SelectionT>