/// <summary>
 ///     Sends a request asynchronously to associated message handler and expects an object in respond.
 /// </summary>
 /// <remarks>
 ///     Request-response behavior.
 /// </remarks>
 public static async Task <TResponse> Request <TResponse>(this IMessagingClient client, IMessage <TResponse> message, CancellationToken token = default) =>
 (TResponse)await client.RequestObject(message, token);