using Distribution.Models; namespace Distribution.Features.Ride; public interface IRideRepository { Task GetByIdAsync(Guid id); Task> GetAllAsync(RideStatus? status, Guid? driverProfileId, Guid? vehicleId, int page, int pageSize); Task GetCountAsync(RideStatus? status, Guid? driverProfileId, Guid? vehicleId); Task HasOpenRideForVehicleAsync(Guid vehicleId, Guid? excludeRideId = null); Task AddAsync(DeliveryRun ride); void Update(DeliveryRun ride); }