This cluster supports all BooleanStateConfiguration 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>;
        alarmsActive: Attribute<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                visual: boolean;
            }, {
                audible: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>, any> & {
            isConditional: true;
            mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
            optional: true;
            optionalIf: [] | [{
                visual: boolean;
            }, {
                audible: boolean;
            }];
        };
        alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                visual: boolean;
            }, {
                audible: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                alarmSuppress: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        attributeList: Attribute<AttributeId[], never>;
        clusterRevision: Attribute<number, never>;
        currentSensitivityLevel: WritableAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                sensitivityLevel: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
            optional: true;
            optionalIf: [] | [{
                sensitivityLevel: boolean;
            }];
        };
        featureMap: Attribute<TypeFromPartialBitSchema<{
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        }>, never>;
        generatedCommandList: Attribute<CommandId[], never>;
        sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
            generalFault: BitFlag;
        }>, any>;
        supportedSensitivityLevels: FixedAttribute<number, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                sensitivityLevel: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
    }, GlobalAttributes<{
        alarmSuppress: BitFlag;
        audible: BitFlag;
        sensitivityLevel: BitFlag;
        visual: BitFlag;
    }>>;
    base: undefined;
    commands: {
        enableDisableAlarm: Command<TypeFromFields<{
            alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>>;
        }>, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                visual: boolean;
            }, {
                audible: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        suppressAlarm: Command<TypeFromFields<{
            alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>>;
        }>, void, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                alarmSuppress: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
    };
    events: {
        alarmsStateChanged: Event<TypeFromFields<{
            alarmsActive: FieldType<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>>;
            alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>>;
        }>, any> & {
            isConditional: true;
            mandatoryIf: [] | [{
                visual: boolean;
            }, {
                audible: boolean;
            }];
            optional: true;
            optionalIf: [] | ConditionalFeatureList<BitSchema>;
        };
        sensorFault: OptionalEvent<TypeFromFields<{
            sensorFault: FieldType<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>>;
        }>, any>;
    };
    extensions: undefined;
    features: {
        alarmSuppress: BitFlag;
        audible: BitFlag;
        sensitivityLevel: BitFlag;
        visual: BitFlag;
    };
    id: Branded<Branded<128, "ClusterId">, "ClusterId">;
    name: "BooleanStateConfiguration";
    revision: 1;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: Merge<{
    acceptedCommandList: Attribute<CommandId[], never>;
    alarmsActive: Attribute<TypeFromPartialBitSchema<{
        audible: BitFlag;
        visual: BitFlag;
    }>, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            visual: boolean;
        }, {
            audible: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
        audible: BitFlag;
        visual: BitFlag;
    }>, any> & {
        isConditional: true;
        mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
        optional: true;
        optionalIf: [] | [{
            visual: boolean;
        }, {
            audible: boolean;
        }];
    };
    alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
        audible: BitFlag;
        visual: BitFlag;
    }>, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            visual: boolean;
        }, {
            audible: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
        audible: BitFlag;
        visual: BitFlag;
    }>, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            alarmSuppress: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    attributeList: Attribute<AttributeId[], never>;
    clusterRevision: Attribute<number, never>;
    currentSensitivityLevel: WritableAttribute<number, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            sensitivityLevel: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
        isConditional: true;
        mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
        optional: true;
        optionalIf: [] | [{
            sensitivityLevel: boolean;
        }];
    };
    featureMap: Attribute<TypeFromPartialBitSchema<{
        alarmSuppress: BitFlag;
        audible: BitFlag;
        sensitivityLevel: BitFlag;
        visual: BitFlag;
    }>, never>;
    generatedCommandList: Attribute<CommandId[], never>;
    sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
        generalFault: BitFlag;
    }>, any>;
    supportedSensitivityLevels: FixedAttribute<number, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            sensitivityLevel: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
}, GlobalAttributes<{
    alarmSuppress: BitFlag;
    audible: BitFlag;
    sensitivityLevel: BitFlag;
    visual: BitFlag;
}>>

Type declaration

base: undefined
commands: {
    enableDisableAlarm: Command<TypeFromFields<{
        alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>>;
    }>, void, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            visual: boolean;
        }, {
            audible: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    suppressAlarm: Command<TypeFromFields<{
        alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>>;
    }>, void, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            alarmSuppress: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
}
events: {
    alarmsStateChanged: Event<TypeFromFields<{
        alarmsActive: FieldType<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>>;
        alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
            audible: BitFlag;
            visual: BitFlag;
        }>>;
    }>, any> & {
        isConditional: true;
        mandatoryIf: [] | [{
            visual: boolean;
        }, {
            audible: boolean;
        }];
        optional: true;
        optionalIf: [] | ConditionalFeatureList<BitSchema>;
    };
    sensorFault: OptionalEvent<TypeFromFields<{
        sensorFault: FieldType<TypeFromPartialBitSchema<{
            generalFault: BitFlag;
        }>>;
    }>, any>;
}

Type declaration

extensions: undefined
features: {
    alarmSuppress: BitFlag;
    audible: BitFlag;
    sensitivityLevel: BitFlag;
    visual: BitFlag;
}

Type declaration

  • ReadonlyalarmSuppress: BitFlag

    AlarmSuppress

    This feature shall indicate that the device is able to suppress the supported alarm modes, when the user acknowledges the alarm. This is intended to stop visual and/or audible alarms, when the user has become aware that the sensor is triggered, but it is no longer desired to have the alarm modes active on the device, e.g.:

    • The triggering cause have been resolved by the user, but the sensor has not yet stopped detecting the triggering cause.

    • The user is not able to address the triggering cause, but is aware of the alarm and suppress/acknowledge it be addressed at a later point.

    Acknowledge of alarms will for the remainder of this cluster be referred to as suppress.

    A suppressed alarm is still considered active and will remain so unless it is actively disabled or the triggering condition is not longer present. The action of suppressing an alarm mode is only applicable to and is intended to stop the physical alarming, e.g. emitting a sound or blinking a light; it does not impact alarm reporting in AlarmsActive.

    MatterSpecification.v13.Cluster § 1.8.4.1

  • Readonlyaudible: BitFlag

    Audible

    Supports audible alarms

  • ReadonlysensitivityLevel: BitFlag

    SensitivityLevel

    Supports ability to set sensor sensitivity

  • Readonlyvisual: BitFlag

    Visual

    Supports visual alarms

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

Methods

  • Modify elements using ElementModifier.alter.

    Type Parameters

    • const AlterationsT extends Alterations<Of<{
          attributes: {
              acceptedCommandList: Attribute<CommandId[], never>;
              alarmsActive: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
              };
              alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              attributeList: Attribute<AttributeId[], never>;
              clusterRevision: Attribute<number, never>;
              currentSensitivityLevel: WritableAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
              };
              featureMap: Attribute<TypeFromPartialBitSchema<{
                  alarmSuppress: BitFlag;
                  audible: BitFlag;
                  sensitivityLevel: BitFlag;
                  visual: BitFlag;
              }>, never>;
              generatedCommandList: Attribute<CommandId[], never>;
              sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                  generalFault: BitFlag;
              }>, any>;
              supportedSensitivityLevels: FixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          commands: {
              enableDisableAlarm: Command<TypeFromFields<{
                  alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              suppressAlarm: Command<TypeFromFields<{
                  alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          events: {
              alarmsStateChanged: Event<TypeFromFields<{
                  alarmsActive: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
                  alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              sensorFault: OptionalEvent<TypeFromFields<{
                  sensorFault: FieldType<TypeFromPartialBitSchema<{
                      generalFault: BitFlag;
                  }>>;
              }>, any>;
          };
          features: {
              alarmSuppress: BitFlag;
              audible: BitFlag;
              sensitivityLevel: BitFlag;
              visual: BitFlag;
          };
          id: Branded<128, "ClusterId">;
          name: "BooleanStateConfiguration";
          revision: 1;
      }>>

    Parameters

    Returns WithAlterations<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, AlterationsT>

  • Modify elements using ElementModifier.enable.

    Type Parameters

    • const FlagsT extends ElementFlags<Of<{
          attributes: {
              acceptedCommandList: Attribute<CommandId[], never>;
              alarmsActive: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
              };
              alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              attributeList: Attribute<AttributeId[], never>;
              clusterRevision: Attribute<number, never>;
              currentSensitivityLevel: WritableAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
              };
              featureMap: Attribute<TypeFromPartialBitSchema<{
                  alarmSuppress: BitFlag;
                  audible: BitFlag;
                  sensitivityLevel: BitFlag;
                  visual: BitFlag;
              }>, never>;
              generatedCommandList: Attribute<CommandId[], never>;
              sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                  generalFault: BitFlag;
              }>, any>;
              supportedSensitivityLevels: FixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          commands: {
              enableDisableAlarm: Command<TypeFromFields<{
                  alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              suppressAlarm: Command<TypeFromFields<{
                  alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          events: {
              alarmsStateChanged: Event<TypeFromFields<{
                  alarmsActive: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
                  alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              sensorFault: OptionalEvent<TypeFromFields<{
                  sensorFault: FieldType<TypeFromPartialBitSchema<{
                      generalFault: BitFlag;
                  }>>;
              }>, any>;
          };
          features: {
              alarmSuppress: BitFlag;
              audible: BitFlag;
              sensitivityLevel: BitFlag;
              visual: BitFlag;
          };
          id: Branded<128, "ClusterId">;
          name: "BooleanStateConfiguration";
          revision: 1;
      }>>

    Parameters

    Returns WithFlags<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, FlagsT>

  • Modify elements using ElementModifier.set.

    Type Parameters

    • const ValuesT extends {
          alarmsActive?: {
              audible?: boolean;
              visual?: boolean;
          };
          alarmsEnabled?: {
              audible?: boolean;
              visual?: boolean;
          };
          alarmsSupported?: {
              audible?: boolean;
              visual?: boolean;
          };
          alarmsSuppressed?: {
              audible?: boolean;
              visual?: boolean;
          };
          currentSensitivityLevel?: number;
          defaultSensitivityLevel?: number;
          sensorFault?: {
              generalFault?: boolean;
          };
          supportedSensitivityLevels?: number;
      }

    Parameters

    Returns WithValues<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, ValuesT>

  • Select features using ClusterComposer.compose.

    Type Parameters

    • const SelectionT extends FeatureSelection<Of<{
          attributes: {
              acceptedCommandList: Attribute<CommandId[], never>;
              alarmsActive: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
              };
              alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                  audible: BitFlag;
                  visual: BitFlag;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              attributeList: Attribute<AttributeId[], never>;
              clusterRevision: Attribute<number, never>;
              currentSensitivityLevel: WritableAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                  optional: true;
                  optionalIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
              };
              featureMap: Attribute<TypeFromPartialBitSchema<{
                  alarmSuppress: BitFlag;
                  audible: BitFlag;
                  sensitivityLevel: BitFlag;
                  visual: BitFlag;
              }>, never>;
              generatedCommandList: Attribute<CommandId[], never>;
              sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                  generalFault: BitFlag;
              }>, any>;
              supportedSensitivityLevels: FixedAttribute<number, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      sensitivityLevel: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          commands: {
              enableDisableAlarm: Command<TypeFromFields<{
                  alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              suppressAlarm: Command<TypeFromFields<{
                  alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, void, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      alarmSuppress: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
          };
          events: {
              alarmsStateChanged: Event<TypeFromFields<{
                  alarmsActive: FieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
                  alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                      audible: ...;
                      visual: ...;
                  }>>;
              }>, any> & {
                  isConditional: true;
                  mandatoryIf: [] | [{
                      visual: boolean;
                  }, {
                      audible: boolean;
                  }];
                  optional: true;
                  optionalIf: [] | ConditionalFeatureList<BitSchema>;
              };
              sensorFault: OptionalEvent<TypeFromFields<{
                  sensorFault: FieldType<TypeFromPartialBitSchema<{
                      generalFault: BitFlag;
                  }>>;
              }>, any>;
          };
          features: {
              alarmSuppress: BitFlag;
              audible: BitFlag;
              sensitivityLevel: BitFlag;
              visual: BitFlag;
          };
          id: Branded<128, "ClusterId">;
          name: "BooleanStateConfiguration";
          revision: 1;
      }>>

    Parameters

    Returns Of<Of<{
        attributes: {
            acceptedCommandList: Attribute<CommandId[], never>;
            alarmsActive: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsEnabled: OptionalAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
            };
            alarmsSupported: FixedAttribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            alarmsSuppressed: Attribute<TypeFromPartialBitSchema<{
                audible: BitFlag;
                visual: BitFlag;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            attributeList: Attribute<AttributeId[], never>;
            clusterRevision: Attribute<number, never>;
            currentSensitivityLevel: WritableAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            defaultSensitivityLevel: OptionalFixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | ConditionalFeatureList<BitSchema>;
                optional: true;
                optionalIf: [] | [{
                    sensitivityLevel: boolean;
                }];
            };
            featureMap: Attribute<TypeFromPartialBitSchema<{
                alarmSuppress: BitFlag;
                audible: BitFlag;
                sensitivityLevel: BitFlag;
                visual: BitFlag;
            }>, never>;
            generatedCommandList: Attribute<CommandId[], never>;
            sensorFault: OptionalAttribute<TypeFromPartialBitSchema<{
                generalFault: BitFlag;
            }>, any>;
            supportedSensitivityLevels: FixedAttribute<number, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    sensitivityLevel: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        commands: {
            enableDisableAlarm: Command<TypeFromFields<{
                alarmsToEnableDisable: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            suppressAlarm: Command<TypeFromFields<{
                alarmsToSuppress: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, void, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    alarmSuppress: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
        };
        events: {
            alarmsStateChanged: Event<TypeFromFields<{
                alarmsActive: FieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
                alarmsSuppressed: OptionalFieldType<TypeFromPartialBitSchema<{
                    audible: ...;
                    visual: ...;
                }>>;
            }>, any> & {
                isConditional: true;
                mandatoryIf: [] | [{
                    visual: boolean;
                }, {
                    audible: boolean;
                }];
                optional: true;
                optionalIf: [] | ConditionalFeatureList<BitSchema>;
            };
            sensorFault: OptionalEvent<TypeFromFields<{
                sensorFault: FieldType<TypeFromPartialBitSchema<{
                    generalFault: BitFlag;
                }>>;
            }>, any>;
        };
        features: {
            alarmSuppress: BitFlag;
            audible: BitFlag;
            sensitivityLevel: BitFlag;
            visual: BitFlag;
        };
        id: Branded<128, "ClusterId">;
        name: "BooleanStateConfiguration";
        revision: 1;
    }>, SelectionT>