This defines conformance to the Window Covering device type.

WindowCoveringDevice requires WindowCovering cluster but WindowCovering is not added by default because you must select the features your device supports. You can add manually using WindowCoveringDevice.with().

MatterSpecification.v13.Device § 8.3

interface WindowCoveringDevice {
    behaviors: {
        identify: typeof IdentifyServer;
    } & {
        identify: typeof IdentifyServer;
    };
    defaults: StateOf<{
        identify: typeof IdentifyServer;
    }>;
    deviceClass: DeviceClassification;
    deviceRevision: number;
    deviceType: DeviceTypeId;
    name: "WindowCovering";
    requirements: typeof WindowCoveringRequirements;
    set(defaults: InputStateOf<{
        identify: typeof IdentifyServer;
    }>): With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        };
        deviceRevision: 3;
        deviceType: 514;
        name: "WindowCovering";
        requirements: typeof WindowCoveringRequirements;
    }>, {
        identify: typeof IdentifyServer;
    }>;
    with<const BL>(...behaviors: BL): With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        };
        deviceRevision: 3;
        deviceType: 514;
        name: "WindowCovering";
        requirements: typeof WindowCoveringRequirements;
    }>, With<{
        identify: typeof IdentifyServer;
    }, BL>>;
}

Hierarchy (view full)

Properties

behaviors: {
    identify: typeof IdentifyServer;
} & {
    identify: typeof IdentifyServer;
}
defaults: StateOf<{
    identify: typeof IdentifyServer;
}>

Access default state values.

deviceRevision: number
deviceType: DeviceTypeId
name
requirements: typeof WindowCoveringRequirements

Methods

  • Define an endpoint like this one with different defaults. Only updates values present in the input object.

    Parameters

    • defaults: InputStateOf<{
          identify: typeof IdentifyServer;
      }>

    Returns With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        };
        deviceRevision: 3;
        deviceType: 514;
        name: "WindowCovering";
        requirements: typeof WindowCoveringRequirements;
    }>, {
        identify: typeof IdentifyServer;
    }>

  • Define an endpoint like this one with additional and/or replacement server behaviors.

    Type Parameters

    • const BL extends List

    Parameters

    • Rest...behaviors: BL

    Returns With<For<{
        behaviors: {
            identify: typeof IdentifyServer;
        };
        deviceRevision: 3;
        deviceType: 514;
        name: "WindowCovering";
        requirements: typeof WindowCoveringRequirements;
    }>, With<{
        identify: typeof IdentifyServer;
    }, BL>>