with with : ( < const SelectionT > ( ... selection : SelectionT ) => Of < Of < { extensions : readonly [ { component : { attributes : { availableEndpoints : FixedAttribute < EndpointNumber [] , any > ; } ; } ; flags : { setTopology : true ; } ; } , { component : { attributes : { activeEndpoints : Attribute < EndpointNumber [] , any > ; } ; } ; flags : { dynamicPowerFlow : true ; } ; } , { component : false ; flags : { dynamicPowerFlow : true ; setTopology : false ; } ; } , { component : false ; flags : { nodeTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : true ; setTopology : true ; } ; } , { component : false ; flags : { setTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : false ; setTopology : false ; treeTopology : false ; } ; } ] ; features : { dynamicPowerFlow : BitFlag ; nodeTopology : BitFlag ; setTopology : BitFlag ; treeTopology : BitFlag ; } ; id : 156 ; name : "PowerTopology" ; revision : 1 ; } > , SelectionT > ) Type declaration < const SelectionT > ( ... selection ) : Of < Of < { extensions : readonly [ { component : { attributes : { availableEndpoints : FixedAttribute < EndpointNumber [] , any > ; } ; } ; flags : { setTopology : true ; } ; } , { component : { attributes : { activeEndpoints : Attribute < EndpointNumber [] , any > ; } ; } ; flags : { dynamicPowerFlow : true ; } ; } , { component : false ; flags : { dynamicPowerFlow : true ; setTopology : false ; } ; } , { component : false ; flags : { nodeTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : true ; setTopology : true ; } ; } , { component : false ; flags : { setTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : false ; setTopology : false ; treeTopology : false ; } ; } ] ; features : { dynamicPowerFlow : BitFlag ; nodeTopology : BitFlag ; setTopology : BitFlag ; treeTopology : BitFlag ; } ; id : 156 ; name : "PowerTopology" ; revision : 1 ; } > , SelectionT > Type Parameters const SelectionT extends FeatureSelection < Of < { extensions : readonly [ { component : { attributes : { availableEndpoints : FixedAttribute < EndpointNumber [] , any > ; } ; } ; flags : { setTopology : true ; } ; } , { component : { attributes : { activeEndpoints : Attribute < EndpointNumber [] , any > ; } ; } ; flags : { dynamicPowerFlow : true ; } ; } , { component : false ; flags : { dynamicPowerFlow : true ; setTopology : false ; } ; } , { component : false ; flags : { nodeTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : true ; setTopology : true ; } ; } , { component : false ; flags : { setTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : false ; setTopology : false ; treeTopology : false ; } ; } ] ; features : { dynamicPowerFlow : BitFlag ; nodeTopology : BitFlag ; setTopology : BitFlag ; treeTopology : BitFlag ; } ; id : 156 ; name : "PowerTopology" ; revision : 1 ; } > > Returns Of < Of < { extensions : readonly [ { component : { attributes : { availableEndpoints : FixedAttribute < EndpointNumber [] , any > ; } ; } ; flags : { setTopology : true ; } ; } , { component : { attributes : { activeEndpoints : Attribute < EndpointNumber [] , any > ; } ; } ; flags : { dynamicPowerFlow : true ; } ; } , { component : false ; flags : { dynamicPowerFlow : true ; setTopology : false ; } ; } , { component : false ; flags : { nodeTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : true ; setTopology : true ; } ; } , { component : false ; flags : { setTopology : true ; treeTopology : true ; } ; } , { component : false ; flags : { nodeTopology : false ; setTopology : false ; treeTopology : false ; } ; } ] ; features : { dynamicPowerFlow : BitFlag ; nodeTopology : BitFlag ; setTopology : BitFlag ; treeTopology : BitFlag ; } ; id : 156 ; name : "PowerTopology" ; revision : 1 ; } > , SelectionT >
The Power Topology Cluster provides a mechanism for expressing how power is flowing between endpoints.
Per the Matter specification you cannot use PowerTopologyCluster without enabling certain feature combinations. You must use the with factory method to obtain a working cluster.
See
MatterSpecification.v13.Core § 11.8