mirror of
https://github.com/DrizzleTime/Foxel.git
synced 2026-05-14 14:37:37 +08:00
feat(auth): add user information update feature and refactor the authentication service.
This commit is contained in:
18
Services/Interface/IAuthService.cs
Normal file
18
Services/Interface/IAuthService.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using Foxel.Models.DataBase;
|
||||
using Foxel.Models.Request;
|
||||
using Foxel.Models.Request.Auth;
|
||||
|
||||
namespace Foxel.Services.Interface;
|
||||
|
||||
public interface IAuthService
|
||||
{
|
||||
Task<(bool success, string message, User? user)> RegisterUserAsync(RegisterRequest request);
|
||||
Task<(bool success, string message, User? user)> AuthenticateUserAsync(LoginRequest request);
|
||||
Task<string> GenerateJwtTokenAsync(User user);
|
||||
Task<User?> GetUserByIdAsync(int userId);
|
||||
Task<(bool success, string message, User? user)> FindOrCreateGitHubUserAsync(
|
||||
string githubId, string? githubName, string? email);
|
||||
Task<(bool success, string message, User? user)> UpdateUserInfoAsync(int userId, UpdateUserRequest request);
|
||||
string GetGitHubLoginUrl();
|
||||
Task<(bool success, string message, string? token)> ProcessGitHubCallbackAsync(string code);
|
||||
}
|
||||
Reference in New Issue
Block a user