import MockRequest from './mock-request.mjs';
import { R as Request } from '../index-D3_z6QHM.mjs';
import './mock-assert.mjs';
import '../types.mjs';

/**
 * @param {Integer} id
 * @param {Object} client - the client generated by {@link forge}
 */
declare function MockResource(id: Integer, client: Object): void;
declare class MockResource {
    /**
     * @param {Integer} id
     * @param {Object} client - the client generated by {@link forge}
     */
    constructor(id: Integer, client: Object);
    id: Integer;
    manifest: any;
    resourceName: any;
    methodName: any;
    requestParams: {};
    responseData: any;
    responseHandler: any;
    responseHeaders: {};
    responseStatus: number;
    responseStatusHandler: any;
    mockRequest: MockRequest | null;
    asyncFinalRequest: any;
    pendingMiddlewareExecution: boolean;
    /**
     * @return {MockResource}
     */
    resource(resourceName: any): MockResource;
    /**
     * @return {MockResource}
     */
    method(methodName: any): MockResource;
    /**
     * @return {MockResource}
     */
    with(requestParams: any): MockResource;
    /**
     * @return {MockResource}
     */
    headers(responseHeaders: any): MockResource;
    /**
     * @return {MockResource}
     */
    status(responder: any): MockResource;
    /**
     * @return {MockResource}
     */
    response(responder: any): MockResource;
    /**
     * @return {Promise<MockAssert>}
     */
    assertObjectAsync(): Promise<MockAssert>;
    /**
     * @return {MockAssert}
     */
    assertObject(): MockAssert;
    /**
     * @return {MockRequest}
     */
    toMockRequest(): MockRequest;
    /**
     * @private
     */
    generateUrlMatcher(finalRequest: any): any;
    /**
     * @private
     */
    executeMiddlewareStack(): any;
    /**
     * @private
     */
    evaluateParamMatchers(mockParams: any, requestParams: any): {};
    /**
     * @private
     * It never runs the middleware stack
     */
    createRequest(): Request;
    /**
     * @private
     * Always runs the middleware stack
     */
    createAsyncRequest(): any;
}

export { MockResource as default };
