using MongoDB.Bson; namespace FozFc.Api.Application.Auth; /// /// Authentication and user-profile operations. Register/Login/Google return an /// auth payload document: { token, user, profile }. /// public interface IAuthService { Task RegisterAsync(RegisterRequest request, CancellationToken ct = default); Task LoginAsync(LoginRequest request, CancellationToken ct = default); Task LoginWithGoogleAsync(GoogleRequest request, CancellationToken ct = default); Task GetProfileAsync(string uid, CancellationToken ct = default); Task GetRoleAsync(string uid, CancellationToken ct = default); Task RefreshProgressAsync(string uid, CancellationToken ct = default); Task ChangePasswordAsync(string uid, ChangePasswordRequest request, CancellationToken ct = default); }