The Thread Network Diagnostics Cluster provides a means to acquire standardized diagnostics metrics that may be used by a Node to assist a user or Administrator in diagnosing potential problems. The Thread Network Diagnostics Cluster attempts to centralize all metrics that are relevant to a potential Thread radio running on a Node.

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

MatterSpecification.v13.Core § 11.14

interface Cluster {
    attributes: Merge<{
        activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
        activeTimestamp: OptionalAttribute<null | number | bigint, any>;
        channel: Attribute<null | number, any>;
        channelPage0Mask: Attribute<null | Uint8Array, any>;
        dataVersion: Attribute<null | number, any>;
        delay: OptionalAttribute<null | number, any>;
        extendedPanId: Attribute<null | number | bigint, any>;
        leaderRouterId: Attribute<null | number, any>;
        meshLocalPrefix: Attribute<null | Uint8Array, any>;
        neighborTable: Attribute<TypeFromFields<{
            age: FieldType<number>;
            averageRssi: FieldType<null | number>;
            extAddress: FieldType<number | bigint>;
            frameErrorRate: FieldType<number>;
            fullNetworkData: FieldType<boolean>;
            fullThreadDevice: FieldType<boolean>;
            isChild: FieldType<boolean>;
            lastRssi: FieldType<null | number>;
            linkFrameCounter: FieldType<number>;
            lqi: FieldType<number>;
            messageErrorRate: FieldType<number>;
            mleFrameCounter: FieldType<number>;
            rloc16: FieldType<number>;
            rxOnWhenIdle: FieldType<boolean>;
        }>[], any>;
        networkName: Attribute<null | string, any>;
        operationalDatasetComponents: Attribute<null | TypeFromFields<{
            activeTimestampPresent: FieldType<boolean>;
            channelMaskPresent: FieldType<boolean>;
            channelPresent: FieldType<boolean>;
            delayPresent: FieldType<boolean>;
            extendedPanIdPresent: FieldType<boolean>;
            masterKeyPresent: FieldType<boolean>;
            meshLocalPrefixPresent: FieldType<boolean>;
            networkNamePresent: FieldType<boolean>;
            panIdPresent: FieldType<boolean>;
            pendingTimestampPresent: FieldType<boolean>;
            pskcPresent: FieldType<boolean>;
            securityPolicyPresent: FieldType<boolean>;
        }>, any>;
        panId: Attribute<null | number, any>;
        partitionId: Attribute<null | number, any>;
        pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
        routeTable: Attribute<TypeFromFields<{
            age: FieldType<number>;
            allocated: FieldType<boolean>;
            extAddress: FieldType<number | bigint>;
            linkEstablished: FieldType<boolean>;
            lqiIn: FieldType<number>;
            lqiOut: FieldType<number>;
            nextHop: FieldType<number>;
            pathCost: FieldType<number>;
            rloc16: FieldType<number>;
            routerId: FieldType<number>;
        }>[], any>;
        routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
        securityPolicy: Attribute<null | TypeFromFields<{
            flags: FieldType<number>;
            rotationTime: FieldType<number>;
        }>, any>;
        stableDataVersion: Attribute<null | number, any>;
        weighting: Attribute<null | number, any>;
    }, GlobalAttributes<{
        errorCounts: BitFlag;
        macCounts: BitFlag;
        mleCounts: BitFlag;
        packetCounts: BitFlag;
    }>>;
    base: undefined;
    commands: {};
    events: {
        connectionStatus: OptionalEvent<TypeFromFields<{
            connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
        }>, any>;
        networkFaultChange: OptionalEvent<TypeFromFields<{
            current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
        }>, any>;
    };
    extensions: readonly [{
        component: {
            attributes: {
                overrunCount: Attribute<number | bigint, any>;
            };
            commands: {
                resetCounts: Command<void, void, any>;
            };
        };
        flags: {
            errorCounts: true;
        };
    }, {
        component: {
            attributes: {
                attachAttemptCount: OptionalAttribute<number, any>;
                betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                childRoleCount: OptionalAttribute<number, any>;
                detachedRoleCount: OptionalAttribute<number, any>;
                leaderRoleCount: OptionalAttribute<number, any>;
                parentChangeCount: OptionalAttribute<number, any>;
                partitionIdChangeCount: OptionalAttribute<number, any>;
                routerRoleCount: OptionalAttribute<number, any>;
            };
        };
        flags: {
            mleCounts: true;
        };
    }, {
        component: {
            attributes: {
                rxAddressFilteredCount: OptionalAttribute<number, any>;
                rxBeaconCount: OptionalAttribute<number, any>;
                rxBeaconRequestCount: OptionalAttribute<number, any>;
                rxBroadcastCount: OptionalAttribute<number, any>;
                rxDataCount: OptionalAttribute<number, any>;
                rxDataPollCount: OptionalAttribute<number, any>;
                rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                rxDuplicatedCount: OptionalAttribute<number, any>;
                rxErrFcsCount: OptionalAttribute<number, any>;
                rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                rxErrNoFrameCount: OptionalAttribute<number, any>;
                rxErrOtherCount: OptionalAttribute<number, any>;
                rxErrSecCount: OptionalAttribute<number, any>;
                rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                rxOtherCount: OptionalAttribute<number, any>;
                rxTotalCount: OptionalAttribute<number, any>;
                rxUnicastCount: OptionalAttribute<number, any>;
                txAckedCount: OptionalAttribute<number, any>;
                txAckRequestedCount: OptionalAttribute<number, any>;
                txBeaconCount: OptionalAttribute<number, any>;
                txBeaconRequestCount: OptionalAttribute<number, any>;
                txBroadcastCount: OptionalAttribute<number, any>;
                txDataCount: OptionalAttribute<number, any>;
                txDataPollCount: OptionalAttribute<number, any>;
                txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                txErrAbortCount: OptionalAttribute<number, any>;
                txErrBusyChannelCount: OptionalAttribute<number, any>;
                txErrCcaCount: OptionalAttribute<number, any>;
                txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                txNoAckRequestedCount: OptionalAttribute<number, any>;
                txOtherCount: OptionalAttribute<number, any>;
                txRetryCount: OptionalAttribute<number, any>;
                txTotalCount: OptionalAttribute<number, any>;
                txUnicastCount: OptionalAttribute<number, any>;
            };
        };
        flags: {
            macCounts: true;
        };
    }];
    features: {
        errorCounts: BitFlag;
        macCounts: BitFlag;
        mleCounts: BitFlag;
        packetCounts: BitFlag;
    };
    id: Branded<53, "ClusterId">;
    name: "ThreadNetworkDiagnostics";
    revision: 2;
    supportedFeatures: {};
    unknown: false;
    alter<const AlterationsT>(alterations: AlterationsT): WithAlterations<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, AlterationsT>;
    enable<const FlagsT>(flags: FlagsT): WithFlags<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, FlagsT>;
    set<const ValuesT>(values: ValuesT): WithValues<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, ValuesT>;
    with<const SelectionT>(...selection: SelectionT): Of<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, SelectionT>;
}

Hierarchy (view full)

Properties

attributes: Merge<{
    activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
    activeTimestamp: OptionalAttribute<null | number | bigint, any>;
    channel: Attribute<null | number, any>;
    channelPage0Mask: Attribute<null | Uint8Array, any>;
    dataVersion: Attribute<null | number, any>;
    delay: OptionalAttribute<null | number, any>;
    extendedPanId: Attribute<null | number | bigint, any>;
    leaderRouterId: Attribute<null | number, any>;
    meshLocalPrefix: Attribute<null | Uint8Array, any>;
    neighborTable: Attribute<TypeFromFields<{
        age: FieldType<number>;
        averageRssi: FieldType<null | number>;
        extAddress: FieldType<number | bigint>;
        frameErrorRate: FieldType<number>;
        fullNetworkData: FieldType<boolean>;
        fullThreadDevice: FieldType<boolean>;
        isChild: FieldType<boolean>;
        lastRssi: FieldType<null | number>;
        linkFrameCounter: FieldType<number>;
        lqi: FieldType<number>;
        messageErrorRate: FieldType<number>;
        mleFrameCounter: FieldType<number>;
        rloc16: FieldType<number>;
        rxOnWhenIdle: FieldType<boolean>;
    }>[], any>;
    networkName: Attribute<null | string, any>;
    operationalDatasetComponents: Attribute<null | TypeFromFields<{
        activeTimestampPresent: FieldType<boolean>;
        channelMaskPresent: FieldType<boolean>;
        channelPresent: FieldType<boolean>;
        delayPresent: FieldType<boolean>;
        extendedPanIdPresent: FieldType<boolean>;
        masterKeyPresent: FieldType<boolean>;
        meshLocalPrefixPresent: FieldType<boolean>;
        networkNamePresent: FieldType<boolean>;
        panIdPresent: FieldType<boolean>;
        pendingTimestampPresent: FieldType<boolean>;
        pskcPresent: FieldType<boolean>;
        securityPolicyPresent: FieldType<boolean>;
    }>, any>;
    panId: Attribute<null | number, any>;
    partitionId: Attribute<null | number, any>;
    pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
    routeTable: Attribute<TypeFromFields<{
        age: FieldType<number>;
        allocated: FieldType<boolean>;
        extAddress: FieldType<number | bigint>;
        linkEstablished: FieldType<boolean>;
        lqiIn: FieldType<number>;
        lqiOut: FieldType<number>;
        nextHop: FieldType<number>;
        pathCost: FieldType<number>;
        rloc16: FieldType<number>;
        routerId: FieldType<number>;
    }>[], any>;
    routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
    securityPolicy: Attribute<null | TypeFromFields<{
        flags: FieldType<number>;
        rotationTime: FieldType<number>;
    }>, any>;
    stableDataVersion: Attribute<null | number, any>;
    weighting: Attribute<null | number, any>;
}, GlobalAttributes<{
    errorCounts: BitFlag;
    macCounts: BitFlag;
    mleCounts: BitFlag;
    packetCounts: BitFlag;
}>>

Type declaration

  • ReadonlyactiveNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>

    MatterSpecification.v13.Core § 11.14.6

  • ReadonlyactiveTimestamp: OptionalAttribute<null | number | bigint, any>

    Null when there is no dataset configured.

    MatterSpecification.v13.Core § 11.14.6.57

  • Readonlychannel: Attribute<null | number, any>

    The Channel attribute shall indicate the 802.15.4 channel number configured on the Node’s Thread interface (that is, the Active Operational Dataset’s current Channel value). A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.1

  • ReadonlychannelPage0Mask: Attribute<null | Uint8Array, any>

    The ChannelPage0Mask attribute indicates the channels within channel page 0, in the 2.4GHz ISM band. The channels are represented in most significant bit order, with bit value 1 meaning selected, bit value 0 meaning unselected. For example, the most significant bit of the left-most byte indicates channel 0. If channel 0 and channel 10 are selected, the mask would be: 80 20 00 00. Null when there is no dataset configured.

    MatterSpecification.v13.Core § 11.14.6.61

  • ReadonlydataVersion: Attribute<null | number, any>

    The DataVersion attribute shall indicate the full Network Data Version the Node currently uses. Null if not attached to a Thread network.

    MatterSpecification.v13.Core § 11.14.6.12

  • Readonlydelay: OptionalAttribute<null | number, any>

    Null when there is no dataset configured.

    MatterSpecification.v13.Core § 11.14.6.59

  • ReadonlyextendedPanId: Attribute<null | number | bigint, any>

    The ExtendedPanId attribute shall indicate the unique 64-bit identifier of the Node on the Thread network. A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.5

  • ReadonlyleaderRouterId: Attribute<null | number, any>

    The LeaderRouterId attribute shall indicate the 8-bit LeaderRouterId the Node shall attempt to utilize upon becoming a router or leader on the Thread network. Null if not attached to a Thread network.

    MatterSpecification.v13.Core § 11.14.6.14

  • ReadonlymeshLocalPrefix: Attribute<null | Uint8Array, any>

    The MeshLocalPrefix attribute shall indicate the mesh-local IPv6 prefix for the Thread network that the Node has been configured to join to. A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.6

  • ReadonlyneighborTable: Attribute<TypeFromFields<{
        age: FieldType<number>;
        averageRssi: FieldType<null | number>;
        extAddress: FieldType<number | bigint>;
        frameErrorRate: FieldType<number>;
        fullNetworkData: FieldType<boolean>;
        fullThreadDevice: FieldType<boolean>;
        isChild: FieldType<boolean>;
        lastRssi: FieldType<null | number>;
        linkFrameCounter: FieldType<number>;
        lqi: FieldType<number>;
        messageErrorRate: FieldType<number>;
        mleFrameCounter: FieldType<number>;
        rloc16: FieldType<number>;
        rxOnWhenIdle: FieldType<boolean>;
    }>[], any>

    The NeighborTable attribute shall indicate the current list of Nodes that comprise the neighbor table on the Node.

    MatterSpecification.v13.Core § 11.14.6.8

  • ReadonlynetworkName: Attribute<null | string, any>

    The NetworkName attribute shall indicate a human-readable (displayable) name for the Thread network that the Node has been configured to join to. A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.3

  • ReadonlyoperationalDatasetComponents: Attribute<null | TypeFromFields<{
        activeTimestampPresent: FieldType<boolean>;
        channelMaskPresent: FieldType<boolean>;
        channelPresent: FieldType<boolean>;
        delayPresent: FieldType<boolean>;
        extendedPanIdPresent: FieldType<boolean>;
        masterKeyPresent: FieldType<boolean>;
        meshLocalPrefixPresent: FieldType<boolean>;
        networkNamePresent: FieldType<boolean>;
        panIdPresent: FieldType<boolean>;
        pendingTimestampPresent: FieldType<boolean>;
        pskcPresent: FieldType<boolean>;
        securityPolicyPresent: FieldType<boolean>;
    }>, any>

    The OperationalDatasetComponents attribute is a collection of flags to indicate the presence of various operationally acquired values.

    MatterSpecification.v13.Core § 11.14.6.62

  • ReadonlypanId: Attribute<null | number, any>

    The PanId attribute shall indicate the 16-bit identifier of the Node on the Thread network. A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.4

  • ReadonlypartitionId: Attribute<null | number, any>

    The PartitionId attribute shall indicate the Thread Leader Partition Id for the Thread network to which the Node is joined. Null if not attached to a Thread network.

    MatterSpecification.v13.Core § 11.14.6.10

  • ReadonlypendingTimestamp: OptionalAttribute<null | number | bigint, any>

    Null when there is no dataset configured.

    MatterSpecification.v13.Core § 11.14.6.58

  • ReadonlyrouteTable: Attribute<TypeFromFields<{
        age: FieldType<number>;
        allocated: FieldType<boolean>;
        extAddress: FieldType<number | bigint>;
        linkEstablished: FieldType<boolean>;
        lqiIn: FieldType<number>;
        lqiOut: FieldType<number>;
        nextHop: FieldType<number>;
        pathCost: FieldType<number>;
        rloc16: FieldType<number>;
        routerId: FieldType<number>;
    }>[], any>

    The RouteTable attribute shall indicate the current list of router capable Nodes for which routes have been established.

    MatterSpecification.v13.Core § 11.14.6.9

  • ReadonlyroutingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>

    The RoutingRole attribute shall indicate the role that this Node has within the routing of messages through the Thread network, as defined by RoutingRoleEnum. The potential roles are defined in the following table. A value of null shall indicate that the Thread interface is not currently configured or operational.

    MatterSpecification.v13.Core § 11.14.6.2

  • ReadonlysecurityPolicy: Attribute<null | TypeFromFields<{
        flags: FieldType<number>;
        rotationTime: FieldType<number>;
    }>, any>

    The SecurityPolicy attribute indicates the current security policies for the Thread partition to which a Node is connected. Null when there is no dataset configured.

    MatterSpecification.v13.Core § 11.14.6.60

  • ReadonlystableDataVersion: Attribute<null | number, any>

    The StableDataVersion attribute shall indicate the Network Data Version for the stable subset of

    data the Node currently uses. Null if not attached to a Thread network.

    MatterSpecification.v13.Core § 11.14.6.13

  • Readonlyweighting: Attribute<null | number, any>

    The Weighting attribute shall indicate the Thread Leader Weight used when operating in the Leader role. Null if not attached to a Thread network.

    MatterSpecification.v13.Core § 11.14.6.11

base: undefined
commands: {}
events: {
    connectionStatus: OptionalEvent<TypeFromFields<{
        connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
    }>, any>;
    networkFaultChange: OptionalEvent<TypeFromFields<{
        current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
        previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
    }>, any>;
}

Type declaration

extensions: readonly [{
    component: {
        attributes: {
            overrunCount: Attribute<number | bigint, any>;
        };
        commands: {
            resetCounts: Command<void, void, any>;
        };
    };
    flags: {
        errorCounts: true;
    };
}, {
    component: {
        attributes: {
            attachAttemptCount: OptionalAttribute<number, any>;
            betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
            childRoleCount: OptionalAttribute<number, any>;
            detachedRoleCount: OptionalAttribute<number, any>;
            leaderRoleCount: OptionalAttribute<number, any>;
            parentChangeCount: OptionalAttribute<number, any>;
            partitionIdChangeCount: OptionalAttribute<number, any>;
            routerRoleCount: OptionalAttribute<number, any>;
        };
    };
    flags: {
        mleCounts: true;
    };
}, {
    component: {
        attributes: {
            rxAddressFilteredCount: OptionalAttribute<number, any>;
            rxBeaconCount: OptionalAttribute<number, any>;
            rxBeaconRequestCount: OptionalAttribute<number, any>;
            rxBroadcastCount: OptionalAttribute<number, any>;
            rxDataCount: OptionalAttribute<number, any>;
            rxDataPollCount: OptionalAttribute<number, any>;
            rxDestAddrFilteredCount: OptionalAttribute<number, any>;
            rxDuplicatedCount: OptionalAttribute<number, any>;
            rxErrFcsCount: OptionalAttribute<number, any>;
            rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
            rxErrNoFrameCount: OptionalAttribute<number, any>;
            rxErrOtherCount: OptionalAttribute<number, any>;
            rxErrSecCount: OptionalAttribute<number, any>;
            rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
            rxOtherCount: OptionalAttribute<number, any>;
            rxTotalCount: OptionalAttribute<number, any>;
            rxUnicastCount: OptionalAttribute<number, any>;
            txAckedCount: OptionalAttribute<number, any>;
            txAckRequestedCount: OptionalAttribute<number, any>;
            txBeaconCount: OptionalAttribute<number, any>;
            txBeaconRequestCount: OptionalAttribute<number, any>;
            txBroadcastCount: OptionalAttribute<number, any>;
            txDataCount: OptionalAttribute<number, any>;
            txDataPollCount: OptionalAttribute<number, any>;
            txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
            txErrAbortCount: OptionalAttribute<number, any>;
            txErrBusyChannelCount: OptionalAttribute<number, any>;
            txErrCcaCount: OptionalAttribute<number, any>;
            txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
            txNoAckRequestedCount: OptionalAttribute<number, any>;
            txOtherCount: OptionalAttribute<number, any>;
            txRetryCount: OptionalAttribute<number, any>;
            txTotalCount: OptionalAttribute<number, any>;
            txUnicastCount: OptionalAttribute<number, any>;
        };
    };
    flags: {
        macCounts: true;
    };
}]
features: {
    errorCounts: BitFlag;
    macCounts: BitFlag;
    mleCounts: BitFlag;
    packetCounts: BitFlag;
}

Type declaration

  • ReadonlyerrorCounts: BitFlag

    ErrorCounts

    Server supports the counts for the number of errors that have occurred during the reception and transmission of packets on the Thread interface.

  • ReadonlymacCounts: BitFlag

    MacCounts

    Server supports the counts for various MAC layer happenings.

  • ReadonlymleCounts: BitFlag

    MleCounts

    Server supports the counts for various MLE layer happenings.

  • ReadonlypacketCounts: BitFlag

    PacketCounts

    Server supports the counts for the number of received and transmitted packets on the Thread interface.

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

Methods

  • Modify elements using ElementModifier.alter.

    Type Parameters

    • const AlterationsT extends Alterations<Of<{
          attributes: {
              activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
              activeTimestamp: OptionalAttribute<null | number | bigint, any>;
              channel: Attribute<null | number, any>;
              channelPage0Mask: Attribute<null | Uint8Array, any>;
              dataVersion: Attribute<null | number, any>;
              delay: OptionalAttribute<null | number, any>;
              extendedPanId: Attribute<null | number | bigint, any>;
              leaderRouterId: Attribute<null | number, any>;
              meshLocalPrefix: Attribute<null | Uint8Array, any>;
              neighborTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  averageRssi: FieldType<null | number>;
                  extAddress: FieldType<number | bigint>;
                  frameErrorRate: FieldType<number>;
                  fullNetworkData: FieldType<boolean>;
                  fullThreadDevice: FieldType<boolean>;
                  isChild: FieldType<boolean>;
                  lastRssi: FieldType<null | number>;
                  linkFrameCounter: FieldType<number>;
                  lqi: FieldType<number>;
                  messageErrorRate: FieldType<number>;
                  mleFrameCounter: FieldType<number>;
                  rloc16: FieldType<number>;
                  rxOnWhenIdle: FieldType<boolean>;
              }>[], any>;
              networkName: Attribute<null | string, any>;
              operationalDatasetComponents: Attribute<null | TypeFromFields<{
                  activeTimestampPresent: FieldType<boolean>;
                  channelMaskPresent: FieldType<boolean>;
                  channelPresent: FieldType<boolean>;
                  delayPresent: FieldType<boolean>;
                  extendedPanIdPresent: FieldType<boolean>;
                  masterKeyPresent: FieldType<boolean>;
                  meshLocalPrefixPresent: FieldType<boolean>;
                  networkNamePresent: FieldType<boolean>;
                  panIdPresent: FieldType<boolean>;
                  pendingTimestampPresent: FieldType<boolean>;
                  pskcPresent: FieldType<boolean>;
                  securityPolicyPresent: FieldType<boolean>;
              }>, any>;
              panId: Attribute<null | number, any>;
              partitionId: Attribute<null | number, any>;
              pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
              routeTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  allocated: FieldType<boolean>;
                  extAddress: FieldType<number | bigint>;
                  linkEstablished: FieldType<boolean>;
                  lqiIn: FieldType<number>;
                  lqiOut: FieldType<number>;
                  nextHop: FieldType<number>;
                  pathCost: FieldType<number>;
                  rloc16: FieldType<number>;
                  routerId: FieldType<number>;
              }>[], any>;
              routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
              securityPolicy: Attribute<null | TypeFromFields<{
                  flags: FieldType<number>;
                  rotationTime: FieldType<number>;
              }>, any>;
              stableDataVersion: Attribute<null | number, any>;
              weighting: Attribute<null | number, any>;
          };
          events: {
              connectionStatus: OptionalEvent<TypeFromFields<{
                  connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
              }>, any>;
              networkFaultChange: OptionalEvent<TypeFromFields<{
                  current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                  previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
              }>, any>;
          };
          extensions: readonly [{
              component: {
                  attributes: {
                      overrunCount: Attribute<number | bigint, any>;
                  };
                  commands: {
                      resetCounts: Command<void, void, any>;
                  };
              };
              flags: {
                  errorCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      attachAttemptCount: OptionalAttribute<number, any>;
                      betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                      childRoleCount: OptionalAttribute<number, any>;
                      detachedRoleCount: OptionalAttribute<number, any>;
                      leaderRoleCount: OptionalAttribute<number, any>;
                      parentChangeCount: OptionalAttribute<number, any>;
                      partitionIdChangeCount: OptionalAttribute<number, any>;
                      routerRoleCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  mleCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      rxAddressFilteredCount: OptionalAttribute<number, any>;
                      rxBeaconCount: OptionalAttribute<number, any>;
                      rxBeaconRequestCount: OptionalAttribute<number, any>;
                      rxBroadcastCount: OptionalAttribute<number, any>;
                      rxDataCount: OptionalAttribute<number, any>;
                      rxDataPollCount: OptionalAttribute<number, any>;
                      rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                      rxDuplicatedCount: OptionalAttribute<number, any>;
                      rxErrFcsCount: OptionalAttribute<number, any>;
                      rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                      rxErrNoFrameCount: OptionalAttribute<number, any>;
                      rxErrOtherCount: OptionalAttribute<number, any>;
                      rxErrSecCount: OptionalAttribute<number, any>;
                      rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                      rxOtherCount: OptionalAttribute<number, any>;
                      rxTotalCount: OptionalAttribute<number, any>;
                      rxUnicastCount: OptionalAttribute<number, any>;
                      txAckedCount: OptionalAttribute<number, any>;
                      txAckRequestedCount: OptionalAttribute<number, any>;
                      txBeaconCount: OptionalAttribute<number, any>;
                      txBeaconRequestCount: OptionalAttribute<number, any>;
                      txBroadcastCount: OptionalAttribute<number, any>;
                      txDataCount: OptionalAttribute<number, any>;
                      txDataPollCount: OptionalAttribute<number, any>;
                      txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txErrAbortCount: OptionalAttribute<number, any>;
                      txErrBusyChannelCount: OptionalAttribute<number, any>;
                      txErrCcaCount: OptionalAttribute<number, any>;
                      txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txNoAckRequestedCount: OptionalAttribute<number, any>;
                      txOtherCount: OptionalAttribute<number, any>;
                      txRetryCount: OptionalAttribute<number, any>;
                      txTotalCount: OptionalAttribute<number, any>;
                      txUnicastCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  macCounts: true;
              };
          }];
          features: {
              errorCounts: BitFlag;
              macCounts: BitFlag;
              mleCounts: BitFlag;
              packetCounts: BitFlag;
          };
          id: 53;
          name: "ThreadNetworkDiagnostics";
          revision: 2;
      }>>

    Parameters

    Returns WithAlterations<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, AlterationsT>

  • Modify elements using ElementModifier.enable.

    Type Parameters

    • const FlagsT extends ElementFlags<Of<{
          attributes: {
              activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
              activeTimestamp: OptionalAttribute<null | number | bigint, any>;
              channel: Attribute<null | number, any>;
              channelPage0Mask: Attribute<null | Uint8Array, any>;
              dataVersion: Attribute<null | number, any>;
              delay: OptionalAttribute<null | number, any>;
              extendedPanId: Attribute<null | number | bigint, any>;
              leaderRouterId: Attribute<null | number, any>;
              meshLocalPrefix: Attribute<null | Uint8Array, any>;
              neighborTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  averageRssi: FieldType<null | number>;
                  extAddress: FieldType<number | bigint>;
                  frameErrorRate: FieldType<number>;
                  fullNetworkData: FieldType<boolean>;
                  fullThreadDevice: FieldType<boolean>;
                  isChild: FieldType<boolean>;
                  lastRssi: FieldType<null | number>;
                  linkFrameCounter: FieldType<number>;
                  lqi: FieldType<number>;
                  messageErrorRate: FieldType<number>;
                  mleFrameCounter: FieldType<number>;
                  rloc16: FieldType<number>;
                  rxOnWhenIdle: FieldType<boolean>;
              }>[], any>;
              networkName: Attribute<null | string, any>;
              operationalDatasetComponents: Attribute<null | TypeFromFields<{
                  activeTimestampPresent: FieldType<boolean>;
                  channelMaskPresent: FieldType<boolean>;
                  channelPresent: FieldType<boolean>;
                  delayPresent: FieldType<boolean>;
                  extendedPanIdPresent: FieldType<boolean>;
                  masterKeyPresent: FieldType<boolean>;
                  meshLocalPrefixPresent: FieldType<boolean>;
                  networkNamePresent: FieldType<boolean>;
                  panIdPresent: FieldType<boolean>;
                  pendingTimestampPresent: FieldType<boolean>;
                  pskcPresent: FieldType<boolean>;
                  securityPolicyPresent: FieldType<boolean>;
              }>, any>;
              panId: Attribute<null | number, any>;
              partitionId: Attribute<null | number, any>;
              pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
              routeTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  allocated: FieldType<boolean>;
                  extAddress: FieldType<number | bigint>;
                  linkEstablished: FieldType<boolean>;
                  lqiIn: FieldType<number>;
                  lqiOut: FieldType<number>;
                  nextHop: FieldType<number>;
                  pathCost: FieldType<number>;
                  rloc16: FieldType<number>;
                  routerId: FieldType<number>;
              }>[], any>;
              routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
              securityPolicy: Attribute<null | TypeFromFields<{
                  flags: FieldType<number>;
                  rotationTime: FieldType<number>;
              }>, any>;
              stableDataVersion: Attribute<null | number, any>;
              weighting: Attribute<null | number, any>;
          };
          events: {
              connectionStatus: OptionalEvent<TypeFromFields<{
                  connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
              }>, any>;
              networkFaultChange: OptionalEvent<TypeFromFields<{
                  current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                  previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
              }>, any>;
          };
          extensions: readonly [{
              component: {
                  attributes: {
                      overrunCount: Attribute<number | bigint, any>;
                  };
                  commands: {
                      resetCounts: Command<void, void, any>;
                  };
              };
              flags: {
                  errorCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      attachAttemptCount: OptionalAttribute<number, any>;
                      betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                      childRoleCount: OptionalAttribute<number, any>;
                      detachedRoleCount: OptionalAttribute<number, any>;
                      leaderRoleCount: OptionalAttribute<number, any>;
                      parentChangeCount: OptionalAttribute<number, any>;
                      partitionIdChangeCount: OptionalAttribute<number, any>;
                      routerRoleCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  mleCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      rxAddressFilteredCount: OptionalAttribute<number, any>;
                      rxBeaconCount: OptionalAttribute<number, any>;
                      rxBeaconRequestCount: OptionalAttribute<number, any>;
                      rxBroadcastCount: OptionalAttribute<number, any>;
                      rxDataCount: OptionalAttribute<number, any>;
                      rxDataPollCount: OptionalAttribute<number, any>;
                      rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                      rxDuplicatedCount: OptionalAttribute<number, any>;
                      rxErrFcsCount: OptionalAttribute<number, any>;
                      rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                      rxErrNoFrameCount: OptionalAttribute<number, any>;
                      rxErrOtherCount: OptionalAttribute<number, any>;
                      rxErrSecCount: OptionalAttribute<number, any>;
                      rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                      rxOtherCount: OptionalAttribute<number, any>;
                      rxTotalCount: OptionalAttribute<number, any>;
                      rxUnicastCount: OptionalAttribute<number, any>;
                      txAckedCount: OptionalAttribute<number, any>;
                      txAckRequestedCount: OptionalAttribute<number, any>;
                      txBeaconCount: OptionalAttribute<number, any>;
                      txBeaconRequestCount: OptionalAttribute<number, any>;
                      txBroadcastCount: OptionalAttribute<number, any>;
                      txDataCount: OptionalAttribute<number, any>;
                      txDataPollCount: OptionalAttribute<number, any>;
                      txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txErrAbortCount: OptionalAttribute<number, any>;
                      txErrBusyChannelCount: OptionalAttribute<number, any>;
                      txErrCcaCount: OptionalAttribute<number, any>;
                      txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txNoAckRequestedCount: OptionalAttribute<number, any>;
                      txOtherCount: OptionalAttribute<number, any>;
                      txRetryCount: OptionalAttribute<number, any>;
                      txTotalCount: OptionalAttribute<number, any>;
                      txUnicastCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  macCounts: true;
              };
          }];
          features: {
              errorCounts: BitFlag;
              macCounts: BitFlag;
              mleCounts: BitFlag;
              packetCounts: BitFlag;
          };
          id: 53;
          name: "ThreadNetworkDiagnostics";
          revision: 2;
      }>>

    Parameters

    Returns WithFlags<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, FlagsT>

  • Modify elements using ElementModifier.set.

    Type Parameters

    • const ValuesT extends {
          activeNetworkFaultsList: number[];
          activeTimestamp?: null | number | bigint;
          channel: null | number;
          channelPage0Mask: null | {};
          dataVersion: null | number;
          delay?: null | number;
          extendedPanId: null | number | bigint;
          leaderRouterId: null | number;
          meshLocalPrefix: null | {};
          neighborTable: {
              age: number;
              averageRssi: null | number;
              extAddress: number | bigint;
              frameErrorRate: number;
              fullNetworkData: boolean;
              fullThreadDevice: boolean;
              isChild: boolean;
              lastRssi: null | number;
              linkFrameCounter: number;
              lqi: number;
              messageErrorRate: number;
              mleFrameCounter: number;
              rloc16: number;
              rxOnWhenIdle: boolean;
          }[];
          networkName: null | string;
          operationalDatasetComponents: null | {
              activeTimestampPresent: boolean;
              channelMaskPresent: boolean;
              channelPresent: boolean;
              delayPresent: boolean;
              extendedPanIdPresent: boolean;
              masterKeyPresent: boolean;
              meshLocalPrefixPresent: boolean;
              networkNamePresent: boolean;
              panIdPresent: boolean;
              pendingTimestampPresent: boolean;
              pskcPresent: boolean;
              securityPolicyPresent: boolean;
          };
          panId: null | number;
          partitionId: null | number;
          pendingTimestamp?: null | number | bigint;
          routeTable: {
              age: number;
              allocated: boolean;
              extAddress: number | bigint;
              linkEstablished: boolean;
              lqiIn: number;
              lqiOut: number;
              nextHop: number;
              pathCost: number;
              rloc16: number;
              routerId: number;
          }[];
          routingRole: null | number;
          securityPolicy: null | {
              flags: number;
              rotationTime: number;
          };
          stableDataVersion: null | number;
          weighting: null | number;
      }

    Parameters

    Returns WithValues<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, ValuesT>

  • Select features using ClusterComposer.compose.

    Type Parameters

    • const SelectionT extends FeatureSelection<Of<{
          attributes: {
              activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
              activeTimestamp: OptionalAttribute<null | number | bigint, any>;
              channel: Attribute<null | number, any>;
              channelPage0Mask: Attribute<null | Uint8Array, any>;
              dataVersion: Attribute<null | number, any>;
              delay: OptionalAttribute<null | number, any>;
              extendedPanId: Attribute<null | number | bigint, any>;
              leaderRouterId: Attribute<null | number, any>;
              meshLocalPrefix: Attribute<null | Uint8Array, any>;
              neighborTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  averageRssi: FieldType<null | number>;
                  extAddress: FieldType<number | bigint>;
                  frameErrorRate: FieldType<number>;
                  fullNetworkData: FieldType<boolean>;
                  fullThreadDevice: FieldType<boolean>;
                  isChild: FieldType<boolean>;
                  lastRssi: FieldType<null | number>;
                  linkFrameCounter: FieldType<number>;
                  lqi: FieldType<number>;
                  messageErrorRate: FieldType<number>;
                  mleFrameCounter: FieldType<number>;
                  rloc16: FieldType<number>;
                  rxOnWhenIdle: FieldType<boolean>;
              }>[], any>;
              networkName: Attribute<null | string, any>;
              operationalDatasetComponents: Attribute<null | TypeFromFields<{
                  activeTimestampPresent: FieldType<boolean>;
                  channelMaskPresent: FieldType<boolean>;
                  channelPresent: FieldType<boolean>;
                  delayPresent: FieldType<boolean>;
                  extendedPanIdPresent: FieldType<boolean>;
                  masterKeyPresent: FieldType<boolean>;
                  meshLocalPrefixPresent: FieldType<boolean>;
                  networkNamePresent: FieldType<boolean>;
                  panIdPresent: FieldType<boolean>;
                  pendingTimestampPresent: FieldType<boolean>;
                  pskcPresent: FieldType<boolean>;
                  securityPolicyPresent: FieldType<boolean>;
              }>, any>;
              panId: Attribute<null | number, any>;
              partitionId: Attribute<null | number, any>;
              pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
              routeTable: Attribute<TypeFromFields<{
                  age: FieldType<number>;
                  allocated: FieldType<boolean>;
                  extAddress: FieldType<number | bigint>;
                  linkEstablished: FieldType<boolean>;
                  lqiIn: FieldType<number>;
                  lqiOut: FieldType<number>;
                  nextHop: FieldType<number>;
                  pathCost: FieldType<number>;
                  rloc16: FieldType<number>;
                  routerId: FieldType<number>;
              }>[], any>;
              routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
              securityPolicy: Attribute<null | TypeFromFields<{
                  flags: FieldType<number>;
                  rotationTime: FieldType<number>;
              }>, any>;
              stableDataVersion: Attribute<null | number, any>;
              weighting: Attribute<null | number, any>;
          };
          events: {
              connectionStatus: OptionalEvent<TypeFromFields<{
                  connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
              }>, any>;
              networkFaultChange: OptionalEvent<TypeFromFields<{
                  current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                  previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
              }>, any>;
          };
          extensions: readonly [{
              component: {
                  attributes: {
                      overrunCount: Attribute<number | bigint, any>;
                  };
                  commands: {
                      resetCounts: Command<void, void, any>;
                  };
              };
              flags: {
                  errorCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      attachAttemptCount: OptionalAttribute<number, any>;
                      betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                      childRoleCount: OptionalAttribute<number, any>;
                      detachedRoleCount: OptionalAttribute<number, any>;
                      leaderRoleCount: OptionalAttribute<number, any>;
                      parentChangeCount: OptionalAttribute<number, any>;
                      partitionIdChangeCount: OptionalAttribute<number, any>;
                      routerRoleCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  mleCounts: true;
              };
          }, {
              component: {
                  attributes: {
                      rxAddressFilteredCount: OptionalAttribute<number, any>;
                      rxBeaconCount: OptionalAttribute<number, any>;
                      rxBeaconRequestCount: OptionalAttribute<number, any>;
                      rxBroadcastCount: OptionalAttribute<number, any>;
                      rxDataCount: OptionalAttribute<number, any>;
                      rxDataPollCount: OptionalAttribute<number, any>;
                      rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                      rxDuplicatedCount: OptionalAttribute<number, any>;
                      rxErrFcsCount: OptionalAttribute<number, any>;
                      rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                      rxErrNoFrameCount: OptionalAttribute<number, any>;
                      rxErrOtherCount: OptionalAttribute<number, any>;
                      rxErrSecCount: OptionalAttribute<number, any>;
                      rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                      rxOtherCount: OptionalAttribute<number, any>;
                      rxTotalCount: OptionalAttribute<number, any>;
                      rxUnicastCount: OptionalAttribute<number, any>;
                      txAckedCount: OptionalAttribute<number, any>;
                      txAckRequestedCount: OptionalAttribute<number, any>;
                      txBeaconCount: OptionalAttribute<number, any>;
                      txBeaconRequestCount: OptionalAttribute<number, any>;
                      txBroadcastCount: OptionalAttribute<number, any>;
                      txDataCount: OptionalAttribute<number, any>;
                      txDataPollCount: OptionalAttribute<number, any>;
                      txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txErrAbortCount: OptionalAttribute<number, any>;
                      txErrBusyChannelCount: OptionalAttribute<number, any>;
                      txErrCcaCount: OptionalAttribute<number, any>;
                      txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                      txNoAckRequestedCount: OptionalAttribute<number, any>;
                      txOtherCount: OptionalAttribute<number, any>;
                      txRetryCount: OptionalAttribute<number, any>;
                      txTotalCount: OptionalAttribute<number, any>;
                      txUnicastCount: OptionalAttribute<number, any>;
                  };
              };
              flags: {
                  macCounts: true;
              };
          }];
          features: {
              errorCounts: BitFlag;
              macCounts: BitFlag;
              mleCounts: BitFlag;
              packetCounts: BitFlag;
          };
          id: 53;
          name: "ThreadNetworkDiagnostics";
          revision: 2;
      }>>

    Parameters

    Returns Of<Of<{
        attributes: {
            activeNetworkFaultsList: Attribute<ThreadNetworkDiagnostics.NetworkFault[], any>;
            activeTimestamp: OptionalAttribute<null | number | bigint, any>;
            channel: Attribute<null | number, any>;
            channelPage0Mask: Attribute<null | Uint8Array, any>;
            dataVersion: Attribute<null | number, any>;
            delay: OptionalAttribute<null | number, any>;
            extendedPanId: Attribute<null | number | bigint, any>;
            leaderRouterId: Attribute<null | number, any>;
            meshLocalPrefix: Attribute<null | Uint8Array, any>;
            neighborTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                averageRssi: FieldType<null | number>;
                extAddress: FieldType<number | bigint>;
                frameErrorRate: FieldType<number>;
                fullNetworkData: FieldType<boolean>;
                fullThreadDevice: FieldType<boolean>;
                isChild: FieldType<boolean>;
                lastRssi: FieldType<null | number>;
                linkFrameCounter: FieldType<number>;
                lqi: FieldType<number>;
                messageErrorRate: FieldType<number>;
                mleFrameCounter: FieldType<number>;
                rloc16: FieldType<number>;
                rxOnWhenIdle: FieldType<boolean>;
            }>[], any>;
            networkName: Attribute<null | string, any>;
            operationalDatasetComponents: Attribute<null | TypeFromFields<{
                activeTimestampPresent: FieldType<boolean>;
                channelMaskPresent: FieldType<boolean>;
                channelPresent: FieldType<boolean>;
                delayPresent: FieldType<boolean>;
                extendedPanIdPresent: FieldType<boolean>;
                masterKeyPresent: FieldType<boolean>;
                meshLocalPrefixPresent: FieldType<boolean>;
                networkNamePresent: FieldType<boolean>;
                panIdPresent: FieldType<boolean>;
                pendingTimestampPresent: FieldType<boolean>;
                pskcPresent: FieldType<boolean>;
                securityPolicyPresent: FieldType<boolean>;
            }>, any>;
            panId: Attribute<null | number, any>;
            partitionId: Attribute<null | number, any>;
            pendingTimestamp: OptionalAttribute<null | number | bigint, any>;
            routeTable: Attribute<TypeFromFields<{
                age: FieldType<number>;
                allocated: FieldType<boolean>;
                extAddress: FieldType<number | bigint>;
                linkEstablished: FieldType<boolean>;
                lqiIn: FieldType<number>;
                lqiOut: FieldType<number>;
                nextHop: FieldType<number>;
                pathCost: FieldType<number>;
                rloc16: FieldType<number>;
                routerId: FieldType<number>;
            }>[], any>;
            routingRole: Attribute<null | ThreadNetworkDiagnostics.RoutingRole, any>;
            securityPolicy: Attribute<null | TypeFromFields<{
                flags: FieldType<number>;
                rotationTime: FieldType<number>;
            }>, any>;
            stableDataVersion: Attribute<null | number, any>;
            weighting: Attribute<null | number, any>;
        };
        events: {
            connectionStatus: OptionalEvent<TypeFromFields<{
                connectionStatus: FieldType<ThreadNetworkDiagnostics.ConnectionStatus>;
            }>, any>;
            networkFaultChange: OptionalEvent<TypeFromFields<{
                current: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
                previous: FieldType<ThreadNetworkDiagnostics.NetworkFault[]>;
            }>, any>;
        };
        extensions: readonly [{
            component: {
                attributes: {
                    overrunCount: Attribute<number | bigint, any>;
                };
                commands: {
                    resetCounts: Command<void, void, any>;
                };
            };
            flags: {
                errorCounts: true;
            };
        }, {
            component: {
                attributes: {
                    attachAttemptCount: OptionalAttribute<number, any>;
                    betterPartitionAttachAttemptCount: OptionalAttribute<number, any>;
                    childRoleCount: OptionalAttribute<number, any>;
                    detachedRoleCount: OptionalAttribute<number, any>;
                    leaderRoleCount: OptionalAttribute<number, any>;
                    parentChangeCount: OptionalAttribute<number, any>;
                    partitionIdChangeCount: OptionalAttribute<number, any>;
                    routerRoleCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                mleCounts: true;
            };
        }, {
            component: {
                attributes: {
                    rxAddressFilteredCount: OptionalAttribute<number, any>;
                    rxBeaconCount: OptionalAttribute<number, any>;
                    rxBeaconRequestCount: OptionalAttribute<number, any>;
                    rxBroadcastCount: OptionalAttribute<number, any>;
                    rxDataCount: OptionalAttribute<number, any>;
                    rxDataPollCount: OptionalAttribute<number, any>;
                    rxDestAddrFilteredCount: OptionalAttribute<number, any>;
                    rxDuplicatedCount: OptionalAttribute<number, any>;
                    rxErrFcsCount: OptionalAttribute<number, any>;
                    rxErrInvalidSrcAddrCount: OptionalAttribute<number, any>;
                    rxErrNoFrameCount: OptionalAttribute<number, any>;
                    rxErrOtherCount: OptionalAttribute<number, any>;
                    rxErrSecCount: OptionalAttribute<number, any>;
                    rxErrUnknownNeighborCount: OptionalAttribute<number, any>;
                    rxOtherCount: OptionalAttribute<number, any>;
                    rxTotalCount: OptionalAttribute<number, any>;
                    rxUnicastCount: OptionalAttribute<number, any>;
                    txAckedCount: OptionalAttribute<number, any>;
                    txAckRequestedCount: OptionalAttribute<number, any>;
                    txBeaconCount: OptionalAttribute<number, any>;
                    txBeaconRequestCount: OptionalAttribute<number, any>;
                    txBroadcastCount: OptionalAttribute<number, any>;
                    txDataCount: OptionalAttribute<number, any>;
                    txDataPollCount: OptionalAttribute<number, any>;
                    txDirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txErrAbortCount: OptionalAttribute<number, any>;
                    txErrBusyChannelCount: OptionalAttribute<number, any>;
                    txErrCcaCount: OptionalAttribute<number, any>;
                    txIndirectMaxRetryExpiryCount: OptionalAttribute<number, any>;
                    txNoAckRequestedCount: OptionalAttribute<number, any>;
                    txOtherCount: OptionalAttribute<number, any>;
                    txRetryCount: OptionalAttribute<number, any>;
                    txTotalCount: OptionalAttribute<number, any>;
                    txUnicastCount: OptionalAttribute<number, any>;
                };
            };
            flags: {
                macCounts: true;
            };
        }];
        features: {
            errorCounts: BitFlag;
            macCounts: BitFlag;
            mleCounts: BitFlag;
            packetCounts: BitFlag;
        };
        id: 53;
        name: "ThreadNetworkDiagnostics";
        revision: 2;
    }>, SelectionT>