import { Type } from '@tsdi/ioc';
import { ICoreInjector } from '@tsdi/core';
import { IMiddleware } from './IMiddleware';
import { MiddlewareMetadata } from '../metadata';
/**
 * middleware register.
 *
 * @export
 * @class MiddlewareRegister
 */
export declare class MiddlewareRegister {
    static ρNPT: boolean;
    map: Map<Type<IMiddleware>, MiddlewareMetadata>;
    constructor();
    set(key: Type<IMiddleware>, val: MiddlewareMetadata): void;
    /**
     * setup middleware.
     *
     * @param {ICoreInjector} injector
     * @memberof MiddlewareRegister
     */
    setup(injector: ICoreInjector): void;
    static ρAnn(): any;
}
