using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Login; namespace FrameworkBLL.Promotion { public interface IPromotionFlowProvisioningBLL { /// Idempotently creates (if missing) and publishes the "PromotionIngest" GOP /// flow — Ingest -> Approval -> Import — and its source binding, so /// GopQueueBLL.SubmitExecution(SourceCode="PromotionIngest", ...) can find it. Safe to /// call on every deployment startup or via a one-time admin action; a no-op if an active /// source binding for "PromotionIngest" already exists. Task EnsureIngestFlowProvisionedAsync(LoginDTO login, CancellationToken ct); } }