"""
This type stub file was generated by pyright.
"""

from typing import TYPE_CHECKING
from sphinx.application import Sphinx
from sphinx.config import Config

"""Theming support for LaTeX builder."""
if TYPE_CHECKING:
    ...
logger = ...
class Theme:
    """A set of LaTeX configurations."""
    LATEX_ELEMENTS_KEYS = ...
    UPDATABLE_KEYS = ...
    def __init__(self, name: str) -> None:
        ...
    
    def update(self, config: Config) -> None:
        """Override theme settings by user's configuration."""
        ...
    


class BuiltInTheme(Theme):
    """A built-in LaTeX theme."""
    def __init__(self, name: str, config: Config) -> None:
        ...
    


class UserTheme(Theme):
    """A user defined LaTeX theme."""
    REQUIRED_CONFIG_KEYS = ...
    OPTIONAL_CONFIG_KEYS = ...
    def __init__(self, name: str, filename: str) -> None:
        ...
    


class ThemeFactory:
    """A factory class for LaTeX Themes."""
    def __init__(self, app: Sphinx) -> None:
        ...
    
    def load_builtin_themes(self, config: Config) -> None:
        """Load built-in themes."""
        ...
    
    def get(self, name: str) -> Theme:
        """Get a theme for given *name*."""
        ...
    
    def find_user_theme(self, name: str) -> Theme | None:
        """Find a theme named as *name* from latex_theme_path."""
        ...
    


