using System; using System.Collections.Generic; namespace NexusReader.Application.DTOs.Creator; /// /// Telemetry metrics for the Creator Dashboard. /// public record DashboardMetricsDto( int TotalReads, double AvgReadTimeMinutes, int ActiveReaders, decimal GrossRevenue ); /// /// Lightweight revision details for the Creator Dashboard. /// public record CreatorBookRevisionDto( Guid Id, string VersionString, bool IsPublished, DateTime CreatedAt, DateTime? PublishedAt ); /// /// Lightweight book publication details for the Creator Dashboard. /// public record CreatorBookDto( Guid Id, string Title, int WordCount, int AggregatedReads, Guid? FirstChapterId, CreatorBookRevisionDto? LivePublishedRevision, CreatorBookRevisionDto? CurrentDraftRevision ); /// /// Root data envelope for Creator Dashboard loading. /// public record CreatorDashboardDataDto( DashboardMetricsDto Metrics, List Books ); /// /// Request DTO for creating a new Book. /// public record CreateBookRequestDto( string Title, string? Description ); /// /// Response DTO for creating a new Book. /// public record CreateBookResponseDto( Guid BookId );