@react-native-oh/react-native-harmony 0.72.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/Libraries/Alert/Alert.harmony.js +71 -0
  2. package/Libraries/Alert/AlertManager.ts +35 -0
  3. package/Libraries/Animated/NativeAnimatedHelper.harmony.js +601 -0
  4. package/Libraries/Components/Button/Button.harmony.js +451 -0
  5. package/Libraries/Components/RefreshControl/RefreshControl.harmony.js +208 -0
  6. package/Libraries/Components/SafeAreaView/SafeAreaView.harmony.tsx +75 -0
  7. package/Libraries/Components/ScrollView/ScrollView.harmony.js +1940 -0
  8. package/Libraries/Components/ScrollView/processDecelerationRate.harmony.js +24 -0
  9. package/Libraries/Components/StatusBar/NativeStatusBarManagerHarmony.js +68 -0
  10. package/Libraries/Components/StatusBar/StatusBar.harmony.js +447 -0
  11. package/Libraries/Components/TextInput/TextInput.harmony.js +1697 -0
  12. package/Libraries/Components/TextInput/TextInputState.harmony.js +220 -0
  13. package/Libraries/Components/Touchable/TouchableHighlight.harmony.js +396 -0
  14. package/Libraries/Components/Touchable/TouchableNativeFeedback.harmony.js +364 -0
  15. package/Libraries/Components/Touchable/TouchableWithoutFeedback.harmony.js +227 -0
  16. package/Libraries/Components/View/View.harmony.js +149 -0
  17. package/Libraries/Core/setUpErrorHandling.harmony.js +35 -0
  18. package/Libraries/Image/AssetSourceResolver.harmony.ts +32 -0
  19. package/Libraries/NativeComponent/BaseViewConfig.harmony.js +325 -0
  20. package/Libraries/NativeModules/specs/NativeDevSettings.harmony.js +10 -0
  21. package/Libraries/Network/XMLHttpRequest.harmony.js +677 -0
  22. package/Libraries/Settings/Settings.harmony.js +15 -0
  23. package/Libraries/Utilities/BackHandler.harmony.js +109 -0
  24. package/Libraries/Utilities/NativePlatformConstantsHarmony.ts +8 -0
  25. package/Libraries/Utilities/Platform.d.ts +117 -0
  26. package/Libraries/Utilities/Platform.harmony.ts +33 -0
  27. package/Libraries/Utilities/createPerformanceLogger.harmony.js +328 -0
  28. package/index.js +178 -0
  29. package/metro.config.js +190 -0
  30. package/package.json +45 -0
  31. package/react-native.config.js +10 -0
  32. package/rnoh-4.0.0.200.har +0 -0
  33. package/tsconfig.json +13 -0
  34. package/types/index.d.ts +101 -0
package/index.js ADDED
@@ -0,0 +1,178 @@
1
+ module.exports = {
2
+ get ActivityIndicator() {
3
+ return require('react-native/Libraries/Components/ActivityIndicator/ActivityIndicator')
4
+ .default;
5
+ },
6
+ get Alert() {
7
+ return require('./Libraries/Alert/Alert.harmony');
8
+ },
9
+ get Animated() {
10
+ return require('react-native/Libraries/Animated/Animated').default;
11
+ },
12
+ get Appearance() {
13
+ return require('react-native/Libraries/Utilities/Appearance');
14
+ },
15
+ get AppRegistry() {
16
+ return require('react-native/Libraries/ReactNative/AppRegistry');
17
+ },
18
+ get AppState() {
19
+ return require('react-native/Libraries/AppState/AppState');
20
+ },
21
+ get BackHandler() {
22
+ return require('./Libraries/Utilities/BackHandler');
23
+ },
24
+ get Button() {
25
+ return require('./Libraries/Components/Button/Button');
26
+ },
27
+ get Dimensions() {
28
+ return require('react-native/Libraries/Utilities/Dimensions').default;
29
+ },
30
+ get DeviceEventEmitter() {
31
+ return require('react-native/Libraries/EventEmitter/RCTDeviceEventEmitter')
32
+ .default;
33
+ },
34
+ get DrawerLayoutAndroid() {
35
+ return require('react-native/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid');
36
+ },
37
+ get Easing() {
38
+ return require('react-native/Libraries/Animated/Easing').default;
39
+ },
40
+ get findNodeHandle() {
41
+ return require('react-native/Libraries/ReactNative/RendererProxy')
42
+ .findNodeHandle;
43
+ },
44
+ get FlatList() {
45
+ return require('react-native/Libraries/Lists/FlatList');
46
+ },
47
+ get Image() {
48
+ return require('react-native/Libraries/Image/Image');
49
+ },
50
+ get ImageBackground() {
51
+ return require('react-native/Libraries/Image/ImageBackground');
52
+ },
53
+ get I18nManager() {
54
+ return require('react-native/Libraries/ReactNative/I18nManager');
55
+ },
56
+ get LayoutAnimation() {
57
+ return require('react-native/Libraries/LayoutAnimation/LayoutAnimation');
58
+ },
59
+ get Linking() {
60
+ return require('react-native/Libraries/Linking/Linking');
61
+ },
62
+ get Modal() {
63
+ return require('react-native/Libraries/Modal/Modal');
64
+ },
65
+ get Keyboard() {
66
+ return require('react-native/Libraries/Components/Keyboard/Keyboard');
67
+ },
68
+ get KeyboardAvoidingView(){
69
+ return require('react-native/Libraries/Components/Keyboard/KeyboardAvoidingView')
70
+ .default;
71
+ },
72
+ get NativeEventEmitter() {
73
+ return require('react-native/Libraries/EventEmitter/NativeEventEmitter')
74
+ .default;
75
+ },
76
+ get NativeModules() {
77
+ return require('react-native/Libraries/BatchedBridge/NativeModules');
78
+ },
79
+ get PixelRatio() {
80
+ return require('react-native/Libraries/Utilities/PixelRatio').default;
81
+ },
82
+ get Platform() {
83
+ return require('./Libraries/Utilities/Platform');
84
+ },
85
+ get Pressable() {
86
+ return require('react-native/Libraries/Components/Pressable/Pressable')
87
+ .default;
88
+ },
89
+ get RefreshControl() {
90
+ return require('./Libraries/Components/RefreshControl/RefreshControl');
91
+ },
92
+ get SafeAreaView() {
93
+ return require('./Libraries/Components/SafeAreaView/SafeAreaView').default;
94
+ },
95
+ get ScrollView() {
96
+ return require('./Libraries/Components/ScrollView/ScrollView');
97
+ },
98
+ get StatusBar() {
99
+ return require('./Libraries/Components/StatusBar/StatusBar.harmony');
100
+ },
101
+ get StyleSheet() {
102
+ return require('react-native/Libraries/StyleSheet/StyleSheet');
103
+ },
104
+ get Switch() {
105
+ return require('react-native/Libraries/Components/Switch/Switch').default;
106
+ },
107
+ get Text() {
108
+ return require('react-native/Libraries/Text/Text');
109
+ },
110
+ get TextInput() {
111
+ return require('./Libraries/Components/TextInput/TextInput.harmony');
112
+ },
113
+ get Touchable() {
114
+ return require('react-native/Libraries/Components/Touchable/Touchable');
115
+ },
116
+ get TouchableHighlight() {
117
+ return require("./Libraries/Components/Touchable/TouchableHighlight");
118
+ },
119
+ get TouchableNativeFeedback() {
120
+ return require("./Libraries/Components/Touchable/TouchableNativeFeedback");
121
+ },
122
+ get TouchableOpacity() {
123
+ return require('react-native/Libraries/Components/Touchable/TouchableOpacity');
124
+ },
125
+ get TouchableWithoutFeedback() {
126
+ return require("./Libraries/Components/Touchable/TouchableWithoutFeedback");
127
+ },
128
+ get TurboModuleRegistry() {
129
+ return require('react-native/Libraries/TurboModule/TurboModuleRegistry');
130
+ },
131
+ get UIManager() {
132
+ return require('react-native/Libraries/ReactNative/UIManager');
133
+ },
134
+ get useAnimatedValue() {
135
+ return require('react-native/Libraries/Animated/useAnimatedValue').default;
136
+ },
137
+ get useColorScheme() {
138
+ return require('react-native/Libraries/Utilities/useColorScheme').default;
139
+ },
140
+ get useWindowDimensions() {
141
+ return require('react-native/Libraries/Utilities/useWindowDimensions')
142
+ .default;
143
+ },
144
+ get View() {
145
+ return require('./Libraries/Components/View/View');
146
+ },
147
+ get InteractionManager() {
148
+ return require('react-native/Libraries/Interaction/InteractionManager');
149
+ },
150
+ get PanResponder() {
151
+ return require('react-native/Libraries/Interaction/PanResponder').default;
152
+ },
153
+ get processColor() {
154
+ return require('react-native/Libraries/StyleSheet/processColor').default;
155
+ },
156
+ get SectionList() {
157
+ return require('react-native/Libraries/Lists/SectionList').default;
158
+ },
159
+ get Vibration() {
160
+ return require('react-native/Libraries/Vibration/Vibration');
161
+ },
162
+ get VirtualizedList() {
163
+ return require('react-native/Libraries/Lists/VirtualizedList');
164
+ },
165
+ // BEGIN: react-native-harmony specific exports
166
+ get registerViewConfig() {
167
+ return require('react-native/Libraries/Renderer/shims/ReactNativeViewConfigRegistry')
168
+ .register;
169
+ },
170
+ get ReactNativeViewAttributes() {
171
+ return require('react-native/Libraries/Components/View/ReactNativeViewAttributes');
172
+ },
173
+ get dispatchCommand() {
174
+ return require('react-native/Libraries/Renderer/shims/ReactNative')
175
+ .dispatchCommand;
176
+ },
177
+ // END: react-native-harmony specific exports
178
+ };
@@ -0,0 +1,190 @@
1
+ //@ts-check
2
+ const pathUtils = require('path');
3
+ const fs = require('fs');
4
+
5
+ /**
6
+ * @type {import("metro-config").ConfigT}
7
+ */
8
+ module.exports = {
9
+ transformer: {
10
+ assetRegistryPath: 'react-native/Libraries/Image/AssetRegistry',
11
+ getTransformOptions: async () => ({
12
+ transform: {
13
+ experimentalImportSupport: false,
14
+ inlineRequires: true,
15
+ },
16
+ }),
17
+ },
18
+ resolver: {
19
+ /** By default, Metro pickups files from native, "harmony" directory what causes conflicts. */
20
+ blockList: [/\\harmony\/.*/],
21
+ resolveRequest: (ctx, moduleName, platform) => {
22
+ if (platform === 'harmony') {
23
+ if (moduleName === 'react-native') {
24
+ return ctx.resolveRequest(ctx, 'react-native-harmony', platform);
25
+ } else if (moduleName.startsWith('react-native/')) {
26
+ return ctx.resolveRequest(ctx, moduleName, 'ios');
27
+ } else if (isInternalReactNativeRelativeImport(ctx.originModulePath)) {
28
+ if (moduleName.startsWith('.')) {
29
+ const moduleAbsPath = pathUtils.resolve(
30
+ pathUtils.dirname(ctx.originModulePath),
31
+ moduleName
32
+ );
33
+ const [_, modulePathRelativeToReactNative] = moduleAbsPath.split(
34
+ `${pathUtils.sep}node_modules${pathUtils.sep}react-native${pathUtils.sep}`
35
+ );
36
+ try {
37
+ return ctx.resolveRequest(
38
+ ctx,
39
+ `react-native-harmony${pathUtils.sep}${modulePathRelativeToReactNative}`,
40
+ 'harmony'
41
+ );
42
+ } catch (err) {}
43
+ }
44
+ return ctx.resolveRequest(ctx, moduleName, 'ios');
45
+ } else {
46
+ /**
47
+ * Replace `react-native-foo` with `react-native-harmony-foo` if a package has harmony directory and proper package.json configuration e.g.
48
+ *
49
+ * react-native-harmony-foo/package.json:
50
+ * "harmony": {
51
+ * "alias": "react-native-foo"
52
+ * }
53
+ */
54
+ const harmonyPackageNameByAlias = getHarmonyPackageNameByAlias('.');
55
+ const alias = getPackageName(moduleName);
56
+ if (alias) {
57
+ const harmonyPackageName = harmonyPackageNameByAlias[alias];
58
+ if (
59
+ harmonyPackageName &&
60
+ !isRequestFromHarmonyPackage(
61
+ ctx.originModulePath,
62
+ harmonyPackageName
63
+ )
64
+ ) {
65
+ return ctx.resolveRequest(
66
+ ctx,
67
+ moduleName.replace(alias, harmonyPackageName),
68
+ platform
69
+ );
70
+ }
71
+ }
72
+ }
73
+ }
74
+ return ctx.resolveRequest(ctx, moduleName, platform);
75
+ },
76
+ },
77
+ };
78
+
79
+ /**
80
+ * @param moduleName {string}
81
+ * @returns {string | null}
82
+ */
83
+ function getPackageName(moduleName) {
84
+ if (moduleName.startsWith('.')) return null;
85
+ if (moduleName.startsWith('@')) {
86
+ const segments = moduleName.split('/', 3);
87
+ if (segments.length == 2) {
88
+ return moduleName;
89
+ } else if (segments.length > 2) {
90
+ return `${segments[0]}/${segments[1]}`;
91
+ }
92
+ return null;
93
+ }
94
+ if (moduleName.includes('/')) {
95
+ return moduleName.split('/')[0];
96
+ } else {
97
+ return moduleName;
98
+ }
99
+ }
100
+
101
+ /**
102
+ * @param originModulePath {string}
103
+ * @returns {boolean}
104
+ */
105
+ function isInternalReactNativeRelativeImport(originModulePath) {
106
+ return originModulePath.includes(
107
+ `${pathUtils.sep}node_modules${pathUtils.sep}react-native${pathUtils.sep}`
108
+ );
109
+ }
110
+
111
+ /**
112
+ * @param originModulePath {string}
113
+ * @param harmonyPackageName {string}
114
+ * @returns {boolean}
115
+ */
116
+ function isRequestFromHarmonyPackage(originModulePath, harmonyPackageName) {
117
+ return originModulePath.includes(
118
+ `${pathUtils.sep}node_modules${pathUtils.sep}${harmonyPackageName}${pathUtils.sep}`
119
+ );
120
+ }
121
+
122
+ /**
123
+ * @type {Record<string, string> | undefined}
124
+ */
125
+ let cachedHarmonyPackageAliasByName = undefined;
126
+
127
+ /**
128
+ * @param projectRootPath {string}
129
+ */
130
+ function getHarmonyPackageNameByAlias(projectRootPath) {
131
+ /**
132
+ * @type {Record<string, string>}
133
+ */
134
+ const initialAcc = {};
135
+ if (cachedHarmonyPackageAliasByName) {
136
+ return cachedHarmonyPackageAliasByName;
137
+ }
138
+ cachedHarmonyPackageAliasByName = findHarmonyNodeModulePaths(
139
+ projectRootPath
140
+ ).reduce((acc, harmonyNodeModulePath) => {
141
+ const harmonyNodeModulePathSegments = harmonyNodeModulePath.split(
142
+ pathUtils.sep
143
+ );
144
+ const harmonyNodeModuleName =
145
+ harmonyNodeModulePathSegments[harmonyNodeModulePathSegments.length - 1];
146
+ const packageJSONPath = `${harmonyNodeModulePath}${pathUtils.sep}package.json`;
147
+ const packageJSON = readHarmonyModulePackageJSON(packageJSONPath);
148
+ const alias = packageJSON.harmony?.alias;
149
+ if (alias) {
150
+ acc[alias] = harmonyNodeModuleName;
151
+ }
152
+ return acc;
153
+ }, initialAcc);
154
+ if (Object.keys(cachedHarmonyPackageAliasByName).length > 0)
155
+ console.log(cachedHarmonyPackageAliasByName);
156
+ return cachedHarmonyPackageAliasByName;
157
+ }
158
+
159
+ /**
160
+ * @param projectRootPath {string}
161
+ * @returns {string[]}
162
+ */
163
+ function findHarmonyNodeModulePaths(projectRootPath) {
164
+ const nodeModulesPath = `${projectRootPath}${pathUtils.sep}node_modules`;
165
+ return fs
166
+ .readdirSync(nodeModulesPath)
167
+ .map((dirName) => `${nodeModulesPath}${pathUtils.sep}${dirName}`)
168
+ .filter(hasNodeModulePathHarmonyCode);
169
+ }
170
+
171
+ /**
172
+ * @param nodeModulePath {string}
173
+ * @returns {boolean}
174
+ */
175
+ function hasNodeModulePathHarmonyCode(nodeModulePath) {
176
+ if (!fs.lstatSync(nodeModulePath).isDirectory()) return false;
177
+ const nodeModuleContentNames = fs.readdirSync(nodeModulePath);
178
+ return (
179
+ nodeModuleContentNames.includes('harmony') ||
180
+ nodeModuleContentNames.includes('harmony.tar.gz')
181
+ );
182
+ }
183
+
184
+ /**
185
+ * @param packageJSONPath {string}
186
+ * @returns {{name: string, harmony?: {alias?: string}}}
187
+ */
188
+ function readHarmonyModulePackageJSON(packageJSONPath) {
189
+ return JSON.parse(fs.readFileSync(packageJSONPath).toString());
190
+ }
package/package.json ADDED
@@ -0,0 +1,45 @@
1
+ {
2
+ "name": "@react-native-oh/react-native-harmony",
3
+ "version": "0.72.10",
4
+ "publishConfig": {
5
+ "registry": "https://registry.npmjs.org/",
6
+ "access": "public"
7
+ },
8
+ "description": "",
9
+ "scripts": {
10
+ "install:dev-cli": "cd ../react-native-harmony-cli && npm pack && cd ../react-native-harmony && npm i ../react-native-harmony-cli/rnoh-react-native-harmony-cli-0.0.15.tgz && cd ../react-native-harmony",
11
+ "pack:harmony": "react-native pack-harmony --oh-module-path ../tester/harmony/rnoh --harmony-dir-path ./harmony --package-json-path ./package.json",
12
+ "pack:prod": "npm run pack:harmony && npm pack",
13
+ "prepublishOnly": "npm run pack:harmony",
14
+ "hermes:build": "sh ./scripts/build-hermes.sh"
15
+ },
16
+ "author": "",
17
+ "license": "ISC",
18
+ "peerDependencies": {
19
+ "react-native": "0.72.5"
20
+ },
21
+ "types": "types",
22
+ "devDependencies": {
23
+ "@react-native-community/cli": "^11.2.0",
24
+ "@react-native-community/cli-types": "^11.2.0",
25
+ "@tsconfig/react-native": "^2.0.3",
26
+ "@types/fs-extra": "^11.0.1",
27
+ "@types/node": "^18.16.0",
28
+ "@types/react": "^18.2.24",
29
+ "rimraf": "^5.0.0"
30
+ },
31
+ "files": [
32
+ "./harmony.tar.gz",
33
+ "./Libraries/**/*",
34
+ "./types/**/*",
35
+ "./*.js",
36
+ "./*.json",
37
+ "./*.har"
38
+ ],
39
+ "dependencies": {
40
+ "@react-native-oh/react-native-harmony-cli": "^0.0.15",
41
+ "fs-extra": "^11.1.1",
42
+ "metro": "^0.76.3",
43
+ "metro-config": "^0.76.3"
44
+ }
45
+ }
@@ -0,0 +1,10 @@
1
+ const { config: harmonyConfig } = require('@react-native-oh/react-native-harmony-cli')
2
+
3
+ /**
4
+ * @type {import("@react-native-community/cli-types").Config}
5
+ */
6
+ const config = {
7
+ commands: harmonyConfig.commands,
8
+ }
9
+
10
+ module.exports = config
Binary file
package/tsconfig.json ADDED
@@ -0,0 +1,13 @@
1
+ {
2
+ "extends": [
3
+ "@tsconfig/react-native/tsconfig.json",
4
+ ],
5
+ "exclude": [
6
+ "./harmony/cpp"
7
+ ],
8
+ "compilerOptions": {
9
+ "types": [
10
+ "node", // Removes an error when exporting with module.exports.
11
+ ]
12
+ }
13
+ }
@@ -0,0 +1,101 @@
1
+ // export * from 'react-native/Libraries/ActionSheetIOS/ActionSheetIOS';
2
+ export * from "react-native/Libraries/Alert/Alert";
3
+ export * from 'react-native/Libraries/Animated/Animated';
4
+ export * from 'react-native/Libraries/Animated/Easing';
5
+ export * from 'react-native/Libraries/Animated/useAnimatedValue';
6
+ export * from 'react-native/Libraries/Utilities/useColorScheme';
7
+ export * from 'react-native/Libraries/AppState/AppState';
8
+ export * from 'react-native/Libraries/BatchedBridge/NativeModules';
9
+ // export * from 'react-native/Libraries/Components/AccessibilityInfo/AccessibilityInfo';
10
+ export * from 'react-native/Libraries/Components/ActivityIndicator/ActivityIndicator';
11
+ // export * from 'react-native/Libraries/Components/Clipboard/Clipboard';
12
+ // export * from 'react-native/Libraries/Components/DatePicker/DatePickerIOS';
13
+ export * from 'react-native/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid';
14
+ export * from 'react-native/Libraries/Components/Keyboard/Keyboard';
15
+ export * from 'react-native/Libraries/Components/Keyboard/KeyboardAvoidingView';
16
+ export * from 'react-native/Libraries/Components/Pressable/Pressable';
17
+ // export * from 'react-native/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid';
18
+ // export * from 'react-native/Libraries/Components/ProgressViewIOS/ProgressViewIOS';
19
+ export * from 'react-native/Libraries/Components/RefreshControl/RefreshControl';
20
+ export * from 'react-native/Libraries/Components/SafeAreaView/SafeAreaView';
21
+ export * from 'react-native/Libraries/Components/ScrollView/ScrollView';
22
+ // export * from 'react-native/Libraries/Components/Slider/Slider';
23
+ export * from 'react-native/Libraries/Components/StatusBar/StatusBar';
24
+ export * from 'react-native/Libraries/Components/Switch/Switch';
25
+ // export * from 'react-native/Libraries/Components/TextInput/InputAccessoryView';
26
+ export * from 'react-native/Libraries/Components/TextInput/TextInput';
27
+ // export * from 'react-native/Libraries/Components/ToastAndroid/ToastAndroid';
28
+ export * from 'react-native/Libraries/Components/Touchable/Touchable';
29
+ export * from 'react-native/Libraries/Components/Touchable/TouchableHighlight';
30
+ export * from 'react-native/Libraries/Components/Touchable/TouchableNativeFeedback';
31
+ export * from 'react-native/Libraries/Components/Touchable/TouchableOpacity';
32
+ export * from 'react-native/Libraries/Components/Touchable/TouchableWithoutFeedback';
33
+ export * from 'react-native/Libraries/Components/View/View';
34
+ // export * from 'react-native/Libraries/Components/View/ViewAccessibility';
35
+ export * from 'react-native/Libraries/Components/View/ViewPropTypes';
36
+ export * from 'react-native/Libraries/Components/Button';
37
+ export * from 'react-native/Libraries/EventEmitter/NativeEventEmitter';
38
+ export * from 'react-native/Libraries/EventEmitter/RCTDeviceEventEmitter';
39
+ // export * from 'react-native/Libraries/EventEmitter/RCTNativeAppEventEmitter';
40
+ export * from 'react-native/Libraries/Image/Image';
41
+ export * from 'react-native/Libraries/Image/ImageBackground';
42
+ // export * from 'react-native/Libraries/Image/ImageResizeMode';
43
+ // export * from 'react-native/Libraries/Image/ImageSource';
44
+ export * from 'react-native/Libraries/Interaction/InteractionManager';
45
+ export * from 'react-native/Libraries/Interaction/PanResponder';
46
+ export * from 'react-native/Libraries/LayoutAnimation/LayoutAnimation';
47
+ export * from 'react-native/Libraries/Linking/Linking';
48
+ export * from 'react-native/Libraries/Lists/FlatList';
49
+ export * from 'react-native/Libraries/Lists/SectionList';
50
+ export * from 'react-native/Libraries/Lists/VirtualizedList';
51
+ // export * from 'react-native/Libraries/LogBox/LogBox';
52
+ export * from 'react-native/Libraries/Modal/Modal';
53
+ // export * as Systrace from 'react-native/Libraries/Performance/Systrace';
54
+ // export * from 'react-native/Libraries/PermissionsAndroid/PermissionsAndroid';
55
+ // export * from 'react-native/Libraries/PushNotificationIOS/PushNotificationIOS';
56
+ export * from 'react-native/Libraries/ReactNative/AppRegistry';
57
+ export * from 'react-native/Libraries/ReactNative/I18nManager';
58
+ export * from 'react-native/Libraries/ReactNative/RendererProxy';
59
+ // export * from 'react-native/Libraries/ReactNative/RootTag';
60
+ export * from 'react-native/Libraries/ReactNative/UIManager';
61
+ // export * from 'react-native/Libraries/ReactNative/requireNativeComponent';
62
+ // export * from 'react-native/Libraries/Settings/Settings';
63
+ // export * from 'react-native/Libraries/Share/Share';
64
+ // export * from 'react-native/Libraries/StyleSheet/PlatformColorValueTypesIOS';
65
+ // export * from 'react-native/Libraries/StyleSheet/PlatformColorValueTypes';
66
+ export * from 'react-native/Libraries/StyleSheet/StyleSheet';
67
+ export * from 'react-native/Libraries/StyleSheet/StyleSheetTypes';
68
+ export * from 'react-native/Libraries/StyleSheet/processColor';
69
+ export * from 'react-native/Libraries/Text/Text';
70
+ // export * from 'react-native/Libraries/TurboModule/RCTExport';
71
+ export * as TurboModuleRegistry from 'react-native/Libraries/TurboModule/TurboModuleRegistry';
72
+ // export * from 'react-native/Libraries/Types/CoreEventTypes';
73
+ export * from 'react-native/Libraries/Utilities/Appearance';
74
+ export * from 'react-native/Libraries/Utilities/BackHandler';
75
+ // export * from 'react-native/Libraries/Utilities/DevSettings';
76
+ export * from 'react-native/Libraries/Utilities/Dimensions';
77
+ export * from 'react-native/Libraries/Utilities/PixelRatio';
78
+ export * from '../Libraries/Utilities/Platform';
79
+ export * from 'react-native/Libraries/Vibration/Vibration';
80
+ // export * from 'react-native/Libraries/YellowBox/YellowBoxDeprecated';
81
+ // export * from 'react-native/Libraries/vendor/core/ErrorUtils';
82
+ // export * from 'react-native/Libraries/vendor/emitter/EventEmitter';
83
+
84
+ export * from 'react-native/types/public/DeprecatedPropertiesAlias';
85
+ export * from 'react-native/types/public/Insets';
86
+ export * from 'react-native/types/public/ReactNativeRenderer';
87
+ export * from 'react-native/types/public/ReactNativeTypes';
88
+
89
+ // react-native-harmony specific
90
+ export declare function registerViewConfig(
91
+ componentName: string,
92
+ viewConfigFactory: () => Record
93
+ ): any;
94
+
95
+ export declare const ReactNativeViewAttributes: Record;
96
+
97
+ export declare function dispatchCommand(
98
+ currentRef: any,
99
+ commandName: string,
100
+ args: any
101
+ );