1 package expo.modules.notifications.notifications.interfaces;
2 
3 /**
4  * Interface of a singleton module responsible
5  * for dispatching new remote message events to {@link NotificationListener}s.
6  */
7 public interface NotificationManager {
8   /**
9    * Registers a {@link NotificationListener}.
10    *
11    * @param listener Listener to be notified of new message events.
12    */
addListener(NotificationListener listener)13   void addListener(NotificationListener listener);
14 
15   /**
16    * Unregisters a {@link NotificationListener}.
17    *
18    * @param listener Listener previously registered
19    *                 with {@link NotificationManager#addListener(NotificationListener)}.
20    */
removeListener(NotificationListener listener)21   void removeListener(NotificationListener listener);
22 }
23