from __future__ import annotations

from typing import Any, Optional

class _IterableDatasetStopIteration:
    worker_id: Any = ...
    def __init__(self, worker_id: Any) -> None: ...

class _ResumeIteration: ...

class _DatasetKind:
    MAP: int = ...
    ITER: int = ...
    @staticmethod
    def create_fetcher(kind: Any, dataset: Any, auto_collate_batch: Any, collate_fn: Any, drop_last: Any): ...

class ParentWatchDog:
    def __init__(self) -> None: ...
    def is_alive(self): ...

def get_worker_info(): ...

class WorkerInfo:
    def __init__(self, **kwargs: Any) -> None: ...
    def __setattr__(self, key: Any, val: Any): ...

class _WorkerException:
    worker_id: Any = ...
    exc_type: Any = ...
    exc_msg: Any = ...
    def __init__(self, worker_id: Any, exc_info: Optional[Any] = ...) -> None: ...
    def reraise(self) -> None: ...
