"""
@generated by stubgen.  Do not edit manually!
isort:skip_file
"""
from __future__ import annotations
from .multiap_pb2 import WifiMultiApGetResponse
from .support_pb2 import SupportInfoDump
from .updatefirmware_pb2 import UpdateFirmwareCheck
from .wifinetwork_pb2 import WifiConnectedStationsGet, WifiGuestAccessGet, WifiNeighborAPsGet, WifiRepeatedAPsGet
from devolo_plc_api.clients import Protobuf
from devolo_plc_api.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
from httpx import AsyncClient as AsyncClient

class DeviceApi(Protobuf):
    features: list[str]
    password: str
    def __init__(self, ip: str, session: AsyncClient, info: ZeroconfServiceInfo) -> None: ...
    async def async_get_led_setting(self) -> bool: ...
    async def async_set_led_setting(self, enable: bool) -> bool: ...
    async def async_get_wifi_multi_ap(self) -> WifiMultiApGetResponse: ...
    async def async_get_wifi_repeated_access_points(self) -> list[WifiRepeatedAPsGet.RepeatedAPInfo]: ...
    async def async_start_wps_clone(self) -> bool: ...
    async def async_factory_reset(self) -> bool: ...
    async def async_restart(self) -> bool: ...
    async def async_uptime(self) -> int: ...
    async def async_get_support_info(self) -> SupportInfoDump: ...
    async def async_check_firmware_available(self) -> UpdateFirmwareCheck: ...
    async def async_start_firmware_update(self) -> bool: ...
    async def async_get_wifi_connected_station(self) -> list[WifiConnectedStationsGet.ConnectedStationInfo]: ...
    async def async_get_wifi_guest_access(self) -> WifiGuestAccessGet: ...
    async def async_set_wifi_guest_access(self, enable: bool, duration: int = ...) -> bool: ...
    async def async_get_wifi_neighbor_access_points(self) -> list[WifiNeighborAPsGet.NeighborAPInfo]: ...
    async def async_start_wps(self) -> bool: ...
    def get_led_setting(self) -> bool: ...
    def set_led_setting(self, enable: bool) -> bool: ...
    def get_wifi_multi_ap(self) -> WifiMultiApGetResponse: ...
    def get_wifi_repeated_access_points(self) -> list[WifiRepeatedAPsGet.RepeatedAPInfo]: ...
    def start_wps_clone(self) -> bool: ...
    def factory_reset(self) -> bool: ...
    def restart(self) -> bool: ...
    def uptime(self) -> int: ...
    def get_support_info(self) -> SupportInfoDump: ...
    def check_firmware_available(self) -> UpdateFirmwareCheck: ...
    def start_firmware_update(self) -> bool: ...
    def get_wifi_connected_station(self) -> list[WifiConnectedStationsGet.ConnectedStationInfo]: ...
    def get_wifi_guest_access(self) -> WifiGuestAccessGet: ...
    def set_wifi_guest_access(self, enable: bool, duration: int = ...) -> bool: ...
    def get_wifi_neighbor_access_points(self) -> list[WifiNeighborAPsGet.NeighborAPInfo]: ...
    def start_wps(self) -> bool: ...
