Skip to content

Commit 0b339b4

Browse files
rubennortefacebook-github-bot
authored andcommitted
Prepare for removal of types in ReactNativeTypes (#49602)
Summary: Pull Request resolved: #49602 Changelog: [internal] This just prepares for the removal of some types from `ReactNativeTypes`, and defines some types in `ReactNativePrivateInterface` that `ReactNativeTypes` expects to be defined after facebook/react#32446 Reviewed By: huntie Differential Revision: D69996009
1 parent 159b619 commit 0b339b4

File tree

3 files changed

+16
-6
lines changed

3 files changed

+16
-6
lines changed

packages/react-native/Libraries/ReactNative/RendererImplementation.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,11 @@
88
* @flow strict-local
99
*/
1010

11-
import type {HostComponent} from '../../src/private/types/HostComponent';
1211
import type {HostInstance} from '../../src/private/types/HostInstance';
1312
import type {
1413
InternalInstanceHandle,
1514
Node,
1615
} from '../Renderer/shims/ReactNativeTypes';
17-
import type ReactFabricHostComponent from './ReactFabricPublicInstance/ReactFabricHostComponent';
1816
import type {ElementRef, ElementType} from 'react';
1917

2018
import {
@@ -136,8 +134,8 @@ export function isProfilingRenderer(): boolean {
136134
}
137135

138136
export function isChildPublicInstance(
139-
parentInstance: ReactFabricHostComponent | HostComponent<empty>,
140-
childInstance: ReactFabricHostComponent | HostComponent<empty>,
137+
parentInstance: HostInstance,
138+
childInstance: HostInstance,
141139
): boolean {
142140
return require('../Renderer/shims/ReactNative').default.isChildPublicInstance(
143141
parentInstance,

packages/react-native/Libraries/ReactPrivate/ReactNativePrivateInterface.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,19 @@ import typeof deepFreezeAndThrowOnMutationInDev from '../Utilities/deepFreezeAnd
3636
import typeof deepDiffer from '../Utilities/differ/deepDiffer';
3737
import typeof Platform from '../Utilities/Platform';
3838

39+
// Expose these types to the React renderer
40+
export type {
41+
HostInstance as PublicInstance,
42+
43+
// These types are only necessary for Paper
44+
INativeMethods as LegacyPublicInstance,
45+
MeasureOnSuccessCallback,
46+
MeasureInWindowOnSuccessCallback,
47+
MeasureLayoutOnSuccessCallback,
48+
} from '../Types/HostInstance';
49+
3950
export type {PublicRootInstance} from '../ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance';
51+
export type PublicTextInstance = ReturnType<createPublicTextInstance>;
4052

4153
// flowlint unsafe-getters-setters:off
4254
module.exports = {

packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6976,8 +6976,8 @@ declare export function unstable_batchedUpdates<T>(
69766976
): void;
69776977
declare export function isProfilingRenderer(): boolean;
69786978
declare export function isChildPublicInstance(
6979-
parentInstance: ReactFabricHostComponent | HostComponent<empty>,
6980-
childInstance: ReactFabricHostComponent | HostComponent<empty>
6979+
parentInstance: HostInstance,
6980+
childInstance: HostInstance
69816981
): boolean;
69826982
declare export function getNodeFromInternalInstanceHandle(
69836983
internalInstanceHandle: InternalInstanceHandle

0 commit comments

Comments
 (0)