UNPKG

dinoloop-es8

Version:

A lightweight REST API Library for building scalable Node.js server-side applications powered by Typescript

94 lines (93 loc) 3.54 kB
import { Request, Response, NextFunction } from '../types'; /** * Extend this class to create ServerErrorMiddleware */ export declare abstract class ErrorMiddleware { abstract invoke(err: Error, request: Request, response: Response, next: NextFunction): void; } /** * Extend this class to create ServerErrorMiddlewareAsync */ export declare abstract class ErrorMiddlewareAsync { abstract invoke(err: Error, request: Request, response: Response, next: NextFunction): Promise<void>; } /** * Extend this class to create ApplicationStartMiddleware */ export declare abstract class AppStartMiddleware { abstract invoke(): void; } /** * Extend this class to create RequestStartMiddleware */ export declare abstract class RequestStartMiddleware { abstract invoke(request: Request, response: Response, next: NextFunction): void; } /** * Extend this class to create RequestStartMiddlewareAsync */ export declare abstract class RequestStartMiddlewareAsync { abstract invoke(request: Request, response: Response, next: NextFunction): Promise<void>; } /** * Extend this class to create RequestEndMiddleware */ export declare abstract class RequestEndMiddleware { abstract invoke(request: Request, response: Response, next: NextFunction, result: any): void; } /** * Extend this class to create RequestEndMiddlewareAsync */ export declare abstract class RequestEndMiddlewareAsync { abstract invoke(request: Request, response: Response, next: NextFunction, result: any): Promise<void>; } /** * Extend this class to create Middleware */ export declare abstract class Middleware { abstract invoke(request: Request, response: Response, next: NextFunction, data?: any): void; } /** * Extend this class to create MiddlewareAsync */ export declare abstract class MiddlewareAsync { abstract invoke(request: Request, response: Response, next: NextFunction, data?: any): Promise<void>; } /** * Extend this class to create ActionFilter */ export declare abstract class ActionFilter { abstract beforeExecution(request: Request, response: Response, next: NextFunction, data?: any): void; abstract afterExecution(request: Request, response: Response, next: NextFunction, result: any, data?: any): void; } /** * Extend this class to create ActionFilterAsync */ export declare abstract class ActionFilterAsync { abstract beforeExecution(request: Request, response: Response, next: NextFunction, data?: any): Promise<void>; abstract afterExecution(request: Request, response: Response, next: NextFunction, result: any, data?: any): Promise<void>; } /** * Extend this class to create ExceptionFilter */ export declare abstract class ExceptionFilter { abstract invoke(err: Error, request: Request, response: Response, next: NextFunction): void; } /** * Extend this class to create ExceptionFilterAsync */ export declare abstract class ExceptionFilterAsync { abstract invoke(err: Error, request: Request, response: Response, next: NextFunction): Promise<void>; } /** * Extend this class to create ResultFilter */ export declare abstract class ResultFilter { abstract invoke(request: Request, response: Response, next: NextFunction, result: any, data?: any): void; } /** * Extend this class to create ResultFilterAsync */ export declare abstract class ResultFilterAsync { abstract invoke(request: Request, response: Response, next: NextFunction, result: any, data?: any): Promise<void>; }