The following types can be imported from react-map-gl
when using TypeScript.
A mapboxgl.Map instance.
A mapboxgl.IControl implementation.
A custom layer implementation.
Instance ref of a Map
component. See Map documentation for details.
Instance ref of a GeolocateControl
component. See GeolocateControl documentation for details.
An object conforming to the Mapbox Style Specification.
An object conforming to the Fog Style Specification.
An object conforming to the Light Style Specification.
An object conforming to the Terrain Style Specification.
An object with the following fields:
name
(string): projection name, one of Albers ('albers'
), Equal Earth ('equalEarth'
), Equirectangular/Plate Carrée/WGS84 ('equirectangular'
), Lambert ('lambertConformalConic'
), Mercator ('mercator'
), Natural Earth ('naturalEarth'
), and Winkel Tripel ('winkelTripel'
).center?
([number, number]): longitude and latitude of the projection centerparallels?
([number, number]): the two standard parallels of a conic projection such as Albers and Lambert.
A JSON object that defines a background
layer according to the Mapbox Style Specification.
A JSON object that defines a circle
layer according to the Mapbox Style Specification.
A JSON object that defines a fill-extrusion
layer according to the Mapbox Style Specification.
A JSON object that defines a fill
layer according to the Mapbox Style Specification.
A JSON object that defines a heatmap
layer according to the Mapbox Style Specification.
A JSON object that defines a hillshade
layer according to the Mapbox Style Specification.
A JSON object that defines a line
layer according to the Mapbox Style Specification.
A JSON object that defines a raster
layer according to the Mapbox Style Specification.
A JSON object that defines a symbol
layer according to the Mapbox Style Specification.
A JSON object that defines a sky
layer according to the Mapbox Style Specification.
A JSON object that defines a geojson
source according to the Mapbox Style Specification.
A JSON object that defines a video
source according to the Mapbox Style Specification.
A JSON object that defines a image
source according to the Mapbox Style Specification.
A JSON object that defines a vector
source according to the Mapbox Style Specification.
A JSON object that defines a raster
source according to the Mapbox Style Specification.
A JSON object that defines a raster-dem
source according to the Mapbox Style Specification.
A JSON object that defines a canvas
source type. See CanvasSourceOptions.
One of 'center'
, 'left'
, 'right'
, 'top'
, 'bottom'
, 'top-left'
, 'top-right'
, 'bottom-left'
and 'bottom-right'
.
One of 'map'
, 'viewport'
and 'auto'
.
One of 'top-right'
, 'top-left'
, 'bottom-right'
and 'bottom-left'
.
An object with the following fields:
linearity?
: number - The rate at which the speed reduces after the pan ends.easing?
: (t: number) => number - Optional easing function when applying the drag. Defaults to bezier function.deceleration?
: number - Factor used to scale the drag velocity. Default0
.maxSpeed?
: number - The maximum value of the drag velocity. Default1400
.
An object with the following fields:
offset?
: PointLike - The center of the given bounds relative to the map's center, measured in pixels.padding?
: PaddingOptions - The amount of padding in pixels to add to the given bounds.maxZoom?
: number - The maximum zoom level to allow when the map view transitions to the specified bounds.animate?
: boolean - When set tofalse
, no animation happens.linear?
: boolean - Iftrue
, the map transitions using Map#easeTo. Iffalse
, the map transitions using Map#flyToduration?
: number - Duration in millisecondsmaxDuration?
: number - Max duration in millisecondseasing?
: (t: number) => number - A function taking a time in the range 0..1 and returning a number where 0 is the initial state and 1 is the final state.essential?
: boolean - Iftrue
, then the animation is considered essential and will not be affected byprefers-reduced-motion
. Otherwise, the transition will happen instantly if the user has enabled thereduced motion
accesibility feature in their operating system.
See Map#fitBounds
An object with the following fields:
around?
: 'center' - If "center" is passed, map will zoom around center of map.
See ScrollZoomHandler#enable, TouchZoomRotateHandler#enable
An object with the following fields:
left
: number - in pixels.top
: number - in pixels.right
: number - in pixels.bottom
: number - in pixels.
A function that takes the following arguments:
url
: stringresourceType
: 'Unknown' | 'Style' | 'Source' | 'Tile' | 'Glyphs' | 'SpriteImage' | 'SpriteJSON' | 'Image';
And returns an object with the following fields:
url
: string - The URL to be requested.credentials?
: 'same-origin' | 'include' - Use'include'
to send cookies with cross-origin requests.headers?
: { [header: string]: any } - The headers to be sent with the request.method?
: 'GET' | 'POST' | 'PUT'collectResourceTiming?
: boolean
See RequestParameters.
A mapboxgl.LngLat object.
A LngLat object, an array of two numbers representing longitude and latitude, or an object with lng
and lat
or lon
and lat
properties.
A mapboxgl.LngLatBounds object.
A LngLatBounds object, an array of LngLatLike objects in [sw, ne] order, or an array of numbers in [west, south, east, north] order.
A mapboxgl.Point object.
A Point or an array of two numbers representing x and y screen coordinates in pixels.
A GeoJSON feature that also contains the following library-specific fields:
layer
: Layersource
: stringsourceLayer
: stringstate
: { [key: string]: any }
An object with the following fields:
longitude
: number - The longitude of the map center.latitude
: number - The latitude of the map center.zoom
: number - The zoom level.pitch
: number - The pitch (tilt) of the map, in degrees.bearing
: number - The bearing (rotation) of the map, in degrees.
The following are implementations of source types that could be retrieved with Map#getSource.
A source containing GeoJSON. See GeoJSONSource.
A source containing video. See VideoSource.
A source containing image. See ImageSource.
A source containing the contents of an HTML canvas. See CanvasSource.
A source containing vector tiles in Mapbox Vector Tile format. See VectorTileSource.
An object with the following fields:
type
: string - Event typetarget
: MapboxMap - The map instance that fired the event
An object with the following fields:
type
: stringtarget
: MapboxMaporiginalEvent?
: MouseEventpoint
: PointlngLat
: LngLatpreventDefault
: () => voiddefaultPrevented
: booleanfeatures?
: MapboxGeoJSONFeature[]
An object with the following fields:
type
: stringtarget
: MapboxMaporiginalEvent?
: WheelEventpreventDefault
: () => voiddefaultPrevented
: boolean
An object with the following fields:
type
: stringtarget
: MapboxMaporiginalEvent?
: TouchEventpoint
: PointlngLat
: LngLatpoints
: Point[]lngLats
: LngLat[]preventDefault
: () => voiddefaultPrevented
: booleanfeatures?
: MapboxGeoJSONFeature[]
An object with the following fields:
type
: string - Event typetarget
: MapboxMapviewState
: ViewState - the next view state that the camera wants to change to based on user input or transition.
An object with the following fields:
type
: stringtarget
: MapboxMaporiginalEvent?
: MouseEventboxZoomBounds
: LngLatBounds
An object with the following fields:
type
: stringtarget
: MapboxMapdataType
: 'style'
An object with the following fields:
type
: stringtarget
: MapboxMapdataType
: 'source'isSourceLoaded
: booleansource
: stringsourceId
: stringsourceDataType
: 'metadata' | 'content'tile
: anycoord
: Coordinate
See MapDataEvent.
An object with the following fields:
type
: 'error'error
: Error
An object with the following fields:
type
: stringtarget
: MapboxMaptarget
: mapboxgl.GeolocateControl
An object with the following fields:
type
: stringtarget
: mapboxgl.GeolocateControlcoords
: GeolocationCoordinates - the current location.timestamp
: number - the time at which the location was retrieved.
An object with the following fields:
type
: stringtarget
: mapboxgl.GeolocateControlcode
: PERMISSION_DENIED | POSITION_UNAVAILABLE | TIMEOUT - see GeolocationPositionErrormessage
: string - the details of the error. Specifications note that this is primarily intended for debugging use and not to be shown directly in a user interface.
An object with the following fields:
type
: stringtarget
: mapboxgl.MarkerlngLat
: LngLat - the new location of the marker
An object with the following fields:
type
: stringtarget
: mapboxgl.Popup