using ApplicationLayer.Services.Users.Models; using ApplicationLayer.Services.Users.Requests; using Domains.Users; namespace ApplicationLayer.Services.Users; /// user accounts service public interface IUsersService { /// Returns all user accounts with role of approving authority /// Cancellation token Task> GetAuthoritiesAccountsAsync(CancellationToken cancellationToken); /// Changes authentication data for an authority account /// Request object with identifier of user and new authentication data /// Cancellation token Task ChangeAuthorityAuthDataAsync(ChangeUserAuthDataRequest request, CancellationToken cancellationToken); /// Removes account of authority /// Identifier of account /// Cancellation token Task RemoveAuthorityAccount(Guid userId, CancellationToken cancellationToken); }