'use strict'; import type { ComponentProps, ComponentRef } from 'react'; import { Image } from 'react-native'; import { type AnimatedComponentType, createAnimatedComponent, } from '../createAnimatedComponent'; // Since createAnimatedComponent return type is ComponentClass that has the props of the argument, // but not things like NativeMethods, etc. we need to add them manually by extending the type. type AnimatedImageComplement = ComponentRef & { getNode(): ComponentRef; }; // is-tree-shakable-suppress export const AnimatedImage: AnimatedComponentType< Readonly>, ComponentRef > = createAnimatedComponent(Image); export type AnimatedImage = typeof AnimatedImage & AnimatedImageComplement;