using System;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudApp.Data;
namespace AsbCloudApp.Services.Notifications;
///
/// Интерфейс для работы с уведомлениями
///
public interface INotificationService
{
///
/// Отправка нового уведомления
///
///
///
///
///
///
///
///
///
Task NotifyAsync(int idUser,
int idNotificationCategory,
string title,
string message,
TimeSpan timeToLife,
NotificationTransport notificationTransport,
CancellationToken cancellationToken);
///
/// Обновление уведомления
///
///
///
///
///
Task UpdateNotificationAsync(int idNotification,
bool isRead,
CancellationToken cancellationToken);
///
/// Отправка уведомлений, которые не были отправлены
///
///
///
///
///
Task ResendNotificationAsync(int idUser,
NotificationTransport notificationTransport,
CancellationToken cancellationToken);
}