Map<String, dynamic> toMap() { final map = <String, dynamic>{}; map['fields'] = fields.map((field) => field.toMap()).toList(); return map; }