namespace QRRapidoApp.Models.ViewModels
{
    public class UpgradeViewModel
    {
        public string CurrentPlan { get; set; } = "Free";
        public decimal PremiumPrice { get; set; }
        public Dictionary<string, bool> Features { get; set; } = new();
        public int RemainingQRs { get; set; }
        public int DaysUntilAdExpiry { get; set; }
        public bool IsAdFreeActive { get; set; }
    }

    public class PremiumDashboardViewModel
    {
        public User User { get; set; } = new();
        public int QRCodesThisMonth { get; set; }
        public int TotalQRCodes { get; set; }
        public string SubscriptionStatus { get; set; } = string.Empty;
        public DateTime? NextBillingDate { get; set; }
        public List<QRCodeHistory> RecentQRCodes { get; set; } = new();
        public Dictionary<string, int> QRTypeStats { get; set; } = new();
    }

    public class AdFreeStatusViewModel
    {
        public bool IsAdFree { get; set; }
        public int TimeRemaining { get; set; } // minutes
        public bool IsPremium { get; set; }
        public DateTime? ExpiryDate { get; set; }
        public string SessionType { get; set; } = string.Empty;
    }
}