import { Constructor } from '../types/Constructor'; import { Middleware } from './Middleware'; export interface IMiddleFilterOptions { type?: Constructor; middleware?: T[]; filter?: (middleware: T) => boolean; } export declare class MiddlewareFilter { scope?: Constructor; include?: { type?: Constructor; middleware?: (T | Constructor)[]; filter?: (middleware: T) => boolean; }; exclude?: { type?: Constructor; middleware?: (T | Constructor)[]; filter?: (middleware: T) => boolean; }; constructor(options: Partial<{ scope?: Constructor; include?: IMiddleFilterOptions; exclude: IMiddleFilterOptions; }>); filter(middleware: T[]): T[]; }