From 19cdbd341402b0659934c7cf857681960b50dbab Mon Sep 17 00:00:00 2001 From: jesse Date: Wed, 23 Jan 2019 02:15:21 -0800 Subject: [PATCH] Add types to RCTSnapshotNativeComponent (#23111) Summary: Changelog: ---------- [iOS][Changed] - added types to RCTSnapshotNativeComponent.js, as mentioned in #22990 Pull Request resolved: https://github.com/facebook/react-native/pull/23111 Differential Revision: D13781429 Pulled By: cpojer fbshipit-source-id: 7efffe150fd29cbfbb3a6b8f13e38295f83acb3c --- .../RCTTest/RCTSnapshotNativeComponent.js | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/Libraries/RCTTest/RCTSnapshotNativeComponent.js b/Libraries/RCTTest/RCTSnapshotNativeComponent.js index 7a3d89b0f0e7ef..b7dcfa3085be77 100644 --- a/Libraries/RCTTest/RCTSnapshotNativeComponent.js +++ b/Libraries/RCTTest/RCTSnapshotNativeComponent.js @@ -5,11 +5,29 @@ * LICENSE file in the root directory of this source tree. * * @format - * @flow strict-local + * @flow */ 'use strict'; +import type {SyntheticEvent} from 'CoreEventTypes'; +import type {ViewProps} from 'ViewPropTypes'; +import type {NativeComponent} from 'ReactNative'; + +type SnapshotReadyEvent = SyntheticEvent< + $ReadOnly<{ + testIdentifier: string, + }>, +>; + +type NativeProps = $ReadOnly<{| + ...ViewProps, + onSnapshotReady?: ?(event: SnapshotReadyEvent) => mixed, + testIdentifier?: ?string, +|}>; + +type SnapshotViewNativeType = Class>; + const requireNativeComponent = require('requireNativeComponent'); -module.exports = requireNativeComponent('RCTSnapshot'); +module.exports = ((requireNativeComponent('RCTSnapshot'):any): SnapshotViewNativeType);