# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.2.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 as windows_foundation
import winrt.windows.media as windows_media

Self = typing.TypeVar('Self')

@typing.final
class SoundLevelBroker_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.EventRegistrationToken Windows.Media.Core.Preview.SoundLevelBroker::add_SoundLevelChanged(Windows.Foundation.EventHandler`1<System.Object>)
    def add_sound_level_changed(cls, handler: windows_foundation.EventHandler[winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Core.Preview.SoundLevelBroker::remove_SoundLevelChanged(Windows.Foundation.EventRegistrationToken)
    def remove_sound_level_changed(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Media.SoundLevel Windows.Media.Core.Preview.SoundLevelBroker::get_SoundLevel()
    @_property
    def sound_level(cls) -> windows_media.SoundLevel: ...

@typing.final
class SoundLevelBroker(winrt.system.Object, metaclass=SoundLevelBroker_Static):
    pass

