import { type DaemonResponse } from "./protocol.js"; /** The compiled daemon entry, resolved relative to this module (dist/daemon/). */ export declare const DAEMON_ENTRY: string; export interface DaemonClientOptions { /** Per-request timeout in ms. 0 disables (default: env BROWSERPLEX_TIMEOUT or 0). */ requestTimeoutMs?: number; } /** * Thin client to the browserplex daemon. Connects to the unix socket, auto-spawning * the daemon on first use, and correlates replies to requests by `id` (the daemon does * NOT guarantee FIFO ordering). */ export declare class DaemonClient { private socket; private decoder; private pending; private nextId; private readonly requestTimeoutMs; constructor(opts?: DaemonClientOptions); /** * Connect to an already-running daemon WITHOUT auto-spawning. Returns false if no daemon is * listening (ENOENT/ECONNREFUSED). Used by `bp daemon status`/`stop`/`serve` which must not spawn. */ connectExisting(): Promise; /** Connect, auto-spawning the daemon if it isn't running yet. */ connect(): Promise; private tryConnect; private spawnDaemon; private attachHandlers; private failAll; /** Send a request and resolve with its (id-matched) response. */ request(tool: string, args?: Record): Promise; close(): void; } //# sourceMappingURL=client.d.ts.map