--- /dev/null
+"""Stubs for the 'imp' module."""\r
+\r
+from typing import List, Optional, Tuple, Iterable, IO, Any\r
+import types\r
+\r
+C_BUILTIN = ... # type: int\r
+C_EXTENSION = ... # type: int\r
+IMP_HOOK = ... # type: int\r
+PKG_DIRECTORY = ... # type: int\r
+PY_CODERESOURCE = ... # type: int\r
+PY_COMPILED = ... # type: int\r
+PY_FROZEN = ... # type: int\r
+PY_RESOURCE = ... # type: int\r
+PY_SOURCE = ... # type: int\r
+SEARCH_ERROR = ... # type: int\r
+\r
+def acquire_lock() -> None: ...\r
+def find_module(name: str, path: Iterable[str] = ...) -> Optional[Tuple[str, str, Tuple[str, str, int]]]: ...\r
+def get_magic() -> str: ...\r
+def get_suffixes() -> List[Tuple[str, str, int]]: ...\r
+def init_builtin(name: str) -> types.ModuleType: ...\r
+def init_frozen(name: str) -> types.ModuleType: ...\r
+def is_builtin(name: str) -> int: ...\r
+def is_frozen(name: str) -> bool: ...\r
+def load_compiled(name: str, pathname: str, file: IO[Any] = ...) -> types.ModuleType: ...\r
+def load_dynamic(name: str, pathname: str, file: IO[Any] = ...) -> types.ModuleType: ...\r
+def load_module(name: str, file: str, pathname: str, description: Tuple[str, str, int]) -> types.ModuleType: ...\r
+def load_source(name: str, pathname: str, file: IO[Any] = ...) -> types.ModuleType: ...\r
+def lock_held() -> bool: ...\r
+def new_module(name: str) -> types.ModuleType: ...\r
+def release_lock() -> None: ...\r
+\r
+class NullImporter:\r
+ def __init__(self, path_string: str) -> None: ...\r
+ def find_module(self, fullname: str, path: str = ...) -> None: ...\r