using SPMS.Application.DTOs.Push; namespace SPMS.Application.Interfaces; public interface IBulkJobStore { Task CreateJobAsync(long serviceId, int totalCount, CancellationToken ct = default); Task GetJobAsync(string jobId, CancellationToken ct = default); Task SetProcessingAsync(string jobId, CancellationToken ct = default); Task IncrementSentAsync(string jobId, CancellationToken ct = default); Task IncrementFailedAsync(string jobId, CancellationToken ct = default); Task TryCompleteAsync(string jobId, CancellationToken ct = default); Task IsCancelledAsync(string jobId, CancellationToken ct = default); Task CancelAsync(string jobId, CancellationToken ct = default); }