namespace TakeoutSaaS.Module.Messaging.Abstractions;

/// <summary>
/// 消息发布抽象。
/// </summary>
public interface IMessagePublisher
{
    /// <summary>
    /// 发布消息到指定路由键。
    /// </summary>
    Task PublishAsync<T>(string routingKey, T message, CancellationToken cancellationToken = default);
}
