using ModuleTools.BindingModels;
using ModuleTools.Models;
using System.Threading.Tasks;
namespace ModuleTools.Interfaces
{
///
/// Описание логики для хранилища сущности
///
public interface IGenerticEntityService
where G : GetBindingModel
where S : SetBindingModel
{
///
/// Получение списка сущностей
///
///
///
Task ReadAsync(G model);
///
/// Создание новой сущности
///
///
///
Task CreateAsync(S model);
///
/// Изменение сущности
///
///
///
Task UpdateAsync(S model);
///
/// Удаление сущности
///
///
///
Task DeleteAsync(G model);
///
/// Восстановление сущности
///
///
///
Task RestoreAsync(G model);
}
}