from typing import Any, Iterator, Optional, Sequence, Tuple, Union

class ParameterGrid:
    def __init__(self, *parameters: Sequence): ...
    def __getitem__(self, index: Union[Sequence[int], int]) -> Sequence[Any]: ...
    def __iter__(self) -> Iterator[Sequence[Any]]: ...
    def __len__(self) -> int: ...
    @property
    def size(self) -> int: ...
    def shuffled(
        self, rounds: int = ..., seed: Optional[int] = ...
    ) -> Iterator[Sequence[Any]]: ...
