pub trait Provider { type Limits: 'static + Send + Limiter; type Error: 'static + Display + Send + Sync; // Required method fn start(self) -> Result<Self::Limits, Self::Error>; }