using Newtonsoft.Json;

namespace OF_DL.Models.Dtos.Lists;

public class SubscribedOnDataDto
{
    [JsonProperty("price")] public string? Price { get; set; }

    [JsonProperty("newPrice")] public string? NewPrice { get; set; }

    [JsonProperty("regularPrice")] public string? RegularPrice { get; set; }

    [JsonProperty("subscribePrice")] public string? SubscribePrice { get; set; }

    [JsonProperty("discountPercent")] public string? DiscountPercent { get; set; }

    [JsonProperty("discountPeriod")] public string? DiscountPeriod { get; set; }

    [JsonProperty("subscribeAt")] public DateTime? SubscribeAt { get; set; }

    [JsonProperty("expiredAt")] public DateTime? ExpiredAt { get; set; }

    [JsonProperty("renewedAt")] public object RenewedAt { get; set; } = new();

    [JsonProperty("discountFinishedAt")] public object DiscountFinishedAt { get; set; } = new();

    [JsonProperty("discountStartedAt")] public object DiscountStartedAt { get; set; } = new();

    [JsonProperty("status")] public object Status { get; set; } = new();

    [JsonProperty("isMuted")] public bool? IsMuted { get; set; }

    [JsonProperty("unsubscribeReason")] public string UnsubscribeReason { get; set; } = "";

    [JsonProperty("duration")] public string Duration { get; set; } = "";

    [JsonProperty("tipsSumm")] public string? TipsSumm { get; set; }

    [JsonProperty("subscribesSumm")] public string? SubscribesSumm { get; set; }

    [JsonProperty("messagesSumm")] public string? MessagesSumm { get; set; }

    [JsonProperty("postsSumm")] public string? PostsSumm { get; set; }

    [JsonProperty("streamsSumm")] public string? StreamsSumm { get; set; }

    [JsonProperty("totalSumm")] public string? TotalSumm { get; set; }

    [JsonProperty("lastActivity")] public DateTime? LastActivity { get; set; }

    [JsonProperty("recommendations")] public int? Recommendations { get; set; }

    [JsonProperty("subscribes")] public List<object> Subscribes { get; set; } = [];
}
