using Modules.User.Application.Models; namespace Modules.User.Application.Gateways; public interface IUserQueries { public Task TryGetAccountAsync(string email, CancellationToken cancellationToken); public Task GetAccountAsync(string email, CancellationToken cancellationToken); public Task GetUserAsync(Guid accountId, Guid? sessionId, CancellationToken cancellationToken); public Task GetUserDetailAsync(Guid accountId, CancellationToken cancellationToken); public Task GetUserProfileAsync(Guid userId, CancellationToken cancellationToken); public Task> GetAccountSessionsAsync(Guid accountId, CancellationToken cancellationToken); public Task TryGetSessionAsync(string refreshToken, CancellationToken cancellationToken); public Task GetAvatarIdAsync(Guid userId, CancellationToken cancellationToken); public Task> GetUsersAsync(UserListFilter? userListFilter, CancellationToken cancellationToken); }