1 // Copyright 2015-present 650 Industries. All rights reserved.
2 
3 #import <Foundation/Foundation.h>
4 #if __has_include(<ABI39_0_0ExpoKit/ABI39_0_0EXConstantsBinding.h>)
5 #import <ABI39_0_0ExpoKit/ABI39_0_0EXConstantsBinding.h>
6 #endif
7 #if __has_include(<ABI38_0_0ExpoKit/ABI38_0_0EXConstantsBinding.h>)
8 #import <ABI38_0_0ExpoKit/ABI38_0_0EXConstantsBinding.h>
9 #endif
10 #if __has_include(<ABI37_0_0ExpoKit/ABI37_0_0EXConstantsBinding.h>)
11 #import <ABI37_0_0ExpoKit/ABI37_0_0EXConstantsBinding.h>
12 #endif
13 
14 NS_ASSUME_NONNULL_BEGIN
15 
16 // We need this protocol to conveniently exclude ABIXX_0_0EXConstantsDeviceInstallationUUIDManager protocols
17 // from list of protocols EXDeviceInstallationUUIDService conforms to.
18 @protocol EXDeviceInstallationUUIDServiceDummyInterface <NSObject>
19 
20 @end
21 
22 // A kernel service allowing versioned expo-constants to access device installation UUID
23 // TODO: Remove this after SDK 39 is phased out
24 __deprecated_msg("The installation ID API is deprecated and will be removed once both SDK 39 and legacy Notifications API are removed")
25 @interface EXDeviceInstallationUUIDService : NSObject <
26 #if __has_include(<ABI37_0_0ExpoKit/ABI37_0_0EXConstantsBinding.h>)
27 ABI37_0_0EXConstantsDeviceInstallationUUIDManager,
28 #endif
29 #if __has_include(<ABI38_0_0ExpoKit/ABI38_0_0EXConstantsBinding.h>)
30 ABI38_0_0EXConstantsDeviceInstallationUUIDManager,
31 #endif
32 #if __has_include(<ABI39_0_0ExpoKit/ABI39_0_0EXConstantsBinding.h>)
33 ABI39_0_0EXConstantsDeviceInstallationUUIDManager,
34 #endif
35 EXDeviceInstallationUUIDServiceDummyInterface
36 >
37 
38 @end
39 
40 NS_ASSUME_NONNULL_END
41