using TeleWave.Domain.Library; using TeleWave.Domain.Media; namespace TeleWave.Application.Library; public sealed record ShowSummaryDto( Guid Id, string Name, ShowKind Kind, int EpisodeCount, int SeasonCount, int? Year, bool HasPoster, DateTimeOffset CreatedAt ); public sealed record EpisodeDto( Guid Id, Guid MediaAssetId, int Position, string? AssetName, MediaAssetStatus? AssetStatus, double? DurationSeconds, int? Season, int? Episode, string? Title, string? Overview, Guid? StillImageId, DateOnly? AirDate ); public sealed record ShowDto( Guid Id, string Name, string? OriginalName, ShowKind Kind, string? Description, string? MetadataProvider, string? MetadataExternalId, int? Year, Guid? PosterImageId, IReadOnlyList Episodes );