import IHandlers from "./handlers/IHandlers" ; import ILogger from "./utils/ILogger" ; export type Callback = ( ... args : any [ ] ) => any ; export type MiddlewareTypes = Callback ; export type NextFunction = Callback ; export class export default abstract class MiddlewareFactory { param { ILogger } logger memberof public constructor ( protected readonly logger ) { } returns { MiddlewareTypes } memberof public abstract createDispatchMiddleware ( ) ; returns { MiddlewareTypes } memberof public abstract createDeserializerMiddleware ( ) ; param { IHandlers } handlers returns { MiddlewareTypes } memberof public abstract createHandlerMiddleware ( handlers ) ; returns { MiddlewareTypes } memberof public abstract createSerializerMiddleware ( ) ; returns { MiddlewareTypes } memberof public abstract createErrorMiddleware ( ) ; returns { MiddlewareTypes } memberof public abstract createEndMiddleware ( ) ; }