using Bit.Core.Entities; namespace Bit.Core.Repositories; public interface IRepository where TId : IEquatable where T : class, ITableObject { Task GetByIdAsync(TId id); Task CreateAsync(T obj); Task ReplaceAsync(T obj); Task UpsertAsync(T obj); Task DeleteAsync(T obj); }