Source code for mljet.utils.types

"""Module contains type's aliases."""

import pathlib
from typing import (
    IO,
    Any,
    Protocol,
    Union,
    final,
    runtime_checkable,
)

PathLike = Union[str, pathlib.Path]


[docs]@runtime_checkable @final class Serializer(Protocol): """Protocol for serializers."""
[docs] @staticmethod def dump(obj: Any, file: IO, *args, **kwargs) -> None: ...
[docs] @staticmethod def load(file: IO, *args, **kwargs) -> Any: ...
[docs]@runtime_checkable @final class Estimator(Protocol): """Protocol for estimators."""
[docs] def fit(self, *args, **kwargs) -> Any: ...
[docs] def predict(self, *args, **kwargs) -> Any: ...