using Entities.Models; namespace Entities.Interfaces { public interface IRobotRepository { Task AddAsync(Robot robot); Task GetByIdAsync(int robotId); Task GetBySerialNumberAsync(string serialNumber); Task> GetAllAsync(); Task> GetByStatusAsync(RobotStatus status); Task> GetByTypeAsync(RobotType type); Task> GetByTypeAndStatusAsync(RobotType type, RobotStatus status); Task> GetAvailableRobotsAsync(); Task UpdateAsync(Robot robot); Task DeleteAsync(int robotId); Task ExistsAsync(int robotId); Task SerialNumberExistsAsync(string serialNumber); Task SaveChangesAsync(); } }