from _typeshed import Incomplete
from collections.abc import Iterator

class _HeapElement:
    priority: Incomplete
    element: Incomplete
    def __init__(self, priority, element) -> None: ...
    def __lt__(self, other): ...
    def __gt__(self, other): ...
    def __eq__(self, other): ...
    def __hash__(self): ...
    def __getitem__(self, indx): ...
    def __iter__(self) -> Iterator[Incomplete]: ...

class MappedQueue:
    heap: Incomplete
    position: Incomplete
    def __init__(self, data: Incomplete | None = None) -> None: ...
    def __len__(self) -> int: ...
    def push(self, elt, priority: Incomplete | None = None): ...
    def pop(self): ...
    def update(self, elt, new, priority: Incomplete | None = None) -> None: ...
    def remove(self, elt) -> None: ...
