class_docstr: Creates an Icon object that will be rendered
  using Leaflet.awesome-markers.
  
  Parameters
  ----------
  color : str, default 'blue'
      The color of the marker. You can use:
  
          ['red', 'blue', 'green', 'purple', 'orange', 'darkred',
           'lightred', 'beige', 'darkblue', 'darkgreen', 'cadetblue',
           'darkpurple', 'white', 'pink', 'lightblue', 'lightgreen',
           'gray', 'black', 'lightgray']
  
  icon_color : str, default 'white'
      The color of the drawing on the marker. You can use colors above,
      or an html color code.
  icon : str, default 'info-sign'
      The name of the marker sign.
      See Font-Awesome website to choose yours.
      Warning : depending on the icon you choose you may need to adapt
      the `prefix` as well.
  angle : int, default 0
      The icon will be rotated by this amount of degrees.
  prefix : str, default 'glyphicon'
      The prefix states the source of the icon. 'fa' for font-awesome or
      'glyphicon' for bootstrap 3.
  
  https://github.com/lvoogdt/Leaflet.awesome-markers
class_docstr_tok: ["Creates","an","Icon","object","that","will","be","rendered","using","Leaflet.awesome-markers",".","Parameters","--","--","--","--","--","color",":","str",",","default","'blue'","The","color","of","the","marker",".","You","can","use",":","[","'red","'",",","'blue","'",",","'green","'",",","'purple","'",",","'orange","'",",","'darkred","'",",","'lightred","'",",","'beige","'",",","'darkblue","'",",","'darkgreen","'",",","'cadetblue","'",",","'darkpurple","'",",","'white","'",",","'pink","'",",","'lightblue","'",",","'lightgreen","'",",","'gray","'",",","'black","'",",","'lightgray","'","]","icon_color",":","str",",","default","'white'","The","color","of","the","drawing","on","the","marker",".","You","can","use","colors","above",",","or","an","html","color","code",".","icon",":","str",",","default","'info-sign'","The","name","of","the","marker","sign",".","See","Font-Awesome","website","to","choose","yours",".","Warning",":","depending","on","the","icon","you","choose","you","may","need","to","adapt","the","`","prefix","`","as","well",".","angle",":","int",",","default","0","The","icon","will","be","rotated","by","this","amount","of","degrees",".","prefix",":","str",",","default","'glyphicon'","The","prefix","states","the","source","of","the","icon",".","'fa","'","for","font-awesome","or","'glyphicon","'","for","bootstrap","3.","https",":","\/\/github.com\/lvoogdt\/Leaflet.awesome-markers"]
code: def __init__(
      self,
      color: str = "blue",
      icon_color: str = "white",
      icon: str = "info-sign",
      angle: int = 0,
      prefix: str = "glyphicon",
      **kwargs: TypeJsonValue,
  ):
      super().__init__()
      self._name = "Icon"
      if color not in self.color_options:
          warnings.warn(
              f"color argument of Icon should be one of: {self.color_options}.",
              stacklevel=2,
          )
      self.options = parse_options(
          marker_color=color,
          icon_color=icon_color,
          icon=icon,
          prefix=prefix,
          extra_classes=f"fa-rotate-{angle}",
          **kwargs,
      )
  
imports: import warnings
  from collections import OrderedDict
  from typing import Dict, List, Optional, Sequence, Tuple, Type, Union
  from branca.element import Element, Figure, Html, MacroElement
  from jinja2 import Template
  from folium.elements import ElementAddToElement
  from folium.utilities import TypeBounds, TypeJsonValue, camelize, escape_backticks, parse_options, validate_location
label_desc: Use image node_id 1 to create a new Icon object from inherited base classes: MacroElement with example: obj = Icon(color, icon_color, icon, angle, prefix)