export interface Middleware { readonly name: string; readonly isDynamic: boolean; init?(...args: any[]): void | Promise; use?(...args: any[]): any; destroy?(): Promise | void; }