namespace Distribution.Features.Item; public interface IItemRepository { Task GetByIdAsync(Guid id); Task GetBySkuAsync(string sku); Task> GetAllAsync(Guid? categoryId = null, Guid? subCategoryId = null, Guid? brandId = null); Task SkuExistsAsync(string sku, Guid? excludeId = null); Task GetByExternalErpItemIdAsync(int erpId); Task AddAsync(Models.Item entity); void Update(Models.Item entity); void Remove(Models.Item entity); Task ReplaceConversionsAsync(Guid itemId, List conversions); }