using NexusReader.Domain.Entities; namespace NexusReader.Application.Abstractions.Persistence; /// /// Abstraction for QuizResult and related User entity lookup. /// Defined in the Application layer to maintain Clean Architecture isolation. /// public interface IQuizResultRepository { /// /// Finds a user by ID to extract tenant context. /// Task FindUserByIdAsync(string userId, CancellationToken cancellationToken = default); /// /// Adds a new quiz result to the database. /// void AddQuizResult(QuizResult quizResult); /// /// Persists all staged changes to the repository. /// Task SaveChangesAsync(CancellationToken cancellationToken = default); }