import { EngineResponse } from "../../EngineResponse.js"; import type { ServiceContext } from "../../ServiceContext.js"; import { PromptMixin } from "../../prompts/index.js"; import type { BaseSelector } from "../../selectors/index.js"; import { TreeSummarize } from "../../synthesizers/index.js"; import type { QueryEngine, QueryEngineParamsNonStreaming, QueryEngineParamsStreaming } from "../../types.js"; type RouterQueryEngineTool = { queryEngine: QueryEngine; description: string; }; /** * A query engine that uses multiple query engines and selects the best one. */ export declare class RouterQueryEngine extends PromptMixin implements QueryEngine { private selector; private queryEngines; private metadatas; private summarizer; private verbose; constructor(init: { selector: BaseSelector; queryEngineTools: RouterQueryEngineTool[]; serviceContext?: ServiceContext; summarizer?: TreeSummarize; verbose?: boolean; }); _getPromptModules(): Record; static fromDefaults(init: { queryEngineTools: RouterQueryEngineTool[]; selector?: BaseSelector; serviceContext?: ServiceContext; summarizer?: TreeSummarize; verbose?: boolean; }): RouterQueryEngine; query(params: QueryEngineParamsStreaming): Promise>; query(params: QueryEngineParamsNonStreaming): Promise; private queryRoute; } export {};