/**
 * @module MappedInterceptor
 * @description 一个带路径匹配模式的拦截器.
 */
import HandlerInterceptor from './HandlerInterceptor';
import HttpServletRequest from '../http/HttpServletRequest';
import HttpServletResponse from '../http/HttpServletResponse';
import PathMatcher from '../util/PathMatcher';
export default class MappedInterceptor implements HandlerInterceptor {
    private includePatterns;
    private excludePatterns;
    private interceptor;
    private pathMatcher;
    /**
     * 构造一个路径匹配型拦截器
     * @param includePatterns 包含项规则列表
     * @param excludePatterns 排除项规则列表
     * @param interceptor 当前实际承载的拦截器
     */
    constructor(includePatterns: Array<string>, excludePatterns: Array<string>, interceptor: HandlerInterceptor);
    /**
     * 根据传入的请求对象进行路径匹配，用以判定是否可以使用当前拦截器。
     */
    matches(request: HttpServletRequest): boolean;
    /**
     * 执行路径规则匹配
     * @param pattern 规则
     * @param path 路径
     */
    private matchPattern;
    /**
     * 设置当前路径匹配器
     */
    setPathMatcher(pathMatcher: PathMatcher): void;
    preHandle(request: HttpServletRequest, response: HttpServletResponse, handler: any): Promise<boolean> | boolean;
    postHandle(request: HttpServletRequest, response: HttpServletResponse, handler: any, modelAndView: any): void;
    afterCompletion(request: HttpServletRequest, response: HttpServletResponse, handler: any, ex: any): void;
}
