Files
react-native/Libraries/Components/StatusBar/NativeStatusBarManager.js
T
Ramanpreet Nara ccde2fda6a Add NativeModule Spec for StatusBarManager
Summary: This diff introduces NativeStatusBarManager.

Reviewed By: mdvacca

Differential Revision: D16371384

fbshipit-source-id: a5485f8dec53a8f3f5bd22ad76e9f8ee0fc56f4c
2019-07-24 15:24:49 -07:00

49 lines
1.4 KiB
JavaScript

/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
* @format
*/
'use strict';
import type {TurboModule} from '../../TurboModule/RCTExport';
import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
export interface Spec extends TurboModule {
// Android only
+getConstants: () => {|
+HEIGHT: number,
+DEFAULT_BACKGROUND_COLOR: number,
|};
+setColor: (color: number, animated: boolean) => void;
+setTranslucent: (translucent: boolean) => void;
// iOS only
// TODO(T47754272) Can we remove this method?
+getHeight: (callback: (result: {|height: number|}) => void) => void;
+setNetworkActivityIndicatorVisible: (visible: boolean) => void;
+addListener: (eventType: string) => void;
+removeListeners: (count: number) => void;
// Android and iOS
/**
* - animated is iOS only
* - statusBarStyles can be:
* - 'default' (iOS and Android)
* - 'dark-content' (iOS and Android)
* - 'light-content' (iOS)
*/
+setStyle: (statusBarStyle?: ?string, animated?: ?boolean) => void;
/**
* - withAnimation is iOS only
* - withAnimation can be: 'none' | 'fade' | 'slide'
*/
+setHidden: (hidden: boolean, withAnimation?: ?string) => void;
}
export default TurboModuleRegistry.getEnforcing<Spec>('StatusBarManager');