Map<String, dynamic> toJson() { final json = <String, dynamic>{ 'requestId': requestId, 'progress': progress, }; if (total != null) json['total'] = total!; return json; }