--- /dev/null
+from typing import Any, Dict, Iterable, List, Optional, Set, Tuple\r
+\r
+from click.core import Context\r
+\r
+\r
+def _unpack_args(\r
+ args: Iterable[str], nargs_spec: Iterable[int]\r
+) -> Tuple[Tuple[Optional[Tuple[str, ...]], ...], List[str]]:\r
+ ...\r
+\r
+\r
+def split_opt(opt: str) -> Tuple[str, str]:\r
+ ...\r
+\r
+\r
+def normalize_opt(opt: str, ctx: Context) -> str:\r
+ ...\r
+\r
+\r
+def split_arg_string(string: str) -> List[str]:\r
+ ...\r
+\r
+\r
+class Option:\r
+ dest: str\r
+ action: str\r
+ nargs: int\r
+ const: Any\r
+ obj: Any\r
+ prefixes: Set[str]\r
+ _short_opts: List[str]\r
+ _long_opts: List[str]\r
+ # properties\r
+ takes_value: bool\r
+\r
+ def __init__(\r
+ self,\r
+ opts: Iterable[str],\r
+ dest: str,\r
+ action: Optional[str] = ...,\r
+ nargs: int = ...,\r
+ const: Optional[Any] = ...,\r
+ obj: Optional[Any] = ...\r
+ ) -> None:\r
+ ...\r
+\r
+ def process(self, value: Any, state: 'ParsingState') -> None:\r
+ ...\r
+\r
+\r
+class Argument:\r
+ dest: str\r
+ nargs: int\r
+ obj: Any\r
+\r
+ def __init__(self, dest: str, nargs: int = ..., obj: Optional[Any] = ...) -> None:\r
+ ...\r
+\r
+ def process(self, value: Any, state: 'ParsingState') -> None:\r
+ ...\r
+\r
+\r
+class ParsingState:\r
+ opts: Dict[str, Any]\r
+ largs: List[str]\r
+ rargs: List[str]\r
+ order: List[Any]\r
+\r
+ def __init__(self, rargs: List[str]) -> None:\r
+ ...\r
+\r
+\r
+class OptionParser:\r
+ ctx: Optional[Context]\r
+ allow_interspersed_args: bool\r
+ ignore_unknown_options: bool\r
+ _short_opt: Dict[str, Option]\r
+ _long_opt: Dict[str, Option]\r
+ _opt_prefixes: Set[str]\r
+ _args: List[Argument]\r
+\r
+ def __init__(self, ctx: Optional[Context] = ...) -> None:\r
+ ...\r
+\r
+ def add_option(\r
+ self,\r
+ opts: Iterable[str],\r
+ dest: str,\r
+ action: Optional[str] = ...,\r
+ nargs: int = ...,\r
+ const: Optional[Any] = ...,\r
+ obj: Optional[Any] = ...\r
+ ) -> None:\r
+ ...\r
+\r
+ def add_argument(self, dest: str, nargs: int = ..., obj: Optional[Any] = ...) -> None:\r
+ ...\r
+\r
+ def parse_args(\r
+ self, args: List[str]\r
+ ) -> Tuple[Dict[str, Any], List[str], List[Any]]:\r
+ ...\r