#[allow(unused_imports)]
pub use s2n_quic_core::packet::interceptor::{
loss, Disabled, Havoc, Interceptor as PacketInterceptor, Loss,
};
pub trait Provider: 'static {
type PacketInterceptor: 'static + PacketInterceptor;
type Error: core::fmt::Display + Send + Sync;
fn start(self) -> Result<Self::PacketInterceptor, Self::Error>;
}
pub type Default = Disabled;
impl_provider_utils!();
impl<T: 'static + Send + PacketInterceptor> Provider for T {
type PacketInterceptor = T;
type Error = core::convert::Infallible;
fn start(self) -> Result<Self::PacketInterceptor, Self::Error> {
Ok(self)
}
}