/**
 * Credential retrieval utilities for CLI commands
 *
 * Provides unified API key retrieval with proper fallback order:
 * 1. CredentialManager (keychain/file storage via cv auth setup)
 * 2. Config file (.cv/config.json)
 * 3. Environment variable
 */
/**
 * Get OpenAI API key with fallback order:
 * 1. CredentialManager (keychain/file storage)
 * 2. Config value (if provided)
 * 3. Environment variable
 */
export declare function getOpenAIApiKey(configApiKey?: string): Promise<string | null>;
/**
 * Get OpenRouter API key with fallback order:
 * 1. CredentialManager (keychain/file storage)
 * 2. Config value (if provided)
 * 3. Environment variable
 */
export declare function getOpenRouterApiKey(configApiKey?: string): Promise<string | null>;
/**
 * Get Anthropic API key with fallback order:
 * 1. CredentialManager (keychain/file storage)
 * 2. Config value (if provided)
 * 3. Environment variable
 */
export declare function getAnthropicApiKey(configApiKey?: string): Promise<string | null>;
/**
 * Embedding credentials with provider info
 */
export interface EmbeddingCredentials {
    openrouterApiKey?: string;
    openaiApiKey?: string;
    provider: 'openrouter' | 'openai' | 'ollama';
}
/**
 * Get embedding API keys with provider priority: OpenRouter > OpenAI > Ollama
 * Returns both keys if available so VectorManager can handle fallbacks
 */
export declare function getEmbeddingCredentials(config?: {
    openaiKey?: string;
    openRouterKey?: string;
}): Promise<EmbeddingCredentials>;
/**
 * Get embedding API key (tries OpenRouter first, then OpenAI)
 * OpenRouter is preferred due to better model availability
 * @deprecated Use getEmbeddingCredentials() instead for proper provider handling
 */
export declare function getEmbeddingApiKey(config?: {
    openaiKey?: string;
    openRouterKey?: string;
}): Promise<string | null>;
/**
 * Get AI/LLM API key for chat/explain/review commands
 * Tries Anthropic first, then OpenAI, then OpenRouter
 */
export declare function getAIApiKey(config?: {
    anthropicKey?: string;
    openaiKey?: string;
    openRouterKey?: string;
}): Promise<{
    key: string;
    provider: 'anthropic' | 'openai' | 'openrouter';
} | null>;
//# sourceMappingURL=credentials.d.ts.map