export declare enum ServiceProvider { DEEPSEEK = "deepseek", GEMINI = "gemini", XUNFEI = "xunfei", YOUCHAT = "youchat", GROQ = "groq", OPENAI = "openai", DOUBAO = "doubao", OPENROUTER = "openrouter", MOONSHOT = "moonshot", IFLOW = "iflow", HUNYUAN = "hunyuan", LONGCHAT = "longchat", OLLAMA = "ollama" } export interface ServiceConfiguration { provider: ServiceProvider; name: string; apiKey: string; apiSecret: string; isValid: boolean; } export declare const getSelectedServiceProvider: () => ServiceProvider; export declare const hasOpenRouterApiKey: () => boolean; export declare const setOpenRouterApiKey: (key: string) => void; export declare const hasMoonshotApiKey: () => boolean; export declare const setMoonshotApiKey: (key: string) => void; export declare const hasApiKey: () => boolean; export declare const getAllServiceConfigurations: () => ServiceConfiguration[]; export declare const setSelectedServiceProvider: (provider: ServiceProvider) => void; export declare const hasDeepSeekApiKey: () => boolean; export declare const hasGeminiApiKey: () => boolean; export declare const hasIflowApiKey: () => boolean; export declare const hasFreeApiKey: () => boolean; export declare const setDeepSeekApiKey: (key: string) => void; export declare const setIflowApiKey: (key: string) => void; export interface StreamDefinitionOptions { topic: string; language?: "zh" | "en"; category?: string; context?: string; allowChatField?: boolean; responseFormat?: 'json' | 'text'; } export interface ServiceProviderImplementation { streamDefinition: (options: StreamDefinitionOptions) => AsyncGenerator; } export interface Prompt { act: string; prompt: string; } export interface PromptConfig { getPromptByName?: (name?: string, language?: string) => string | undefined; formatPrompt?: (prompt: string, replacements: Record) => string; } export declare const setGeminiApiKey: (key: string) => void; export declare function streamDefinition(options: StreamDefinitionOptions): AsyncGenerator; export declare const hasGroqApiKey: () => boolean; export declare const setGroqApiKey: (key: string) => void; export declare const clearAllApiKeys: () => void; export declare const hasLongchatApiKey: () => boolean; export declare const setLongchatApiKey: (key: string) => void; export declare const generatePrompt: (topic: string, language?: "zh" | "en", context?: string) => string; export declare const hasXunfeiApiKey: () => boolean; export declare const hasXunfeiApiSecret: () => boolean; export declare const setXunfeiApiKey: (key: string) => void; export declare const setXunfeiApiSecret: (secret: string) => void; export declare const hasShownApiKeyPrompt: () => boolean; export declare const setHasShownApiKeyPrompt: (shown: boolean) => void; export declare const hasYouChatApiKey: () => boolean; export declare const setYouChatApiKey: (key: string) => void; export declare const hasOpenAiApiKey: () => boolean; export declare const setOpenAiApiKey: (key: string) => void; export declare const hasDoubaoApiKey: () => boolean; export declare const setDoubaoApiKey: (key: string) => void; export declare const hasHunyuanApiKey: () => boolean; export declare const setHunyuanApiKey: (key: string) => void; export declare const getSelectedModel: () => string; export declare const setSelectedModel: (model: string) => void; export declare const getAvailableModels: () => Record; export declare const llmService: { getSelectedServiceProvider: () => ServiceProvider; setSelectedServiceProvider: (provider: ServiceProvider) => void; chat: (prompt: string) => Promise; streamChat: (prompt: string) => AsyncGenerator; handleStream: (stream: AsyncGenerator, callbacks: { onChunk: (chunk: string) => void; onComplete: () => void; }) => Promise; setDoubaoModel: (model: string) => void; hasDoubaoApiKey: () => boolean; setDoubaoApiKey: (key: string) => void; hasDeepSeekApiKey: () => boolean; setDeepSeekApiKey: (key: string) => void; }; export declare const chat: (prompt: string) => Promise; export declare const streamChat: (prompt: string) => AsyncGenerator; export declare const handleStream: (stream: AsyncGenerator, callbacks: { onChunk: (chunk: string) => void; onComplete: () => void; }) => Promise;