protected async Task <TResult> ExecuteCommandAsync <TData, TResult>(string name, TData data = default, TimeSpan?timeout = null) { var command = MessageFactory.CreateCommand(name, data); var response = await QuikClient.SendAsync <IResult <TResult> >(command, timeout).ConfigureAwait(false); return(response.Data); }