mirror of
https://github.com/python-kasa/python-kasa.git
synced 2024-12-23 03:33:35 +00:00
24 lines
542 B
Python
24 lines
542 B
Python
"""Module for Fan Interface."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from abc import ABC, abstractmethod
|
|
from typing import Annotated
|
|
|
|
from ..module import FeatureAttribute, Module
|
|
|
|
|
|
class Fan(Module, ABC):
|
|
"""Interface for a Fan."""
|
|
|
|
@property
|
|
@abstractmethod
|
|
def fan_speed_level(self) -> Annotated[int, FeatureAttribute()]:
|
|
"""Return fan speed level."""
|
|
|
|
@abstractmethod
|
|
async def set_fan_speed_level(
|
|
self, level: int
|
|
) -> Annotated[dict, FeatureAttribute()]:
|
|
"""Set fan speed level."""
|