using ZB.MOM.WW.MxGateway.Server.Configuration;

namespace ZB.MOM.WW.MxGateway.Server.Dashboard;

public sealed record DashboardSnapshot(
    DateTimeOffset GeneratedAt,
    DateTimeOffset GatewayStartedAt,
    TimeSpan GatewayUptime,
    string GatewayStatus,
    string GatewayVersion,
    IReadOnlyList<DashboardSessionSummary> Sessions,
    IReadOnlyList<DashboardWorkerSummary> Workers,
    IReadOnlyList<DashboardMetricSummary> Metrics,
    IReadOnlyList<DashboardFaultSummary> Faults,
    IReadOnlyList<DashboardApiKeySummary> ApiKeys,
    EffectiveGatewayConfiguration Configuration,
    DashboardGalaxySummary Galaxy);
