UNPKG

2.43 kBTypeScriptView Raw
1/**
2 * Copyright (c) Meta Platforms, Inc. and affiliates.
3 *
4 * This source code is licensed under the MIT license found in the
5 * LICENSE file in the root directory of this source tree.
6 *
7 * @format
8 */
9
10import type * as React from 'react';
11import {Constructor} from '../../../types/private/Utilities';
12import {NativeMethods} from '../../../types/public/ReactNativeTypes';
13import {ColorValue, StyleProp} from '../../StyleSheet/StyleSheet';
14import {ViewStyle} from '../../StyleSheet/StyleSheetTypes';
15import {LayoutChangeEvent} from '../../Types/CoreEventTypes';
16import {ViewProps} from '../View/ViewPropTypes';
17
18/**
19 * @see https://reactnative.dev/docs/activityindicator#props
20 */
21export interface ActivityIndicatorProps extends ViewProps {
22 /**
23 * Whether to show the indicator (true, the default) or hide it (false).
24 */
25 animating?: boolean | undefined;
26
27 /**
28 * The foreground color of the spinner (default is gray).
29 */
30 color?: ColorValue | undefined;
31
32 /**
33 * Whether the indicator should hide when not animating (true by default).
34 */
35 hidesWhenStopped?: boolean | undefined;
36
37 /**
38 * Size of the indicator.
39 * Small has a height of 20, large has a height of 36.
40 *
41 * enum('small', 'large')
42 */
43 size?: number | 'small' | 'large' | undefined;
44
45 style?: StyleProp<ViewStyle> | undefined;
46}
47
48declare class ActivityIndicatorComponent extends React.Component<ActivityIndicatorProps> {}
49declare const ActivityIndicatorBase: Constructor<NativeMethods> &
50 typeof ActivityIndicatorComponent;
51export class ActivityIndicator extends ActivityIndicatorBase {}
52
53/**
54 * @see https://reactnative.dev/docs/activityindicatorios#props
55 */
56export interface ActivityIndicatorIOSProps extends ViewProps {
57 /**
58 * Whether to show the indicator (true, the default) or hide it (false).
59 */
60 animating?: boolean | undefined;
61
62 /**
63 * The foreground color of the spinner (default is gray).
64 */
65 color?: ColorValue | undefined;
66
67 /**
68 * Whether the indicator should hide when not animating (true by default).
69 */
70 hidesWhenStopped?: boolean | undefined;
71
72 /**
73 * Invoked on mount and layout changes with
74 */
75 onLayout?: ((event: LayoutChangeEvent) => void) | undefined;
76
77 /**
78 * Size of the indicator.
79 * Small has a height of 20, large has a height of 36.
80 *
81 * enum('small', 'large')
82 */
83 size?: 'small' | 'large' | undefined;
84
85 style?: StyleProp<ViewStyle> | undefined;
86}
87
\No newline at end of file