class_docstr: Manages optional dependencies for data-describe.
  
  Examples:
      Optional modules can be accessed using dictionary-style attributes::
  
          _compat = _DependencyManager()
          engine = _compat["presidio_analyzer"].AnalyzerEngine()
  
  Attributes:
      imports (Dict[str, Callable]): A mapping of package names and associated
          import functions to download additional resources.
      installed_modules (Dict[str, bool]): A mapping of packages detected as being
          installed.
      modules (Dict[str, ModuleType]): A mapping of the imported modules. Typically
          accessed using dictionary-style access.
class_docstr_tok: ["Manages","optional","dependencies","for","data-describe",".","Examples",":","Optional","modules","can","be","accessed","using","dictionary-style","attributes",":",":","_compat","=","_DependencyManager","(",")","engine","=","_compat","[","``","presidio_analyzer","''","]",".AnalyzerEngine","(",")","Attributes",":","imports","(","Dict","[","str",",","Callable","]",")",":","A","mapping","of","package","names","and","associated","import","functions","to","download","additional","resources",".","installed_modules","(","Dict","[","str",",","bool","]",")",":","A","mapping","of","packages","detected","as","being","installed",".","modules","(","Dict","[","str",",","ModuleType","]",")",":","A","mapping","of","the","imported","modules",".","Typically","accessed","using","dictionary-style","access","."]
docstr: Manages optional dependencies for data-describe.
  
  Validates the expected optional dependencies for data-describe and executes
  any additional import logic.
  
  Args:
      imports (Dict[str, Callable]): A dictionary of module names mapped to callables.
          The Callable will be executed when the module is imported, and can be used to
          run additional download or other set up processes that should happen on import.
docstr_tok: ["Manages","optional","dependencies","for","data-describe",".","Validates","the","expected","optional","dependencies","for","data-describe","and","executes","any","additional","import","logic",".","Args",":","imports","(","Dict","[","str",",","Callable","]",")",":","A","dictionary","of","module","names","mapped","to","callables",".","The","Callable","will","be","executed","when","the","module","is","imported",",","and","can","be","used","to","run","additional","download","or","other","set","up","processes","that","should","happen","on","import","."]
code: def __init__(self, imports: Dict[str, Callable]):
      """Manages optional dependencies for data-describe.
  
      Validates the expected optional dependencies for data-describe and executes
      any additional import logic.
  
      Args:
          imports (Dict[str, Callable]): A dictionary of module names mapped to callables.
              The Callable will be executed when the module is imported, and can be used to
              run additional download or other set up processes that should happen on import.
      """
      self.imports = imports
      self.installed_modules: Dict[str, bool] = {}
      self.modules: Dict[str, ModuleType] = {}
      self.check_all_install(list(imports.keys()))
  
file_path: data-describe/data_describe/compat/_dependency.py
imports: from importlib.util import find_spec
  from importlib import import_module
  import warnings
  from functools import wraps
  from types import ModuleType
  from typing import Dict, Callable, List
  from data_describe.misc.logging import OutputLogger
  from data_describe.compat._notebook import _check_plotly_extension
label_desc: Use image node_id 1 to create a new _DependencyManager object  with example: obj = _DependencyManager(imports)