public class AlertExplanation { public List ScoreContributors { get; set; } = new(); public TrendContext? Trend { get; set; } public MedicationContext? MedicationContext { get; set; } public string NarrativeSummary { get; set; } = string.Empty; } public class ScoreContributor { public string Parameter { get; set; } = string.Empty; public int Points { get; set; } public string? RawValue { get; set; } public string? NormalRange { get; set; } } public class TrendContext { public string Parameter { get; set; } = string.Empty; public double PercentChange { get; set; } public TimeSpan Duration { get; set; } public string Direction { get; set; } = string.Empty; } public class MedicationContext { public string DrugName { get; set; } = string.Empty; public string Dose { get; set; } = string.Empty; public string Route { get; set; } = string.Empty; public DateTimeOffset AdministeredAt { get; set; } public string? RelevanceNote { get; set; } }