TourIAm/TIAMWebApp/Shared/Interfaces/IUserDataService.cs

35 lines
1.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TIAM.Entities.Users;
using TIAM.Models.Dtos.Users;
using TIAMWebApp.Shared.Application.Models;
using TIAMWebApp.Shared.Application.Models.PageModels;
namespace TIAMWebApp.Shared.Application.Interfaces
{
public interface IUserDataService
{
public Dictionary<int, string> userRoleTypes { get; set; }
public Task<UserSessionModel> IsLoggedInAsync(Guid id);
public Task<string> AuthenticateUser(LoginModel loginModel);
public Task<(bool isSuccess, string ErrorMessage)> CreateUser(RegistrationModel regModel);
public Task<(bool isSuccess, UserModelDto? user)> CreateGuestUser(RegistrationModel regModel);
public Task<string> TestUserApi(int Param);
//public Task<Dictionary<int, string>> GetUserRolesAsync(UserModel userModel);
public Task<List<UserModelDto>?> GetUsersAsync();
public Task<List<UserModelDtoDetail>?> GetUsersWithDetailsAsync();
public Task<UserModelDto?> GetUserByIdAsync(Guid id);
public Task<UserModelDtoDetail?> GetUserDetailByIdAsync(Guid id);
public Task<UserModelDto?> GetUserByEmailAsync(string email);
Task<bool> RefreshToken();
}
}