import type { TurboModule } from 'react-native/Libraries/TurboModule/RCTExport'; // @ts-ignore - CI environment type resolution issue for CodegenTypes import { Int32 } from 'react-native/Libraries/Types/CodegenTypes'; import { TurboModuleRegistry } from 'react-native'; export interface Spec extends TurboModule { takeSnap: (viewRef: Int32 | null, writeToDisk: boolean) => Promise; queryTerrainElevation: ( viewRef: Int32 | null, coordinates: ReadonlyArray, ) => Promise; setSourceVisibility: ( viewRef: Int32 | null, visible: boolean, sourceId: string, sourceLayerId: string, ) => Promise; getCenter: (viewRef: Int32 | null) => Promise; getCoordinateFromView: ( viewRef: Int32 | null, atPoint: ReadonlyArray, ) => Promise; getPointInView: ( viewRef: Int32 | null, atCoordinate: ReadonlyArray, ) => Promise; getZoom: (viewRef: Int32 | null) => Promise; getVisibleBounds: (viewRef: Int32 | null) => Promise; queryRenderedFeaturesAtPoint: ( viewRef: Int32 | null, atPoint: ReadonlyArray, withFilter: ReadonlyArray, withLayerIDs: ReadonlyArray, ) => Promise; queryRenderedFeaturesInRect: ( viewRef: Int32 | null, withBBox: ReadonlyArray, withFilter: ReadonlyArray, withLayerIDs: ReadonlyArray, ) => Promise; setHandledMapChangedEvents: ( viewRef: Int32 | null, events: ReadonlyArray, ) => Promise; clearData: (viewRef: Int32 | null) => Promise; querySourceFeatures: ( viewRef: Int32 | null, sourceId: string, withFilter: ReadonlyArray, withSourceLayerIDs: ReadonlyArray, ) => Promise; setFeatureState: ( viewRef: Int32 | null, featureId: string, state: Object, sourceId: string, sourceLayerId: string | null, ) => Promise; getFeatureState: ( viewRef: Int32 | null, featureId: string, sourceId: string, sourceLayerId: string | null, ) => Promise; removeFeatureState: ( viewRef: Int32 | null, featureId: string, stateKey: string | null, sourceId: string, sourceLayerId: string | null, ) => Promise; } export default TurboModuleRegistry.getEnforcing('RNMBXMapViewModule');