import type { InputValues } from "@langchain/core/utils/types"; import { type ParsedFStringNode, PromptTemplate, type PromptTemplateInput, TypedPromptInputValues } from "@langchain/core/prompts"; export type CustomFormatPromptTemplateInput = Omit, "templateFormat"> & { customParser: (template: string) => ParsedFStringNode[]; templateValidator?: (template: string, inputVariables: string[]) => boolean; renderer: (template: string, values: InputValues) => string; }; export declare class CustomFormatPromptTemplate extends PromptTemplate { static lc_name(): string; lc_serializable: boolean; templateValidator?: (template: string, inputVariables: string[]) => boolean; renderer: (template: string, values: InputValues) => string; constructor(input: CustomFormatPromptTemplateInput); /** * Load prompt template from a template */ static fromTemplate>(template: string, { customParser, ...rest }: Omit, "template" | "inputVariables">): CustomFormatPromptTemplate; /** * Formats the prompt template with the provided values. * @param values The values to be used to format the prompt template. * @returns A promise that resolves to a string which is the formatted prompt. */ format(values: TypedPromptInputValues): Promise; }