import type { SubQuestionPrompt } from "./Prompt.js"; import type { BaseQuestionGenerator, SubQuestion } from "./engines/query/types.js"; import type { LLM } from "./llm/types.js"; import { PromptMixin } from "./prompts/index.js"; import type { BaseOutputParser, StructuredOutput, ToolMetadata } from "./types.js"; /** * LLMQuestionGenerator uses the LLM to generate new questions for the LLM using tools and a user query. */ export declare class LLMQuestionGenerator extends PromptMixin implements BaseQuestionGenerator { llm: LLM; prompt: SubQuestionPrompt; outputParser: BaseOutputParser>; constructor(init?: Partial); protected _getPrompts(): { [x: string]: SubQuestionPrompt; }; protected _updatePrompts(promptsDict: { subQuestion: SubQuestionPrompt; }): void; generate(tools: ToolMetadata[], query: string): Promise; }