1 // Copyright 2015-present 650 Industries. All rights reserved.
2 
3 #import <React/RCTBridge.h>
4 
5 @class EXDevMenuManager;
6 
7 @protocol EXDevMenuDelegateProtocol <NSObject>
8 
9 @required
10 
11 /**
12  * Returns the bridge to which the dev menu is hooked.
13  * TODO: (@tsapeta) It's gonna be removed once the dev menu moves to have its own bridge.
14  */
15 - (nonnull RCTBridge *)mainBridgeForDevMenuManager:(nonnull EXDevMenuManager *)manager;
16 
17 /**
18  * Returns the bridge of the currently shown app. It is a context of what the dev menu displays.
19  */
20 - (nullable RCTBridge *)appBridgeForDevMenuManager:(nonnull EXDevMenuManager *)manager;
21 
22 @optional
23 
24 /**
25  * Tells the manager whether it can change dev menu visibility. In some circumstances you may want not to show/close the dev menu.
26  */
27 - (BOOL)devMenuManager:(nonnull EXDevMenuManager *)manager canChangeVisibility:(BOOL)visibility;
28 
29 @end
30