@override Map<String, dynamic> toMap() { return { 'type': 'parent', 'height': height, 'backgroundColor': backgroundColor, 'children': children.map((child) => child.toMap()).toList(), }; }