Download progress as a double between 0 and 1. When the final size is unknown or the downloaded size exceeds the total size, progress is null.
double? get progress { if (totalSize == null || downloaded > totalSize!) return null; return downloaded / totalSize!; }