using EAIAdminDAL.DTO; using GB5Shared.DTO.Framework.Login; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace EAIAdminBLL.EAIInitiativeAdmin { public interface IEAIInitiativeAdminBLL { Task> GetInitiativeListAsync( string? search, LoginDTO login, CancellationToken ct = default); Task GetInitiativeAsync( int initiativeId, LoginDTO login, CancellationToken ct = default); /// Create or update an initiative, then push the change to gbEAI. Returns a /// localised success message, with a sync-status suffix if the gbEAI push failed. Task SaveInitiativeAsync( EAIInitiativeAdminDTO dto, LoginDTO login, CancellationToken ct = default); /// Soft-delete an initiative, then push the delete to gbEAI. Returns a localised /// success message, with a sync-status suffix if the gbEAI push failed. Task DeleteInitiativeAsync( int initiativeId, LoginDTO login, CancellationToken ct = default); } }