@override Map<String, dynamic> toJson() => <String, Object?>{ ...super.toJson(), 'type': type, 'name': name ?? '', 'types': types?.map((f) => f.toJson()).toList(), };