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

import os
from typing import Any, Callable, TYPE_CHECKING
from jinja2.loaders import BaseLoader
from collections.abc import Sequence
from jinja2.environment import Environment

"""Templates utility functions for Sphinx."""
if TYPE_CHECKING:
    ...
class BaseRenderer:
    def __init__(self, loader: BaseLoader | None = ...) -> None:
        ...
    
    def render(self, template_name: str, context: dict[str, Any]) -> str:
        ...
    
    def render_string(self, source: str, context: dict[str, Any]) -> str:
        ...
    


class FileRenderer(BaseRenderer):
    def __init__(self, search_path: Sequence[str | os.PathLike[str]]) -> None:
        ...
    
    @classmethod
    def render_from_file(cls, filename: str, context: dict[str, Any]) -> str:
        ...
    


class SphinxRenderer(FileRenderer):
    def __init__(self, template_path: Sequence[str | os.PathLike[str]] | None = ...) -> None:
        ...
    
    @classmethod
    def render_from_file(cls, filename: str, context: dict[str, Any]) -> str:
        ...
    


class LaTeXRenderer(SphinxRenderer):
    def __init__(self, template_path: Sequence[str | os.PathLike[str]] | None = ..., latex_engine: str | None = ...) -> None:
        ...
    


class ReSTRenderer(SphinxRenderer):
    def __init__(self, template_path: Sequence[str | os.PathLike[str]] | None = ..., language: str | None = ...) -> None:
        ...
    


class SphinxTemplateLoader(BaseLoader):
    """A loader supporting template inheritance"""
    def __init__(self, confdir: str | os.PathLike[str], templates_paths: Sequence[str | os.PathLike[str]], system_templates_paths: Sequence[str | os.PathLike[str]]) -> None:
        ...
    
    def get_source(self, environment: Environment, template: str) -> tuple[str, str, Callable]:
        ...
    


