UNPKG

3.88 kBTypeScriptView Raw
1import { ViewProps } from 'react-native';
2import { TapRatingProps, SwipeRatingProps } from 'react-native-ratings';
3import { AccessoryProps } from '../avatar/Accessory';
4import { AvatarProps } from '../avatar/Avatar';
5import { BadgeProps } from '../badge/Badge';
6import { BottomSheetProps } from '../bottomSheet/BottomSheet';
7import { ButtonProps } from '../buttons/Button';
8import { ButtonGroupProps } from '../buttons/ButtonGroup';
9import { CardProps } from '../card/Card';
10import { CheckBoxProps } from '../checkbox/CheckBox';
11import { DividerProps } from '../divider/Divider';
12import { HeaderProps } from '../header/Header';
13import { IconProps } from '../icons/Icon';
14import { ImageProps } from '../image/Image';
15import { InputProps } from '../input/Input';
16import { ListItemProps } from '../list/ListItemBase';
17import { OverlayProps } from '../overlay/Overlay';
18import { PricingCardProps } from '../pricing/PricingCard';
19import { SearchBarProps } from '../searchbar/SearchBar';
20import { SliderProps } from '../slider/Slider';
21import { SocialIconProps } from '../social/SocialIcon';
22import { TextProps } from '../text/Text';
23import { TileProps } from '../tile/Tile';
24import { TooltipProps } from '../tooltip/Tooltip';
25import { SwitchProps } from '../switch/switch';
26import { ListItemAccordionProps } from '../list/ListItemAccordion';
27import { TabItemProps, TabProps } from '../tab/Tab';
28import { TabViewProps } from '../tab/TabView';
29import { FABProps } from '../buttons/FAB';
30import { SpeedDialProps, SpeedDialActionProps } from '../buttons/SpeedDial';
31import { LinearProgressProps } from '../linearProgress';
32import { Colors } from './colors';
33declare const _default: {
34 colors: Colors;
35};
36export default _default;
37declare type RecursivePartial<T> = {
38 [P in keyof T]?: RecursivePartial<T[P]>;
39};
40export interface FullTheme {
41 Avatar: Partial<AvatarProps>;
42 AvatarAccessory: Partial<AccessoryProps>;
43 Badge: Partial<BadgeProps>;
44 BottomSheet: Partial<BottomSheetProps>;
45 Button: Partial<ButtonProps>;
46 ButtonGroup: Partial<ButtonGroupProps>;
47 Card: Partial<CardProps>;
48 CardDivider: Partial<DividerProps>;
49 CardFeaturedSubtitle: Partial<TextProps>;
50 CardFeaturedTitle: Partial<TextProps>;
51 CardImage: Partial<ImageProps>;
52 CardTitle: Partial<TextProps>;
53 CheckBox: Partial<CheckBoxProps>;
54 Divider: Partial<DividerProps>;
55 Header: Partial<HeaderProps>;
56 Icon: Partial<IconProps>;
57 Image: Partial<ImageProps>;
58 Input: Partial<InputProps>;
59 ListItem: Partial<ListItemProps>;
60 ListItemAccordion: Partial<ListItemAccordionProps>;
61 ListItemButtonGroup: Partial<ButtonGroupProps>;
62 ListItemCheckBox: Partial<CheckBoxProps>;
63 ListItemContent: Partial<ViewProps>;
64 ListItemChevron: Partial<IconProps>;
65 ListItemInput: Partial<InputProps>;
66 ListItemSubtitle: Partial<TextProps>;
67 ListItemTitle: Partial<TextProps>;
68 Overlay: Partial<OverlayProps>;
69 PricingCard: Partial<PricingCardProps>;
70 Rating: Partial<TapRatingProps>;
71 AirbnbRating: Partial<SwipeRatingProps>;
72 SearchBar: Partial<SearchBarProps>;
73 Slider: Partial<SliderProps>;
74 SocialIcon: Partial<SocialIconProps>;
75 Text: Partial<TextProps>;
76 Tile: Partial<TileProps>;
77 Switch: Partial<SwitchProps>;
78 Tooltip: Partial<TooltipProps>;
79 colors: RecursivePartial<Colors>;
80 Tab: Partial<TabProps>;
81 TabItem: Partial<TabItemProps>;
82 TabView: Partial<TabViewProps>;
83 TabViewItem: Partial<ViewProps>;
84 FAB: Partial<FABProps>;
85 SpeedDial: Partial<SpeedDialProps>;
86 SpeedDialAction: Partial<SpeedDialActionProps>;
87 LinearProgress: Partial<LinearProgressProps>;
88}
89export declare type Theme<T = {}> = Partial<FullTheme> & T;
90export declare type UpdateTheme = (updates: RecursivePartial<FullTheme>) => void;
91export declare type ReplaceTheme = (updates: RecursivePartial<FullTheme>) => void;