from _typeshed import StrOrBytesPath import subprocess from collections.abc import Iterable from typing import Literal as L, overload, TypedDict, type_check_only __all__ = ["run_main", "get_include"] @type_check_only class _F2PyDictBase(TypedDict): csrc: list[str] h: list[str] @type_check_only class _F2PyDict(_F2PyDictBase, total=False): fsrc: list[str] ltx: list[str] def run_main(comline_list: Iterable[str]) -> dict[str, _F2PyDict]: ... @overload def compile( source: str | bytes, modulename: str = ..., extra_args: str | list[str] = ..., verbose: bool = ..., source_fn: StrOrBytesPath | None = ..., extension: L[".f", ".f90"] = ..., full_output: L[False] = ..., ) -> int: ... @overload def compile( source: str | bytes, modulename: str = ..., extra_args: str | list[str] = ..., verbose: bool = ..., source_fn: StrOrBytesPath | None = ..., extension: L[".f", ".f90"] = ..., *, full_output: L[True], ) -> subprocess.CompletedProcess[bytes]: ... def get_include() -> str: ...