Map<String, dynamic> toJson() => {"metadata": metadata} ..removeWhere((dynamic key, dynamic value) => key == null || value == null);