import { type VerifiedModelManifest } from './model-manifest.js'; import type { LocalEmbeddingPreset } from './presets/manifest.js'; export interface ModelDownloadProgress { readonly file: string; readonly completedBytes: number; readonly totalBytes: number; } export interface DownloadedModel { readonly directory: string; readonly manifest: VerifiedModelManifest; } export interface ModelDownloader { download(preset: LocalEmbeddingPreset, stagingDirectory: string, options?: { readonly signal?: AbortSignal; readonly onProgress?: (progress: ModelDownloadProgress) => void; }): Promise; } type HubDownloadFile = (params: { repo: { type: 'model'; name: string; }; path: string; revision: string; xet: boolean; fetch?: typeof fetch; }) => Promise; export declare function createHuggingFaceModelDownloader(options?: { readonly downloadFile?: HubDownloadFile; }): ModelDownloader; export {}; //# sourceMappingURL=model-download.d.ts.map