# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.0.0-beta.1

import datetime
import sys
import types
import typing
import uuid as _uuid
from builtins import property as _property

import winrt._winrt
import winrt.system
import winrt.windows.foundation
import winrt.windows.foundation.collections

from winrt.windows.devices.radios import RadioAccessStatus, RadioKind, RadioState

Self = typing.TypeVar('Self')

class Radio_Static(type):
    def from_id_async(cls, device_id: str, /) -> winrt.windows.foundation.IAsyncOperation[Radio]: ...
    def get_device_selector(cls) -> str: ...
    def get_radios_async(cls) -> winrt.windows.foundation.IAsyncOperation[winrt.windows.foundation.collections.IVectorView[Radio]]: ...
    def request_access_async(cls) -> winrt.windows.foundation.IAsyncOperation[RadioAccessStatus]: ...

class Radio(winrt.system.Object, metaclass=Radio_Static):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> Radio: ...
    def set_state_async(self, value: RadioState, /) -> winrt.windows.foundation.IAsyncOperation[RadioAccessStatus]: ...
    def add_state_changed(self, handler: winrt.windows.foundation.TypedEventHandler[Radio, winrt.system.Object], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_state_changed(self, event_cookie: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    @_property
    def kind(self) -> RadioKind: ...
    @_property
    def name(self) -> str: ...
    @_property
    def state(self) -> RadioState: ...

