using Dpz.Core.Public.ViewModel.Response.Steam;
namespace Dpz.Core.Service.RepositoryService;
/// <summary>
/// Steam 游戏查询,游戏库同步由 Dpz.Core.Service.Mediator 的 Steam 模块负责
/// </summary>
public interface ISteamGameService
{
/// <summary>
/// 获取游戏库
/// </summary>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns>游戏库,包含每个游戏的完整成就</returns>
Task<List<SteamGameResponse>> GetGamesAsync(CancellationToken cancellationToken = default);
/// <summary>
/// 获取游戏库摘要,只包含列表展示所需的字段
/// </summary>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns>游戏库摘要,包含成就数量与最近解锁的成就</returns>
Task<List<SteamGameSummaryResponse>> GetGameSummariesAsync(
CancellationToken cancellationToken = default
);
/// <summary>
/// 获取游戏详情
/// </summary>
/// <param name="id">游戏ID</param>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
/// <returns>游戏详情,不存在返回null</returns>
Task<SteamGameResponse?> GetGameAsync(int id, CancellationToken cancellationToken = default);
/// <summary>
/// 清除游戏缓存
/// </summary>
/// <param name="cancellationToken">传播通知操作应取消的通知令牌</param>
Task ClearCacheAsync(CancellationToken cancellationToken = default);
}
AI 正在分析代码…
评论加载中...