export declare class DownloadState { id: string; title: string; type: DownloadType; status: DownloadStatus; error?: string; progress: number; children: DownloadItem[]; } export declare enum DownloadStatus { Pending = "pending", Downloading = "downloading", Error = "error", Downloaded = "downloaded" } export declare class DownloadItem { id: string; time: { elapsed: number; remaining: number; }; size: { total: number; transferred: number; }; progress: number; checksum?: string; status: DownloadStatus; error?: string; metadata?: Record; } export interface DownloadStateEvent { data: DownloadState[]; } export declare enum DownloadType { Model = "model", Miscelanous = "miscelanous", Engine = "engine" }