massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stdlib / xml / etree / ElementPath.pyi
1 from typing import Callable, Generator, List, Pattern, Tuple, TypeVar
2 from xml.etree.ElementTree import Element
3
4 xpath_tokenizer_re: Pattern[str]
5
6 _token = Tuple[str, str]
7 _next = Callable[[], _token]
8 _callback = Callable[[_SelectorContext, List[Element]], Generator[Element, None, None]]
9
10 def xpath_tokenizer(pattern: str, namespaces: dict[str, str] | None = ...) -> Generator[_token, None, None]: ...
11 def get_parent_map(context: _SelectorContext) -> dict[Element, Element]: ...
12 def prepare_child(next: _next, token: _token) -> _callback: ...
13 def prepare_star(next: _next, token: _token) -> _callback: ...
14 def prepare_self(next: _next, token: _token) -> _callback: ...
15 def prepare_descendant(next: _next, token: _token) -> _callback: ...
16 def prepare_parent(next: _next, token: _token) -> _callback: ...
17 def prepare_predicate(next: _next, token: _token) -> _callback: ...
18
19 ops: dict[str, Callable[[_next, _token], _callback]]
20
21 class _SelectorContext:
22     parent_map: dict[Element, Element] | None
23     root: Element
24     def __init__(self, root: Element) -> None: ...
25
26 _T = TypeVar("_T")
27
28 def iterfind(elem: Element, path: str, namespaces: dict[str, str] | None = ...) -> Generator[Element, None, None]: ...
29 def find(elem: Element, path: str, namespaces: dict[str, str] | None = ...) -> Element | None: ...
30 def findall(elem: Element, path: str, namespaces: dict[str, str] | None = ...) -> list[Element]: ...
31 def findtext(elem: Element, path: str, default: _T | None = ..., namespaces: dict[str, str] | None = ...) -> _T | str: ...