// Definitions by: Pat Sissons // TypeScript Version: 3.4 import * as RN from 'react-native' import { Theme } from '@emotion/react' import { CreateStyled as BaseCreateStyled, CreateStyledComponent, CSSInterpolation, Interpolation, ReactNativeStyle, ReactNativeStyleType } from './base' export { ArrayCSSInterpolation, ArrayInterpolation, CreateStyledComponent, CSSInterpolation, FilteringStyledOptions, FunctionInterpolation, Interpolation, InterpolationPrimitive, ObjectInterpolation, ReactNativeStyle, StyledComponent, StyledOptions } from './base' type ReactNative = typeof RN export function css( template: TemplateStringsArray, ...args: Array ): StyleType export function css( ...args: Array ): StyleType export function css( ...args: Array ): StyleType // those 2 are just copies of the `BaseCreateStyled` with supplied `C` type argument type HostClassComponent> = CreateStyledComponent< React.ComponentProps & { theme?: Theme; as?: React.ElementType }, {}, { ref?: React.Ref> }, ReactNativeStyleType> > type HostFunctionComponent> = CreateStyledComponent< React.ComponentProps & { theme?: Theme; as?: React.ElementType }, {}, {}, ReactNativeStyleType> > export interface StyledComponents { ActivityIndicator: HostClassComponent Button: HostClassComponent DatePickerIOS: HostClassComponent DrawerLayoutAndroid: HostClassComponent FlatList: HostClassComponent Image: HostClassComponent ImageBackground: HostClassComponent KeyboardAvoidingView: HostClassComponent ListView: HostClassComponent Modal: HostClassComponent NavigatorIOS: HostClassComponent Picker: HostClassComponent PickerIOS: HostClassComponent Pressable: HostFunctionComponent ProgressBarAndroid: HostClassComponent ProgressViewIOS: HostClassComponent RecyclerViewBackedScrollView: HostClassComponent< ReactNative['RecyclerViewBackedScrollView'] > RefreshControl: HostClassComponent SafeAreaView: HostClassComponent ScrollView: HostClassComponent SectionList: HostClassComponent SegmentedControlIOS: HostClassComponent Slider: HostClassComponent SnapshotViewIOS: HostClassComponent StatusBar: HostClassComponent SwipeableListView: HostClassComponent Switch: HostClassComponent SwitchIOS: HostClassComponent TabBarIOS: HostClassComponent Text: HostClassComponent TextInput: HostClassComponent ToolbarAndroid: HostClassComponent TouchableHighlight: HostClassComponent TouchableNativeFeedback: HostClassComponent< ReactNative['TouchableNativeFeedback'] > TouchableOpacity: HostClassComponent TouchableWithoutFeedback: HostClassComponent< ReactNative['TouchableWithoutFeedback'] > View: HostClassComponent ViewPagerAndroid: HostClassComponent } export interface CreateStyled extends BaseCreateStyled, StyledComponents {} declare const styled: CreateStyled export default styled