using FutureMailAPI.DTOs;
using FutureMailAPI.Models;

namespace FutureMailAPI.Services
{
    public interface IOAuthService
    {
        Task<ApiResponse<OAuthTokenResponseDto>> LoginAsync(OAuthLoginRequestDto request);
        Task<ApiResponse<OAuthTokenResponseDto>> RefreshTokenAsync(OAuthRefreshTokenRequestDto request);
        Task<bool> RevokeTokenAsync(string accessToken);
        Task<OAuthToken?> GetTokenAsync(string accessToken);
    }
}