1import sys
2from typing import Iterable, List, NamedTuple, Optional
3
4class _RequestRate(NamedTuple):
5    requests: int
6    seconds: int
7
8class RobotFileParser:
9    def __init__(self, url: str = ...) -> None: ...
10    def set_url(self, url: str) -> None: ...
11    def read(self) -> None: ...
12    def parse(self, lines: Iterable[str]) -> None: ...
13    def can_fetch(self, useragent: str, url: str) -> bool: ...
14    def mtime(self) -> int: ...
15    def modified(self) -> None: ...
16    def crawl_delay(self, useragent: str) -> Optional[str]: ...
17    def request_rate(self, useragent: str) -> Optional[_RequestRate]: ...
18    if sys.version_info >= (3, 8):
19        def site_maps(self) -> Optional[List[str]]: ...
20