import codegenNativeComponent, { type NativeComponentType, } from 'react-native/Libraries/Utilities/codegenNativeComponent'; import type { BubblingEventHandler, Double, } from 'react-native/Libraries/Types/CodegenTypes'; import { type ViewProps } from 'react-native'; import { codegenNativeCommands } from 'react-native'; interface Point { latitude: Double; longitude: Double; } interface Anchor { x: Double; y: Double; } export interface MarkerNativeProps extends ViewProps { onPress?: BubblingEventHandler; point: Point; iconSource?: string; anchor?: Anchor; iconOpacity?: Double; iconWidth?: Double; } export type MarkerComponentType = NativeComponentType & Readonly; export interface MarkerNativeCommands { animatedMoveTo: ( viewRef: React.ElementRef, args: Array> ) => void; } export const Commands = codegenNativeCommands({ supportedCommands: ['animatedMoveTo'], }); export default codegenNativeComponent('MarkerView');