import WebSocket from "ws"; import { ConnectionOptions } from "./schemas"; import { Table, TypeMap } from "apache-arrow"; type WebSocketApiSubset = Pick; type ConnectionTestHarness = { fetch: typeof fetch; WebSocket: { new (url: string, options?: WebSocket.ClientOptions): WebSocketApiSubset; }; protocolVersion?: string | undefined; }; type ExecuteOptions = { signal?: AbortSignal; }; export declare class Connection { static connect(options: ConnectionOptions, testHarness?: ConnectionTestHarness): Promise; static connectDirect(wsUrl: string, options: ConnectionOptions): Promise; private options; private fetch; private fetchOptions; private WebSocket; private ws; private protocolVersion; private wsListeners; private sessionAbortController; constructor(options: ConnectionOptions, testHarness?: ConnectionTestHarness); private establishSession; private connectToWebSocket; private openWebSocket; execute(statement: string, options?: ExecuteOptions): Promise>; private waitForMessage; private addWsListener; private onWsError; private onWsClose; close(): void; [Symbol.dispose](): void; } export {};