using System.Linq.Expressions; namespace DigitalData.Core.Abstractions.Infrastructure; public interface IRepository { public Task CreateAsync(TEntity dto, CancellationToken ct = default); public Task CreateAsync(IEnumerable dtos, CancellationToken ct = default); public Task> ReadAsync(Expression? expression = null, CancellationToken ct = default); public Task> UpdateAsync(TDto dto, Expression expression, CancellationToken ct = default); public Task> DeleteAsync(Expression expression, CancellationToken ct = default); }