using System.Collections.Generic;
using System.Threading.Tasks;
using Dpz.Core.Public.ViewModel;
using Dpz.Core.Public.ViewModel.V4;
using Dpz.Core.Web.Models;
namespace Dpz.Core.Web.Library.Api
{
public interface IHomeCacheService
{
/// <summary>
/// 获取缓存数据
/// </summary>
/// <returns></returns>
Task<HomeContainerModel> GetCacheDataAsync();
/// <summary>
/// 更新首页Banner
/// </summary>
/// <returns></returns>
Task UpdateBannerAsync();
/// <summary>
/// 获取文章所有标签
/// </summary>
/// <returns></returns>
Task<IList<string>> GetArticleTagsAsync();
/// <summary>
/// 获取最新文章
/// </summary>
/// <returns></returns>
Task<IList<VmArticleMini>> GetLatestArticlesAsync();
/// <summary>
/// 更新最新文章
/// </summary>
/// <returns></returns>
Task UpdateLatestArticlesAsync();
/// <summary>
/// 获取随机文章
/// </summary>
/// <returns></returns>
Task<IList<VmArticleMini>> GetRandomArticlesAsync();
/// <summary>
/// 获取今日新闻
/// </summary>
/// <returns></returns>
Task<TodayNewsModel?> GetTodayNewsAsync();
/// <summary>
/// 更新首页查看最多的文章
/// </summary>
/// <returns></returns>
Task UpdateViewTopAsync();
}
}