{"version":3,"file":"cypher.d.cts","names":["BaseLanguageModelInterface","ChainValues","BasePromptTemplate","CallbackManagerForChainRun","LLMChain","BaseChain","ChainInputs","Neo4jGraph","INTERMEDIATE_STEPS_KEY","GraphCypherQAChainInput","FromLLMInput","GraphCypherQAChain","Promise"],"sources":["../../../src/chains/graph_qa/cypher.d.ts"],"sourcesContent":["import type { BaseLanguageModelInterface } from \"@langchain/core/language_models/base\";\nimport { ChainValues } from \"@langchain/core/utils/types\";\nimport { BasePromptTemplate } from \"@langchain/core/prompts\";\nimport { CallbackManagerForChainRun } from \"@langchain/core/callbacks/manager\";\nimport { LLMChain, BaseChain, ChainInputs } from \"@langchain/classic/chains\";\nimport { Neo4jGraph } from \"../../graphs/neo4j_graph.js\";\nexport declare const INTERMEDIATE_STEPS_KEY = \"intermediateSteps\";\nexport interface GraphCypherQAChainInput extends ChainInputs {\n    graph: Neo4jGraph;\n    cypherGenerationChain: LLMChain;\n    qaChain: LLMChain;\n    inputKey?: string;\n    outputKey?: string;\n    topK?: number;\n    returnIntermediateSteps?: boolean;\n    returnDirect?: boolean;\n}\nexport interface FromLLMInput {\n    graph: Neo4jGraph;\n    llm?: BaseLanguageModelInterface;\n    cypherLLM?: BaseLanguageModelInterface;\n    qaLLM?: BaseLanguageModelInterface;\n    qaPrompt?: BasePromptTemplate;\n    cypherPrompt?: BasePromptTemplate;\n    returnIntermediateSteps?: boolean;\n    returnDirect?: boolean;\n}\n/**\n * Chain for question-answering against a graph by generating Cypher statements.\n *\n * @example\n * ```typescript\n * const chain = new GraphCypherQAChain({\n *   llm: new ChatOpenAI({ model: \"gpt-4o-mini\", temperature: 0 }),\n *   graph: new Neo4jGraph(),\n * });\n * const res = await chain.invoke(\"Who played in Pulp Fiction?\");\n * ```\n *\n * @security\n * This chain will execute Cypher statements against the provided database.\n * Make sure that the database connection uses credentials\n * that are narrowly-scoped to only include necessary permissions.\n * Failure to do so may result in data corruption or loss, since the calling code\n * may attempt commands that would result in deletion, mutation of data\n * if appropriately prompted or reading sensitive data if such data is present in the database.\n * The best way to guard against such negative outcomes is to (as appropriate) limit the\n * permissions granted to the credentials used with this tool.\n *\n * See https://js.langchain.com/docs/security for more information.\n */\nexport declare class GraphCypherQAChain extends BaseChain {\n    private graph;\n    private cypherGenerationChain;\n    private qaChain;\n    private inputKey;\n    private outputKey;\n    private topK;\n    private returnDirect;\n    private returnIntermediateSteps;\n    constructor(props: GraphCypherQAChainInput);\n    _chainType(): \"graph_cypher_chain\";\n    get inputKeys(): string[];\n    get outputKeys(): string[];\n    static fromLLM(props: FromLLMInput): GraphCypherQAChain;\n    private extractCypher;\n    _call(values: ChainValues, runManager?: CallbackManagerForChainRun): Promise<ChainValues>;\n}\n//# sourceMappingURL=cypher.d.ts.map"],"mappings":";;;;;;;;cAMqBQ,sBAAAA;UACJC,uBAAAA,SAAgCH;EAD5BE,KAAAA,EAEVD,UAFUC;EACJC,qBAAAA,EAEUL,QAFa;EAC7BG,OAAAA,EAEEH,QAFFG;EACgBH,QAAAA,CAAAA,EAAAA,MAAAA;EACdA,SAAAA,CAAAA,EAAAA,MAAAA;EAHoCE,IAAAA,CAAAA,EAAAA,MAAAA;EAAW,uBAAA,CAAA,EAAA,OAAA;EAU3CI,YAAAA,CAAAA,EAAY,OAAA;;AAEnBV,UAFOU,YAAAA,CAEPV;EACMA,KAAAA,EAFLO,UAEKP;EACJA,GAAAA,CAAAA,EAFFA,0BAEEA;EACGE,SAAAA,CAAAA,EAFCF,0BAEDE;EACIA,KAAAA,CAAAA,EAFPF,0BAEOE;EAAkB,QAAA,CAAA,EADtBA,kBACsB;EA4BhBS,YAAAA,CAAAA,EA5BFT,kBA4BoB;EAShBO,uBAAAA,CAAAA,EAAAA,OAAAA;EAIGC,YAAAA,CAAAA,EAAAA,OAAAA;;;;;;;AAb+B;;;;;;;;;;;;;;;;;;;cAApCC,kBAAAA,SAA2BN,SAAAA;;;;;;;;;qBASzBI;;;;wBAIGC,eAAeC;;gBAEvBV,0BAA0BE,6BAA6BS,QAAQX"}