import { EventEmitter } from 'events'; import type { RpcTransport } from './ipc-transport'; /** * Per-call RPC timeout in milliseconds. * This timeout applies to individual RPC method calls, not to multi-step operations like batch scans. * Configure via GRAPH_RPC_TIMEOUT_MS environment variable. * Default: 120000 (120 seconds) */ export declare const RPC_TIMEOUT_MS: number; /** * Per-call RPC timeout for scan-related methods (prepareScan, scanBatch, finalizeScan). * Scans can take minutes on large repos (tree-sitter parsing + SQLite writes), so they * get a much longer budget than regular read/query RPCs. * Configure via GRAPH_SCAN_TIMEOUT_MS environment variable. * Default: 600000 (10 minutes) */ export declare const RPC_SCAN_TIMEOUT_MS: number; /** * Generic RPC client. Speaks to either: * - an in-process Worker (leader mode; WorkerTransport wraps it), or * - a Unix socket / named pipe leader (follower mode; SocketTransport). * * The transport is responsible for delivery and liveness; RpcClient only * tracks pending calls and timeouts. */ export declare class RpcClient extends EventEmitter { private logger?; private transport; private pendingCalls; private callId; private terminated; private transportError; constructor(transportOrWorker: RpcTransport | Worker, logger?: { error: (msg: string, error?: unknown) => void; debug?: (msg: string) => void; } | undefined); private setupTransportHandlers; private rejectAllPending; private handleMessage; call(method: string, args: unknown[], timeoutMs?: number): Promise; terminate(): void; isHealthy(): boolean; markTerminated(): void; /** Swap the underlying transport (used for failover — see Phase 4). */ setTransport(transport: RpcTransport): void; } /** * RPC server for worker side */ export declare class RpcServer { private handlers; register(method: string, handler: (args: unknown[]) => Promise | unknown): void; handle(message: unknown, postResponse: (response: unknown) => void): Promise; emit(_event: string, _payload?: unknown): void; } //# sourceMappingURL=rpc.d.ts.map