private void OnMessagePushed(EventProcessedEventArgs e) => EventPushed?.Invoke(this, e);
public async Task PublishAsync <TEvent>(TEvent @event) where TEvent : IEvent => await Task.Run(() => EventPushed?.Invoke(this, new EventProcessedArgs(@event)));