Sends the provided command  and waits for an event of TEvent  or exits if the specified timeout is expired. 
- Parameters
 - 
  
    | command | The TCommand  to send. | 
    | condition | A delegate to be executed over and over until it returns the TEvent  that is desired, return null to keep trying. | 
    | millisecondsTimeout | The number of milliseconds to wait, or F:System.Threading.Timeout.Infinite (-1) to wait indefinitely. | 
    | eventReceiver | If provided, is the IEventReceiver<TAuthenticationToken> that the event is expected to be returned on. | 
  
   
Implements Cqrs.Commands.ISendAndWaitCommandSender< TAuthenticationToken >.
- Type Constraints
 - 
| TCommand |  : | ICommand<TAuthenticationToken> |   |