@override valueToJson(List<dynamic> value) => value.mapIndexed((index, element) { final type = types[index]; return type.valueToJson(element); }).toList();