using System.Collections.Generic; using AsbCloudApp.Data; using AsbCloudApp.Requests; using AsbCloudApp.Services; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Repositories; /// /// Репозиторий для уведомлений /// public interface INotificationRepository : ICrudRepository { /// /// Получение уведомлений по параметрам /// /// /// /// /// Task> GetNotificationsAsync(int idUser, NotificationRequest request, CancellationToken cancellationToken); /// /// Получение всех уведомлений /// /// /// /// /// /// Task> GetAllAsync(int? idUser, bool? isSent, int? idTransportType, CancellationToken cancellationToken); /// /// Обновление уведомлений /// /// /// /// Task UpdateRangeAsync(IEnumerable notifications, CancellationToken cancellationToken); /// /// Удаление уведомлений по параметрам /// /// /// /// Task DeleteAsync(NotificationDeleteRequest request, CancellationToken cancellationToken); /// /// Получение количества непрочтенных уведомлений /// /// /// /// /// Task GetUnreadCountAsync(int idUser, int idTransportType, CancellationToken cancellationToken); }