using System; using System.Threading; using System.Threading.Tasks; namespace BetterGenshinImpact.Service.GearTask.Execution; /// /// GearTask 执行事件总线。 /// 负责在执行器与记录器、UI 投影等消费者之间解耦。 /// public interface IGearTaskEventBus { /// /// 发布一条执行事件。 /// ValueTask PublishAsync(GearTaskExecutionEvent evt, CancellationToken ct = default); /// /// 注册一个事件消费者。 /// IDisposable Subscribe(IGearTaskEventConsumer consumer); } /// /// GearTask 执行事件消费者。 /// public interface IGearTaskEventConsumer { ValueTask ConsumeAsync(GearTaskExecutionEvent evt, CancellationToken ct = default); }