using Dpz.Core.Public.ViewModel.Steam;
namespace Dpz.Core.Service.RepositoryService;
public interface ISteamGameService : ICacheService
{
/// <summary>
/// 游戏logo下载完成
/// </summary>
event LogoDownload OnLogoDownloadComplete;
/// <summary>
/// 成就图标(未完成,灰色)下载完成
/// </summary>
event AchievementIconGrayDownload OnAchievementIconGrayDownloadComplete;
/// <summary>
/// 已解锁成就图标(已完成,彩色)下载完成
/// </summary>
event AchievementIconDownload OnAchievementIconDownloadComplete;
/// <summary>
/// 更新游戏库
/// </summary>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns></returns>
Task UpdateGamesAsync(CancellationToken cancellationToken = default);
/// <summary>
/// 获取游戏库
/// </summary>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns></returns>
Task<List<VmSteamGame>> GetGamesAsync(CancellationToken cancellationToken = default);
/// <summary>
/// 获取游戏详情
/// </summary>
/// <param name="id"></param>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns></returns>
Task<VmSteamGame?> GetGameAsync(int id, CancellationToken cancellationToken = default);
}
评论加载中...