1import { DeviceEventEmitter } from 'react-native';
2import ExpoDevMenu from './ExpoDevMenu';
3export function openMenu() {
4    ExpoDevMenu.openMenu();
5}
6let hasRegisteredCallbackListener = false;
7function registerCallbackListener() {
8    if (!hasRegisteredCallbackListener) {
9        DeviceEventEmitter.addListener('registeredCallbackFired', (name) => {
10            hasRegisteredCallbackListener = true;
11            const handler = handlers.get(name);
12            if (handler != null) {
13                handler();
14            }
15        });
16    }
17}
18registerCallbackListener();
19let handlers = new Map();
20export async function registerDevMenuItems(items) {
21    if (!__DEV__) {
22        // resolve undefined
23        return;
24    }
25    handlers = new Map();
26    const callbackNames = [];
27    items.forEach((item) => {
28        handlers.set(item.name, item.callback);
29        callbackNames.push(item.name);
30    });
31    return await ExpoDevMenu.addDevMenuCallbacks(callbackNames);
32}
33//# sourceMappingURL=DevMenu.js.map