This cluster supports all DeviceEnergyManagementMode features. It may support illegal feature combinations.

If you use this cluster you must manually specify which features are active and ensure the set of active features is legal per the Matter specification.

interface Complete {
    attributes: Merge<{
        acceptedCommandList: Attribute<CommandId[], never>;
        attributeList: Attribute<AttributeId[], never>;
        clusterRevision: Attribute<number, never>;
        currentMode: Attribute<number, any>;
        featureMap: Attribute<TypeFromPartialBitSchema<{
            onOff: BitFlag;
        }>, never>;
        generatedCommandList: Attribute<CommandId[], never>;
        onMode: WritableAttribute<null | number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                onOff: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        startUpMode: OptionalWritableAttribute<null | 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: {
        changeToMode: Command<TypeFromFields<{
            newMode: FieldType<number>;
        }>, void, any>;
    };
    events: {};
    extensions: undefined;
    features: {
        onOff: BitFlag;
    };
    id: Branded<Branded<159, "ClusterId">, "ClusterId">;
    name: "DeviceEnergyManagementMode";
    revision: 1;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentMode: Attribute<number, any>;
            featureMap: Attribute<TypeFromPartialBitSchema<{
                onOff: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            onMode: WritableAttribute<null | number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    onOff: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            startUpMode: OptionalWritableAttribute<null | number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        commands: {
            changeToMode: Command<TypeFromFields<{
                newMode: FieldType<number>;
            }>, void, any>;
        };
        features: {
            onOff: BitFlag;
        };
        id: Branded<159, "ClusterId">;
        name: "DeviceEnergyManagementMode";
        revision: 1;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentMode: Attribute<number, any>;
            featureMap: Attribute<TypeFromPartialBitSchema<{
                onOff: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            onMode: WritableAttribute<null | number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    onOff: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            startUpMode: OptionalWritableAttribute<null | number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        commands: {
            changeToMode: Command<TypeFromFields<{
                newMode: FieldType<number>;
            }>, void, any>;
        };
        features: {
            onOff: BitFlag;
        };
        id: Branded<159, "ClusterId">;
        name: "DeviceEnergyManagementMode";
        revision: 1;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentMode: Attribute<number, any>;
            featureMap: Attribute<TypeFromPartialBitSchema<{
                onOff: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            onMode: WritableAttribute<null | number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    onOff: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            startUpMode: OptionalWritableAttribute<null | number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        commands: {
            changeToMode: Command<TypeFromFields<{
                newMode: FieldType<number>;
            }>, void, any>;
        };
        features: {
            onOff: BitFlag;
        };
        id: Branded<159, "ClusterId">;
        name: "DeviceEnergyManagementMode";
        revision: 1;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentMode: Attribute<number, any>;
            featureMap: Attribute<TypeFromPartialBitSchema<{
                onOff: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            onMode: WritableAttribute<null | number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    onOff: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            startUpMode: OptionalWritableAttribute<null | number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        commands: {
            changeToMode: Command<TypeFromFields<{
                newMode: FieldType<number>;
            }>, void, any>;
        };
        features: {
            onOff: BitFlag;
        };
        id: Branded<159, "ClusterId">;
        name: "DeviceEnergyManagementMode";
        revision: 1;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: Merge<{
    acceptedCommandList: Attribute<CommandId[], never>;
    attributeList: Attribute<AttributeId[], never>;
    clusterRevision: Attribute<number, never>;
    currentMode: Attribute<number, any>;
    featureMap: Attribute<TypeFromPartialBitSchema<{
        onOff: BitFlag;
    }>, never>;
    generatedCommandList: Attribute<CommandId[], never>;
    onMode: WritableAttribute<null | number, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            onOff: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    startUpMode: OptionalWritableAttribute<null | 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: {
    changeToMode: Command<TypeFromFields<{
        newMode: FieldType<number>;
    }>, void, any>;
}

Type declaration

  • ReadonlychangeToMode: Command<TypeFromFields<{
        newMode: FieldType<number>;
    }>, void, any>

    This command is used to change device modes.

    On receipt of this command the device shall respond with a ChangeToModeResponse command.

    MatterSpecification.v13.Cluster § 1.10.7.1

events: {}
extensions: undefined
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<Branded<159, "ClusterId">, "ClusterId">
name
revision
supportedFeatures: {}
unknown

Methods

  • Modify elements using ElementModifier.set.

    Type Parameters

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

    Parameters

    Returns WithValues<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentMode: Attribute<number, any>;
            featureMap: Attribute<TypeFromPartialBitSchema<{
                onOff: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            onMode: WritableAttribute<null | number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    onOff: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            startUpMode: OptionalWritableAttribute<null | number, any>;
            supportedModes: FixedAttribute<TypeFromFields<{
                label: FieldType<string>;
                mode: FieldType<number>;
                modeTags: FieldType<TypeFromFields<(...)>[]>;
            }>[], any>;
        };
        commands: {
            changeToMode: Command<TypeFromFields<{
                newMode: FieldType<number>;
            }>, void, any>;
        };
        features: {
            onOff: BitFlag;
        };
        id: Branded<159, "ClusterId">;
        name: "DeviceEnergyManagementMode";
        revision: 1;
    }>, ValuesT>