using System; using System.Collections.Generic; using API.DTOs.Recommendation; using API.DTOs.Scrobbling; using API.Services.Plus; namespace API.DTOs.KavitaPlus.Metadata; #nullable enable /// /// This is AniListSeries /// public sealed record ExternalSeriesDetailDto { public string Name { get; set; } public int? AniListId { get; set; } public long? MALId { get; set; } public int? CbrId { get; set; } public IList Synonyms { get; set; } = []; public PlusMediaFormat PlusMediaFormat { get; set; } public string? SiteUrl { get; set; } public string? CoverUrl { get; set; } public IList Genres { get; set; } public IList Staff { get; set; } public IList Tags { get; set; } public string? Summary { get; set; } public ScrobbleProvider Provider { get; set; } = ScrobbleProvider.AniList; public DateTime? StartDate { get; set; } public DateTime? EndDate { get; set; } public int AverageScore { get; set; } /// AniList returns the total count of unique chapters, includes 1.1 for example public int Chapters { get; set; } /// AniList returns the total count of unique volumes, includes 1.1 for example public int Volumes { get; set; } public IList? Relations { get; set; } = []; public IList? Characters { get; set; } = []; #region Comic Only public string? Publisher { get; set; } /// /// Only from CBR for . Full metadata about issues /// public IList? ChapterDtos { get; set; } #endregion }