import type { ProgressEvent } from './render-flow.js'; export interface SseSubscriberOpts { apiBaseUrl: string; taskId: string; brainKey: string; cursor?: number; /** 每条 progress 事件回调; 默认写 stderr + renderProgressEvent */ onEvent?: (ev: ProgressEvent) => void; /** done 事件或超时关流后回调 */ onDone?: (reason: string) => void; /** 断流 (> staleMs 无数据) 回调, 默认写 stderr 告警 */ onStale?: () => void; /** 断流判定阈值 ms, 默认 10_000 */ staleMs?: number; /** 最大连接时长 ms, 默认 5 分钟对齐服务端 MAX_CONNECTION_MS */ maxConnectionMs?: number; } export interface SseSubscription { /** 主动关流; 幂等 */ close: () => void; /** 当前 SSE readers 是否还活着 */ readonly closed: boolean; /** 已读最大 seq (给调用方断连重连做 cursor) */ readonly lastSeq: number; } /** * 启动一次 SSE 订阅. 不抛异常 (网络失败在 catch 里静默降级). * 所有输出走 stderr 不污染 stdout 的 JSON-RPC. */ export declare function subscribeProgressStream(opts: SseSubscriberOpts): SseSubscription; //# sourceMappingURL=sse-progress-client.d.ts.map