namespace OpenWarehouse.warehouse.api.Common.Item;

public interface IItemManager
{
    public Task<Data.Item?> FindItemByIdAsync(string id);
    public Task<Data.Item?> FindItemByNameAsync(string producerName, string itemName);
    public Task<Data.Item?> FindItemByNameAsync(Producers producers, string itemName);
    public Task<ActionResult> CreateAsync(Data.Item item);
    public Task<List<Claim>> GetListOfClaims(Data.Item item);
    public Task<ActionResult> AddClaim(Data.Item item, Claim claim);
    public Task<ActionResult> UpdateClaim(Data.Item item, Claim claim);
    public Task<ActionResult> DeleteClaim(Data.Item item, string claimType);
    public Task<ActionResult> EditClaim(Data.Item item, string claimType, string newValue);
}