1 // Copyright 2016-present 650 Industries. All rights reserved.
2 
3 #import <Foundation/Foundation.h>
4 
5 NS_ASSUME_NONNULL_BEGIN
6 
7 /**
8  For expo modules to get app build time preprocessor values.
9  We ship some modules in [prebuilt binaries](https://expo.fyi/prebuilt-modules),
10  classic defines like `DEBUG` or `RCT_DEV` may not work as expected
11  because the prebuilt modules are always built with Release configuration.
12  This class acts as a supporter to get app build time preprocessor values.
13  */
14 @interface EXAppDefines : NSObject
15 
16 @property (class, nonatomic, assign, readonly) BOOL APP_DEBUG NS_SWIFT_NAME(APP_DEBUG);
17 @property (class, nonatomic, assign, readonly) BOOL APP_RCT_DEBUG NS_SWIFT_NAME(APP_RCT_DEBUG);
18 @property (class, nonatomic, assign, readonly) BOOL APP_RCT_DEV NS_SWIFT_NAME(APP_RCT_DEV);
19 @property (class, nonatomic, assign, readonly) BOOL APP_NEW_ARCH_ENABLED NS_SWIFT_NAME(APP_NEW_ARCH_ENABLED);
20 
21 + (NSDictionary *)getAllDefines;
22 
23 + (void)load:(NSDictionary *)defines;
24 
25 @end
26 
27 NS_ASSUME_NONNULL_END
28