namespace MyOffice.Data.Repositories.Currency; using Models.Currencies; public interface ICurrencyRepository { List GetAll(Guid userId); Task> GetAllAsync(Guid userId, CancellationToken cancellationToken = default); Currency? Get(Guid userId, Guid id); Task GetAsync(Guid userId, Guid id, CancellationToken cancellationToken = default); Currency? GetByGlobalCurrency(Guid userId, string globalCurrencyId); Task GetByGlobalCurrencyAsync(Guid userId, string globalCurrencyId, CancellationToken cancellationToken = default); bool Add(Currency currency); Task AddAsync(Currency currency, CancellationToken cancellationToken = default); bool Update(Currency currency); Task UpdateAsync(Currency currency, CancellationToken cancellationToken = default); bool Remove(Currency currency); Task RemoveAsync(Currency currency, CancellationToken cancellationToken = default); List GetPrimaries(Guid userId); Task> GetPrimariesAsync(Guid userId, CancellationToken cancellationToken = default); }