import { Voice } from "../voice";
import { InvocationResult, LanguageModel, LanguageModelParams, TelephonyContext } from "./types";
declare abstract class AbstractLanguageModel implements LanguageModel {
    private readonly chain;
    private readonly chatHistory;
    private readonly toolsCatalog;
    private readonly voice;
    private readonly goodbyeMessage;
    private readonly firstMessage;
    private readonly transferOptions;
    constructor(params: LanguageModelParams, voice: Voice, telephonyContext: TelephonyContext);
    invoke(text: string): Promise<InvocationResult>;
    getChatHistoryMessages(): Promise<import("@langchain/core/messages").BaseMessage[]>;
}
export { AbstractLanguageModel };
