import { PoolConfig, PoolStats } from '../types'; import { ResultStream } from '../query/result-stream'; import * as Types from './types'; export declare abstract class BaseClient { baseURL: string; abstract fetch: Types.IsoFetch; auth: string | null; timeout: number; constructor(baseURL: string, opts?: Partial); version(): Promise; authMethod(): Promise; query(query: string, opts?: Partial): Promise; createPool(name: string, opts?: Partial): Promise; deletePool(poolId: string): Promise; getPools(): Promise; getPool(nameOrId: string): Promise; getPoolStats(poolId: string): Promise; updatePool(poolId: string, args: Partial): Promise; subscribe(): EventSource; curl(query: string, opts?: Partial): string; protected send(opts: { method: 'GET' | 'POST' | 'DELETE' | 'PUT'; path: string; body?: Types.IsoBody; format?: Types.ResponseFormat; signal?: Types.IsoAbortSignal; headers?: Record; timeout?: number; contentType?: string; }): Promise; private setTimeout; }