///
///
import type { Readable } from "node:stream";
import type { HttpMethod } from "../http-method.js";
type Body = string | Buffer | Readable | null;
declare abstract class BaseHttpPayload {
abstract readonly body: string | Buffer | Readable | null;
tryJson(): Promise;
json(): Promise;
text(): Promise;
arrayBuffer(): Promise;
}
export interface HttpRequestInit {
method: HttpMethod;
headers?: Record;
body?: string | Buffer | null;
params?: Record;
query?: Record;
}
export declare class HttpRequest extends BaseHttpPayload {
readonly url: string;
readonly method: HttpMethod;
readonly headers: Headers;
readonly body: string | Buffer | null;
readonly params: Record;
readonly query?: Record;
constructor(url: string, props: HttpRequestInit);
}
export interface RawHttpResponseInit {
status: number;
statusText?: string;
headers?: Record | Headers;
}
export declare class HttpResponse extends BaseHttpPayload {
readonly body: Body;
readonly status: number;
readonly statusText?: string;
readonly headers: Headers;
constructor(body?: Body, init?: RawHttpResponseInit);
}
export {};
//# sourceMappingURL=request-response.d.ts.map