import { IAgentPromptTemplate } from "../core/IPromptTemplate"; import { ClassificationTypeConfig } from "../core/IClassifier"; import { InferContext, InferMode, InferStrategy } from "../core/InferContext"; import { PromptManager, SessionContext } from "../core"; export declare class ReActPromptTemplate> implements IAgentPromptTemplate { protected classificationTypes: T; protected strategy: InferStrategy; private context; constructor(classificationTypes: T, strategy?: InferStrategy); setStrategy(strategy: InferStrategy): void; evaluateMode(sessionContext: SessionContext): Promise; setContext(context: InferContext): void; getAssistantPrompt(sessionContext: SessionContext): Promise; private getDirectInstructions; private getReActInstructions; private useExample; getSystemPrompt(sessionContext: SessionContext): Promise; getMessageClassificationPrompt(message: string): string; getMetaPrompt(): string; private getFormattedSchemas; extractDataFromLLMResponse(response: string): string; getClassificationTypes(): T; debugPrompt(promptManager: PromptManager, type: "system" | "assistant", sessionContext: SessionContext): Promise; /** * Parse the prompt to replace escaped newline and tab characters with actual newline and tabs * and to parse JSON blocks inside ```json ... ```. This is specific to this prompt template. * Useful for debugging and testing. * @param input * @returns */ private parsePrompt; }