import { GetRunContext, RunContext, MiddlewareType } from './context.cjs'; import { B as BaseAgent, c as AgentMeta } from './base-s3ioVIE9.cjs'; import { AnyTool } from './tools/base.cjs'; import { BaseMemory } from './memory/base.cjs'; import { E as Emitter } from './emitter-D4OcelZ9.cjs'; import { ReActAgentRunOptions, ReActAgentRunIteration, ReActAgentCallbacks, ReActAgentParserInput, ReActAgentMeta, ReActAgentRunInput, ReActAgentIterationToolResult, ReActAgentTemplates, ReActAgentRunOutput, ReActAgentExecutionConfig } from './agents/react/types.cjs'; import { LinePrefixParser } from './parsers/linePrefix.cjs'; import { Serializable } from './internals/serializable.cjs'; import { a as ChatModel } from './chat-C20nYj46.cjs'; import { RetryCounter } from './internals/helpers/counter.cjs'; interface ReActAgentRunnerLLMInput { meta: ReActAgentMeta; signal: AbortSignal; emitter: Emitter; } interface ReActAgentRunnerToolInput { state: ReActAgentIterationToolResult; meta: ReActAgentMeta; signal: AbortSignal; emitter: Emitter; } declare abstract class BaseRunner extends Serializable { protected readonly input: ReActAgentInput; protected readonly options: ReActAgentRunOptions; protected readonly run: GetRunContext; memory: BaseMemory; readonly iterations: ReActAgentRunIteration[]; protected readonly failedAttemptsCounter: RetryCounter; constructor(input: ReActAgentInput, options: ReActAgentRunOptions, run: GetRunContext); createIteration(): Promise<{ emitter: Emitter; state: LinePrefixParser.infer; meta: ReActAgentMeta; signal: AbortSignal; }>; init(input: ReActAgentRunInput): Promise; abstract llm(input: ReActAgentRunnerLLMInput): Promise; abstract tool(input: ReActAgentRunnerToolInput): Promise<{ output: string; success: boolean; }>; abstract get defaultTemplates(): ReActAgentTemplates; get templates(): ReActAgentTemplates; protected abstract initMemory(input: ReActAgentRunInput): Promise; createSnapshot(): { input: ReActAgentInput; options: ReActAgentRunOptions; memory: BaseMemory; failedAttemptsCounter: RetryCounter; }; loadSnapshot(snapshot: ReturnType): void; } type ReActAgentTemplateFactory = (template: ReActAgentTemplates[K]) => ReActAgentTemplates[K]; interface ReActAgentInput { llm: ChatModel; tools: AnyTool[]; memory: BaseMemory; meta?: Omit; templates?: Partial<{ [K in keyof ReActAgentTemplates]: ReActAgentTemplates[K] | ReActAgentTemplateFactory; }>; execution?: ReActAgentExecutionConfig; stream?: boolean; } declare class ReActAgent extends BaseAgent { protected readonly input: ReActAgentInput; readonly emitter: Emitter; protected runner: new (...args: ConstructorParameters) => BaseRunner; constructor(input: ReActAgentInput); set memory(memory: BaseMemory); get memory(): BaseMemory; get meta(): AgentMeta; protected _run(input: ReActAgentRunInput, options: ReActAgentRunOptions | undefined, run: GetRunContext): Promise; createSnapshot(): { input: ReActAgentInput; emitter: Emitter; runner: new (input: ReActAgentInput, options: ReActAgentRunOptions, run: RunContext) => BaseRunner; isRunning: boolean; middlewares: MiddlewareType[]; }; } export { BaseRunner as B, type ReActAgentInput as R, ReActAgent as a, type ReActAgentRunnerLLMInput as b, type ReActAgentRunnerToolInput as c, type ReActAgentTemplateFactory as d };