/*
 * File: D:\shadowed-realms-mobile\ShadowedRealmsMobile\src\server\ShadowedRealms.Shared\DTOs\Combat\KingdomTrendsResponseDto.cs
 * Created: 2025-10-23
 * Last Modified: 2025-10-23
 * Description: Response DTO for kingdom-wide combat trends and analytics
 * Last Edit Notes: Individual file implementation for kingdom combat trends data
 */

namespace ShadowedRealms.Shared.DTOs.Combat
{
    /// <summary>
    /// Response DTO for kingdom-wide combat trends and analytics
    /// </summary>
    public class KingdomTrendsResponseDto
    {
        /// <summary>
        /// Kingdom ID for the trends analysis
        /// </summary>
        public int KingdomId { get; set; }

        /// <summary>
        /// Analysis time period covered
        /// </summary>
        public Dictionary<string, DateTime> AnalysisPeriod { get; set; } = new();

        /// <summary>
        /// Overall kingdom combat activity statistics
        /// </summary>
        public Dictionary<string, long> CombatActivity { get; set; } = new();

        /// <summary>
        /// Field interception usage and success rates
        /// </summary>
        public Dictionary<string, decimal> InterceptionTrends { get; set; } = new();

        /// <summary>
        /// Alliance vs alliance combat patterns
        /// </summary>
        public Dictionary<string, object> AllianceCombatPatterns { get; set; } = new();

        /// <summary>
        /// Dragon participation rates and effectiveness
        /// </summary>
        public Dictionary<string, object> DragonUsageTrends { get; set; } = new();

        /// <summary>
        /// Combat type distribution (raids, sieges, field battles)
        /// </summary>
        public Dictionary<string, long> CombatTypeDistribution { get; set; } = new();

        /// <summary>
        /// Victory/defeat ratios by player power ranges
        /// </summary>
        public Dictionary<string, decimal> PowerRangeAnalysis { get; set; } = new();

        /// <summary>
        /// Free-to-play vs spender combat effectiveness tracking
        /// </summary>
        public Dictionary<string, object> SpendingEffectivenessAnalysis { get; set; } = new();

        /// <summary>
        /// Skill-based vs premium advantage usage patterns
        /// </summary>
        public Dictionary<string, object> AdvantageUsagePatterns { get; set; } = new();

        /// <summary>
        /// Kingdom leaderboard and ranking changes
        /// </summary>
        public Dictionary<string, object> RankingTrends { get; set; } = new();

        /// <summary>
        /// Coalition formation and warfare patterns
        /// </summary>
        public Dictionary<string, object> CoalitionWarfarePatterns { get; set; } = new();

        /// <summary>
        /// Resource flow and economic impact of combat
        /// </summary>
        public Dictionary<string, long> EconomicImpact { get; set; } = new();

        /// <summary>
        /// KvK participation and performance metrics
        /// </summary>
        public Dictionary<string, object>? KvKMetrics { get; set; }

        /// <summary>
        /// Emerging combat strategies and meta shifts
        /// </summary>
        public List<Dictionary<string, object>> StrategyTrends { get; set; } = new();

        /// <summary>
        /// When trends analysis was completed
        /// </summary>
        public DateTime AnalysisCompletionTime { get; set; }

        /// <summary>
        /// Additional kingdom-wide combat analytics
        /// </summary>
        public Dictionary<string, object> KingdomAnalytics { get; set; } = new();
    }
}