import type { AgAiResponseHandler } from '../../api/ai/agAiAssistant'; import type { AgAiTurnState } from '../../api/state/agAiAssistantState'; import { BeanStub } from '../core/beanStub'; import type { StateProvider } from '../interfaces/stateProvider'; import type { AiMessageModel } from './messages/aiMessageModel'; import { AiToolCallModel } from './messages/toolCallModel'; import type { AnyTool } from './tools/types'; import type { AiTurnEvents, MessageModelFactory } from './types'; export declare class AiTurn extends BeanStub implements StateProvider { readonly id: string; readonly input: AiMessageModel[]; readonly output: AiMessageModel[]; private readonly _pendingToolCalls; private readonly tools; constructor(id?: string, tools?: AnyTool[]); get pendingToolCalls(): readonly AiToolCallModel[]; setInput(models: AiMessageModel[]): void; setState(state: AgAiTurnState | undefined): void; addModel(model: AiMessageModel): void; handleStream(handler: AgAiResponseHandler, createModel: MessageModelFactory, abortSignal: AbortSignal): Promise; hasPendingToolCalls(): boolean; getToolCalls(): AiToolCallModel[]; getState(): AgAiTurnState; private handleStreamEvent; private createStreamingItem; private findMessage; }