Map<String, dynamic> toJson() { return { 'color': color?.toJson(), 'light_on_duration': lightOnDuration, 'light_off_duration': lightOffDuration, }..removeWhere((k, v) => v == null); }