/** * Blob Progress Tracking * * Uses liveQuery to reactively track unresolved blob refs. * Any change to _hasBlobRefs in any syncable table automatically * triggers a re-scan — no manual updateBlobProgress() needed. */ import { BehaviorSubject, Observable } from 'rxjs'; import { BlobProgress } from '../DexieCloudAPI'; import { DexieCloudDB } from '../db/DexieCloudDB'; /** * BehaviorSubject for the isDownloading flag, controlled by eagerBlobDownloader. */ export declare function createDownloadingState(): BehaviorSubject; /** * Set downloading state. */ export declare function setDownloadingState(downloading$: BehaviorSubject, isDownloading: boolean): void; /** * Create a liveQuery-based Observable. * * Combines a liveQuery (blobsRemaining, bytesRemaining) with an external * isDownloading flag controlled by the eager downloader. */ export declare function observeBlobProgress(db: DexieCloudDB, downloading$: BehaviorSubject): Observable;