Map<String, dynamic> toJson() { return { 'FREQ': frequency.name.toUpperCase(), 'INTERVAL': interval, 'UNTIL': until != null ? formatDateTime(until!) : null, 'BYDAY': byDay.toString(), }; }