export type ChunkType = 'begin' | 'item' | 'end' | 'error'; export type ObjectContent = { text_chunk: string; metadata?: { operation?: 'toolCall' | 'response' | 'inputUpdate' | 'optimizationResult'; operationData?: { selectorId?: string; text?: string; }; [key: string]: unknown; }; }; export interface StructuredChunk { type: ChunkType; content?: string | ObjectContent; metadata: { nodeId: string; nodeName: string; timestamp: number; runIndex: number; itemIndex: number; token_count?: number; token_percentage?: number; max_tokens?: number; tokens_this_request?: number; }; } export interface NodeStreamingState { nodeId: string; chunks: string[]; isActive: boolean; startTime: number; }