/// <reference types="node" />
import request from 'supertest';
import { HttpStatusCode } from '../../models';
export declare type CommonRequestParams = {
    url: string;
    path?: string;
    contentType?: string;
    range?: string;
    redirects?: number;
    accept?: string;
    host?: string;
    token?: string;
    headers?: {
        [name: string]: string;
    };
    type?: string;
    xForwardedFor?: string;
    expectedStatus?: HttpStatusCode;
};
declare function makeRawRequest(options: {
    url: string;
    token?: string;
    expectedStatus?: HttpStatusCode;
    range?: string;
    query?: {
        [id: string]: string;
    };
}): request.Test;
declare function makeGetRequest(options: CommonRequestParams & {
    query?: any;
    rawQuery?: string;
}): request.Test;
declare function makeHTMLRequest(url: string, path: string): request.Test;
declare function makeActivityPubGetRequest(url: string, path: string, expectedStatus?: HttpStatusCode): request.Test;
declare function makeDeleteRequest(options: CommonRequestParams & {
    query?: any;
    rawQuery?: string;
}): request.Test;
declare function makeUploadRequest(options: CommonRequestParams & {
    method?: 'POST' | 'PUT';
    fields: {
        [fieldName: string]: any;
    };
    attaches?: {
        [attachName: string]: any | any[];
    };
}): request.Test;
declare function makePostBodyRequest(options: CommonRequestParams & {
    fields?: {
        [fieldName: string]: any;
    };
}): request.Test;
declare function makePutBodyRequest(options: {
    url: string;
    path: string;
    token?: string;
    fields: {
        [fieldName: string]: any;
    };
    expectedStatus?: HttpStatusCode;
}): request.Test;
declare function decodeQueryString(path: string): import("querystring").ParsedUrlQuery;
declare function unwrapBody<T>(test: request.Test): Promise<T>;
declare function unwrapText(test: request.Test): Promise<string>;
declare function unwrapBodyOrDecodeToJSON<T>(test: request.Test): Promise<T>;
declare function unwrapTextOrDecode(test: request.Test): Promise<string>;
export { makeHTMLRequest, makeGetRequest, decodeQueryString, makeUploadRequest, makePostBodyRequest, makePutBodyRequest, makeDeleteRequest, makeRawRequest, makeActivityPubGetRequest, unwrapBody, unwrapTextOrDecode, unwrapBodyOrDecodeToJSON, unwrapText };
//# sourceMappingURL=requests.d.ts.map