package com.tt.honeyDue.ui.screens

import androidx.compose.runtime.Composable
import com.tt.honeyDue.viewmodel.NotificationCategoriesController

/**
 * Platform-specific bits for [NotificationPreferencesScreen].
 *
 * Only Android has real behaviour here:
 *  - `rememberNotificationCategoriesController` wires the screen to the
 *    DataStore-backed `NotificationPreferencesStore` and rewrites the
 *    matching [android.app.NotificationChannel] importance on every
 *    toggle.
 *  - `openAppNotificationSettings` launches
 *    `Settings.ACTION_APP_NOTIFICATION_SETTINGS`.
 *
 * On every non-Android target the controller is `null` and the
 * system-settings shortcut is a no-op — the screen hides the "Open
 * system settings" button when the callback is `null`.
 */
@Composable
expect fun rememberNotificationCategoriesController(): NotificationCategoriesController?

@Composable
expect fun rememberOpenAppNotificationSettings(): (() -> Unit)?
