/** * Manage MLX model downloads from HuggingFace. * * @example * ```ts * import { ModelManager } from 'react-native-nitro-mlx' * * // Download a model * await ModelManager.download('mlx-community/Qwen3-0.6B-4bit', progress => { * console.log(`Downloading: ${(progress * 100).toFixed(0)}%`) * }) * * // Check if downloaded * const isReady = await ModelManager.isDownloaded('mlx-community/Qwen3-0.6B-4bit') * * // List all downloaded models * const models = await ModelManager.getDownloadedModels() * ``` */ export declare const ModelManager: { /** * Download a model from HuggingFace. * @param modelId - HuggingFace model ID (e.g., 'mlx-community/Qwen3-0.6B-4bit') * @param progressCallback - Callback invoked with download progress (0-1) * @returns Path to the downloaded model directory */ download(modelId: string, progressCallback: (progress: number) => void): Promise; /** * Check if a model is already downloaded. * @param modelId - HuggingFace model ID * @returns True if the model is fully downloaded */ isDownloaded(modelId: string): Promise; /** * Get a list of all downloaded model IDs. * @returns Array of model IDs that are available locally */ getDownloadedModels(): Promise; /** * Delete a downloaded model to free up disk space. * @param modelId - HuggingFace model ID */ deleteModel(modelId: string): Promise; /** * Get the local filesystem path for a downloaded model. * @param modelId - HuggingFace model ID * @returns Absolute path to the model directory */ getModelPath(modelId: string): Promise; /** * Read the raw download manifest JSON for a downloaded model. * Throws if the model has no `.download-manifest.json`. */ getDownloadManifest(modelId: string): Promise; /** Enable debug logging to console */ debug: boolean; }; //# sourceMappingURL=modelManager.d.ts.map