import { ChatService } from './ChatService';
import { ChatServiceOptions, ChatServiceProvider } from './providers/ChatServiceProvider';
/**
 * Chat service factory
 * Manages and creates various AI providers
 */
export declare class ChatServiceFactory {
    /** Map of registered providers */
    private static providers;
    /**
     * Register a new provider
     * @param provider Provider instance
     */
    static registerProvider(provider: ChatServiceProvider): void;
    /**
     * Create a chat service with the specified provider name and options
     * @param providerName Provider name
     * @param options Service options
     * @returns Created ChatService instance
     */
    static createChatService(providerName: string, options: ChatServiceOptions): ChatService;
    /**
     * Get registered providers
     * @returns Provider map
     */
    static getProviders(): Map<string, ChatServiceProvider>;
    /**
     * Get array of available provider names
     * @returns Array of provider names
     */
    static getAvailableProviders(): string[];
    /**
     * Get models supported by the specified provider
     * @param providerName Provider name
     * @returns Array of supported models, empty array if provider doesn't exist
     */
    static getSupportedModels(providerName: string): string[];
}
