import type { Request } from "../../Http/Request"; import type { Middleware as PolkaMiddleware } from "polka"; import type Response from "../../Http/Response"; export declare type NativeMiddleware = PolkaMiddleware; export declare type NextFunction = (req: Request) => Response; export declare type MiddlewareStack = null | Middleware | string | (Middleware | string)[]; export interface Middleware { handle?: (req: Request, next: NextFunction, ...args: any[]) => Promise; handleAfter?: (res: Response, req: Request) => Promise; handleNative?: NativeMiddleware; }