This cluster is derived from the Mode Base cluster, defining additional mode tags and namespaced enumerated values for Microwave Oven devices.

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

MatterSpecification.v13.Cluster § 8.12

interface Cluster {
    attributes: Merge<{
        currentMode: Attribute<number, any>;
        supportedModes: FixedAttribute<TypeFromFields<{
            label: FieldType<string>;
            mode: FieldType<number>;
            modeTags: FieldType<TypeFromFields<{
                mfgCode: OptionalFieldType<(...)>;
                value: FieldType<(...)>;
            }>[]>;
        }>[], any>;
    }, GlobalAttributes<{
        onOff: BitFlag;
    }>>;
    base: undefined;
    commands: {};
    events: {};
    extensions: readonly [];
    features: {
        onOff: BitFlag;
    };
    id: Branded<94, "ClusterId">;
    name: "MicrowaveOvenMode";
    revision: 1;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: Merge<{
    currentMode: Attribute<number, any>;
    supportedModes: FixedAttribute<TypeFromFields<{
        label: FieldType<string>;
        mode: FieldType<number>;
        modeTags: FieldType<TypeFromFields<{
            mfgCode: OptionalFieldType<(...)>;
            value: FieldType<(...)>;
        }>[]>;
    }>[], any>;
}, GlobalAttributes<{
    onOff: BitFlag;
}>>

Type declaration

base: undefined
commands: {}
events: {}
extensions: readonly []
features: {
    onOff: BitFlag;
}

Type declaration

  • ReadonlyonOff: BitFlag

    OnOff

    This feature creates a dependency between an OnOff cluster instance and this cluster instance on the same endpoint. See OnMode for more information.

    MatterSpecification.v13.Cluster § 1.10.4.1

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

Methods

  • Modify elements using ElementModifier.alter.

    Type Parameters

    • const AlterationsT extends Alterations<Of<{
          attributes: {
              currentMode: Attribute<number, any>;
              supportedModes: FixedAttribute<TypeFromFields<{
                  label: FieldType<string>;
                  mode: FieldType<number>;
                  modeTags: FieldType<TypeFromFields<(...)>[]>;
              }>[], any>;
          };
          extensions: readonly [];
          features: {
              onOff: BitFlag;
          };
          id: 94;
          name: "MicrowaveOvenMode";
          revision: 1;
      }>>

    Parameters

    Returns WithAlterations<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, AlterationsT>

  • Modify elements using ElementModifier.enable.

    Type Parameters

    • const FlagsT extends ElementFlags<Of<{
          attributes: {
              currentMode: Attribute<number, any>;
              supportedModes: FixedAttribute<TypeFromFields<{
                  label: FieldType<string>;
                  mode: FieldType<number>;
                  modeTags: FieldType<TypeFromFields<(...)>[]>;
              }>[], any>;
          };
          extensions: readonly [];
          features: {
              onOff: BitFlag;
          };
          id: 94;
          name: "MicrowaveOvenMode";
          revision: 1;
      }>>

    Parameters

    Returns WithFlags<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, FlagsT>

  • Modify elements using ElementModifier.set.

    Type Parameters

    • const ValuesT extends {
          currentMode: number;
          supportedModes: {
              label: string;
              mode: number;
              modeTags: {
                  mfgCode?: number;
                  value: number;
              }[];
          }[];
      }

    Parameters

    Returns WithValues<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, ValuesT>

  • Select features using ClusterComposer.compose.

    Type Parameters

    • const SelectionT extends FeatureSelection<Of<{
          attributes: {
              currentMode: Attribute<number, any>;
              supportedModes: FixedAttribute<TypeFromFields<{
                  label: FieldType<string>;
                  mode: FieldType<number>;
                  modeTags: FieldType<TypeFromFields<(...)>[]>;
              }>[], any>;
          };
          extensions: readonly [];
          features: {
              onOff: BitFlag;
          };
          id: 94;
          name: "MicrowaveOvenMode";
          revision: 1;
      }>>

    Parameters

    Returns Of<Of<{
        attributes: {
            currentMode: Attribute<number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        extensions: readonly [];
        features: {
            onOff: BitFlag;
        };
        id: 94;
        name: "MicrowaveOvenMode";
        revision: 1;
    }>, SelectionT>