Middleware type

HTTP middleware that wraps one outbound request.

Middleware is registered with client.use(...) and runs in insertion order: the first registered middleware is the outermost wrapper.

type Middleware = { invoke(context: MiddlewareContext<D>, next: MiddlewareNext<R>) => Promise<R> }