using Dpz.Core.Public.ViewModel.Request;
using Dpz.Core.Public.ViewModel.Response;
namespace Dpz.Core.Service.RepositoryService;
public interface IAccountTokenService
{
/// <summary>
/// 生成RefreshToken
/// </summary>
/// <returns></returns>
Task<string> GenerateRefreshTokenAsync(AccountTokenRequest request);
/// <summary>
/// 验证刷新Token
/// </summary>
/// <param name="account">账号</param>
/// <param name="refreshToken">刷新Token</param>
/// <param name="platform"></param>
/// <returns></returns>
Task<bool> ValidateRefreshTokenAsync(string account,string refreshToken,TokenPlatform platform);
/// <summary>
/// 获取账号Token列表
/// </summary>
/// <param name="account"></param>
/// <param name="used"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
Task<IPagedList<AccountTokenResponse>> GetPageListAsync(
string account,
bool? used,
int pageIndex,
int pageSize
);
}