import { Middleware } from '../middleware'; export const HandlerExecutionChain = Symbol('HandlerExecutionChain'); export const HandlerAdapter = Symbol('HandlerAdapter'); export const HandlerMapping = Symbol('HandlerMapping'); export interface HandlerExecutionChain { execute(middlewares: Middleware[], next: () => Promise): Promise; } export interface HandlerAdapter { readonly priority: number; handle(): Promise; canHandle(): Promise; } export interface HandlerMapping { handle(): Promise; }