/** * @fileoverview Chat configuration and model provider initialization. * Handles loading and selecting the appropriate AI model provider and model * based on user preferences stored in localStorage or system defaults. * @module components/ResearchAgent/state/chat/chatConfig */ import { ChatModelProvider } from "../../types/chat"; /** * Initializes and validates the chat model configuration. * * This function performs the following steps: * 1. Fetches available providers from the API * 2. Loads user preferences from localStorage (if any) * 3. Selects an appropriate provider (preferring OpenRouter) * 4. Selects an appropriate model (preferring Nemotron 3 Super 120B) * 5. Saves the selection to localStorage for future sessions * * @param setChatModelProvider - Callback to set the selected provider configuration * @param setIsConfigReady - Callback to signal configuration completion * @param setHasError - Callback to signal configuration errors * * @example * ```typescript * useEffect(() => { * checkConfig(setChatModelProvider, setIsConfigReady, setHasError); * }, []); * ``` * * @throws Will call setHasError(true) if no providers or models are available */ export declare const checkConfig: (setChatModelProvider: (provider: ChatModelProvider) => void, setIsConfigReady: (ready: boolean) => void, setHasError: (hasError: boolean) => void) => Promise;