export type Middleware = (ctx: Context, next: (ctx: Context) => Promise) => Promise; export type ComposedMiddleware = (ctx: Context) => Promise; export declare function composeMiddlewares(middlewares: Middleware[], final: ComposedMiddleware): ComposedMiddleware; export declare function composeMiddlewares(middlewares: Middleware[]): Middleware;