Map<String, dynamic> toMap() { return { 'description': description, 'steps': steps.map((step) => step.toMap()).toList(), }; }