import type Http from 'http'; import Stream from 'stream'; import { ClickHouseLogLevel, type LogWriter, type ConnOperation, type ResponseHeaders, type ClickHouseSummary } from '@clickhouse/client-common'; import { type NodeConnectionParams } from './node_base_connection'; export interface RequestParams { method: 'GET' | 'POST'; url: URL; headers: Http.OutgoingHttpHeaders; body?: string | Stream.Readable; abort_signal: AbortSignal; enable_response_compression?: boolean; enable_request_compression?: boolean; try_decompress_response_stream?: boolean; ignore_error_response?: boolean; parse_summary?: boolean; query: string; query_id: string; log_writer: LogWriter; log_level: ClickHouseLogLevel; } export interface RequestResult { stream: Stream.Readable; response_headers: ResponseHeaders; http_status_code?: number; summary?: ClickHouseSummary; } type CreateClientRequest = (params: RequestParams) => Http.ClientRequest; export declare class SocketPool { private readonly connectionId; private readonly params; private readonly createClientRequest; private readonly agent; private readonly jsonHandling; private readonly knownSockets; private requestCounter; private getNewRequestId; private socketCounter; private getNewSocketId; constructor(connectionId: string, params: NodeConnectionParams, createClientRequest: CreateClientRequest, agent: Http.Agent); request(params: RequestParams, op: ConnOperation): Promise; private parseSummary; } export {};