from typing import Any, List, Optional, Sequence

import numpy as np

_ShapeType = Any
_DType = Type[Any]
_SampleType = Any

class Space(object):
    def __init__(
        self, shape: Optional[_ShapeType] = ..., dtype: Optional[_DType] = ...
    ) -> None: ...
    @property
    def np_random(self) -> np.random.RandomState: ...
    def sample(self) -> _SampleType: ...
    def seed(self, seed: Optional[int] = ...) -> List[int]: ...
    def contains(self, x: Any) -> bool: ...
    def to_jsonable(self, sample_n: Sequence[Any]) -> List[Any]: ...
    def from_jsonable(self, sample_n: Sequence[Any]) -> List[Any]: ...
