Map<String, dynamic> toJson() { return { 'class_name': name, 'file': file, 'namespace': namespace, 'fields': fields.map((f) => f.toJson()).toList(), }; }