1ea3f1d02STomasz Sapeta // Copyright © 2018 650 Industries. All rights reserved.
2ea3f1d02STomasz Sapeta 
3ea3f1d02STomasz Sapeta #import <Foundation/Foundation.h>
4ea3f1d02STomasz Sapeta #import <ExpoModulesCore/EXModuleRegistry.h>
5ea3f1d02STomasz Sapeta 
6ea3f1d02STomasz Sapeta NS_ASSUME_NONNULL_BEGIN
7ea3f1d02STomasz Sapeta 
8*8b02c6d0STomasz Sapeta @class EXSingletonModule;
9*8b02c6d0STomasz Sapeta 
10ea3f1d02STomasz Sapeta NS_SWIFT_NAME(ModuleRegistryProvider)
11ea3f1d02STomasz Sapeta @interface EXModuleRegistryProvider : NSObject
12ea3f1d02STomasz Sapeta 
13ea3f1d02STomasz Sapeta @property (nonatomic, weak) id<EXModuleRegistryDelegate> moduleRegistryDelegate;
14ea3f1d02STomasz Sapeta 
154dda5226STomasz Sapeta + (NSSet<Class> *)getModulesClasses;
16ea3f1d02STomasz Sapeta + (NSSet *)singletonModules;
17ea3f1d02STomasz Sapeta + (nullable EXSingletonModule *)getSingletonModuleForClass:(Class)singletonClass;
18ea3f1d02STomasz Sapeta 
194dda5226STomasz Sapeta - (instancetype)init __deprecated_msg("Expo modules are now being automatically registered. You can remove this method call.");
20ea3f1d02STomasz Sapeta - (instancetype)initWithSingletonModules:(NSSet *)modules;
21ea3f1d02STomasz Sapeta - (EXModuleRegistry *)moduleRegistry;
22ea3f1d02STomasz Sapeta 
23ea3f1d02STomasz Sapeta @end
24ea3f1d02STomasz Sapeta 
25ea3f1d02STomasz Sapeta NS_ASSUME_NONNULL_END
26