xmtp_api_d14n/middleware/traits.rs
1use xmtp_api_grpc::ClientBuilder;
2use xmtp_common::time::Duration;
3use xmtp_proto::prelude::ApiBuilder;
4
5/* Middleware trait */
6
7pub trait MiddlewareBuilder: ApiBuilder {
8 /// Set the gateway builder for node discovery.
9 fn set_gateway_builder(&mut self, gateway_builder: ClientBuilder) -> Result<(), Self::Error>;
10 /// Set the default builder for xmtpd nodes
11 fn set_node_client_builder(&mut self, node_builder: ClientBuilder) -> Result<(), Self::Error>;
12
13 /// Set the timeout for node discovery.
14 fn set_timeout(&mut self, timeout: Duration) -> Result<(), Self::Error>;
15}