import type { ClaudeCodeEvent, ClaudeCodeEventExtended, ClaudeCodeResult } from "../types.js"; export interface ClaudeCodeCurrentTool { id: string; name: string; input: Record; } export interface ClaudeCodeToolCall extends ClaudeCodeCurrentTool { output?: string; isError?: boolean; } export interface ClaudeCodeAllToolCall extends ClaudeCodeToolCall { iteration: number; } export interface ClaudeCodeEventState { isRunning: boolean; currentIteration: number; maxIterations: number; text: string; currentTool: ClaudeCodeCurrentTool | null; toolCalls: ClaudeCodeToolCall[]; result: ClaudeCodeResult | null; error: string | null; } export interface ClaudeCodeEventReducerOptions { keepEventHistory?: boolean; maxEventHistory?: number; trackAllToolCalls?: boolean; } type ClaudeCodeEventStateWithOptionalTracking = ClaudeCodeEventState & { events?: ClaudeCodeEvent[]; allToolCalls?: ClaudeCodeAllToolCall[]; }; export declare function createClaudeCodeEventState(): ClaudeCodeEventState; export declare function isClaudeCodeCoreEvent(event: ClaudeCodeEventExtended): event is ClaudeCodeEvent; export declare function reduceClaudeCodeEventState(previous: TState, event: ClaudeCodeEvent, options?: ClaudeCodeEventReducerOptions): TState; export {}; //# sourceMappingURL=event-state-reducer.d.ts.map