import { Context } from '@loopback/context'; import { IGraphNode, RunnableConfig } from '../../../graphs'; import { LLMProvider } from '../../../types'; import { VisualizationGraphState } from '../state'; import { PromptTemplate } from '@langchain/core/prompts'; export declare class SelectVisualizationNode implements IGraphNode { private readonly llm; private readonly context; prompt: PromptTemplate\nYou are expert Data Analysis Agent whose job is to suggest visualisations that would be best suited to display the results for a particular user prompt and the data extracted based on that prompt.\nYou are provided with 2 inputs -\n- user prompt\n- A list of visualization names with their descriptions that are supported.\n\nYou need to suggest a visualisation from a list of visualisation that would best fit the user's request.\n\n\n\n{prompt}\n\n\n\n{sql}\n\n\n{description}\n\n\n\n{visualizations}\n\n\n\n\nThe output should be a single string that has the name from the visualizations list and nothing else.\nIf none of the visualizations fit the requirement, return \"none\" followed by the changes required in the data to be able to render the visualization.\nDo not try to force fit the prompt to any visualization if it does not make sense. Prefer to returning none with appropriate reason instead.\n\n\ntype-of-visualization\n\n\nnone: reason why the visualization is not possible with the current prompt.\n\n\n">, any>; constructor(llm: LLMProvider, context: Context); execute(state: VisualizationGraphState, config: RunnableConfig): Promise; private _getVisualizations; }