export type RemoteEventKind = 'nodes' | 'inbox'; export interface RemoteEventStreamOptions { /** Initial reconnect backoff (ms). Default 1000; injectable so tests don't * have to wait out the production backoff window. */ initialBackoffMs?: number; /** Reconnect backoff cap (ms). Default 30_000. */ backoffCapMs?: number; } export declare class RemoteEventStream { private readonly previewEndpoint; private readonly relayToken; private controller; private stopped; private readonly listeners; private readonly initialBackoffMs; private backoffMs; private readonly BACKOFF_CAP_MS; private reconnectTimer; constructor(previewEndpoint: string, relayToken: string, opts?: RemoteEventStreamOptions); subscribe(fn: (kind: RemoteEventKind) => void): () => void; start(): void; stop(): void; private loop; }