diff --git a/types/react-native/index.d.ts b/types/react-native/index.d.ts
index 1d529afcc8..10652f02fc 100644
--- a/types/react-native/index.d.ts
+++ b/types/react-native/index.d.ts
@@ -350,19 +350,20 @@ export function createElement
(
export type Runnable = (appParameters: any) => void;
+type NodeHandle = number;
// Similar to React.SyntheticEvent except for nativeEvent
interface NativeSyntheticEvent {
bubbles: boolean
cancelable: boolean
- currentTarget: EventTarget
+ currentTarget: NodeHandle
defaultPrevented: boolean
eventPhase: number
isTrusted: boolean
nativeEvent: T
preventDefault(): void
stopPropagation(): void
- target: EventTarget
+ target: NodeHandle
timeStamp: Date
type: string
}
@@ -4386,7 +4387,7 @@ interface TouchableMixin {
* to visually distinguish the `VisualRect` so that the user knows that
* releasing a touch will result in a "selection" (analog to click).
*/
- touchableHandleActivePressIn(e: Event): void
+ touchableHandleActivePressIn(e: GestureResponderEvent): void
/**
* Invoked when the item is "active" (in that it is still eligible to become
@@ -4397,14 +4398,14 @@ interface TouchableMixin {
* event will not fire on an `touchEnd/mouseUp` event, only move events while
* the user is depressing the mouse/touch.
*/
- touchableHandleActivePressOut(e: Event): void
+ touchableHandleActivePressOut(e: GestureResponderEvent): void
/**
* Invoked when the item is "selected" - meaning the interaction ended by
* letting up while the item was either in the state
* `RESPONDER_ACTIVE_PRESS_IN` or `RESPONDER_INACTIVE_PRESS_IN`.
*/
- touchableHandlePress(e: Event): void
+ touchableHandlePress(e: GestureResponderEvent): void
/**
* Invoked when the item is long pressed - meaning the interaction ended by
@@ -4416,7 +4417,7 @@ interface TouchableMixin {
* to return false. As a result, `touchableHandlePress` will be called when
* lifting up, even if `touchableHandleLongPress` has also been called.
*/
- touchableHandleLongPress(e: Event): void
+ touchableHandleLongPress(e: GestureResponderEvent): void
/**
* Returns the amount to extend the `HitRect` into the `PressRect`. Positive
@@ -5758,6 +5759,9 @@ export interface ScrollViewStyle extends FlexStyle, TransformsStyle {
elevation?: number
}
+export interface ScrollResponderEvent extends NativeSyntheticEvent {
+}
+
interface ScrollResponderMixin extends SubscribableMixin {
/**
@@ -5803,7 +5807,7 @@ interface ScrollResponderMixin extends SubscribableMixin {
*
* Invoke this from an `onStartShouldSetResponderCapture` event.
*/
- scrollResponderHandleStartShouldSetResponderCapture(e: Event): boolean
+ scrollResponderHandleStartShouldSetResponderCapture(e: ScrollResponderEvent): boolean
/**
* Invoke this from an `onResponderReject` event.
@@ -5839,19 +5843,19 @@ interface ScrollResponderMixin extends SubscribableMixin {
*
* @param {SyntheticEvent} e Event.
*/
- scrollResponderHandleTouchEnd(e: Event): void
+ scrollResponderHandleTouchEnd(e: ScrollResponderEvent): void
/**
* Invoke this from an `onResponderRelease` event.
*/
- scrollResponderHandleResponderRelease(e: Event): void
+ scrollResponderHandleResponderRelease(e: ScrollResponderEvent): void
- scrollResponderHandleScroll(e: Event): void
+ scrollResponderHandleScroll(e: ScrollResponderEvent): void
/**
* Invoke this from an `onResponderGrant` event.
*/
- scrollResponderHandleResponderGrant(e: Event): void
+ scrollResponderHandleResponderGrant(e: ScrollResponderEvent): void
/**
* Unfortunately, `onScrollBeginDrag` also fires when *stopping* the scroll
@@ -5860,22 +5864,22 @@ interface ScrollResponderMixin extends SubscribableMixin {
*
* Invoke this from an `onScrollBeginDrag` event.
*/
- scrollResponderHandleScrollBeginDrag(e: Event): void
+ scrollResponderHandleScrollBeginDrag(e: ScrollResponderEvent): void
/**
* Invoke this from an `onScrollEndDrag` event.
*/
- scrollResponderHandleScrollEndDrag(e: Event): void
+ scrollResponderHandleScrollEndDrag(e: ScrollResponderEvent): void
/**
* Invoke this from an `onMomentumScrollBegin` event.
*/
- scrollResponderHandleMomentumScrollBegin(e: Event): void
+ scrollResponderHandleMomentumScrollBegin(e: ScrollResponderEvent): void
/**
* Invoke this from an `onMomentumScrollEnd` event.
*/
- scrollResponderHandleMomentumScrollEnd(e: Event): void
+ scrollResponderHandleMomentumScrollEnd(e: ScrollResponderEvent): void
/**
* Invoke this from an `onTouchStart` event.
@@ -5888,7 +5892,7 @@ interface ScrollResponderMixin extends SubscribableMixin {
*
* @param {SyntheticEvent} e Touch Start event.
*/
- scrollResponderHandleTouchStart(e: Event): void
+ scrollResponderHandleTouchStart(e: ScrollResponderEvent): void
/**
* Invoke this from an `onTouchMove` event.
@@ -5901,7 +5905,7 @@ interface ScrollResponderMixin extends SubscribableMixin {
*
* @param {SyntheticEvent} e Touch Start event.
*/
- scrollResponderHandleTouchMove(e: Event): void
+ scrollResponderHandleTouchMove(e: ScrollResponderEvent): void
/**
* A helper function for this class that lets us quickly determine if the
@@ -5965,7 +5969,7 @@ interface ScrollResponderMixin extends SubscribableMixin {
*/
scrollResponderInputMeasureAndScrollToKeyboard(left: number, top: number, width: number, height: number): void
- scrollResponderTextInputFocusError(e: Event): void
+ scrollResponderTextInputFocusError(e: ScrollResponderEvent): void
/**
* `componentWillMount` is the closest thing to a standard "constructor" for
@@ -6003,13 +6007,13 @@ interface ScrollResponderMixin extends SubscribableMixin {
* relevant to you. (For example, only if you receive these callbacks after
* you had explicitly focused a node etc).
*/
- scrollResponderKeyboardWillShow(e: Event): void
+ scrollResponderKeyboardWillShow(e: ScrollResponderEvent): void
- scrollResponderKeyboardWillHide(e: Event): void
+ scrollResponderKeyboardWillHide(e: ScrollResponderEvent): void
- scrollResponderKeyboardDidShow(e: Event): void
+ scrollResponderKeyboardDidShow(e: ScrollResponderEvent): void
- scrollResponderKeyboardDidHide(e: Event): void
+ scrollResponderKeyboardDidHide(e: ScrollResponderEvent): void
}
export interface ScrollViewPropertiesIOS {
@@ -8438,20 +8442,6 @@ export interface ImageStoreStatic {
export type fetch = (url: string, options?: Object) => Promise
export const fetch: fetch;
-// Timers polyfill
-export type timedScheduler = (fn: string | (() => any), delay?: number) => number
-export type setTimeout = timedScheduler
-export type setInterval = timedScheduler
-export type setImmediate = (fn: () => any) => number
-export type requestAnimationFrame = (fn: (time: number) => any) => number
-
-export type schedulerCanceller = (id: number) => void
-export type clearTimeout = schedulerCanceller
-export type clearInterval = schedulerCanceller
-export type clearImmediate = schedulerCanceller
-export type cancelAnimationFrame = schedulerCanceller
-
-
export interface TabsReducerStatic {
JumpToAction(index: number): any;
}