import { Writable } from 'streamx';
import { HTTPSocket } from './http-socket';
import { kHeaders } from './symbols';
declare class Header {
    isMultiValue: boolean;
    name: string;
    value: unknown;
    constructor(name: string, value: unknown);
}
export declare class Response extends Writable {
    socket: HTTPSocket;
    statusCode: number;
    statusMessage?: string;
    headersSent: boolean;
    chunked: boolean;
    contentLength: number | null;
    writableEnded: boolean;
    firstChunk: boolean;
    [kHeaders]: Map<string, Header>;
    constructor(socket: HTTPSocket);
    get aborted(): any;
    get finished(): any;
    get status(): string;
    get bytesWritten(): any;
    hasHeader(name: string): boolean;
    getHeader(name: string): unknown;
    getHeaders(): Record<string, string>;
    setHeader(name: string, value: any): void;
    removeHeader(name: string): void;
    writeHead(statusCode: any, statusMessage: any, headers: any): void;
    end(data: any): void;
    destroy(err: any): void;
    write(data: any): boolean | undefined;
    _write(data: any, cb: any): any;
    _destroy(cb: any): any;
}
export {};
