export type TextLlmProviderName = "gemini" | "openai" | "anthropic" | "none";
export type TextLlmClient = {
    provider: TextLlmProviderName;
    model: string;
    generateText: (args: {
        prompt: string;
        temperature?: number;
        maxOutputTokens?: number;
    }) => Promise<string>;
};
export type TextLlmHistoryMessage = {
    role: "user" | "model";
    parts: Array<{
        text: string;
    }>;
};
export declare function historyToPrompt(history: TextLlmHistoryMessage[]): string;
export declare function generateTextFromHistory(llm: TextLlmClient, history: TextLlmHistoryMessage[], opts?: {
    temperature?: number;
    maxOutputTokens?: number;
}): Promise<string>;
export declare function createTextLlmClient(opts: {
    model: string;
    preferredProvider?: string;
}): Promise<TextLlmClient>;
