using System.Collections.Generic; namespace JobTrackerApi.Models { // Read-only analytics/statistics response DTOs. Extracted from // JobApplicationsController so the aggregation logic can live in AnalyticsService. public sealed record JobStats( int Total, int Active, int Deleted, Dictionary ByStatus, int AppliedLast30Days, double AverageDaysSinceApplied ); public sealed record FunnelStagePoint(string Label, int Count); public sealed record ResponseRatePoint(string Label, int Total, int Responses, double Rate); public sealed record CompanyActivityPoint(int CompanyId, string Company, int Count, int Responses, double ResponseRate); public sealed record AnalyticsOverviewDto( List Funnel, List ResponseRateBySource, List TopCompanies, double? MedianDaysToFirstResponse, int TotalResponses, int TotalActive ); }