using System; using System.Collections.Generic; using System.Threading.Tasks; namespace Bit.App.Abstractions { public interface IRepository where T : class, IDataObject, new() where TId : IEquatable { Task GetByIdAsync(TId id); Task> GetAllAsync(); Task UpdateAsync(T obj); Task InsertAsync(T obj); Task UpsertAsync(T obj); Task DeleteAsync(TId id); Task DeleteAsync(T obj); } }