1 // Copyright 2018-present 650 Industries. All rights reserved. 2 3 #import <Foundation/Foundation.h> 4 #import <UIKit/UIKit.h> 5 #import <ExpoModulesCore/EXSingletonModule.h> 6 #import <UserNotifications/UserNotifications.h> 7 #import <EXNotifications/EXNotificationsDelegate.h> 8 9 NS_ASSUME_NONNULL_BEGIN 10 11 @protocol EXNotificationCenterDelegate 12 13 - (void)addDelegate:(id<EXNotificationsDelegate>)delegate; 14 - (void)removeDelegate:(id<EXNotificationsDelegate>)delegate; 15 16 @end 17 18 @interface EXNotificationCenterDelegate : EXSingletonModule <UIApplicationDelegate, UNUserNotificationCenterDelegate, EXNotificationCenterDelegate> 19 20 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(nullable NSDictionary<UIApplicationLaunchOptionsKey,id> *)launchOptions; 21 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler; 22 23 - (void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions))completionHandler; 24 - (void)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)(void))completionHandler; 25 - (void)userNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(nullable UNNotification *)notification; 26 27 @end 28 29 NS_ASSUME_NONNULL_END 30