/** * Model Manager * High-level interface for managing models */ import { EventEmitter } from 'events'; import { type ModelName, type ModelManifest, type ModelInfo, type ModelArchitecture, type ModelDetails } from '../types/index.js'; export interface ModelManagerOptions { modelsPath?: string; } export interface LoadedModelInfo { name: string; manifest: ModelManifest; modelPath: string; projectorPath?: string; adapterPaths: string[]; template?: string; systemPrompt?: string; parameters: Record; architecture?: ModelArchitecture; } export declare class ModelManager extends EventEmitter { private modelsPath; constructor(options?: ModelManagerOptions); /** * Get the models directory path */ getModelsPath(): string; /** * List all installed models */ list(): Promise; /** * Check if a model exists */ exists(name: string): Promise; /** * Get model info by name */ getInfo(name: string): Promise; /** * Get detailed model information for display */ show(name: string): Promise<{ license?: string; modelfile?: string; parameters?: string; template?: string; system?: string; details?: ModelDetails; modelInfo?: Record; } | null>; /** * Estimate parameter size string from architecture */ private estimateParamSize; /** * Load all information needed to run a model */ load(name: string): Promise; /** * Get model architecture from GGUF file */ getArchitecture(nameOrPath: string): Promise; /** * Get total size of all model files */ getTotalSize(name: string): Promise; /** * Parse a model name into components */ parseModelName(name: string): ModelName; /** * Format a model name from components */ formatModelName(name: ModelName, includeTag?: boolean): string; } //# sourceMappingURL=manager.d.ts.map