interface LLMResponse {
    content: string;
    topic: string;
    flag: string;
    importance: "low" | "medium" | "high";
}
interface LLMRequest {
    query: string;
    systemPrompt: string;
    modelName: string;
    jsonMode?: boolean;
    temperature?: number;
}
export declare class LLMClient {
    private client;
    constructor(apiKey: string);
    ask(request: LLMRequest): Promise<LLMResponse>;
}
export declare function parseDocumentToMarkdown(params: {
    file_path: string;
    json_output_path: string;
    md_output_path: string;
    parsing_instruction?: string;
    api_key: string;
    vendor_model?: string;
}): Promise<boolean>;
export declare function extractMarkdownFromJson(jsonPath: string, mdOutputPath: string): Promise<string | null>;
export declare function callLLM(prompt: string, apiKey: string, model?: string): Promise<LLMResponse>;
export declare function getLLMResponse(prompt: string): Promise<LLMResponse>;
export interface ChatMessage {
    role: 'system' | 'user' | 'assistant';
    content: string | Array<{
        type: 'text' | 'image_url';
        text?: string;
        image_url?: {
            url: string;
        };
    }>;
}
export interface EnhancedLLMResponse {
    content: string;
    usage?: {
        prompt_tokens: number;
        completion_tokens: number;
        total_tokens: number;
    };
}
export declare class EnhancedLLMClient {
    private openai;
    constructor(apiKey?: string);
    ask(query: string, systemPrompt?: string, modelName?: string, jsonMode?: boolean, temperature?: number, maxTokens?: number): Promise<any>;
    chatCompletion(messages: ChatMessage[], modelName?: string, temperature?: number, maxTokens?: number): Promise<string>;
    generateEmbedding(text: string, model?: string): Promise<number[]>;
    solveCaptcha(captchaImage: string, prompt?: string): Promise<string>;
}
export {};
