diff --git a/types/react-router-native/index.d.ts b/types/react-router-native/index.d.ts index 17601361bd..ea2a5f766c 100644 --- a/types/react-router-native/index.d.ts +++ b/types/react-router-native/index.d.ts @@ -33,7 +33,7 @@ export class AndroidBackButton extends React.Component {} export class DeepLinking extends React.Component {} export interface LinkProps { - component?: React.Component | React.ComponentClass; + component?: React.ComponentType; replace?: boolean; style?: any; to: H.LocationDescriptor; diff --git a/types/react-router-native/react-router-native-tests.tsx b/types/react-router-native/react-router-native-tests.tsx index 2cbdfac1b2..5b7dcfa4e7 100644 --- a/types/react-router-native/react-router-native-tests.tsx +++ b/types/react-router-native/react-router-native-tests.tsx @@ -1,6 +1,6 @@ import * as React from 'react'; -import { StyleSheet, Text, View } from 'react-native'; -import { NativeRouter as Router, Route, Link, AndroidBackButton, BackButton } from 'react-router-native'; +import { StyleSheet, Text, TouchableOpacity, TouchableOpacityProperties, View } from 'react-native'; +import { AndroidBackButton, BackButton, Link, NativeRouter as Router, Route } from 'react-router-native'; const Home: React.SFC = () => { return ( @@ -24,6 +24,14 @@ const About: React.SFC = () => { ); }; +interface ButtonTextProps extends TouchableOpacityProperties { + text: string; +} + +const ButtonText: React.SFC = ({ text, ...props }) => ( + {text} +); + export default class App extends React.Component { render() { return ( @@ -35,9 +43,7 @@ export default class App extends React.Component { Home - - About - +