pub trait ListenerProxyInterface: Send + Sync {
type ListenResponseFut: Future<Output = Result<ListenerListenResult, Error>> + Send;
type AcceptResponseFut: Future<Output = Result<ListenerAcceptResult, Error>> + Send;
// Required methods
fn listen(&self, backlog: u32) -> Self::ListenResponseFut;
fn accept(&self, con: ConnectionTransport) -> Self::AcceptResponseFut;
}