using System.Linq.Expressions; namespace NetinaShop.Repository.Repositories.Marten; public interface IMartenRepository : IScopedDependency where TMartenEntity : IMartenEntity { Task> GetEntitiesAsync(CancellationToken cancellation); Task> GetEntitiesAsync(Expression> expression, CancellationToken cancellation); Task GetEntityAsync(Guid id, CancellationToken cancellation); Task GetEntityAsync(Expression> expression, CancellationToken cancellation); Task AddOrUpdateEntityAsync(TMartenEntity setting, CancellationToken cancellation); Task RemoveEntityAsync(CancellationToken cancellation); }