Files
Toolkit2/Toolkit.Foundation/IMediator.cs
T
2024-06-02 20:52:40 +01:00

22 lines
717 B
C#

namespace Toolkit.Foundation;
public interface IMediator
{
Task<object?> Handle(object message,
object? key = null,
CancellationToken cancellationToken = default);
Task<TResponse?> Handle<TMessage, TResponse>(TMessage message,
object? key = null,
CancellationToken cancellationToken = default)
where TMessage : notnull;
IAsyncEnumerable<object?> HandleMany(object message,
object? key = null,
CancellationToken cancellationToken = default);
IAsyncEnumerable<TResponse?> HandleMany<TMessage, TResponse>(TMessage message,
object? key = null,
CancellationToken cancellationToken = default)
where TMessage : notnull;
}