diff --git a/types/react-native-tab-view/index.d.ts b/types/react-native-tab-view/index.d.ts index 2c6546a628..c761d80d14 100644 --- a/types/react-native-tab-view/index.d.ts +++ b/types/react-native-tab-view/index.d.ts @@ -1,9 +1,9 @@ -// Type definitions for react-native-tab-view 0.0 +// Type definitions for react-native-tab-view 1.0 // Project: https://github.com/react-native-community/react-native-tab-view // Definitions by: Kalle Ott +// Kyle Roach // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.6 - import { PureComponent, ReactNode, ComponentType } from 'react' import { Animated, @@ -39,7 +39,7 @@ export type SceneRendererProps = { } navigationState: NavigationState position: Animated.Value - jumpToIndex: (index: number) => void + jumpTo: (key: string) => void getLastPosition: () => number subscribe: ( event: SubscriptionName, @@ -75,24 +75,24 @@ export type PagerProps = { children?: ReactNode } -export type TabViewAnimatedProps< +export type TabViewProps< T extends RouteBase = RouteBase > = PagerProps & { navigationState: NavigationState + tabBarPosition?: 'bottom' | 'top' onIndexChange: (index: number) => void onPositionChange?: (props: { value: number }) => void initialLayout?: Layout canJumpToTab?: (route: T) => boolean renderPager?: (props: SceneRendererProps & PagerProps) => ReactNode renderScene: (props: SceneRendererProps & Scene) => ReactNode - renderHeader?: (props: SceneRendererProps) => ReactNode - renderFooter?: (props: SceneRendererProps) => ReactNode + renderTabBar?: (props: SceneRendererProps) => ReactNode lazy?: boolean style?: StyleProp } -export class TabViewAnimated extends PureComponent< - TabViewAnimatedProps, +export class TabView extends PureComponent< + TabViewProps, any > {} @@ -125,7 +125,7 @@ export type GestureState = { export type GestureHandler = (event: GestureEvent, state: GestureState) => void -export type TabViewPagerPanProps< +export type PagerPanProps< T extends RouteBase = RouteBase > = SceneRendererProps & { configureTransition?: TransitionConfigurator @@ -144,8 +144,8 @@ export type DefaultTransitionSpec = { friction: 35 } -export class TabViewPagerPan extends PureComponent< - TabViewPagerPanProps, +export class PagerPan extends PureComponent< + PagerPanProps, void > { static defaultProps: { @@ -168,7 +168,7 @@ export type ScrollEvent = { } } -export type TabViewPagerScrollProps< +export type PagerScrollProps< T extends RouteBase = RouteBase > = SceneRendererProps & { animationEnabled?: boolean @@ -176,8 +176,8 @@ export type TabViewPagerScrollProps< children?: ReactNode } -export class TabViewPagerScroll extends PureComponent< - TabViewPagerScrollProps, +export class PagerScroll extends PureComponent< +PagerScrollProps, any > {} @@ -190,7 +190,7 @@ export type PageScrollEvent = { export type PageScrollState = 'dragging' | 'settling' | 'idle' -export type TabViewPagerAndroidProps< +export type PagerAndroidProps< T extends RouteBase = RouteBase > = SceneRendererProps & { animationEnabled?: boolean @@ -198,8 +198,8 @@ export type TabViewPagerAndroidProps< children?: ReactNode } -export class TabViewPagerAndroid extends PureComponent< - TabViewPagerAndroidProps, +export class PagerAndroid extends PureComponent< + PagerAndroidProps, void > {} diff --git a/types/react-native-tab-view/react-native-tab-view-tests.tsx b/types/react-native-tab-view/react-native-tab-view-tests.tsx index 97d8c09257..a7530b9ec9 100644 --- a/types/react-native-tab-view/react-native-tab-view-tests.tsx +++ b/types/react-native-tab-view/react-native-tab-view-tests.tsx @@ -1,7 +1,7 @@ import { PureComponent, Component } from 'react' import { View, StyleSheet } from 'react-native' import { - TabViewAnimated, + TabView, TabBar, SceneMap, TabBarProps, @@ -31,7 +31,7 @@ class TabViewExample extends PureComponent { _handleIndexChange = (index: number) => this.setState({ index }) - _renderHeader = (props: TabBarProps) => + _renderTabBar = (props: TabBarProps) => _renderScene = SceneMap({ first: FirstRoute, @@ -40,11 +40,12 @@ class TabViewExample extends PureComponent { render() { return ( - ) diff --git a/types/react-router-navigation-core/react-router-navigation-core-tests.tsx b/types/react-router-navigation-core/react-router-navigation-core-tests.tsx index 6d6d048886..e99fffdc77 100644 --- a/types/react-router-navigation-core/react-router-navigation-core-tests.tsx +++ b/types/react-router-navigation-core/react-router-navigation-core-tests.tsx @@ -2,7 +2,7 @@ import * as React from "react"; import { View } from "react-native"; import { TabStack, renderSubView } from "react-router-navigation-core"; import { TabBarProps, TabProps } from "react-router-navigation"; -import { TabViewAnimated } from "react-native-tab-view"; +import { TabView } from "react-native-tab-view"; type Props = TabBarProps & { children?: Array>; @@ -24,7 +24,7 @@ class BottomNavigation extends React.Component { render={props => { const ownProps = { ...this.props, ...props }; return ( - { sceneProps => , ownProps )} - renderFooter={renderSubView( + renderTabBar={renderSubView( sceneProps => , ownProps )} + tabBarPosition="bottom" renderScene={renderSubView( sceneProps => , ownProps diff --git a/types/react-router-navigation/index.d.ts b/types/react-router-navigation/index.d.ts index 120ffb0d82..e43f08e652 100644 --- a/types/react-router-navigation/index.d.ts +++ b/types/react-router-navigation/index.d.ts @@ -6,7 +6,6 @@ import { Component, ReactNode, ReactElement, ComponentClass } from "react"; import { StyleProp, ViewProps, ViewStyle, TextStyle } from "react-native"; -import { TabViewAnimated, TabViewPagerPan } from "react-native-tab-view"; import { RouteProps } from "react-router-navigation-core"; import { NavigationTransitionProps,