///
import type { Cookie } from './Cookie';
import type { JsonValue } from 'type-fest';
import type { Request } from './Request';
import { ResponseHeader } from './ResponseHeader';
import type { ServerResponse } from 'http';
import type { Stream } from 'stream';
export declare class Response {
nodeRes: ServerResponse;
private req;
private cookie;
header: ResponseHeader;
isSend: boolean;
isStatuscodeSetManual: boolean;
private bodyType;
private _body;
constructor(nodeRes: ServerResponse, req: Request, cookie: Cookie);
send(): void;
json(data: T): this;
html(html: string): this;
text(text: string): this;
buffer(buffer: Buffer): this;
stream(stream: Stream): this;
redirect(url: string, statusCode?: number): void;
getStatusCode(): number;
setStatusCode(statusCode: number): this;
getStatusMessage(): string;
setStatusMessage(message: string): this;
private setCookies;
private getStatusMessageFromStatusCode;
private sendJsonResponse;
private sendBufferOrStreamResponse;
private sendDefaultResponse;
private setContentLengthByByteLength;
}