namespace NexusReader.UI.Shared.Services; public interface IReaderNavigationService { Guid CurrentEbookId { get; } int CurrentChapterIndex { get; } int TotalChapters { get; } string ChapterTitle { get; } string? PendingScrollBlockId { get; set; } event Func? OnNavigationChanged; Task GoToChapter(int index); Task GoToNextChapter(); Task GoToPreviousChapter(); Task UpdateMetadataAsync(int currentIndex, int totalChapters, string title); /// /// Navigates to the reader for a specific book and records the current ebook ID. /// void NavigateToBook(Guid bookId); /// /// Sets the active book context (ID and optional chapter) without triggering browser routing. /// void SetBook(Guid bookId, int chapterIndex = 0); }