import { NextApiResponse } from 'next';
import { type RequestMethod, type MockResponse } from 'node-mocks-http';
import { MakeswiftApiHandler } from '../api-handler';
export type MakeswiftApiHandlerArgs = Partial<Parameters<typeof MakeswiftApiHandler>[1]>;
export declare const hostUrl: (path: string) => URL;
export type RequestParams = {
    method: RequestMethod;
    path: string;
    originalPath?: string;
    body?: Record<string, unknown>;
    headers?: Record<string, string>;
};
export declare function pagesRouterApiRequestFixture(args?: MakeswiftApiHandlerArgs, responseMock?: MockResponse<NextApiResponse>): {
    testApiRequest: (reqParams: RequestParams) => Promise<{
        statusCode: number;
        readonly jsonBody: any;
        readonly textBody: any;
        headers: {
            getSetCookie(): string[] | undefined;
            get(key: string): string | string[] | undefined;
        };
    }>;
    apiKey: string;
};
export declare function appRouterApiRequestFixture(args?: MakeswiftApiHandlerArgs): {
    testApiRequest: (reqParams: RequestParams) => Promise<{
        statusCode: number | undefined;
        readonly jsonBody: Promise<any> | undefined;
        readonly textBody: Promise<string> | undefined;
        headers: Headers;
    }>;
    apiKey: string;
};
export declare const apiRequestFixtures: ({
    fixture: typeof pagesRouterApiRequestFixture;
    router: string;
} | {
    fixture: typeof appRouterApiRequestFixture;
    router: string;
})[];
//# sourceMappingURL=test-utils.d.ts.map