using CampusWorkshops.Api.Models; namespace CampusWorkshops.Api.Repositories; // Define repository contract; implementations should be provided by students during the workshop. public interface IWorkshopRepository { Task> GetAllAsync(DateTimeOffset? from, DateTimeOffset? to, string? q, CancellationToken ct); Task GetByIdAsync(Guid id, CancellationToken ct); Task AddAsync(Workshop workshop, CancellationToken ct); }