MiddlewareComposeFn: ((ctx: Record<string, any>, next: (() => Promise<unknown>)) => Promise<unknown>)