woaru
Version:
Universal Project Setup Autopilot - Analyze and automatically configure development tools for ANY programming language
117 lines • 3.68 kB
TypeScript
export interface AIModel {
id: string;
name: string;
description: string;
isLatest?: boolean;
category?: string;
contextWindow?: number;
supportedFeatures?: string[];
isRecommended?: boolean;
isDeprecated?: boolean;
tier?: 'flagship' | 'balanced' | 'fast' | 'legacy';
}
export declare class AIProviderUtils {
private static aiModelsPath;
private static RECOMMENDED_MODELS;
/**
* Fetch available models from OpenAI API
* @param apiKey - The OpenAI API key
* @returns Promise<AIModel[]> - List of available models
*/
static fetchOpenAIModels(apiKey: string): Promise<AIModel[]>;
/**
* Get only recommended models for better UX
*/
static getRecommendedModels(provider: string, apiKey?: string): Promise<AIModel[]>;
/**
* Check if a model is deprecated
*/
private static isDeprecatedModel;
/**
* Get user-friendly model display name
*/
private static getModelDisplayName;
/**
* Get detailed model description
*/
private static getModelDescription;
/**
* Get model tier for sorting
*/
private static getModelTier;
/**
* Fetch available models from Anthropic API
* Note: Anthropic doesn't provide a models endpoint, so we use ai-models.json
* @param apiKey - The Anthropic API key
* @returns Promise<AIModel[]> - List of available models
*/
static fetchAnthropicModels(_apiKey: string): Promise<AIModel[]>;
/**
* Check if an Anthropic model is deprecated
*/
private static isDeprecatedAnthropicModel;
/**
* Get Anthropic model tier
*/
private static getAnthropicModelTier;
/**
* Fetch available models from Google Gemini API
* @param apiKey - The Google API key
* @returns Promise<AIModel[]> - List of available models
*/
static fetchGoogleModels(apiKey: string): Promise<AIModel[]>;
/**
* Check if a Google model is deprecated
*/
private static isDeprecatedGoogleModel;
/**
* Get Google model tier
*/
private static getGoogleModelTier;
/**
* Fetch available models from DeepSeek API
* Note: DeepSeek uses OpenAI-compatible API but with fixed models
*/
static fetchDeepSeekModels(_apiKey: string): Promise<AIModel[]>;
/**
* Fetch available models from Ollama
* Note: Ollama is local and uses fixed model list from ai-models.json
*/
static fetchOllamaModels(_apiKey: string): Promise<AIModel[]>;
/**
* Check if a DeepSeek model is deprecated
*/
private static isDeprecatedDeepSeekModel;
/**
* Get DeepSeek model tier
*/
private static getDeepSeekModelTier;
/**
* Check if an Ollama model is deprecated
*/
private static isDeprecatedOllamaModel;
/**
* Get Ollama model tier
*/
private static getOllamaModelTier;
/**
* Get fallback models from ai-models.json
* @param provider - The provider ID
* @returns Promise<AIModel[]> - List of fallback models
*/
static getFallbackModels(provider: string): Promise<AIModel[]>;
/**
* Get context window size for known OpenAI models
* @param modelId - The model ID
* @returns number - Context window size
*/
private static getContextWindowForModel;
/**
* Fetch models for any provider
* @param provider - The provider ID
* @param apiKey - The API key
* @returns Promise<AIModel[]> - List of available models
*/
static fetchModelsForProvider(provider: string, apiKey: string): Promise<AIModel[]>;
}
//# sourceMappingURL=AIProviderUtils.d.ts.map