@override Map<String, dynamic> toJson() { return { 'name': label, 'group': groupName, 'nullable': isNullable, 'fields': fields.map((field) => field.toFullJson()).toList(), }; }