using NexusReader.Application.Queries.Quiz; namespace NexusReader.UI.Shared.Services; public interface IQuizStateService { string? CurrentQuizBlockId { get; } QuizDto? CurrentQuiz { get; } bool IsHydrating { get; } bool HasNewQuiz { get; } event Action? OnQuizRequested; event Action? OnQuizUpdated; void RequestQuiz(string blockId); void SetQuiz(string? blockId, QuizDto quiz); void SetHydrating(bool hydrating); void MarkQuizAsSeen(); }