Files
rely/lib/features/reminders/scheduling/reminder_scheduler.dart
T
2026-02-15 23:53:46 +01:00

28 lines
857 B
Dart

import 'package:relationship_saver/features/local/local_models.dart';
/// Schedules and reconciles reminder deliveries for current local state.
abstract class ReminderScheduler {
/// Reconciles platform schedules to match current enabled reminders.
Future<void> reconcile(List<ReminderRule> reminders);
/// Clears all platform-scheduled reminder jobs.
Future<void> clearAll();
/// Requests notification permissions where the platform requires them.
Future<bool> requestPermissions();
}
/// Default scheduler used until platform notifications are integrated.
class NoopReminderScheduler implements ReminderScheduler {
const NoopReminderScheduler();
@override
Future<void> clearAll() async {}
@override
Future<void> reconcile(List<ReminderRule> reminders) async {}
@override
Future<bool> requestPermissions() async => true;
}