abstract.py 470 Bytes
from abc import ABC, abstractmethod


class ProximitySensor(ABC):
    """Abstract proximity sensor."""

    @property
    @abstractmethod
    def proximity(self) -> int:
        ...


class LEDController(ABC):
    """Abstract LED controller."""

    @abstractmethod
    def fill(self, color: tuple[int, int, int]) -> None:
        ...


class TouchSensor(ABC):
    """Abstract touch sensor."""

    @property
    @abstractmethod
    def value(self) -> bool:
        ...