import { AxiosRequestConfig } from 'axios';
import type { Expectation, IExpectationSchemaForward } from '../../../expectations';
import type { HttpRequestContext } from './context';
import { Executor, IRequestContextOutgoing, IRequestContextIncoming, IExecutorExecOptions, IRequestContextForwarded } from '../../models';
export declare class HttpExecutor extends Executor<HttpRequestContext> {
    exec(context: HttpRequestContext, options?: IExecutorExecOptions): Promise<HttpRequestContext>;
    match(context: HttpRequestContext): Promise<Expectation | null>;
    forward(context: HttpRequestContext, incoming: IRequestContextIncoming, schema: IExpectationSchemaForward): Promise<IRequestContextForwarded>;
    reply(context: HttpRequestContext, outgoing: IRequestContextOutgoing): Promise<IRequestContextOutgoing>;
    /** Compiles Axios request configuration to forward */
    protected compileForwardingConfiguration(context: HttpRequestContext, incoming: IRequestContextIncoming, schema: IExpectationSchemaForward): Promise<AxiosRequestConfig>;
}
//# sourceMappingURL=executor.d.ts.map