import 'alarm.dart'; class RelativeTimeAlarm implements Alarm { @override final String id; final Duration triggerAt; @override final AlarmType alarmType; const RelativeTimeAlarm({required this.id, required this.triggerAt}) : alarmType = AlarmType.timeRelative; factory RelativeTimeAlarm.fromJson(Map json) { return RelativeTimeAlarm( id: json['id'] as String, triggerAt: Duration(minutes: json['triggerAt'] as int), ); } @override Map toJson() { return { 'id': id, 'triggerAt': triggerAt.inMinutes, 'alarmType': alarmType.toJson(), }; } }