using GB5Shared.DTO.Framework.Login; using RecruitmentDAL.DTO.Agency; using System.Threading; using System.Threading.Tasks; namespace RecruitmentBLL.Agency { public interface IAgencyBLL { Task GetAgency(int RecruitmentAgencyId, LoginDTO LoginDTO, CancellationToken ct); Task GetSelectListAgency(string? SearchKeyword, LoginDTO LoginDTO, CancellationToken ct); // Orchestrates the DXP Party sync (create/update) BEFORE persisting the local profile row // — see AgencyBLL's doc comment. A DXP sync failure throws and the local row is never // written, so an Agency can never exist here without a backing DXP Party. Task SaveAgency(AgencyDTO AgencyDTO, LoginDTO LoginDTO, CancellationToken ct); Task DeleteAgency(int RecruitmentAgencyId, LoginDTO LoginDTO, CancellationToken ct); } }