import { type ChatOpenAI } from '@langchain/openai';
import { type AIActionMetadata } from '../../../../src/lib/llm/openai/types';
import type { BaseCallbackHandler } from "@langchain/core/callbacks/base";
/**
 * Uses LLM to summarize form data in a specified format and language.
 * The function follows these steps:
 * 1. Formats prompt with form data and preferences
 * 2. Runs LLM with appropriate system prompt
 * 3. Returns formatted summary with disclaimer
 *
 * @example
 * const result = await summarizeFormWithLLM({
 *   model,
 *   formData: "Name: John Doe\nAge: 30\n...",
 *   summaryFormat: "Bullet-points",
 *   language: "English",
 *   disclaimerMessage: "AI generated...",
 *   additionalInstructions: "Focus on medication details",
 *   metadata: { ... }
 * })
 */
export declare const summarizeFormWithLLM: ({ model, formData, summaryFormat, language, disclaimerMessage, additionalInstructions, metadata, callbacks, }: {
    model: ChatOpenAI;
    formData: string;
    summaryFormat: string;
    language: string;
    disclaimerMessage: string;
    additionalInstructions?: string;
    metadata: AIActionMetadata;
    callbacks?: BaseCallbackHandler[];
}) => Promise<string>;
