import { codegenNativeComponent, type CodegenTypes, type HostComponent, type ColorValue, type ViewProps, } from "react-native"; import type { LightLayerStyle } from "../../types/MapLibreRNStyles"; import type { UnsafeMixed } from "../../types/codegen/UnsafeMixed"; type NativeViewPadding = { top?: CodegenTypes.WithDefault; right?: CodegenTypes.WithDefault; bottom?: CodegenTypes.WithDefault; left?: CodegenTypes.WithDefault; }; type NativeOrnamentViewPosition = { top?: CodegenTypes.WithDefault; right?: CodegenTypes.WithDefault; bottom?: CodegenTypes.WithDefault; left?: CodegenTypes.WithDefault; }; type NativePressEvent = { lngLat: UnsafeMixed< [longitude: CodegenTypes.Double, latitude: CodegenTypes.Double] >; point: UnsafeMixed<[x: CodegenTypes.Double, y: CodegenTypes.Double]>; }; type NativeViewStateEvent = { center: UnsafeMixed< [longitude: CodegenTypes.Double, latitude: CodegenTypes.Double] >; zoom: CodegenTypes.Double; bearing: CodegenTypes.Double; pitch: CodegenTypes.Double; bounds: UnsafeMixed< [ west: CodegenTypes.Double, south: CodegenTypes.Double, east: CodegenTypes.Double, north: CodegenTypes.Double, ] >; animated: boolean; userInteraction: boolean; }; export interface NativeProps extends ViewProps { mapStyle: string; light?: UnsafeMixed; contentInset?: NativeViewPadding; preferredFramesPerSecond?: CodegenTypes.WithDefault; dragPan?: CodegenTypes.WithDefault; touchZoom?: CodegenTypes.WithDefault; doubleTapZoom?: CodegenTypes.WithDefault; doubleTapHoldZoom?: CodegenTypes.WithDefault; touchRotate?: CodegenTypes.WithDefault; touchPitch?: CodegenTypes.WithDefault; tintColor?: ColorValue | undefined; attribution?: CodegenTypes.WithDefault; attributionPosition?: NativeOrnamentViewPosition; logo?: CodegenTypes.WithDefault; logoPosition?: NativeOrnamentViewPosition; compass?: CodegenTypes.WithDefault; compassPosition?: NativeOrnamentViewPosition; compassHiddenFacingNorth?: CodegenTypes.WithDefault; scaleBar?: CodegenTypes.WithDefault; scaleBarPosition?: NativeOrnamentViewPosition; onPress?: CodegenTypes.BubblingEventHandler; onLongPress?: CodegenTypes.BubblingEventHandler; onRegionWillChange?: CodegenTypes.DirectEventHandler; onRegionIsChanging?: CodegenTypes.DirectEventHandler; onRegionDidChange?: CodegenTypes.DirectEventHandler; onWillStartLoadingMap?: CodegenTypes.DirectEventHandler; onDidFinishLoadingMap?: CodegenTypes.DirectEventHandler; onDidFailLoadingMap?: CodegenTypes.DirectEventHandler; onWillStartRenderingFrame?: CodegenTypes.DirectEventHandler; onDidFinishRenderingFrame?: CodegenTypes.DirectEventHandler; onDidFinishRenderingFrameFully?: CodegenTypes.DirectEventHandler; onWillStartRenderingMap?: CodegenTypes.DirectEventHandler; onDidFinishRenderingMap?: CodegenTypes.DirectEventHandler; onDidFinishRenderingMapFully?: CodegenTypes.DirectEventHandler; onDidFinishLoadingStyle?: CodegenTypes.DirectEventHandler; } export default codegenNativeComponent( "MLRNMapView", ) as HostComponent;