pub trait MiddlewareChain<State, CTX, Request, Response, Error>: Send + Sync {
// Required method
fn call(
&self,
state: State,
ctx: Context<CTX, Request, Response>,
next: Option<Arc<Next<State, Context<CTX, Request, Response>, Error>>>,
) -> MiddlewareOutput<Context<CTX, Request, Response>, Error>;
}