using SumaTube.Domain.Entities.Videos;

namespace SumaTube.Infra.Contracts.Repositories.Videos
{
    public interface IVideoSummaryRepository
    {
        Task<VideoSummary> GetByIdAsync(string id);
        Task<List<VideoSummary>> GetByUserIdAsync(string userId);
        Task AddAsync(VideoSummary videoSummary);
        Task UpdateAsync(VideoSummary videoSummary);
        Task<bool> ExistsAsync(string videoId, string userId, string language);
        Task<VideoSummary> GetByVideoIdAndUserIdAndLanguageAsync(string videoId, string userId, string language);
    }
}
