dramaling-vocab-learning/backend/DramaLing.Api/Contracts/Repositories/IFlashcardRepository.cs

11 lines
607 B
C#

using DramaLing.Api.Models.Entities;
namespace DramaLing.Api.Contracts.Repositories;
public interface IFlashcardRepository : IRepository<Flashcard>
{
Task<IEnumerable<Flashcard>> GetByUserIdAsync(Guid userId, string? search = null, bool favoritesOnly = false);
Task<Flashcard?> GetByUserIdAndFlashcardIdAsync(Guid userId, Guid flashcardId);
Task<int> GetCountByUserIdAsync(Guid userId, string? search = null, bool favoritesOnly = false);
Task<IEnumerable<Flashcard>> GetPagedByUserIdAsync(Guid userId, int page, int pageSize, string? search = null, bool favoritesOnly = false);
}