using ScadaLink.Commons.Types.Enums;

namespace ScadaLink.Commons.Messages.Health;

public record SiteHealthReport(
    string SiteId,
    long SequenceNumber,
    DateTimeOffset ReportTimestamp,
    IReadOnlyDictionary<string, ConnectionHealth> DataConnectionStatuses,
    IReadOnlyDictionary<string, TagResolutionStatus> TagResolutionCounts,
    int ScriptErrorCount,
    int AlarmEvaluationErrorCount,
    IReadOnlyDictionary<string, int> StoreAndForwardBufferDepths,
    int DeadLetterCount,
    int DeployedInstanceCount,
    int EnabledInstanceCount,
    int DisabledInstanceCount,
    string NodeRole = "Unknown");
