using iyixiGames.Domain.DTOs.Sites;

namespace iyixiGames.Infrastructure.Services
{
    /// <summary>
    /// 网站管理的应用服务接口。
    /// </summary>
    public interface ISiteService
    {
        Task<SiteResponse?> GetSiteByIdAsync(string id);
        Task<IEnumerable<SiteResponse>> GetAllSitesAsync();
        Task<SiteResponse> CreateSiteAsync(CreateSiteRequest request);
        Task<SiteResponse?> UpdateSiteAsync(string id, UpdateSiteRequest request);
        Task<bool> DeleteSiteAsync(string id);
        Task<SiteResponse?> UpdateSiteStatusAsync(string id, UpdateSiteStatusRequest request);
    }
}