import type { UInt32 } from "node-opcua-basic-types";
import type { DataType } from "node-opcua-variant";

import type { DTServerDiagnosticsSummary } from "./dt_server_diagnostics_summary";
import type { UABaseDataVariable, UABaseDataVariable_Base } from "./ua_base_data_variable";

// ----- this file has been automatically generated - do not edit

/**
 * |                |                                                            |
 * |----------------|------------------------------------------------------------|
 * |namespace       |http://opcfoundation.org/UA/                                |
 * |nodeClass       |VariableType                                                |
 * |typedDefinition |ServerDiagnosticsSummaryType i=2150                         |
 * |dataType        |ExtensionObject                                             |
 * |dataType Name   |DTServerDiagnosticsSummary i=859                            |
 * |value rank      |-1                                                          |
 * |isAbstract      |false                                                       |
 */
export interface UAServerDiagnosticsSummary_Base<T extends DTServerDiagnosticsSummary>  extends UABaseDataVariable_Base<T, DataType.ExtensionObject> {
    serverViewCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    currentSessionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    cumulatedSessionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    securityRejectedSessionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    rejectedSessionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    sessionTimeoutCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    sessionAbortCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    publishingIntervalCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    currentSubscriptionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    cumulatedSubscriptionCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    securityRejectedRequestsCount: UABaseDataVariable<UInt32, DataType.UInt32>;
    rejectedRequestsCount: UABaseDataVariable<UInt32, DataType.UInt32>;
}
export interface UAServerDiagnosticsSummary<T extends DTServerDiagnosticsSummary> extends UABaseDataVariable<T, DataType.ExtensionObject>, UAServerDiagnosticsSummary_Base<T> {}