import type ValueCollection from "../../../classes/ValueCollection"; import type { CompressionAlgorithm, Method } from "../../global"; import type { WebsocketData } from "../handle"; import type { Readable } from "stream"; export declare abstract class HttpContext { private compression; abstract aborted(): AbortSignal; abstract type(): 'http' | 'ws'; abstract method(): Method; abstract path(): string; abstract clientIP(): string; abstract clientPort(): number; abstract getHeaders(): ValueCollection; abstract onBodyChunk(callback: (chunk: ArrayBuffer, isLast: boolean) => Promise): Promise; compress(algorithm: CompressionAlgorithm | null): this; getCompression(): CompressionAlgorithm | null; compressionHeader(chunked: boolean): this; abstract status(code: number, message: string): this; abstract header(key: string, value: string): this; abstract write(data: ArrayBuffer | Readable): Promise; abstract writeFile(file: string, start?: number, end?: number): void; abstract upgrade(data: WebsocketData): boolean; }