/**
 * Streaming Request Handler Module
 *
 * 处理流式请求的专用处理器
 * 按照细菌式编程原则：小巧、模块化、自包含
 */
import { FastifyReply } from 'fastify';
import { BaseRequest, Provider } from '@/types';
import { getUnifiedPatchPreprocessor } from '@/preprocessing/unified-patch-preprocessor';
export interface StreamingHandlerDependencies {
    logger: any;
    unifiedPreprocessor: ReturnType<typeof getUnifiedPatchPreprocessor>;
    config: {
        debug: {
            enabled: boolean;
        };
        server: {
            port: number;
        };
    };
}
export declare class StreamingHandler {
    private deps;
    constructor(deps: StreamingHandlerDependencies);
    /**
     * 处理流式请求的主要入口
     */
    handleStreamingRequest(request: BaseRequest, provider: Provider, reply: FastifyReply, requestId: string): Promise<void>;
    /**
     * 验证流式响应的有效性
     */
    private validateStreamResponse;
    /**
     * 初始化流式响应头
     */
    private initializeStreamResponse;
    /**
     * 发送message_start事件
     */
    private sendMessageStart;
    /**
     * 处理流式数据的核心逻辑
     */
    private processStreamData;
    /**
     * 处理单个数据块
     */
    private processChunk;
    /**
     * 处理块事件（停止信号、工具调用等）
     */
    private handleChunkEvents;
    /**
     * 计算数据块的token数量
     */
    private calculateChunkTokens;
    /**
     * 完成流式响应
     */
    private finalizeStreamResponse;
    /**
     * 处理流式错误
     */
    private handleStreamingError;
    /**
     * 发送SSE事件
     */
    private sendSSEEvent;
}
/**
 * 创建Streaming Handler实例的工厂函数
 */
export declare function createStreamingHandler(deps: StreamingHandlerDependencies): StreamingHandler;
//# sourceMappingURL=streaming-handler.d.ts.map