/** * Model metadata and selection management */ import type { Model, ModelConfig, Configuration } from '../types/index.js'; /** * Get model by ID from cache */ export declare function getModelById(config: Configuration, modelId: string): Promise; /** * Search models by name or ID */ export declare function searchModels(config: Configuration, query: string): Promise; /** * Get popular models (commonly used ones) */ export declare function getPopularModels(config: Configuration): Promise; /** * Convert Model to ModelConfig */ export declare function modelToConfig(model: Model, enabled?: boolean): ModelConfig; /** * Get next model in cycling order */ export declare function getNextModel(enabledModels: ModelConfig[], currentIndex: number): { model: ModelConfig; index: number; }; /** * Get previous model in cycling order */ export declare function getPreviousModel(enabledModels: ModelConfig[], currentIndex: number): { model: ModelConfig; index: number; }; /** * Get model index by ID */ export declare function getModelIndex(enabledModels: ModelConfig[], modelId: string): number; /** * Record model usage */ export declare function recordModelUsage(config: Configuration, modelId: string): Promise; /** * Sort models by last used (most recent first) */ export declare function sortModelsByUsage(models: ModelConfig[]): ModelConfig[]; /** * Get model context length */ export declare function getModelContextLength(config: Configuration, modelId: string): Promise; /** * Validate that all enabled models exist in cache */ export declare function validateEnabledModels(config: Configuration): Promise; /** * Get model pricing information */ export declare function getModelPricing(config: Configuration, modelId: string): Promise<{ prompt: string; completion: string; } | null>; //# sourceMappingURL=models.d.ts.map