/**
 * CodeWhisperer 实时流式解析器
 * 基于demo2的Go实现移植，实现零延迟二进制流解析
 * 项目所有者: Jason Zhang
 */
import { SSEEvent } from './client-interface';
import { Readable } from 'stream';
export interface BinaryFrame {
    totalLength: number;
    headerLength: number;
    payloadLength: number;
    payload: Buffer;
    offset: number;
}
export declare class CodeWhispererRealtimeParser {
    private readonly maxFrameSize;
    private readonly enableCompression;
    constructor(options?: {
        maxFrameSize?: number;
        enableCompression?: boolean;
    });
    /**
     * 实时解析二进制流 - 基于demo2的ParseEvents函数
     * 返回AsyncIterable以支持真正的流式处理
     */
    parseRealtimeStream(stream: Readable, onProgress?: (progress: {
        parsedBytes: number;
        totalBytes: number;
        eventsCount: number;
    }) => void): AsyncIterable<SSEEvent>;
    /**
     * 解析完整的缓冲区（向后兼容）
     */
    parseEvents(responseBuffer: Buffer): SSEEvent[];
    /**
     * 读取二进制帧 - 基于demo2的帧读取逻辑
     */
    private readBinaryFrame;
    /**
     * 解析帧payload - 基于demo2的payload处理逻辑
     */
    private parseFramePayload;
    /**
     * 将AssistantResponseEvent转换为SSEEvent（完全基于demo2的convertAssistantEventToSSE函数）
     */
    private convertAssistantEventToSSE;
    /**
     * 将流转换为Buffer（用于向后兼容）
     */
    private streamToBuffer;
    /**
     * 实时工具调用解析 - 立即处理而不缓冲
     */
    parseToolCallsRealtime(events: SSEEvent[]): {
        textContent: string;
        toolCalls: Array<{
            id: string;
            name: string;
            input: any;
        }>;
    };
    /**
     * 构建非流式响应
     */
    buildNonStreamResponse(events: any[], model: string): any;
}
//# sourceMappingURL=parser-realtime.d.ts.map