UNPKG

next-api-middleware

Version:
14 lines (9 loc) 827 B
import * as next from 'next'; import { NextApiRequest, NextApiResponse } from 'next'; type Middleware<Request = NextApiRequest, Response = NextApiResponse> = (req: Request, res: Response, next: () => Promise<void>) => Promise<void>; type LabeledMiddleware<Request = NextApiRequest, Response = NextApiResponse> = { [name: string]: Middleware<Request, Response> | Array<Middleware<Request, Response>>; }; declare function label<T extends LabeledMiddleware>(middleware: T, defaults?: (keyof T)[]): (...chosenMiddleware: (keyof T | Middleware | Middleware[])[]) => (apiRouteFn: next.NextApiHandler<any>) => next.NextApiHandler<any>; declare function use(...middleware: (Middleware | Middleware[])[]): (apiRouteFn: next.NextApiHandler<any>) => next.NextApiHandler<any>; export { LabeledMiddleware, Middleware, label, use };