using CMSDAL.DTO.Site; using CMSDAL.DTO.SiteTemplate; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; namespace CMSBLL.Site; public interface ISiteBLL { Task GetSite(int siteId, LoginDTO loginDTO, CancellationToken ct = default); Task GetSelectListSite(int firstNumber, int maxResult, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task SaveSite(SiteDTO dto, LoginDTO loginDTO, CancellationToken ct = default); Task DeleteSite(int siteId, LoginDTO loginDTO, CancellationToken ct = default); // Site/Page platform Phase 14 — materializes a real Site plus its SiteTemplate's Pages // (Content + Containers + Blocks + SitePage wrappers) from seed template data. See // SiteBLL.CreateFromTemplate's own doc comment for the composition-vs-transaction trade-off. Task CreateFromTemplate(CreateSiteFromTemplateDTO dto, LoginDTO loginDTO, CancellationToken ct = default); }