/* * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ #import #import #import #ifdef __cplusplus #import #ifndef RCT_USE_HERMES #if __has_include() #define RCT_USE_HERMES 1 #else #define RCT_USE_HERMES 0 #endif #endif #if RCT_USE_HERMES #import #else #import #endif #if RCT_NEW_ARCH_ENABLED #import #endif // Forward declaration to decrease compilation coupling namespace facebook::react { class RuntimeScheduler; } #if RCT_NEW_ARCH_ENABLED RCT_EXTERN id RCTAppSetupDefaultModuleFromClass(Class moduleClass); std::unique_ptr RCTAppSetupDefaultJsExecutorFactory( RCTBridge *bridge, RCTTurboModuleManager *turboModuleManager, std::shared_ptr const &runtimeScheduler); #else std::unique_ptr RCTAppSetupJsExecutorFactoryForOldArch( RCTBridge *bridge, std::shared_ptr const &runtimeScheduler); #endif #endif // __cplusplus RCT_EXTERN_C_BEGIN void RCTAppSetupPrepareApp(UIApplication *application, BOOL turboModuleEnabled); UIView *RCTAppSetupDefaultRootView( RCTBridge *bridge, NSString *moduleName, NSDictionary *initialProperties, BOOL fabricEnabled); RCT_EXTERN_C_END