--- /dev/null
+from collections.abc import Iterable
+from typing import Any, Tuple
+from typing_extensions import Literal
+
+_Unit = Literal["pt", "mm", "cm", "in"]
+
+def substr(s, start, length: int = ...): ...
+def enclose_in_parens(s): ...
+def escape_parens(s): ...
+def b(s): ...
+def get_scale_factor(unit: _Unit | float) -> float: ...
+def convert_unit(
+ # to_convert has a recursive type
+ to_convert: float | Iterable[float | Iterable[Any]],
+ old_unit: str | float,
+ new_unit: str | float,
+) -> float | Tuple[float, ...]: ...
+def dochecks() -> None: ...