:py:mod:`leads.config.registry`
===============================

.. py:module:: leads.config.registry

.. autodoc2-docstring:: leads.config.registry
   :allowtitles:

Module Contents
---------------

Functions
~~~~~~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`set_on_register_config <leads.config.registry.set_on_register_config>`
     - .. autodoc2-docstring:: leads.config.registry.set_on_register_config
          :summary:
   * - :py:obj:`load_config <leads.config.registry.load_config>`
     - .. autodoc2-docstring:: leads.config.registry.load_config
          :summary:
   * - :py:obj:`register_config <leads.config.registry.register_config>`
     - .. autodoc2-docstring:: leads.config.registry.register_config
          :summary:
   * - :py:obj:`get_config <leads.config.registry.get_config>`
     - .. autodoc2-docstring:: leads.config.registry.get_config
          :summary:
   * - :py:obj:`require_config <leads.config.registry.require_config>`
     - .. autodoc2-docstring:: leads.config.registry.require_config
          :summary:

Data
~~~~

.. list-table::
   :class: autosummary longtable
   :align: left

   * - :py:obj:`T <leads.config.registry.T>`
     - .. autodoc2-docstring:: leads.config.registry.T
          :summary:
   * - :py:obj:`_config_instance <leads.config.registry._config_instance>`
     - .. autodoc2-docstring:: leads.config.registry._config_instance
          :summary:
   * - :py:obj:`_on_register_config <leads.config.registry._on_register_config>`
     - .. autodoc2-docstring:: leads.config.registry._on_register_config
          :summary:

API
~~~

.. py:data:: T
   :canonical: leads.config.registry.T
   :value: '_TypeVar(...)'

   .. autodoc2-docstring:: leads.config.registry.T

.. py:data:: _config_instance
   :canonical: leads.config.registry._config_instance
   :type: leads.config.registry.T | None
   :value: None

   .. autodoc2-docstring:: leads.config.registry._config_instance

.. py:data:: _on_register_config
   :canonical: leads.config.registry._on_register_config
   :type: leads.types.OnRegister[leads.config.registry.T]
   :value: None

   .. autodoc2-docstring:: leads.config.registry._on_register_config

.. py:function:: set_on_register_config(callback: leads.types.OnRegisterChain[leads.config.registry.T]) -> None
   :canonical: leads.config.registry.set_on_register_config

   .. autodoc2-docstring:: leads.config.registry.set_on_register_config

.. py:function:: load_config(file: str | typing.TextIO, constructor: typing.Callable[[dict[str, leads.types.SupportedConfig]], leads.config.registry.T]) -> leads.config.registry.T
   :canonical: leads.config.registry.load_config

   .. autodoc2-docstring:: leads.config.registry.load_config

.. py:function:: register_config(config: leads.config.registry.T) -> None
   :canonical: leads.config.registry.register_config

   .. autodoc2-docstring:: leads.config.registry.register_config

.. py:function:: get_config() -> leads.config.registry.T | None
   :canonical: leads.config.registry.get_config

   .. autodoc2-docstring:: leads.config.registry.get_config

.. py:function:: require_config() -> leads.config.registry.T
   :canonical: leads.config.registry.require_config

   .. autodoc2-docstring:: leads.config.registry.require_config
