/// import { ServerResponse, OutgoingHttpHeaders, IncomingMessage } from 'http'; import { Stream } from 'stream'; import contentDisposition from 'content-disposition'; import { WebApplication } from './WebApplication'; import { WebContext } from './WebContext'; export declare type ResponseBody = null | string | Buffer | Stream | object; export declare class WebResponse { readonly res: ServerResponse; protected readonly app: WebApplication; req?: IncomingMessage; ctx?: WebContext; protected explicitStatus: boolean; protected explicitNullBody: boolean; protected _body: ResponseBody; constructor(app: WebApplication, res: ServerResponse); get socket(): import("net").Socket; getHeaders(): Required; setHeaders(fields: OutgoingHttpHeaders): void; get statusCode(): number; set statusCode(code: number); get statusMessage(): string; set statusMessage(msg: string); get body(): ResponseBody; set body(val: ResponseBody); get contentLength(): number; set contentLength(length: number); get headersSent(): boolean; vary(field: string | string[]): void; redirect(url: string, alt: string): void; attachment(filename: string, options: contentDisposition.Options): void; set contentType(type: string); get contentType(): string; set lastModified(val: Date | undefined); get lastModified(): Date | undefined; set etag(val: string); get etag(): string; is(type: string, ...types: string[]): string | false; getHeader(field: string): string | number | string[]; hasHeader(field: string): boolean; setHeader(field: string, value: string | number | string[]): void; setHeader(fields: Record): void; appendHeader(field: string, value: string | string[]): void; removeHeader(field: string): void; get writable(): boolean; protected inspect(): Record | undefined; protected toJSON(): Record; flushHeaders(): void; }