import ResourceHandlerRegistration from './ResourceHandlerRegistration';
import HttpServletResponse from '../http/HttpServletResponse';
import HttpServletRequest from '../http/HttpServletRequest';
import Resource from './Resource';
import type { ResourceConfig } from '../config/WebAppConfigurerOptions';
import HttpRequestHandler from '../http/HttpRequestHandler';
export default class ResourceHttpRequestHandler implements HttpRequestHandler {
    readonly registration: ResourceHandlerRegistration;
    private allowHeaders;
    private readonly resourceConfig;
    private readonly resourceHttpMessageConverter;
    private readonly resourceRegionHttpMessageConverter;
    private resourceResolverChain;
    private resourceTransformerChain;
    constructor(registration: ResourceHandlerRegistration, config: ResourceConfig);
    initResolversAndTransformers(): void;
    /**
     * 处理静态资源请求
     */
    handleRequest(request: HttpServletRequest, response: HttpServletResponse): Promise<any>;
    /**
     * 处理请求url
     * @param request
     */
    processPath(request: HttpServletRequest): string;
    /**
    * 根据请求对象对应的静态资源
    */
    getResource(request: HttpServletRequest): Promise<Resource>;
    /**
     * 校验请求谓词
     */
    checkRequest(request: HttpServletRequest, response: HttpServletResponse): Promise<Resource>;
    /**
     * 设置资源文件返回头
     */
    setHeaders(response: HttpServletResponse, resource: Resource): void;
}
