Map<String, dynamic> toJson() { return { 'condition': condition.toJson(), 'source': source.toJson(), 'id': id, }; }