/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow */ /* eslint-disable */ import type { MeasureOnSuccessCallback, MeasureInWindowOnSuccessCallback, MeasureLayoutOnSuccessCallback, ReactNativeBaseComponentViewConfig, ViewConfigGetter, } from 'react-native-renderer/src/ReactNativeTypes'; import type {RNTopLevelEventType} from 'events/TopLevelEventTypes'; declare module 'deepDiffer' { declare module.exports: (one: any, two: any) => boolean; } declare module 'deepFreezeAndThrowOnMutationInDev' { declare module.exports: (obj: T) => T; } declare module 'flattenStyle' { } declare module 'InitializeCore' { } declare module 'RCTEventEmitter' { declare function register(mixed): void; } declare module 'TextInputState' { declare function blurTextInput(object: any): void; declare function focusTextInput(object: any): void; } declare module 'ExceptionsManager' { declare function handleException(error: Error, isFatal: boolean): void; } declare module 'Platform' { declare var OS: string; } declare module 'UIManager' { declare var customBubblingEventTypes: Object; declare var customDirectEventTypes: Object; declare function createView( reactTag: number, viewName: string, rootTag: number, props: ?Object, ): void; declare function manageChildren( containerTag: number, moveFromIndices: Array, moveToIndices: Array, addChildReactTags: Array, addAtIndices: Array, removeAtIndices: Array, ): void; declare function measure(hostComponent: mixed, callback: Function): void; declare function measureInWindow( nativeTag: ?number, callback: Function, ): void; declare function measureLayout( nativeTag: mixed, nativeNode: number, onFail: Function, onSuccess: Function, ): void; declare function removeRootView(containerTag: number): void; declare function removeSubviewsFromContainerWithID(containerId: number): void; declare function replaceExistingNonRootView(): void; declare function setChildren( containerTag: number, reactTags: Array, ): void; declare function updateView( reactTag: number, viewName: string, props: ?Object, ): void; declare function __takeSnapshot( view?: 'window' | Element | number, options?: { width?: number, height?: number, format?: 'png' | 'jpeg', quality?: number, }, ): Promise; declare function setJSResponder( reactTag: number, blockNativeResponder: boolean, ): void; declare function clearJSResponder(): void; } declare module 'FabricUIManager' { declare function createNode( reactTag: number, viewName: string, rootTag: number, props: ?Object, eventTarget: Object, ): Object; declare function cloneNode(node: Object): Object; declare function cloneNodeWithNewChildren(node: Object): Object; declare function cloneNodeWithNewProps( node: Object, newProps: ?Object, ): Object; declare function cloneNodeWithNewChildrenAndProps( node: Object, newProps: ?Object, ): Object; declare function appendChild(node: Object, childNode: Object): void; declare function createChildSet(rootTag: number): Object; declare function appendChildToSet(childSet: Object, childNode: Object): void; declare function completeRoot(rootTag: number, childSet: Object): void; declare function registerEventHandler( callback: ( eventTarget: null | Object, type: RNTopLevelEventType, payload: Object, ) => void, ): void; declare function measure( node: Node, callback: MeasureOnSuccessCallback, ): void; declare function measureInWindow( node: Node, callback: MeasureInWindowOnSuccessCallback, ): void; declare function measureLayout( node: Node, relativeNode: Node, onFail: () => void, onSuccess: MeasureLayoutOnSuccessCallback, ): void; } // This is needed for a short term solution. // See https://github.com/facebook/react/pull/15490 for more info declare var nativeFabricUIManager: { measure(node: Node, callback: MeasureOnSuccessCallback): void, measureInWindow(node: Node, callback: MeasureInWindowOnSuccessCallback): void, }; declare module 'View' { declare module.exports: typeof React$Component; } declare module 'RTManager' { declare function createNode( tag: number, classType: string, props: ?Object, ): void; declare function beginUpdates(): void; declare function appendChildToContext( contextTag: number, childTag: number, ): void; declare function appendChild(parentTag: number, childTag: number): void; declare function prependChild(childTag: number, beforeTag: number): void; declare function deleteChild(childTag: number): void; declare function updateNode(tag: number, props: ?Object): void; declare function completeUpdates(): void; } declare module 'BatchedBridge' { declare function registerCallableModule(name: string, module: Object): void; } declare module 'ReactNativeViewConfigRegistry' { declare var customBubblingEventTypes: Object; declare var customDirectEventTypes: Object; declare var eventTypes: Object; declare function register(name: string, callback: ViewConfigGetter): string; declare function get(name: string): ReactNativeBaseComponentViewConfig; }