27 lines
1.1 KiB
C#
27 lines
1.1 KiB
C#
using System.Threading.Tasks;
|
|
using Knoks.Core.Entities;
|
|
using System.Collections.Generic;
|
|
using Knoks.Core.Entities.Args;
|
|
|
|
namespace Knoks.Core.Logic.Interfaces
|
|
{
|
|
public interface IUserManager : IInitializable
|
|
{
|
|
Task<User> CreateUser(CreateUserArgs args);
|
|
Task<User> UpdateUser(UpdateUserArgs args);
|
|
Task<IEnumerable<User>> GetUsers(long? userId, UserType? userType = null);
|
|
Task<User> GetUser(long userId);
|
|
Task<User> GetUserByEmail(string email);
|
|
Task<User> AuthenticateUser(int apiConsumerId, string email, string password);
|
|
FileResponse GetAvatarFile(int userId);
|
|
User PlatformUser { get; }
|
|
Account PlatformUserAccount { get;}
|
|
Task<UserAccounts> GetUserInfo(string accountWalletAddress);
|
|
Task<bool> UserExists(string userName);
|
|
Task<bool> UserEmailExists(string email);
|
|
Task<bool> UserNameExists(string userName, long? userId);
|
|
Task<bool> CheckPasswordResetToken(string token);
|
|
Task SendPasswordResetLink(string email, string link);
|
|
Task<bool> PasswordReset(string token, string newPassword);
|
|
}
|
|
} |