namespace EventBus
{
///
/// 事件句柄
///
/// 事件发布数据类型
/// 事件返回数据类型
public interface IEventData : IBaseEventData
{
///
/// 发布同步事件
///
/// 当存在多个订阅时,只返回第一个订阅结果
///
/// 事件源
/// 事件数据
/// 筛选器
///
T Publish(object sender, TData data, Properties? properties = null);
///
/// 发布异步事件
///
Task PublishAsync(object sender, TData data, Properties? properties = null);
List PublishList(object sender, TData data, Properties? properties = null);
Task> PublishListAsync(object sender, TData data, Properties? properties = null);
///
/// 订阅事件
///
/// 事件处理函数
/// 筛选器
Guid Subscrip(Func