using ScadaLink.Commons.Messages.Health;

namespace ScadaLink.HealthMonitoring;

/// <summary>
/// Interface for central-side health aggregation.
/// Consumed by Central UI to display site health dashboards.
/// </summary>
public interface ICentralHealthAggregator
{
    void ProcessReport(SiteHealthReport report);
    IReadOnlyDictionary<string, SiteHealthState> GetAllSiteStates();
    SiteHealthState? GetSiteState(string siteId);
}
