Package-level declarations

Types

Link copied to clipboard

Abstract NotificationListenerService that mirrors active notifications into NotificationStore, emits NotificationEvents on NotificationListenerBus when notifications post, and registers itself as the live instance for tools that need to call cancelNotification.

Link copied to clipboard
data class NotificationEvent(val key: String, val packageName: String, val title: String?, val text: String?, val bigText: String?, val subText: String?, val tickerText: String?, val category: String?, val channelId: String?, val groupKey: String?, val isOngoing: Boolean, val isClearable: Boolean, val legacyPriority: Int, val channelImportance: Int, val postedAt: Long, val when: Long, val hasReplyAction: Boolean, val actionLabels: List<String>)

Push-side projection of a posted notification. Emitted on NotificationListenerBus when McpNotificationListenerServiceBase receives onNotificationPosted. Pure-data — no Notification reference, no PendingIntents, no large image extras leak across the bus.

Link copied to clipboard

Process-wide SharedFlow of NotificationEvents emitted by McpNotificationListenerServiceBase when notifications post.

Link copied to clipboard

Holds the ComponentName of the host app's NotificationListenerService. The host app must call NotificationListenerHolder.set(componentName) with its own service class before using tools that need notification listener access.

Link copied to clipboard

In-memory snapshot of active notifications maintained by McpNotificationListenerServiceBase. Tools read from it; the service writes to it on lifecycle callbacks.

Link copied to clipboard
data class RepliableNotification(val key: String, val packageName: String, val title: String?, val text: String?, val postedAt: Long, val replyAction: ReplyAction?)

Pure-Kotlin projection of a StatusBarNotification that carries at least one free-form RemoteInput-bearing action. Lifted out of the platform type so tools and tests can manipulate it without touching SDK-only classes.

Link copied to clipboard
data class ReplyAction(val label: String?, val resultKey: String, val hintLabel: String?, val remoteInputs: Array<RemoteInput>, val pendingIntent: PendingIntent)