using Google.Protobuf; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.Transport.Discovery { /// /// Represents a communication scanner. /// /// The type of the adapter. /// The type of the request. /// The type of the response. public interface ICommunicationScanner where TAdapter : ITransportAdapter where TRequest : IMessage where TResponse : IMessage { /// /// Scans the environment with the specified request while expecting the type of response. /// /// The request. /// The timeout. /// Task> Scan(TRequest request, TimeSpan timeout); } }