1/**
2 * Appearance of the foreground elements in the navigation bar, i.e. the color of the menu, back, home button icons.
3 *
4 * - `dark` makes buttons **darker** to adjust for a mostly light nav bar.
5 * - `light` makes buttons **lighter** to adjust for a mostly dark nav bar.
6 */
7export type NavigationBarButtonStyle = 'light' | 'dark';
8
9/**
10 * Visibility of the navigation bar.
11 */
12export type NavigationBarVisibility = 'visible' | 'hidden';
13
14/**
15 * Interaction behavior for the system navigation bar.
16 */
17export type NavigationBarBehavior = 'overlay-swipe' | 'inset-swipe' | 'inset-touch';
18
19/**
20 * Navigation bar positional mode.
21 */
22export type NavigationBarPosition = 'relative' | 'absolute';
23
24/**
25 * Current system UI visibility state. Due to platform constraints, this will return when the status bar visibility changes as well as the navigation bar.
26 */
27export type NavigationBarVisibilityEvent = {
28  /**
29   * Current navigation bar visibility.
30   */
31  visibility: NavigationBarVisibility;
32  /**
33   * Native Android system UI visibility state, returned from the native Android `setOnSystemUiVisibilityChangeListener` API.
34   */
35  rawVisibility: number;
36};
37