using Biskilog_Cloud.Shared.CustomModels; using Biskilog_Cloud.Shared.Models; namespace Biskilog_Cloud.Shared.Interfaces { public interface IProduct { IEnumerable GetUnitofmeasures(); IEnumerable GetProducts(string a_productKey = ""); IEnumerable GetBrands(string a_brandKey = ""); IEnumerable GetCategories(string a_categoryKey = ""); IEnumerable GetLowstockItems(); Task FetchProducts(); Task FetchLowStockProducts(); Task FetchUnits(); Task FetchBrands(); Task FetchCategories(); void RefreshList(); ProductItem GetProductById(string a_id); ProductItem GetProductByName(string name); string GetUnitName(string a_unitCode); event EventHandler ProductsChanged; event EventHandler UnitsChanged; event EventHandler BrandsChanged; event EventHandler CategoriesChanged; Task> FetchProducts(DateTime a_lastSync, string a_branch); Task> FetchInventory(DateTime a_lastSync, string a_branch); Task> FetchInventoryEntries(DateTime a_lastSync, string a_branch); Task> FetchPriceChanges(DateTime a_lastSync, string a_branch); Task> FetchProductAltUnit(DateTime a_lastSync, string a_branch); Task> FetchRestockAsync(DateTime a_lastSync, string a_branch); Task> FetchUnitOfMeasureAsync(DateTime a_lastSync, string a_branch); Task> FetchStockAsync(DateTime a_lastSync, string a_branch); Task> FetchBrandsAsync(DateTime a_lastSync, string a_branch); Task> FetchCategoriesAsync(DateTime a_lastSync, string a_branch); } }