These are the official TypeScript definitions for the Bing Maps V8 SDK. These can be used to provide intellisense and rich error detection to your IDE.


Keywords
Microsoft, Bing Maps, Maps, GIS, TypeScript, V8, Web, Map, Geospatial, JavaScript, bing, bing-maps, intellisense, nuget, typescript-definitions, visual-studio
License
MIT
Install
npm install bingmaps@2.0.1

Documentation

Bing Maps Logo

NuGet npm license

Bing Maps V8 TypeScript Definitions

These are the official TypeScript definitions for the Bing Maps V8 Web Control. These can be used to provide intellisense and richer error catching functionality to your IDE.

Bing Maps V8 Intellisense

Note: Due to popular demand, version 2.x now puts these definitions in a types folder instead of a scripts folder.

How to get the definitions

Use the NuGet Package

Using the Bing Maps V8 TypeScript Definitions NuGet package will make it easy to both add the definitions to your project and to also keep them up to date.

If using Visual Studio, open the nuget package manager, select the Browse tab and search for "Bing Maps V8". This should reduce the list of results enough to fine the "Bing Maps V8 TypeScript Definitions" package. The owner of the package is bingmaps.

Alternatively, if you are using the nuget commandline:

PM>  Install-Package Microsoft.BingMaps.V8.TypeScript

Install npm package

Using the Bing Maps V8 TypeScript npm package is another easy way to add the definitions to your project and keep them up to date.

npm install -g bingmaps

Download definitions

Simply press the download button for this repository. Unzip the downloaded file, and copy the types folder into your project. Note that you will need to do this process again from time to time if you want to have the most recent definitions. This should only be needed if you want to use newer features or if bugs in the definitions have been corrected.

Usage

If using Visual Studio, you can add a reference to the core Bing Maps V8 functionality by adding the following to the top of your TypeScript file.

/// <reference path="types/MicrosoftMaps/CustomMapStyles.d.ts" />
/// <reference path="types/MicrosoftMaps/Microsoft.Maps.d.ts" />

If you want to also use some of the Bing Maps modules, you can either update the above reference to the following:

/// <reference path="types/MicrosoftMaps/Microsoft.Maps.All.d.ts" />

or you can add a reference to the individual module definitions.

Module Path
Autosuggest types/MicrosoftMaps/Modules/Autosuggest.d.ts
Clustering types/MicrosoftMaps/Modules/Clustering.d.ts
Contour types/MicrosoftMaps/Modules/Contour.d.ts
Data Binning types/MicrosoftMaps/Modules/DataBinning.d.ts
Directions types/MicrosoftMaps/Modules/Directions.d.ts
Drawing Tools types/MicrosoftMaps/Modules/DrawingTools.d.ts
GeoJSON types/MicrosoftMaps/Modules/GeoJson.d.ts
GeoXml types/MicrosoftMaps/Modules/GeoXml.d.ts
Heat Map Layer types/MicrosoftMaps/Modules/HeatMapLayer.d.ts
Search types/MicrosoftMaps/Modules/Search.d.ts
Spatial Data Services types/MicrosoftMaps/Modules/SpatialDataServices.d.ts
Spatial Math types/MicrosoftMaps/Modules/SpatialMath.d.ts
Traffic types/MicrosoftMaps/Modules/Traffic.d.ts
Well Known Text types/MicrosoftMaps/Modules/WellKnownText.d.ts

Note:

This project is just TypeScript definitions and not actual API code. You will need to add a script reference to the Bing Maps V8 Web Control in your application to load the functional API. For example:

<script type='text/javascript' src='https://www.bing.com/api/maps/mapcontrol?callback=GetMap&key=[Your_Bing_Maps_Key]' async defer></script>

Screenshots

The following shows the intellisense for events. Notice how a list of the supported events are displayed, thus saving you from having to go back to documentation to verify the correct event name. Also notice how the structure of the event argument is known and you can easily access its properties.

Bing Maps V8 Event Intellisense

The following shows the intellisense for adding modules. A list of the supported modules appears, saving you from having to go looking for the correct name/spelling used in Bing Maps V8.

Bing Maps V8 Load Module Intellisense

Q & A

  • Q: When will new Bing Maps features be added to these definitions.
    • A: New features will be added to the definitions when they have graduated out of the experimental branch and into the main release branch of V8. This will often be done in parallel with MSDN documentation updates. A list of new features can be found in the release notes here.
  • Q: Whats the difference between version 1.x and 2.x?
    • A: Version one put all the definitions in a scripts folder while version 2.x adds them to a types folder.

Contributing

We welcome contributions. Feel free to file issues and pull requests on the repo and we'll address them as we can. Learn more about how you can help on our Contribution Rules & Guidelines.

You can reach out to us anytime with questions and suggestions using our communities below:

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Related Projects

Additional Resources

License

MIT

See License for full license text.