1type ExpoObject = {
2    modules: undefined | {
3        [key: string]: any;
4    };
5    uuidv4: () => string;
6};
7declare global {
8    var expo: ExpoObject | undefined;
9    /**
10     * @deprecated `global.ExpoModules` is deprecated, use `global.expo.modules` instead.
11     */
12    var ExpoModules: undefined | {
13        [key: string]: any;
14    };
15}
16/**
17 * Imports the native module registered with given name. In the first place it tries to load
18 * the module installed through the JSI host object and then falls back to the bridge proxy module.
19 * Notice that the modules loaded from the proxy may not support some features like synchronous functions.
20 *
21 * @param moduleName Name of the requested native module.
22 * @returns Object representing the native module.
23 * @throws Error when there is no native module with given name.
24 */
25export declare function requireNativeModule<ModuleType = any>(moduleName: string): ModuleType;
26/**
27 * Imports the native module registered with the given name. The same as `requireNativeModule`,
28 * but returns `null` when the module cannot be found instead of throwing an error.
29 *
30 * @param moduleName Name of the requested native module.
31 * @returns Object representing the native module or `null` when it cannot be found.
32 */
33export declare function requireOptionalNativeModule<ModuleType = any>(moduleName: string): ModuleType | null;
34export {};
35//# sourceMappingURL=requireNativeModule.d.ts.map