/**
 * @module ArgumentsResolvers
 * @description 参数解析器
 */
import ServletContext from '../../http/ServletContext';
import MethodParameter from '../MethodParameter';
import HandlerMethodArgumentResolver from './HandlerMethodArgumentResolver';
import HandlerMethod from '../HandlerMethod';
import MessageConverter from '../../http/converts/MessageConverter';
import ContentNegotiationManager from '../../http/accept/ContentNegotiationManager';
export default class ArgumentsResolvers {
    private readonly registerResolvers;
    private readonly fallbackResolvers;
    private readonly messageConverter;
    constructor(messageConverter: MessageConverter, contentNegotialManager: ContentNegotiationManager);
    /**
     * 注册一个参数解析器
     * @param resolver 解析器
     */
    addArgumentResolvers(resolver: HandlerMethodArgumentResolver): void;
    /**
     * 获取要执行函数的参数值信息
     */
    resolveArguments(servletContext: ServletContext, handler: HandlerMethod): Promise<any[]>;
    /**
     * 解析当前参数值
     * @param { MethodParameter } parameter 当前参数
     * @param { ServletContext } servletContext 当前请求上下文
     */
    resolveArgument(parameter: MethodParameter, servletContext: ServletContext): any;
}
