# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.2.0

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.devices.enumeration as windows_devices_enumeration
import winrt.windows.foundation as windows_foundation
import winrt.windows.foundation.collections as windows_foundation_collections
import winrt.windows.graphics.directx.direct3d11 as windows_graphics_directx_direct3d11
import winrt.windows.graphics.imaging as windows_graphics_imaging
import winrt.windows.media as windows_media
import winrt.windows.media.capture.core as windows_media_capture_core
import winrt.windows.media.capture.frames as windows_media_capture_frames
import winrt.windows.media.core as windows_media_core
import winrt.windows.media.devices as windows_media_devices
import winrt.windows.media.effects as windows_media_effects
import winrt.windows.media.mediaproperties as windows_media_mediaproperties
import winrt.windows.security.authentication.web as windows_security_authentication_web
import winrt.windows.security.credentials as windows_security_credentials
import winrt.windows.storage as windows_storage
import winrt.windows.storage.streams as windows_storage_streams
import winrt.windows.system as windows_system
import winrt.windows.ui.windowmanagement as windows_ui_windowmanagement

from winrt.windows.media.capture import AppBroadcastCameraCaptureState, AppBroadcastCameraOverlayLocation, AppBroadcastCameraOverlaySize, AppBroadcastCaptureTargetType, AppBroadcastExitBroadcastModeReason, AppBroadcastMicrophoneCaptureState, AppBroadcastPlugInState, AppBroadcastPreviewState, AppBroadcastSignInResult, AppBroadcastSignInState, AppBroadcastStreamState, AppBroadcastTerminationReason, AppBroadcastVideoEncodingBitrateMode, AppBroadcastVideoEncodingResolutionMode, AppCaptureHistoricalBufferLengthUnit, AppCaptureMetadataPriority, AppCaptureMicrophoneCaptureState, AppCaptureRecordingState, AppCaptureVideoEncodingBitrateMode, AppCaptureVideoEncodingFrameRateMode, AppCaptureVideoEncodingResolutionMode, CameraCaptureUIMaxPhotoResolution, CameraCaptureUIMaxVideoResolution, CameraCaptureUIMode, CameraCaptureUIPhotoFormat, CameraCaptureUIVideoFormat, ForegroundActivationArgument, GameBarCommand, GameBarCommandOrigin, GameBarServicesDisplayMode, GameBarTargetCapturePolicy, KnownVideoProfile, MediaCaptureDeviceExclusiveControlReleaseMode, MediaCaptureDeviceExclusiveControlStatus, MediaCaptureMemoryPreference, MediaCaptureSharingMode, MediaCaptureThermalStatus, MediaCategory, MediaStreamType, PhotoCaptureSource, PowerlineFrequency, StreamingCaptureMode, VideoDeviceCharacteristic, VideoRotation
from winrt.windows.media.capture import MediaCaptureFailedEventHandler, RecordLimitationExceededEventHandler

Self = typing.TypeVar('Self')

@typing.final
class WhiteBalanceGain:
    @_property
    def r(self) -> winrt.system.Double: ...
    @_property
    def g(self) -> winrt.system.Double: ...
    @_property
    def b(self) -> winrt.system.Double: ...
    def __new__(cls, r: winrt.system.Double = 0, g: winrt.system.Double = 0, b: winrt.system.Double = 0) -> WhiteBalanceGain: ...
    def __replace__(self, /, **changes: typing.Any) -> WhiteBalanceGain: ...
    def unpack(self) -> typing.Tuple[winrt.system.Double, winrt.system.Double, winrt.system.Double]: ...

@typing.final
class AdvancedCapturedPhoto(winrt.system.Object):
    # System.Object Windows.Media.Capture.AdvancedCapturedPhoto::get_Context()
    @_property
    def context(self) -> winrt.system.Object: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.AdvancedCapturedPhoto::get_Frame()
    @_property
    def frame(self) -> CapturedFrame: ...
    # Windows.Media.Devices.AdvancedPhotoMode Windows.Media.Capture.AdvancedCapturedPhoto::get_Mode()
    @_property
    def mode(self) -> windows_media_devices.AdvancedPhotoMode: ...
    # Windows.Foundation.IReference`1<Windows.Foundation.Rect> Windows.Media.Capture.AdvancedCapturedPhoto::get_FrameBoundsRelativeToReferencePhoto()
    @_property
    def frame_bounds_relative_to_reference_photo(self) -> typing.Optional[windows_foundation.Rect]: ...

@typing.final
class AdvancedPhotoCapture(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.AdvancedCapturedPhoto> Windows.Media.Capture.AdvancedPhotoCapture::CaptureAsync()
    def capture_async(self) -> windows_foundation.IAsyncOperation[AdvancedCapturedPhoto]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.AdvancedCapturedPhoto> Windows.Media.Capture.AdvancedPhotoCapture::CaptureAsync(System.Object)
    def capture_with_context_async(self, context: winrt.system.Object, /) -> windows_foundation.IAsyncOperation[AdvancedCapturedPhoto]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.AdvancedPhotoCapture::FinishAsync()
    def finish_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AdvancedPhotoCapture::add_AllPhotosCaptured(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AdvancedPhotoCapture,System.Object>)
    def add_all_photos_captured(self, handler: windows_foundation.TypedEventHandler[AdvancedPhotoCapture, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AdvancedPhotoCapture::remove_AllPhotosCaptured(Windows.Foundation.EventRegistrationToken)
    def remove_all_photos_captured(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AdvancedPhotoCapture::add_OptionalReferencePhotoCaptured(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AdvancedPhotoCapture,Windows.Media.Capture.OptionalReferencePhotoCapturedEventArgs>)
    def add_optional_reference_photo_captured(self, handler: windows_foundation.TypedEventHandler[AdvancedPhotoCapture, OptionalReferencePhotoCapturedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AdvancedPhotoCapture::remove_OptionalReferencePhotoCaptured(Windows.Foundation.EventRegistrationToken)
    def remove_optional_reference_photo_captured(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...

@typing.final
class AppBroadcastBackgroundService(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::TerminateBroadcast(Windows.Media.Capture.AppBroadcastTerminationReason,System.UInt32)
    def terminate_broadcast(self, reason: AppBroadcastTerminationReason, provider_specific_reason: winrt.system.UInt32, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundService::add_HeartbeatRequested(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundService,Windows.Media.Capture.AppBroadcastHeartbeatRequestedEventArgs>)
    def add_heartbeat_requested(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundService, AppBroadcastHeartbeatRequestedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::remove_HeartbeatRequested(Windows.Foundation.EventRegistrationToken)
    def remove_heartbeat_requested(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundService::add_BroadcastChannelChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundService,System.Object>)
    def add_broadcast_channel_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundService, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::remove_BroadcastChannelChanged(Windows.Foundation.EventRegistrationToken)
    def remove_broadcast_channel_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundService::add_BroadcastLanguageChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundService,System.Object>)
    def add_broadcast_language_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundService, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::remove_BroadcastLanguageChanged(Windows.Foundation.EventRegistrationToken)
    def remove_broadcast_language_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundService::add_BroadcastTitleChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundService,System.Object>)
    def add_broadcast_title_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundService, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::remove_BroadcastTitleChanged(Windows.Foundation.EventRegistrationToken)
    def remove_broadcast_title_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastBackgroundService::get_ViewerCount()
    @_property
    def viewer_count(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_ViewerCount(System.UInt32)
    @viewer_count.setter
    def viewer_count(self, value: winrt.system.UInt32) -> None: ...
    # Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo Windows.Media.Capture.AppBroadcastBackgroundService::get_StreamInfo()
    @_property
    def stream_info(self) -> AppBroadcastBackgroundServiceStreamInfo: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_StreamInfo(Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo)
    @stream_info.setter
    def stream_info(self, value: AppBroadcastBackgroundServiceStreamInfo) -> None: ...
    # Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo Windows.Media.Capture.AppBroadcastBackgroundService::get_SignInInfo()
    @_property
    def sign_in_info(self) -> AppBroadcastBackgroundServiceSignInInfo: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_SignInInfo(Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo)
    @sign_in_info.setter
    def sign_in_info(self, value: AppBroadcastBackgroundServiceSignInInfo) -> None: ...
    # Windows.Media.Capture.AppBroadcastPlugInState Windows.Media.Capture.AppBroadcastBackgroundService::get_PlugInState()
    @_property
    def plug_in_state(self) -> AppBroadcastPlugInState: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_PlugInState(Windows.Media.Capture.AppBroadcastPlugInState)
    @plug_in_state.setter
    def plug_in_state(self, value: AppBroadcastPlugInState) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundService::get_BroadcastTitle()
    @_property
    def broadcast_title(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_BroadcastTitle(System.String)
    @broadcast_title.setter
    def broadcast_title(self, value: str) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundService::get_AppId()
    @_property
    def app_id(self) -> str: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundService::get_TitleId()
    @_property
    def title_id(self) -> str: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundService::get_BroadcastLanguage()
    @_property
    def broadcast_language(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_BroadcastLanguage(System.String)
    @broadcast_language.setter
    def broadcast_language(self, value: str) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundService::get_BroadcastChannel()
    @_property
    def broadcast_channel(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundService::put_BroadcastChannel(System.String)
    @broadcast_channel.setter
    def broadcast_channel(self, value: str) -> None: ...

@typing.final
class AppBroadcastBackgroundServiceSignInInfo(winrt.system.Object):
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::add_SignInStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo,Windows.Media.Capture.AppBroadcastSignInStateChangedEventArgs>)
    def add_sign_in_state_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundServiceSignInInfo, AppBroadcastSignInStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::remove_SignInStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_sign_in_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::add_UserNameChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo,System.Object>)
    def add_user_name_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundServiceSignInInfo, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::remove_UserNameChanged(Windows.Foundation.EventRegistrationToken)
    def remove_user_name_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::get_UserName()
    @_property
    def user_name(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::put_UserName(System.String)
    @user_name.setter
    def user_name(self, value: str) -> None: ...
    # Windows.Foundation.Uri Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::get_OAuthRequestUri()
    @_property
    def o_auth_request_uri(self) -> windows_foundation.Uri: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::put_OAuthRequestUri(Windows.Foundation.Uri)
    @o_auth_request_uri.setter
    def o_auth_request_uri(self, value: windows_foundation.Uri) -> None: ...
    # Windows.Foundation.Uri Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::get_OAuthCallbackUri()
    @_property
    def o_auth_callback_uri(self) -> windows_foundation.Uri: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::put_OAuthCallbackUri(Windows.Foundation.Uri)
    @o_auth_callback_uri.setter
    def o_auth_callback_uri(self, value: windows_foundation.Uri) -> None: ...
    # Windows.Security.Authentication.Web.WebAuthenticationResult Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::get_AuthenticationResult()
    @_property
    def authentication_result(self) -> windows_security_authentication_web.WebAuthenticationResult: ...
    # Windows.Media.Capture.AppBroadcastSignInState Windows.Media.Capture.AppBroadcastBackgroundServiceSignInInfo::get_SignInState()
    @_property
    def sign_in_state(self) -> AppBroadcastSignInState: ...

@typing.final
class AppBroadcastBackgroundServiceStreamInfo(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::ReportProblemWithStream()
    def report_problem_with_stream(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::add_StreamStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo,Windows.Media.Capture.AppBroadcastStreamStateChangedEventArgs>)
    def add_stream_state_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundServiceStreamInfo, AppBroadcastStreamStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::remove_StreamStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_stream_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::add_VideoEncodingBitrateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo,System.Object>)
    def add_video_encoding_bitrate_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundServiceStreamInfo, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::remove_VideoEncodingBitrateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_video_encoding_bitrate_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::add_VideoEncodingResolutionChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo,System.Object>)
    def add_video_encoding_resolution_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastBackgroundServiceStreamInfo, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::remove_VideoEncodingResolutionChanged(Windows.Foundation.EventRegistrationToken)
    def remove_video_encoding_resolution_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.UInt64 Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::get_DesiredVideoEncodingBitrate()
    @_property
    def desired_video_encoding_bitrate(self) -> winrt.system.UInt64: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::put_DesiredVideoEncodingBitrate(System.UInt64)
    @desired_video_encoding_bitrate.setter
    def desired_video_encoding_bitrate(self, value: winrt.system.UInt64) -> None: ...
    # System.UInt64 Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::get_BandwidthTestBitrate()
    @_property
    def bandwidth_test_bitrate(self) -> winrt.system.UInt64: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::put_BandwidthTestBitrate(System.UInt64)
    @bandwidth_test_bitrate.setter
    def bandwidth_test_bitrate(self, value: winrt.system.UInt64) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::get_AudioCodec()
    @_property
    def audio_codec(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::put_AudioCodec(System.String)
    @audio_codec.setter
    def audio_codec(self, value: str) -> None: ...
    # Windows.Media.Capture.AppBroadcastStreamReader Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::get_BroadcastStreamReader()
    @_property
    def broadcast_stream_reader(self) -> AppBroadcastStreamReader: ...
    # Windows.Media.Capture.AppBroadcastStreamState Windows.Media.Capture.AppBroadcastBackgroundServiceStreamInfo::get_StreamState()
    @_property
    def stream_state(self) -> AppBroadcastStreamState: ...

@typing.final
class AppBroadcastCameraCaptureStateChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppBroadcastCameraCaptureStateChangedEventArgs::get_ErrorCode()
    @_property
    def error_code(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppBroadcastCameraCaptureState Windows.Media.Capture.AppBroadcastCameraCaptureStateChangedEventArgs::get_State()
    @_property
    def state(self) -> AppBroadcastCameraCaptureState: ...

@typing.final
class AppBroadcastGlobalSettings(winrt.system.Object):
    # System.Double Windows.Media.Capture.AppBroadcastGlobalSettings::get_SystemAudioGain()
    @_property
    def system_audio_gain(self) -> winrt.system.Double: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_SystemAudioGain(System.Double)
    @system_audio_gain.setter
    def system_audio_gain(self, value: winrt.system.Double) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastGlobalSettings::get_SelectedCameraId()
    @_property
    def selected_camera_id(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_SelectedCameraId(System.String)
    @selected_camera_id.setter
    def selected_camera_id(self, value: str) -> None: ...
    # System.Double Windows.Media.Capture.AppBroadcastGlobalSettings::get_MicrophoneGain()
    @_property
    def microphone_gain(self) -> winrt.system.Double: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_MicrophoneGain(System.Double)
    @microphone_gain.setter
    def microphone_gain(self, value: winrt.system.Double) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsMicrophoneCaptureEnabledByDefault()
    @_property
    def is_microphone_capture_enabled_by_default(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_IsMicrophoneCaptureEnabledByDefault(System.Boolean)
    @is_microphone_capture_enabled_by_default.setter
    def is_microphone_capture_enabled_by_default(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsEchoCancellationEnabled()
    @_property
    def is_echo_cancellation_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_IsEchoCancellationEnabled(System.Boolean)
    @is_echo_cancellation_enabled.setter
    def is_echo_cancellation_enabled(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsCursorImageCaptureEnabled()
    @_property
    def is_cursor_image_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_IsCursorImageCaptureEnabled(System.Boolean)
    @is_cursor_image_capture_enabled.setter
    def is_cursor_image_capture_enabled(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsCameraCaptureEnabledByDefault()
    @_property
    def is_camera_capture_enabled_by_default(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_IsCameraCaptureEnabledByDefault(System.Boolean)
    @is_camera_capture_enabled_by_default.setter
    def is_camera_capture_enabled_by_default(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsAudioCaptureEnabled()
    @_property
    def is_audio_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_IsAudioCaptureEnabled(System.Boolean)
    @is_audio_capture_enabled.setter
    def is_audio_capture_enabled(self, value: bool) -> None: ...
    # Windows.Media.Capture.AppBroadcastCameraOverlaySize Windows.Media.Capture.AppBroadcastGlobalSettings::get_CameraOverlaySize()
    @_property
    def camera_overlay_size(self) -> AppBroadcastCameraOverlaySize: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_CameraOverlaySize(Windows.Media.Capture.AppBroadcastCameraOverlaySize)
    @camera_overlay_size.setter
    def camera_overlay_size(self, value: AppBroadcastCameraOverlaySize) -> None: ...
    # Windows.Media.Capture.AppBroadcastCameraOverlayLocation Windows.Media.Capture.AppBroadcastGlobalSettings::get_CameraOverlayLocation()
    @_property
    def camera_overlay_location(self) -> AppBroadcastCameraOverlayLocation: ...
    # System.Void Windows.Media.Capture.AppBroadcastGlobalSettings::put_CameraOverlayLocation(Windows.Media.Capture.AppBroadcastCameraOverlayLocation)
    @camera_overlay_location.setter
    def camera_overlay_location(self, value: AppBroadcastCameraOverlayLocation) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_HasHardwareEncoder()
    @_property
    def has_hardware_encoder(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsBroadcastEnabled()
    @_property
    def is_broadcast_enabled(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsDisabledByPolicy()
    @_property
    def is_disabled_by_policy(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastGlobalSettings::get_IsGpuConstrained()
    @_property
    def is_gpu_constrained(self) -> bool: ...

@typing.final
class AppBroadcastHeartbeatRequestedEventArgs(winrt.system.Object):
    # System.Boolean Windows.Media.Capture.AppBroadcastHeartbeatRequestedEventArgs::get_Handled()
    @_property
    def handled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastHeartbeatRequestedEventArgs::put_Handled(System.Boolean)
    @handled.setter
    def handled(self, value: bool) -> None: ...

@typing.final
class AppBroadcastManager_Static(winrt._winrt.IInspectable_Static):
    # System.Void Windows.Media.Capture.AppBroadcastManager::ApplyGlobalSettings(Windows.Media.Capture.AppBroadcastGlobalSettings)
    def apply_global_settings(cls, value: AppBroadcastGlobalSettings, /) -> None: ...
    # System.Void Windows.Media.Capture.AppBroadcastManager::ApplyProviderSettings(Windows.Media.Capture.AppBroadcastProviderSettings)
    def apply_provider_settings(cls, value: AppBroadcastProviderSettings, /) -> None: ...
    # Windows.Media.Capture.AppBroadcastGlobalSettings Windows.Media.Capture.AppBroadcastManager::GetGlobalSettings()
    def get_global_settings(cls) -> AppBroadcastGlobalSettings: ...
    # Windows.Media.Capture.AppBroadcastProviderSettings Windows.Media.Capture.AppBroadcastManager::GetProviderSettings()
    def get_provider_settings(cls) -> AppBroadcastProviderSettings: ...

@typing.final
class AppBroadcastManager(winrt.system.Object, metaclass=AppBroadcastManager_Static):
    pass

@typing.final
class AppBroadcastMicrophoneCaptureStateChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppBroadcastMicrophoneCaptureStateChangedEventArgs::get_ErrorCode()
    @_property
    def error_code(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppBroadcastMicrophoneCaptureState Windows.Media.Capture.AppBroadcastMicrophoneCaptureStateChangedEventArgs::get_State()
    @_property
    def state(self) -> AppBroadcastMicrophoneCaptureState: ...

@typing.final
class AppBroadcastPlugIn(winrt.system.Object):
    # System.String Windows.Media.Capture.AppBroadcastPlugIn::get_AppId()
    @_property
    def app_id(self) -> str: ...
    # System.String Windows.Media.Capture.AppBroadcastPlugIn::get_DisplayName()
    @_property
    def display_name(self) -> str: ...
    # Windows.Storage.Streams.IRandomAccessStreamReference Windows.Media.Capture.AppBroadcastPlugIn::get_Logo()
    @_property
    def logo(self) -> windows_storage_streams.IRandomAccessStreamReference: ...
    # Windows.Media.Capture.AppBroadcastProviderSettings Windows.Media.Capture.AppBroadcastPlugIn::get_ProviderSettings()
    @_property
    def provider_settings(self) -> AppBroadcastProviderSettings: ...

@typing.final
class AppBroadcastPlugInManager_Static(winrt._winrt.IInspectable_Static):
    # Windows.Media.Capture.AppBroadcastPlugInManager Windows.Media.Capture.AppBroadcastPlugInManager::GetDefault()
    def get_default(cls) -> AppBroadcastPlugInManager: ...
    # Windows.Media.Capture.AppBroadcastPlugInManager Windows.Media.Capture.AppBroadcastPlugInManager::GetForUser(Windows.System.User)
    def get_for_user(cls, user: windows_system.User, /) -> AppBroadcastPlugInManager: ...

@typing.final
class AppBroadcastPlugInManager(winrt.system.Object, metaclass=AppBroadcastPlugInManager_Static):
    # Windows.Media.Capture.AppBroadcastPlugIn Windows.Media.Capture.AppBroadcastPlugInManager::get_DefaultPlugIn()
    @_property
    def default_plug_in(self) -> AppBroadcastPlugIn: ...
    # System.Void Windows.Media.Capture.AppBroadcastPlugInManager::put_DefaultPlugIn(Windows.Media.Capture.AppBroadcastPlugIn)
    @default_plug_in.setter
    def default_plug_in(self, value: AppBroadcastPlugIn) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastPlugInManager::get_IsBroadcastProviderAvailable()
    @_property
    def is_broadcast_provider_available(self) -> bool: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.AppBroadcastPlugIn> Windows.Media.Capture.AppBroadcastPlugInManager::get_PlugInList()
    @_property
    def plug_in_list(self) -> typing.Sequence[AppBroadcastPlugIn]: ...

@typing.final
class AppBroadcastPlugInStateChangedEventArgs(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastPlugInState Windows.Media.Capture.AppBroadcastPlugInStateChangedEventArgs::get_PlugInState()
    @_property
    def plug_in_state(self) -> AppBroadcastPlugInState: ...

@typing.final
class AppBroadcastPreview(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppBroadcastPreview::StopPreview()
    def stop_preview(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastPreview::add_PreviewStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastPreview,Windows.Media.Capture.AppBroadcastPreviewStateChangedEventArgs>)
    def add_preview_state_changed(self, value: windows_foundation.TypedEventHandler[AppBroadcastPreview, AppBroadcastPreviewStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastPreview::remove_PreviewStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_preview_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.AppBroadcastPreview::get_ErrorCode()
    @_property
    def error_code(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Media.Capture.AppBroadcastPreviewState Windows.Media.Capture.AppBroadcastPreview::get_PreviewState()
    @_property
    def preview_state(self) -> AppBroadcastPreviewState: ...
    # Windows.Media.Capture.AppBroadcastPreviewStreamReader Windows.Media.Capture.AppBroadcastPreview::get_PreviewStreamReader()
    @_property
    def preview_stream_reader(self) -> AppBroadcastPreviewStreamReader: ...

@typing.final
class AppBroadcastPreviewStateChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppBroadcastPreviewStateChangedEventArgs::get_ErrorCode()
    @_property
    def error_code(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppBroadcastPreviewState Windows.Media.Capture.AppBroadcastPreviewStateChangedEventArgs::get_PreviewState()
    @_property
    def preview_state(self) -> AppBroadcastPreviewState: ...

@typing.final
class AppBroadcastPreviewStreamReader(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastPreviewStreamVideoFrame Windows.Media.Capture.AppBroadcastPreviewStreamReader::TryGetNextVideoFrame()
    def try_get_next_video_frame(self) -> typing.Optional[AppBroadcastPreviewStreamVideoFrame]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastPreviewStreamReader::add_VideoFrameArrived(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastPreviewStreamReader,System.Object>)
    def add_video_frame_arrived(self, value: windows_foundation.TypedEventHandler[AppBroadcastPreviewStreamReader, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastPreviewStreamReader::remove_VideoFrameArrived(Windows.Foundation.EventRegistrationToken)
    def remove_video_frame_arrived(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Graphics.Imaging.BitmapAlphaMode Windows.Media.Capture.AppBroadcastPreviewStreamReader::get_VideoBitmapAlphaMode()
    @_property
    def video_bitmap_alpha_mode(self) -> windows_graphics_imaging.BitmapAlphaMode: ...
    # Windows.Graphics.Imaging.BitmapPixelFormat Windows.Media.Capture.AppBroadcastPreviewStreamReader::get_VideoBitmapPixelFormat()
    @_property
    def video_bitmap_pixel_format(self) -> windows_graphics_imaging.BitmapPixelFormat: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastPreviewStreamReader::get_VideoHeight()
    @_property
    def video_height(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastPreviewStreamReader::get_VideoStride()
    @_property
    def video_stride(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastPreviewStreamReader::get_VideoWidth()
    @_property
    def video_width(self) -> winrt.system.UInt32: ...

@typing.final
class AppBroadcastPreviewStreamVideoFrame(winrt.system.Object):
    # Windows.Storage.Streams.IBuffer Windows.Media.Capture.AppBroadcastPreviewStreamVideoFrame::get_VideoBuffer()
    @_property
    def video_buffer(self) -> winrt.system.Buffer: ...
    # Windows.Media.Capture.AppBroadcastPreviewStreamVideoHeader Windows.Media.Capture.AppBroadcastPreviewStreamVideoFrame::get_VideoHeader()
    @_property
    def video_header(self) -> AppBroadcastPreviewStreamVideoHeader: ...

@typing.final
class AppBroadcastPreviewStreamVideoHeader(winrt.system.Object):
    # Windows.Foundation.DateTime Windows.Media.Capture.AppBroadcastPreviewStreamVideoHeader::get_AbsoluteTimestamp()
    @_property
    def absolute_timestamp(self) -> datetime.datetime: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastPreviewStreamVideoHeader::get_Duration()
    @_property
    def duration(self) -> datetime.timedelta: ...
    # System.UInt64 Windows.Media.Capture.AppBroadcastPreviewStreamVideoHeader::get_FrameId()
    @_property
    def frame_id(self) -> winrt.system.UInt64: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastPreviewStreamVideoHeader::get_RelativeTimestamp()
    @_property
    def relative_timestamp(self) -> datetime.timedelta: ...

@typing.final
class AppBroadcastProviderSettings(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastVideoEncodingResolutionMode Windows.Media.Capture.AppBroadcastProviderSettings::get_VideoEncodingResolutionMode()
    @_property
    def video_encoding_resolution_mode(self) -> AppBroadcastVideoEncodingResolutionMode: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_VideoEncodingResolutionMode(Windows.Media.Capture.AppBroadcastVideoEncodingResolutionMode)
    @video_encoding_resolution_mode.setter
    def video_encoding_resolution_mode(self, value: AppBroadcastVideoEncodingResolutionMode) -> None: ...
    # Windows.Media.Capture.AppBroadcastVideoEncodingBitrateMode Windows.Media.Capture.AppBroadcastProviderSettings::get_VideoEncodingBitrateMode()
    @_property
    def video_encoding_bitrate_mode(self) -> AppBroadcastVideoEncodingBitrateMode: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_VideoEncodingBitrateMode(Windows.Media.Capture.AppBroadcastVideoEncodingBitrateMode)
    @video_encoding_bitrate_mode.setter
    def video_encoding_bitrate_mode(self, value: AppBroadcastVideoEncodingBitrateMode) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastProviderSettings::get_DefaultBroadcastTitle()
    @_property
    def default_broadcast_title(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_DefaultBroadcastTitle(System.String)
    @default_broadcast_title.setter
    def default_broadcast_title(self, value: str) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastProviderSettings::get_CustomVideoEncodingWidth()
    @_property
    def custom_video_encoding_width(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_CustomVideoEncodingWidth(System.UInt32)
    @custom_video_encoding_width.setter
    def custom_video_encoding_width(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastProviderSettings::get_CustomVideoEncodingHeight()
    @_property
    def custom_video_encoding_height(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_CustomVideoEncodingHeight(System.UInt32)
    @custom_video_encoding_height.setter
    def custom_video_encoding_height(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastProviderSettings::get_CustomVideoEncodingBitrate()
    @_property
    def custom_video_encoding_bitrate(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_CustomVideoEncodingBitrate(System.UInt32)
    @custom_video_encoding_bitrate.setter
    def custom_video_encoding_bitrate(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastProviderSettings::get_AudioEncodingBitrate()
    @_property
    def audio_encoding_bitrate(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppBroadcastProviderSettings::put_AudioEncodingBitrate(System.UInt32)
    @audio_encoding_bitrate.setter
    def audio_encoding_bitrate(self, value: winrt.system.UInt32) -> None: ...

@typing.final
class AppBroadcastServices(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<System.UInt32> Windows.Media.Capture.AppBroadcastServices::EnterBroadcastModeAsync(Windows.Media.Capture.AppBroadcastPlugIn)
    def enter_broadcast_mode_async(self, plug_in: AppBroadcastPlugIn, /) -> windows_foundation.IAsyncOperation[winrt.system.UInt32]: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::ExitBroadcastMode(Windows.Media.Capture.AppBroadcastExitBroadcastModeReason)
    def exit_broadcast_mode(self, reason: AppBroadcastExitBroadcastModeReason, /) -> None: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::PauseBroadcast()
    def pause_broadcast(self) -> None: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::ResumeBroadcast()
    def resume_broadcast(self) -> None: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::StartBroadcast()
    def start_broadcast(self) -> None: ...
    # Windows.Media.Capture.AppBroadcastPreview Windows.Media.Capture.AppBroadcastServices::StartPreview(Windows.Foundation.Size)
    def start_preview(self, desired_size: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]], /) -> AppBroadcastPreview: ...
    # Windows.Media.Capture.AppBroadcastCaptureTargetType Windows.Media.Capture.AppBroadcastServices::get_CaptureTargetType()
    @_property
    def capture_target_type(self) -> AppBroadcastCaptureTargetType: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::put_CaptureTargetType(Windows.Media.Capture.AppBroadcastCaptureTargetType)
    @capture_target_type.setter
    def capture_target_type(self, value: AppBroadcastCaptureTargetType) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastServices::get_BroadcastTitle()
    @_property
    def broadcast_title(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::put_BroadcastTitle(System.String)
    @broadcast_title.setter
    def broadcast_title(self, value: str) -> None: ...
    # System.String Windows.Media.Capture.AppBroadcastServices::get_BroadcastLanguage()
    @_property
    def broadcast_language(self) -> str: ...
    # System.Void Windows.Media.Capture.AppBroadcastServices::put_BroadcastLanguage(System.String)
    @broadcast_language.setter
    def broadcast_language(self, value: str) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastServices::get_CanCapture()
    @_property
    def can_capture(self) -> bool: ...
    # Windows.Media.Capture.AppBroadcastState Windows.Media.Capture.AppBroadcastServices::get_State()
    @_property
    def state(self) -> AppBroadcastState: ...
    # System.String Windows.Media.Capture.AppBroadcastServices::get_UserName()
    @_property
    def user_name(self) -> str: ...

@typing.final
class AppBroadcastSignInStateChangedEventArgs(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastSignInResult Windows.Media.Capture.AppBroadcastSignInStateChangedEventArgs::get_Result()
    @_property
    def result(self) -> AppBroadcastSignInResult: ...
    # Windows.Media.Capture.AppBroadcastSignInState Windows.Media.Capture.AppBroadcastSignInStateChangedEventArgs::get_SignInState()
    @_property
    def sign_in_state(self) -> AppBroadcastSignInState: ...

@typing.final
class AppBroadcastState(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppBroadcastState::RestartCameraCapture()
    def restart_camera_capture(self) -> None: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::RestartMicrophoneCapture()
    def restart_microphone_capture(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_CameraCaptureStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,Windows.Media.Capture.AppBroadcastCameraCaptureStateChangedEventArgs>)
    def add_camera_capture_state_changed(self, value: windows_foundation.TypedEventHandler[AppBroadcastState, AppBroadcastCameraCaptureStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_CameraCaptureStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_camera_capture_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_CaptureTargetClosed(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,System.Object>)
    def add_capture_target_closed(self, value: windows_foundation.TypedEventHandler[AppBroadcastState, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_CaptureTargetClosed(Windows.Foundation.EventRegistrationToken)
    def remove_capture_target_closed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_MicrophoneCaptureStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,Windows.Media.Capture.AppBroadcastMicrophoneCaptureStateChangedEventArgs>)
    def add_microphone_capture_state_changed(self, value: windows_foundation.TypedEventHandler[AppBroadcastState, AppBroadcastMicrophoneCaptureStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_MicrophoneCaptureStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_microphone_capture_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_PlugInStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,Windows.Media.Capture.AppBroadcastPlugInStateChangedEventArgs>)
    def add_plug_in_state_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastState, AppBroadcastPlugInStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_PlugInStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_plug_in_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_StreamStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,Windows.Media.Capture.AppBroadcastStreamStateChangedEventArgs>)
    def add_stream_state_changed(self, handler: windows_foundation.TypedEventHandler[AppBroadcastState, AppBroadcastStreamStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_StreamStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_stream_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastState::add_ViewerCountChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastState,Windows.Media.Capture.AppBroadcastViewerCountChangedEventArgs>)
    def add_viewer_count_changed(self, value: windows_foundation.TypedEventHandler[AppBroadcastState, AppBroadcastViewerCountChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::remove_ViewerCountChanged(Windows.Foundation.EventRegistrationToken)
    def remove_viewer_count_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Media.Capture.AppBroadcastSignInState Windows.Media.Capture.AppBroadcastState::get_SignInState()
    @_property
    def sign_in_state(self) -> AppBroadcastSignInState: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::put_SignInState(Windows.Media.Capture.AppBroadcastSignInState)
    @sign_in_state.setter
    def sign_in_state(self, value: AppBroadcastSignInState) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastState::get_ShouldCaptureMicrophone()
    @_property
    def should_capture_microphone(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::put_ShouldCaptureMicrophone(System.Boolean)
    @should_capture_microphone.setter
    def should_capture_microphone(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastState::get_ShouldCaptureCamera()
    @_property
    def should_capture_camera(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::put_ShouldCaptureCamera(System.Boolean)
    @should_capture_camera.setter
    def should_capture_camera(self, value: bool) -> None: ...
    # Windows.Security.Authentication.Web.WebAuthenticationResult Windows.Media.Capture.AppBroadcastState::get_AuthenticationResult()
    @_property
    def authentication_result(self) -> windows_security_authentication_web.WebAuthenticationResult: ...
    # System.Void Windows.Media.Capture.AppBroadcastState::put_AuthenticationResult(Windows.Security.Authentication.Web.WebAuthenticationResult)
    @authentication_result.setter
    def authentication_result(self, value: windows_security_authentication_web.WebAuthenticationResult) -> None: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastState::get_IsCaptureTargetRunning()
    @_property
    def is_capture_target_running(self) -> bool: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastState::get_MicrophoneCaptureError()
    @_property
    def microphone_capture_error(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppBroadcastMicrophoneCaptureState Windows.Media.Capture.AppBroadcastState::get_MicrophoneCaptureState()
    @_property
    def microphone_capture_state(self) -> AppBroadcastMicrophoneCaptureState: ...
    # Windows.Foundation.Uri Windows.Media.Capture.AppBroadcastState::get_OAuthCallbackUri()
    @_property
    def o_auth_callback_uri(self) -> windows_foundation.Uri: ...
    # Windows.Foundation.Uri Windows.Media.Capture.AppBroadcastState::get_OAuthRequestUri()
    @_property
    def o_auth_request_uri(self) -> windows_foundation.Uri: ...
    # Windows.Media.Capture.AppBroadcastPlugInState Windows.Media.Capture.AppBroadcastState::get_PlugInState()
    @_property
    def plug_in_state(self) -> AppBroadcastPlugInState: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastState::get_CameraCaptureError()
    @_property
    def camera_capture_error(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppBroadcastCameraCaptureState Windows.Media.Capture.AppBroadcastState::get_CameraCaptureState()
    @_property
    def camera_capture_state(self) -> AppBroadcastCameraCaptureState: ...
    # Windows.Foundation.Size Windows.Media.Capture.AppBroadcastState::get_EncodedVideoSize()
    @_property
    def encoded_video_size(self) -> windows_foundation.Size: ...
    # Windows.Media.Capture.AppBroadcastStreamState Windows.Media.Capture.AppBroadcastState::get_StreamState()
    @_property
    def stream_state(self) -> AppBroadcastStreamState: ...
    # Windows.Media.Capture.AppBroadcastTerminationReason Windows.Media.Capture.AppBroadcastState::get_TerminationReason()
    @_property
    def termination_reason(self) -> AppBroadcastTerminationReason: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastState::get_TerminationReasonPlugInSpecific()
    @_property
    def termination_reason_plug_in_specific(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastState::get_ViewerCount()
    @_property
    def viewer_count(self) -> winrt.system.UInt32: ...

@typing.final
class AppBroadcastStreamAudioFrame(winrt.system.Object):
    # Windows.Storage.Streams.IBuffer Windows.Media.Capture.AppBroadcastStreamAudioFrame::get_AudioBuffer()
    @_property
    def audio_buffer(self) -> winrt.system.Buffer: ...
    # Windows.Media.Capture.AppBroadcastStreamAudioHeader Windows.Media.Capture.AppBroadcastStreamAudioFrame::get_AudioHeader()
    @_property
    def audio_header(self) -> AppBroadcastStreamAudioHeader: ...

@typing.final
class AppBroadcastStreamAudioHeader(winrt.system.Object):
    # Windows.Foundation.DateTime Windows.Media.Capture.AppBroadcastStreamAudioHeader::get_AbsoluteTimestamp()
    @_property
    def absolute_timestamp(self) -> datetime.datetime: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastStreamAudioHeader::get_Duration()
    @_property
    def duration(self) -> datetime.timedelta: ...
    # System.UInt64 Windows.Media.Capture.AppBroadcastStreamAudioHeader::get_FrameId()
    @_property
    def frame_id(self) -> winrt.system.UInt64: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastStreamAudioHeader::get_HasDiscontinuity()
    @_property
    def has_discontinuity(self) -> bool: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastStreamAudioHeader::get_RelativeTimestamp()
    @_property
    def relative_timestamp(self) -> datetime.timedelta: ...

@typing.final
class AppBroadcastStreamReader(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastStreamAudioFrame Windows.Media.Capture.AppBroadcastStreamReader::TryGetNextAudioFrame()
    def try_get_next_audio_frame(self) -> typing.Optional[AppBroadcastStreamAudioFrame]: ...
    # Windows.Media.Capture.AppBroadcastStreamVideoFrame Windows.Media.Capture.AppBroadcastStreamReader::TryGetNextVideoFrame()
    def try_get_next_video_frame(self) -> typing.Optional[AppBroadcastStreamVideoFrame]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastStreamReader::add_AudioFrameArrived(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastStreamReader,System.Object>)
    def add_audio_frame_arrived(self, value: windows_foundation.TypedEventHandler[AppBroadcastStreamReader, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastStreamReader::remove_AudioFrameArrived(Windows.Foundation.EventRegistrationToken)
    def remove_audio_frame_arrived(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppBroadcastStreamReader::add_VideoFrameArrived(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppBroadcastStreamReader,System.Object>)
    def add_video_frame_arrived(self, value: windows_foundation.TypedEventHandler[AppBroadcastStreamReader, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppBroadcastStreamReader::remove_VideoFrameArrived(Windows.Foundation.EventRegistrationToken)
    def remove_video_frame_arrived(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Storage.Streams.IBuffer Windows.Media.Capture.AppBroadcastStreamReader::get_AudioAacSequence()
    @_property
    def audio_aac_sequence(self) -> winrt.system.Buffer: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_AudioBitrate()
    @_property
    def audio_bitrate(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_AudioChannels()
    @_property
    def audio_channels(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_AudioSampleRate()
    @_property
    def audio_sample_rate(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_VideoBitrate()
    @_property
    def video_bitrate(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_VideoHeight()
    @_property
    def video_height(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.AppBroadcastStreamReader::get_VideoWidth()
    @_property
    def video_width(self) -> winrt.system.UInt32: ...

@typing.final
class AppBroadcastStreamStateChangedEventArgs(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastStreamState Windows.Media.Capture.AppBroadcastStreamStateChangedEventArgs::get_StreamState()
    @_property
    def stream_state(self) -> AppBroadcastStreamState: ...

@typing.final
class AppBroadcastStreamVideoFrame(winrt.system.Object):
    # Windows.Storage.Streams.IBuffer Windows.Media.Capture.AppBroadcastStreamVideoFrame::get_VideoBuffer()
    @_property
    def video_buffer(self) -> winrt.system.Buffer: ...
    # Windows.Media.Capture.AppBroadcastStreamVideoHeader Windows.Media.Capture.AppBroadcastStreamVideoFrame::get_VideoHeader()
    @_property
    def video_header(self) -> AppBroadcastStreamVideoHeader: ...

@typing.final
class AppBroadcastStreamVideoHeader(winrt.system.Object):
    # Windows.Foundation.DateTime Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_AbsoluteTimestamp()
    @_property
    def absolute_timestamp(self) -> datetime.datetime: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_Duration()
    @_property
    def duration(self) -> datetime.timedelta: ...
    # System.UInt64 Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_FrameId()
    @_property
    def frame_id(self) -> winrt.system.UInt64: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_HasDiscontinuity()
    @_property
    def has_discontinuity(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_IsKeyFrame()
    @_property
    def is_key_frame(self) -> bool: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppBroadcastStreamVideoHeader::get_RelativeTimestamp()
    @_property
    def relative_timestamp(self) -> datetime.timedelta: ...

@typing.final
class AppBroadcastTriggerDetails(winrt.system.Object):
    # Windows.Media.Capture.AppBroadcastBackgroundService Windows.Media.Capture.AppBroadcastTriggerDetails::get_BackgroundService()
    @_property
    def background_service(self) -> AppBroadcastBackgroundService: ...

@typing.final
class AppBroadcastViewerCountChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppBroadcastViewerCountChangedEventArgs::get_ViewerCount()
    @_property
    def viewer_count(self) -> winrt.system.UInt32: ...

@typing.final
class AppCapture_Static(winrt._winrt.IInspectable_Static):
    # Windows.Media.Capture.AppCapture Windows.Media.Capture.AppCapture::GetForCurrentView()
    def get_for_current_view(cls) -> AppCapture: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.AppCapture::SetAllowedAsync(System.Boolean)
    def set_allowed_async(cls, allowed: bool, /) -> windows_foundation.IAsyncAction: ...

@typing.final
class AppCapture(winrt.system.Object, metaclass=AppCapture_Static):
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCapture::add_CapturingChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCapture,System.Object>)
    def add_capturing_changed(self, handler: windows_foundation.TypedEventHandler[AppCapture, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCapture::remove_CapturingChanged(Windows.Foundation.EventRegistrationToken)
    def remove_capturing_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCapture::get_IsCapturingAudio()
    @_property
    def is_capturing_audio(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCapture::get_IsCapturingVideo()
    @_property
    def is_capturing_video(self) -> bool: ...

@typing.final
class AppCaptureAlternateShortcutKeys(winrt.system.Object):
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleRecordingKeyModifiers()
    @_property
    def toggle_recording_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleRecordingKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_recording_key_modifiers.setter
    def toggle_recording_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleRecordingKey()
    @_property
    def toggle_recording_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleRecordingKey(Windows.System.VirtualKey)
    @toggle_recording_key.setter
    def toggle_recording_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleRecordingIndicatorKeyModifiers()
    @_property
    def toggle_recording_indicator_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleRecordingIndicatorKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_recording_indicator_key_modifiers.setter
    def toggle_recording_indicator_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleRecordingIndicatorKey()
    @_property
    def toggle_recording_indicator_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleRecordingIndicatorKey(Windows.System.VirtualKey)
    @toggle_recording_indicator_key.setter
    def toggle_recording_indicator_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleGameBarKeyModifiers()
    @_property
    def toggle_game_bar_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleGameBarKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_game_bar_key_modifiers.setter
    def toggle_game_bar_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleGameBarKey()
    @_property
    def toggle_game_bar_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleGameBarKey(Windows.System.VirtualKey)
    @toggle_game_bar_key.setter
    def toggle_game_bar_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_TakeScreenshotKeyModifiers()
    @_property
    def take_screenshot_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_TakeScreenshotKeyModifiers(Windows.System.VirtualKeyModifiers)
    @take_screenshot_key_modifiers.setter
    def take_screenshot_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_TakeScreenshotKey()
    @_property
    def take_screenshot_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_TakeScreenshotKey(Windows.System.VirtualKey)
    @take_screenshot_key.setter
    def take_screenshot_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_SaveHistoricalVideoKeyModifiers()
    @_property
    def save_historical_video_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_SaveHistoricalVideoKeyModifiers(Windows.System.VirtualKeyModifiers)
    @save_historical_video_key_modifiers.setter
    def save_historical_video_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_SaveHistoricalVideoKey()
    @_property
    def save_historical_video_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_SaveHistoricalVideoKey(Windows.System.VirtualKey)
    @save_historical_video_key.setter
    def save_historical_video_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleMicrophoneCaptureKeyModifiers()
    @_property
    def toggle_microphone_capture_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleMicrophoneCaptureKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_microphone_capture_key_modifiers.setter
    def toggle_microphone_capture_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleMicrophoneCaptureKey()
    @_property
    def toggle_microphone_capture_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleMicrophoneCaptureKey(Windows.System.VirtualKey)
    @toggle_microphone_capture_key.setter
    def toggle_microphone_capture_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleCameraCaptureKeyModifiers()
    @_property
    def toggle_camera_capture_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleCameraCaptureKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_camera_capture_key_modifiers.setter
    def toggle_camera_capture_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleCameraCaptureKey()
    @_property
    def toggle_camera_capture_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleCameraCaptureKey(Windows.System.VirtualKey)
    @toggle_camera_capture_key.setter
    def toggle_camera_capture_key(self, value: windows_system.VirtualKey) -> None: ...
    # Windows.System.VirtualKeyModifiers Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleBroadcastKeyModifiers()
    @_property
    def toggle_broadcast_key_modifiers(self) -> windows_system.VirtualKeyModifiers: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleBroadcastKeyModifiers(Windows.System.VirtualKeyModifiers)
    @toggle_broadcast_key_modifiers.setter
    def toggle_broadcast_key_modifiers(self, value: windows_system.VirtualKeyModifiers) -> None: ...
    # Windows.System.VirtualKey Windows.Media.Capture.AppCaptureAlternateShortcutKeys::get_ToggleBroadcastKey()
    @_property
    def toggle_broadcast_key(self) -> windows_system.VirtualKey: ...
    # System.Void Windows.Media.Capture.AppCaptureAlternateShortcutKeys::put_ToggleBroadcastKey(Windows.System.VirtualKey)
    @toggle_broadcast_key.setter
    def toggle_broadcast_key(self, value: windows_system.VirtualKey) -> None: ...

@typing.final
class AppCaptureDurationGeneratedEventArgs(winrt.system.Object):
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppCaptureDurationGeneratedEventArgs::get_Duration()
    @_property
    def duration(self) -> datetime.timedelta: ...

@typing.final
class AppCaptureFileGeneratedEventArgs(winrt.system.Object):
    # Windows.Storage.StorageFile Windows.Media.Capture.AppCaptureFileGeneratedEventArgs::get_File()
    @_property
    def file(self) -> windows_storage.StorageFile: ...

@typing.final
class AppCaptureManager_Static(winrt._winrt.IInspectable_Static):
    # System.Void Windows.Media.Capture.AppCaptureManager::ApplySettings(Windows.Media.Capture.AppCaptureSettings)
    def apply_settings(cls, app_capture_settings: AppCaptureSettings, /) -> None: ...
    # Windows.Media.Capture.AppCaptureSettings Windows.Media.Capture.AppCaptureManager::GetCurrentSettings()
    def get_current_settings(cls) -> AppCaptureSettings: ...

@typing.final
class AppCaptureManager(winrt.system.Object, metaclass=AppCaptureManager_Static):
    pass

@typing.final
class AppCaptureMetadataWriter(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::AddDoubleEvent(System.String,System.Double,Windows.Media.Capture.AppCaptureMetadataPriority)
    def add_double_event(self, name: str, value: winrt.system.Double, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::AddInt32Event(System.String,System.Int32,Windows.Media.Capture.AppCaptureMetadataPriority)
    def add_int32_event(self, name: str, value: winrt.system.Int32, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::AddStringEvent(System.String,System.String,Windows.Media.Capture.AppCaptureMetadataPriority)
    def add_string_event(self, name: str, value: str, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::Close()
    def close(self) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::StartDoubleState(System.String,System.Double,Windows.Media.Capture.AppCaptureMetadataPriority)
    def start_double_state(self, name: str, value: winrt.system.Double, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::StartInt32State(System.String,System.Int32,Windows.Media.Capture.AppCaptureMetadataPriority)
    def start_int32_state(self, name: str, value: winrt.system.Int32, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::StartStringState(System.String,System.String,Windows.Media.Capture.AppCaptureMetadataPriority)
    def start_string_state(self, name: str, value: str, priority: AppCaptureMetadataPriority, /) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::StopAllStates()
    def stop_all_states(self) -> None: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::StopState(System.String)
    def stop_state(self, name: str, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureMetadataWriter::add_MetadataPurged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureMetadataWriter,System.Object>)
    def add_metadata_purged(self, handler: windows_foundation.TypedEventHandler[AppCaptureMetadataWriter, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureMetadataWriter::remove_MetadataPurged(Windows.Foundation.EventRegistrationToken)
    def remove_metadata_purged(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.UInt64 Windows.Media.Capture.AppCaptureMetadataWriter::get_RemainingStorageBytesAvailable()
    @_property
    def remaining_storage_bytes_available(self) -> winrt.system.UInt64: ...

@typing.final
class AppCaptureMicrophoneCaptureStateChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppCaptureMicrophoneCaptureStateChangedEventArgs::get_ErrorCode()
    @_property
    def error_code(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppCaptureMicrophoneCaptureState Windows.Media.Capture.AppCaptureMicrophoneCaptureStateChangedEventArgs::get_State()
    @_property
    def state(self) -> AppCaptureMicrophoneCaptureState: ...

@typing.final
class AppCaptureRecordOperation(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppCaptureRecordOperation::StopRecording()
    def stop_recording(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureRecordOperation::add_DurationGenerated(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureRecordOperation,Windows.Media.Capture.AppCaptureDurationGeneratedEventArgs>)
    def add_duration_generated(self, value: windows_foundation.TypedEventHandler[AppCaptureRecordOperation, AppCaptureDurationGeneratedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureRecordOperation::remove_DurationGenerated(Windows.Foundation.EventRegistrationToken)
    def remove_duration_generated(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureRecordOperation::add_FileGenerated(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureRecordOperation,Windows.Media.Capture.AppCaptureFileGeneratedEventArgs>)
    def add_file_generated(self, value: windows_foundation.TypedEventHandler[AppCaptureRecordOperation, AppCaptureFileGeneratedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureRecordOperation::remove_FileGenerated(Windows.Foundation.EventRegistrationToken)
    def remove_file_generated(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureRecordOperation::add_StateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureRecordOperation,Windows.Media.Capture.AppCaptureRecordingStateChangedEventArgs>)
    def add_state_changed(self, value: windows_foundation.TypedEventHandler[AppCaptureRecordOperation, AppCaptureRecordingStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureRecordOperation::remove_StateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.IReference`1<Windows.Foundation.TimeSpan> Windows.Media.Capture.AppCaptureRecordOperation::get_Duration()
    @_property
    def duration(self) -> typing.Optional[datetime.timedelta]: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.AppCaptureRecordOperation::get_ErrorCode()
    @_property
    def error_code(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Storage.StorageFile Windows.Media.Capture.AppCaptureRecordOperation::get_File()
    @_property
    def file(self) -> windows_storage.StorageFile: ...
    # Windows.Foundation.IReference`1<System.Boolean> Windows.Media.Capture.AppCaptureRecordOperation::get_IsFileTruncated()
    @_property
    def is_file_truncated(self) -> typing.Optional[bool]: ...
    # Windows.Media.Capture.AppCaptureRecordingState Windows.Media.Capture.AppCaptureRecordOperation::get_State()
    @_property
    def state(self) -> AppCaptureRecordingState: ...

@typing.final
class AppCaptureRecordingStateChangedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.AppCaptureRecordingStateChangedEventArgs::get_ErrorCode()
    @_property
    def error_code(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppCaptureRecordingState Windows.Media.Capture.AppCaptureRecordingStateChangedEventArgs::get_State()
    @_property
    def state(self) -> AppCaptureRecordingState: ...

@typing.final
class AppCaptureServices(winrt.system.Object):
    # Windows.Media.Capture.AppCaptureRecordOperation Windows.Media.Capture.AppCaptureServices::Record()
    def record(self) -> AppCaptureRecordOperation: ...
    # Windows.Media.Capture.AppCaptureRecordOperation Windows.Media.Capture.AppCaptureServices::RecordTimeSpan(Windows.Foundation.DateTime,Windows.Foundation.TimeSpan)
    def record_time_span(self, start_time: datetime.datetime, duration: datetime.timedelta, /) -> AppCaptureRecordOperation: ...
    # System.Boolean Windows.Media.Capture.AppCaptureServices::get_CanCapture()
    @_property
    def can_capture(self) -> bool: ...
    # Windows.Media.Capture.AppCaptureState Windows.Media.Capture.AppCaptureServices::get_State()
    @_property
    def state(self) -> AppCaptureState: ...

@typing.final
class AppCaptureSettings(winrt.system.Object):
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsHistoricalCaptureOnWirelessDisplayAllowed()
    @_property
    def is_historical_capture_on_wireless_display_allowed(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsHistoricalCaptureOnWirelessDisplayAllowed(System.Boolean)
    @is_historical_capture_on_wireless_display_allowed.setter
    def is_historical_capture_on_wireless_display_allowed(self, value: bool) -> None: ...
    # Windows.Media.Capture.AppCaptureVideoEncodingBitrateMode Windows.Media.Capture.AppCaptureSettings::get_VideoEncodingBitrateMode()
    @_property
    def video_encoding_bitrate_mode(self) -> AppCaptureVideoEncodingBitrateMode: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_VideoEncodingBitrateMode(Windows.Media.Capture.AppCaptureVideoEncodingBitrateMode)
    @video_encoding_bitrate_mode.setter
    def video_encoding_bitrate_mode(self, value: AppCaptureVideoEncodingBitrateMode) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsHistoricalCaptureOnBatteryAllowed()
    @_property
    def is_historical_capture_on_battery_allowed(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsHistoricalCaptureOnBatteryAllowed(System.Boolean)
    @is_historical_capture_on_battery_allowed.setter
    def is_historical_capture_on_battery_allowed(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsAudioCaptureEnabled()
    @_property
    def is_audio_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsAudioCaptureEnabled(System.Boolean)
    @is_audio_capture_enabled.setter
    def is_audio_capture_enabled(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsAppCaptureEnabled()
    @_property
    def is_app_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsAppCaptureEnabled(System.Boolean)
    @is_app_capture_enabled.setter
    def is_app_capture_enabled(self, value: bool) -> None: ...
    # Windows.Storage.StorageFolder Windows.Media.Capture.AppCaptureSettings::get_AppCaptureDestinationFolder()
    @_property
    def app_capture_destination_folder(self) -> windows_storage.StorageFolder: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_AppCaptureDestinationFolder(Windows.Storage.StorageFolder)
    @app_capture_destination_folder.setter
    def app_capture_destination_folder(self, value: windows_storage.StorageFolder) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureSettings::get_HistoricalBufferLength()
    @_property
    def historical_buffer_length(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_HistoricalBufferLength(System.UInt32)
    @historical_buffer_length.setter
    def historical_buffer_length(self, value: winrt.system.UInt32) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsHistoricalCaptureEnabled()
    @_property
    def is_historical_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsHistoricalCaptureEnabled(System.Boolean)
    @is_historical_capture_enabled.setter
    def is_historical_capture_enabled(self, value: bool) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureSettings::get_CustomVideoEncodingWidth()
    @_property
    def custom_video_encoding_width(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_CustomVideoEncodingWidth(System.UInt32)
    @custom_video_encoding_width.setter
    def custom_video_encoding_width(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureSettings::get_CustomVideoEncodingHeight()
    @_property
    def custom_video_encoding_height(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_CustomVideoEncodingHeight(System.UInt32)
    @custom_video_encoding_height.setter
    def custom_video_encoding_height(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureSettings::get_CustomVideoEncodingBitrate()
    @_property
    def custom_video_encoding_bitrate(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_CustomVideoEncodingBitrate(System.UInt32)
    @custom_video_encoding_bitrate.setter
    def custom_video_encoding_bitrate(self, value: winrt.system.UInt32) -> None: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureSettings::get_AudioEncodingBitrate()
    @_property
    def audio_encoding_bitrate(self) -> winrt.system.UInt32: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_AudioEncodingBitrate(System.UInt32)
    @audio_encoding_bitrate.setter
    def audio_encoding_bitrate(self, value: winrt.system.UInt32) -> None: ...
    # Windows.Media.Capture.AppCaptureHistoricalBufferLengthUnit Windows.Media.Capture.AppCaptureSettings::get_HistoricalBufferLengthUnit()
    @_property
    def historical_buffer_length_unit(self) -> AppCaptureHistoricalBufferLengthUnit: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_HistoricalBufferLengthUnit(Windows.Media.Capture.AppCaptureHistoricalBufferLengthUnit)
    @historical_buffer_length_unit.setter
    def historical_buffer_length_unit(self, value: AppCaptureHistoricalBufferLengthUnit) -> None: ...
    # Windows.Media.Capture.AppCaptureVideoEncodingResolutionMode Windows.Media.Capture.AppCaptureSettings::get_VideoEncodingResolutionMode()
    @_property
    def video_encoding_resolution_mode(self) -> AppCaptureVideoEncodingResolutionMode: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_VideoEncodingResolutionMode(Windows.Media.Capture.AppCaptureVideoEncodingResolutionMode)
    @video_encoding_resolution_mode.setter
    def video_encoding_resolution_mode(self, value: AppCaptureVideoEncodingResolutionMode) -> None: ...
    # Windows.Storage.StorageFolder Windows.Media.Capture.AppCaptureSettings::get_ScreenshotDestinationFolder()
    @_property
    def screenshot_destination_folder(self) -> windows_storage.StorageFolder: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_ScreenshotDestinationFolder(Windows.Storage.StorageFolder)
    @screenshot_destination_folder.setter
    def screenshot_destination_folder(self, value: windows_storage.StorageFolder) -> None: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.AppCaptureSettings::get_MaximumRecordLength()
    @_property
    def maximum_record_length(self) -> datetime.timedelta: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_MaximumRecordLength(Windows.Foundation.TimeSpan)
    @maximum_record_length.setter
    def maximum_record_length(self, value: datetime.timedelta) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_HasHardwareEncoder()
    @_property
    def has_hardware_encoder(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsCpuConstrained()
    @_property
    def is_cpu_constrained(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsMemoryConstrained()
    @_property
    def is_memory_constrained(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsDisabledByPolicy()
    @_property
    def is_disabled_by_policy(self) -> bool: ...
    # Windows.Media.Capture.AppCaptureAlternateShortcutKeys Windows.Media.Capture.AppCaptureSettings::get_AlternateShortcutKeys()
    @_property
    def alternate_shortcut_keys(self) -> AppCaptureAlternateShortcutKeys: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsGpuConstrained()
    @_property
    def is_gpu_constrained(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsMicrophoneCaptureEnabled()
    @_property
    def is_microphone_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsMicrophoneCaptureEnabled(System.Boolean)
    @is_microphone_capture_enabled.setter
    def is_microphone_capture_enabled(self, value: bool) -> None: ...
    # Windows.Media.Capture.AppCaptureVideoEncodingFrameRateMode Windows.Media.Capture.AppCaptureSettings::get_VideoEncodingFrameRateMode()
    @_property
    def video_encoding_frame_rate_mode(self) -> AppCaptureVideoEncodingFrameRateMode: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_VideoEncodingFrameRateMode(Windows.Media.Capture.AppCaptureVideoEncodingFrameRateMode)
    @video_encoding_frame_rate_mode.setter
    def video_encoding_frame_rate_mode(self, value: AppCaptureVideoEncodingFrameRateMode) -> None: ...
    # System.Double Windows.Media.Capture.AppCaptureSettings::get_SystemAudioGain()
    @_property
    def system_audio_gain(self) -> winrt.system.Double: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_SystemAudioGain(System.Double)
    @system_audio_gain.setter
    def system_audio_gain(self, value: winrt.system.Double) -> None: ...
    # System.Double Windows.Media.Capture.AppCaptureSettings::get_MicrophoneGain()
    @_property
    def microphone_gain(self) -> winrt.system.Double: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_MicrophoneGain(System.Double)
    @microphone_gain.setter
    def microphone_gain(self, value: winrt.system.Double) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsMicrophoneCaptureEnabledByDefault()
    @_property
    def is_microphone_capture_enabled_by_default(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsMicrophoneCaptureEnabledByDefault(System.Boolean)
    @is_microphone_capture_enabled_by_default.setter
    def is_microphone_capture_enabled_by_default(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsEchoCancellationEnabled()
    @_property
    def is_echo_cancellation_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsEchoCancellationEnabled(System.Boolean)
    @is_echo_cancellation_enabled.setter
    def is_echo_cancellation_enabled(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureSettings::get_IsCursorImageCaptureEnabled()
    @_property
    def is_cursor_image_capture_enabled(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureSettings::put_IsCursorImageCaptureEnabled(System.Boolean)
    @is_cursor_image_capture_enabled.setter
    def is_cursor_image_capture_enabled(self, value: bool) -> None: ...

@typing.final
class AppCaptureState(winrt.system.Object):
    # System.Void Windows.Media.Capture.AppCaptureState::RestartMicrophoneCapture()
    def restart_microphone_capture(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureState::add_CaptureTargetClosed(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureState,System.Object>)
    def add_capture_target_closed(self, value: windows_foundation.TypedEventHandler[AppCaptureState, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureState::remove_CaptureTargetClosed(Windows.Foundation.EventRegistrationToken)
    def remove_capture_target_closed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.AppCaptureState::add_MicrophoneCaptureStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.AppCaptureState,Windows.Media.Capture.AppCaptureMicrophoneCaptureStateChangedEventArgs>)
    def add_microphone_capture_state_changed(self, value: windows_foundation.TypedEventHandler[AppCaptureState, AppCaptureMicrophoneCaptureStateChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.AppCaptureState::remove_MicrophoneCaptureStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_microphone_capture_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureState::get_ShouldCaptureMicrophone()
    @_property
    def should_capture_microphone(self) -> bool: ...
    # System.Void Windows.Media.Capture.AppCaptureState::put_ShouldCaptureMicrophone(System.Boolean)
    @should_capture_microphone.setter
    def should_capture_microphone(self, value: bool) -> None: ...
    # System.Boolean Windows.Media.Capture.AppCaptureState::get_IsHistoricalCaptureEnabled()
    @_property
    def is_historical_capture_enabled(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.AppCaptureState::get_IsTargetRunning()
    @_property
    def is_target_running(self) -> bool: ...
    # System.UInt32 Windows.Media.Capture.AppCaptureState::get_MicrophoneCaptureError()
    @_property
    def microphone_capture_error(self) -> winrt.system.UInt32: ...
    # Windows.Media.Capture.AppCaptureMicrophoneCaptureState Windows.Media.Capture.AppCaptureState::get_MicrophoneCaptureState()
    @_property
    def microphone_capture_state(self) -> AppCaptureMicrophoneCaptureState: ...

@typing.final
class CameraCaptureUI(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Media.Capture.CameraCaptureUI::CaptureFileAsync(Windows.Media.Capture.CameraCaptureUIMode)
    def capture_file_async(self, mode: CameraCaptureUIMode, /) -> windows_foundation.IAsyncOperation[windows_storage.StorageFile]: ...
    # Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings Windows.Media.Capture.CameraCaptureUI::get_PhotoSettings()
    @_property
    def photo_settings(self) -> CameraCaptureUIPhotoCaptureSettings: ...
    # Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings Windows.Media.Capture.CameraCaptureUI::get_VideoSettings()
    @_property
    def video_settings(self) -> CameraCaptureUIVideoCaptureSettings: ...

@typing.final
class CameraCaptureUIPhotoCaptureSettings(winrt.system.Object):
    # Windows.Media.Capture.CameraCaptureUIMaxPhotoResolution Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::get_MaxResolution()
    @_property
    def max_resolution(self) -> CameraCaptureUIMaxPhotoResolution: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::put_MaxResolution(Windows.Media.Capture.CameraCaptureUIMaxPhotoResolution)
    @max_resolution.setter
    def max_resolution(self, value: CameraCaptureUIMaxPhotoResolution) -> None: ...
    # Windows.Media.Capture.CameraCaptureUIPhotoFormat Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::get_Format()
    @_property
    def format(self) -> CameraCaptureUIPhotoFormat: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::put_Format(Windows.Media.Capture.CameraCaptureUIPhotoFormat)
    @format.setter
    def format(self, value: CameraCaptureUIPhotoFormat) -> None: ...
    # Windows.Foundation.Size Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::get_CroppedSizeInPixels()
    @_property
    def cropped_size_in_pixels(self) -> windows_foundation.Size: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::put_CroppedSizeInPixels(Windows.Foundation.Size)
    @cropped_size_in_pixels.setter
    def cropped_size_in_pixels(self, value: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]]) -> None: ...
    # Windows.Foundation.Size Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::get_CroppedAspectRatio()
    @_property
    def cropped_aspect_ratio(self) -> windows_foundation.Size: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::put_CroppedAspectRatio(Windows.Foundation.Size)
    @cropped_aspect_ratio.setter
    def cropped_aspect_ratio(self, value: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]]) -> None: ...
    # System.Boolean Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::get_AllowCropping()
    @_property
    def allow_cropping(self) -> bool: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIPhotoCaptureSettings::put_AllowCropping(System.Boolean)
    @allow_cropping.setter
    def allow_cropping(self, value: bool) -> None: ...

@typing.final
class CameraCaptureUIVideoCaptureSettings(winrt.system.Object):
    # Windows.Media.Capture.CameraCaptureUIMaxVideoResolution Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::get_MaxResolution()
    @_property
    def max_resolution(self) -> CameraCaptureUIMaxVideoResolution: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::put_MaxResolution(Windows.Media.Capture.CameraCaptureUIMaxVideoResolution)
    @max_resolution.setter
    def max_resolution(self, value: CameraCaptureUIMaxVideoResolution) -> None: ...
    # System.Single Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::get_MaxDurationInSeconds()
    @_property
    def max_duration_in_seconds(self) -> winrt.system.Single: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::put_MaxDurationInSeconds(System.Single)
    @max_duration_in_seconds.setter
    def max_duration_in_seconds(self, value: winrt.system.Single) -> None: ...
    # Windows.Media.Capture.CameraCaptureUIVideoFormat Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::get_Format()
    @_property
    def format(self) -> CameraCaptureUIVideoFormat: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::put_Format(Windows.Media.Capture.CameraCaptureUIVideoFormat)
    @format.setter
    def format(self, value: CameraCaptureUIVideoFormat) -> None: ...
    # System.Boolean Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::get_AllowTrimming()
    @_property
    def allow_trimming(self) -> bool: ...
    # System.Void Windows.Media.Capture.CameraCaptureUIVideoCaptureSettings::put_AllowTrimming(System.Boolean)
    @allow_trimming.setter
    def allow_trimming(self, value: bool) -> None: ...

@typing.final
class CameraOptionsUI_Static(winrt._winrt.IInspectable_Static):
    # System.Void Windows.Media.Capture.CameraOptionsUI::Show(Windows.Media.Capture.MediaCapture)
    def show(cls, media_capture: MediaCapture, /) -> None: ...

@typing.final
class CameraOptionsUI(winrt.system.Object, metaclass=CameraOptionsUI_Static):
    pass

@typing.final
class CapturedFrame(winrt.system.Object, windows_storage_streams.IRandomAccessStreamWithContentType, windows_storage_streams.IContentTypeProvider, windows_storage_streams.IRandomAccessStream, windows_storage_streams.IOutputStream, windows_storage_streams.IInputStream, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # Windows.Storage.Streams.IRandomAccessStream Windows.Media.Capture.CapturedFrame::CloneStream()
    def clone_stream(self) -> windows_storage_streams.IRandomAccessStream: ...
    # System.Void Windows.Media.Capture.CapturedFrame::Close()
    def close(self) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Media.Capture.CapturedFrame::FlushAsync()
    def flush_async(self) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Storage.Streams.IInputStream Windows.Media.Capture.CapturedFrame::GetInputStreamAt(System.UInt64)
    def get_input_stream_at(self, position: winrt.system.UInt64, /) -> windows_storage_streams.IInputStream: ...
    # Windows.Storage.Streams.IOutputStream Windows.Media.Capture.CapturedFrame::GetOutputStreamAt(System.UInt64)
    def get_output_stream_at(self, position: winrt.system.UInt64, /) -> windows_storage_streams.IOutputStream: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Storage.Streams.IBuffer,System.UInt32> Windows.Media.Capture.CapturedFrame::ReadAsync(Windows.Storage.Streams.IBuffer,System.UInt32,Windows.Storage.Streams.InputStreamOptions)
    def read_async(self, buffer: winrt.system.Buffer, count: winrt.system.UInt32, options: windows_storage_streams.InputStreamOptions, /) -> windows_foundation.IAsyncOperationWithProgress[winrt.system.Buffer, winrt.system.UInt32]: ...
    # System.Void Windows.Media.Capture.CapturedFrame::Seek(System.UInt64)
    def seek(self, position: winrt.system.UInt64, /) -> None: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<System.UInt32,System.UInt32> Windows.Media.Capture.CapturedFrame::WriteAsync(Windows.Storage.Streams.IBuffer)
    def write_async(self, buffer: winrt.system.Buffer, /) -> windows_foundation.IAsyncOperationWithProgress[winrt.system.UInt32, winrt.system.UInt32]: ...
    # System.UInt32 Windows.Media.Capture.CapturedFrame::get_Height()
    @_property
    def height(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Media.Capture.CapturedFrame::get_Width()
    @_property
    def width(self) -> winrt.system.UInt32: ...
    # Windows.Graphics.Imaging.BitmapPropertySet Windows.Media.Capture.CapturedFrame::get_BitmapProperties()
    @_property
    def bitmap_properties(self) -> windows_graphics_imaging.BitmapPropertySet: ...
    # Windows.Media.Capture.CapturedFrameControlValues Windows.Media.Capture.CapturedFrame::get_ControlValues()
    @_property
    def control_values(self) -> CapturedFrameControlValues: ...
    # Windows.Graphics.Imaging.SoftwareBitmap Windows.Media.Capture.CapturedFrame::get_SoftwareBitmap()
    @_property
    def software_bitmap(self) -> windows_graphics_imaging.SoftwareBitmap: ...
    # System.String Windows.Media.Capture.CapturedFrame::get_ContentType()
    @_property
    def content_type(self) -> str: ...
    # System.UInt64 Windows.Media.Capture.CapturedFrame::get_Size()
    @_property
    def size(self) -> winrt.system.UInt64: ...
    # System.Void Windows.Media.Capture.CapturedFrame::put_Size(System.UInt64)
    @size.setter
    def size(self, value: winrt.system.UInt64) -> None: ...
    # System.Boolean Windows.Media.Capture.CapturedFrame::get_CanRead()
    @_property
    def can_read(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.CapturedFrame::get_CanWrite()
    @_property
    def can_write(self) -> bool: ...
    # System.UInt64 Windows.Media.Capture.CapturedFrame::get_Position()
    @_property
    def position(self) -> winrt.system.UInt64: ...

@typing.final
class CapturedFrameControlValues(winrt.system.Object):
    # Windows.Foundation.IReference`1<Windows.Foundation.TimeSpan> Windows.Media.Capture.CapturedFrameControlValues::get_Exposure()
    @_property
    def exposure(self) -> typing.Optional[datetime.timedelta]: ...
    # Windows.Foundation.IReference`1<System.Single> Windows.Media.Capture.CapturedFrameControlValues::get_ExposureCompensation()
    @_property
    def exposure_compensation(self) -> typing.Optional[winrt.system.Single]: ...
    # Windows.Foundation.IReference`1<System.Single> Windows.Media.Capture.CapturedFrameControlValues::get_FlashPowerPercent()
    @_property
    def flash_power_percent(self) -> typing.Optional[winrt.system.Single]: ...
    # Windows.Foundation.IReference`1<System.Boolean> Windows.Media.Capture.CapturedFrameControlValues::get_Flashed()
    @_property
    def flashed(self) -> typing.Optional[bool]: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.CapturedFrameControlValues::get_Focus()
    @_property
    def focus(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.CapturedFrameControlValues::get_IsoSpeed()
    @_property
    def iso_speed(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Foundation.IReference`1<Windows.Media.Devices.CaptureSceneMode> Windows.Media.Capture.CapturedFrameControlValues::get_SceneMode()
    @_property
    def scene_mode(self) -> typing.Optional[windows_media_devices.CaptureSceneMode]: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.CapturedFrameControlValues::get_WhiteBalance()
    @_property
    def white_balance(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Foundation.IReference`1<System.Single> Windows.Media.Capture.CapturedFrameControlValues::get_ZoomFactor()
    @_property
    def zoom_factor(self) -> typing.Optional[winrt.system.Single]: ...
    # Windows.Foundation.IReference`1<Windows.Media.Devices.MediaCaptureFocusState> Windows.Media.Capture.CapturedFrameControlValues::get_FocusState()
    @_property
    def focus_state(self) -> typing.Optional[windows_media_devices.MediaCaptureFocusState]: ...
    # Windows.Foundation.IReference`1<System.Double> Windows.Media.Capture.CapturedFrameControlValues::get_IsoAnalogGain()
    @_property
    def iso_analog_gain(self) -> typing.Optional[winrt.system.Double]: ...
    # Windows.Foundation.IReference`1<System.Double> Windows.Media.Capture.CapturedFrameControlValues::get_IsoDigitalGain()
    @_property
    def iso_digital_gain(self) -> typing.Optional[winrt.system.Double]: ...
    # Windows.Media.MediaProperties.MediaRatio Windows.Media.Capture.CapturedFrameControlValues::get_SensorFrameRate()
    @_property
    def sensor_frame_rate(self) -> windows_media_mediaproperties.MediaRatio: ...
    # Windows.Foundation.IReference`1<Windows.Media.Capture.WhiteBalanceGain> Windows.Media.Capture.CapturedFrameControlValues::get_WhiteBalanceGain()
    @_property
    def white_balance_gain(self) -> typing.Optional[WhiteBalanceGain]: ...

@typing.final
class CapturedPhoto(winrt.system.Object):
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.CapturedPhoto::get_Frame()
    @_property
    def frame(self) -> CapturedFrame: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.CapturedPhoto::get_Thumbnail()
    @_property
    def thumbnail(self) -> CapturedFrame: ...

@typing.final
class GameBarServices(winrt.system.Object):
    # System.Void Windows.Media.Capture.GameBarServices::DisableCapture()
    def disable_capture(self) -> None: ...
    # System.Void Windows.Media.Capture.GameBarServices::EnableCapture()
    def enable_capture(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.GameBarServices::add_CommandReceived(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.GameBarServices,Windows.Media.Capture.GameBarServicesCommandEventArgs>)
    def add_command_received(self, value: windows_foundation.TypedEventHandler[GameBarServices, GameBarServicesCommandEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.GameBarServices::remove_CommandReceived(Windows.Foundation.EventRegistrationToken)
    def remove_command_received(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Media.Capture.AppBroadcastServices Windows.Media.Capture.GameBarServices::get_AppBroadcastServices()
    @_property
    def app_broadcast_services(self) -> AppBroadcastServices: ...
    # Windows.Media.Capture.AppCaptureServices Windows.Media.Capture.GameBarServices::get_AppCaptureServices()
    @_property
    def app_capture_services(self) -> AppCaptureServices: ...
    # System.String Windows.Media.Capture.GameBarServices::get_SessionId()
    @_property
    def session_id(self) -> str: ...
    # Windows.Media.Capture.GameBarTargetCapturePolicy Windows.Media.Capture.GameBarServices::get_TargetCapturePolicy()
    @_property
    def target_capture_policy(self) -> GameBarTargetCapturePolicy: ...
    # Windows.Media.Capture.GameBarServicesTargetInfo Windows.Media.Capture.GameBarServices::get_TargetInfo()
    @_property
    def target_info(self) -> GameBarServicesTargetInfo: ...

@typing.final
class GameBarServicesCommandEventArgs(winrt.system.Object):
    # Windows.Media.Capture.GameBarCommand Windows.Media.Capture.GameBarServicesCommandEventArgs::get_Command()
    @_property
    def command(self) -> GameBarCommand: ...
    # Windows.Media.Capture.GameBarCommandOrigin Windows.Media.Capture.GameBarServicesCommandEventArgs::get_Origin()
    @_property
    def origin(self) -> GameBarCommandOrigin: ...

@typing.final
class GameBarServicesManager_Static(winrt._winrt.IInspectable_Static):
    # Windows.Media.Capture.GameBarServicesManager Windows.Media.Capture.GameBarServicesManager::GetDefault()
    def get_default(cls) -> GameBarServicesManager: ...

@typing.final
class GameBarServicesManager(winrt.system.Object, metaclass=GameBarServicesManager_Static):
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.GameBarServicesManager::add_GameBarServicesCreated(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.GameBarServicesManager,Windows.Media.Capture.GameBarServicesManagerGameBarServicesCreatedEventArgs>)
    def add_game_bar_services_created(self, value: windows_foundation.TypedEventHandler[GameBarServicesManager, GameBarServicesManagerGameBarServicesCreatedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.GameBarServicesManager::remove_GameBarServicesCreated(Windows.Foundation.EventRegistrationToken)
    def remove_game_bar_services_created(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...

@typing.final
class GameBarServicesManagerGameBarServicesCreatedEventArgs(winrt.system.Object):
    # Windows.Media.Capture.GameBarServices Windows.Media.Capture.GameBarServicesManagerGameBarServicesCreatedEventArgs::get_GameBarServices()
    @_property
    def game_bar_services(self) -> GameBarServices: ...

@typing.final
class GameBarServicesTargetInfo(winrt.system.Object):
    # System.String Windows.Media.Capture.GameBarServicesTargetInfo::get_AppId()
    @_property
    def app_id(self) -> str: ...
    # Windows.Media.Capture.GameBarServicesDisplayMode Windows.Media.Capture.GameBarServicesTargetInfo::get_DisplayMode()
    @_property
    def display_mode(self) -> GameBarServicesDisplayMode: ...
    # System.String Windows.Media.Capture.GameBarServicesTargetInfo::get_DisplayName()
    @_property
    def display_name(self) -> str: ...
    # System.String Windows.Media.Capture.GameBarServicesTargetInfo::get_TitleId()
    @_property
    def title_id(self) -> str: ...

@typing.final
class LowLagMediaRecording(winrt.system.Object):
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagMediaRecording::FinishAsync()
    def finish_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagMediaRecording::PauseAsync(Windows.Media.Devices.MediaCapturePauseBehavior)
    def pause_async(self, behavior: windows_media_devices.MediaCapturePauseBehavior, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.MediaCapturePauseResult> Windows.Media.Capture.LowLagMediaRecording::PauseWithResultAsync(Windows.Media.Devices.MediaCapturePauseBehavior)
    def pause_with_result_async(self, behavior: windows_media_devices.MediaCapturePauseBehavior, /) -> windows_foundation.IAsyncOperation[MediaCapturePauseResult]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagMediaRecording::ResumeAsync()
    def resume_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagMediaRecording::StartAsync()
    def start_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagMediaRecording::StopAsync()
    def stop_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.MediaCaptureStopResult> Windows.Media.Capture.LowLagMediaRecording::StopWithResultAsync()
    def stop_with_result_async(self) -> windows_foundation.IAsyncOperation[MediaCaptureStopResult]: ...

@typing.final
class LowLagPhotoCapture(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.CapturedPhoto> Windows.Media.Capture.LowLagPhotoCapture::CaptureAsync()
    def capture_async(self) -> windows_foundation.IAsyncOperation[CapturedPhoto]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagPhotoCapture::FinishAsync()
    def finish_async(self) -> windows_foundation.IAsyncAction: ...

@typing.final
class LowLagPhotoSequenceCapture(winrt.system.Object):
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagPhotoSequenceCapture::FinishAsync()
    def finish_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagPhotoSequenceCapture::StartAsync()
    def start_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.LowLagPhotoSequenceCapture::StopAsync()
    def stop_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.LowLagPhotoSequenceCapture::add_PhotoCaptured(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.LowLagPhotoSequenceCapture,Windows.Media.Capture.PhotoCapturedEventArgs>)
    def add_photo_captured(self, handler: windows_foundation.TypedEventHandler[LowLagPhotoSequenceCapture, PhotoCapturedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.LowLagPhotoSequenceCapture::remove_PhotoCaptured(Windows.Foundation.EventRegistrationToken)
    def remove_photo_captured(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...

@typing.final
class MediaCapture_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfile> Windows.Media.Capture.MediaCapture::FindAllVideoProfiles(System.String)
    def find_all_video_profiles(cls, video_device_id: str, /) -> typing.Sequence[MediaCaptureVideoProfile]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfile> Windows.Media.Capture.MediaCapture::FindConcurrentProfiles(System.String)
    def find_concurrent_profiles(cls, video_device_id: str, /) -> typing.Sequence[MediaCaptureVideoProfile]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfile> Windows.Media.Capture.MediaCapture::FindKnownVideoProfiles(System.String,Windows.Media.Capture.KnownVideoProfile)
    def find_known_video_profiles(cls, video_device_id: str, name: KnownVideoProfile, /) -> typing.Sequence[MediaCaptureVideoProfile]: ...
    # System.Boolean Windows.Media.Capture.MediaCapture::IsVideoProfileSupported(System.String)
    def is_video_profile_supported(cls, video_device_id: str, /) -> bool: ...

@typing.final
class MediaCapture(winrt.system.Object, windows_foundation.IClosable, metaclass=MediaCapture_Static):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.IMediaExtension> Windows.Media.Capture.MediaCapture::AddAudioEffectAsync(Windows.Media.Effects.IAudioEffectDefinition)
    def add_audio_effect_async(self, definition: windows_media_effects.IAudioEffectDefinition, /) -> windows_foundation.IAsyncOperation[windows_media.IMediaExtension]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::AddEffectAsync(Windows.Media.Capture.MediaStreamType,System.String,Windows.Foundation.Collections.IPropertySet)
    # @deprecated("AddEffectAsync might not be available in future versions of Windows. Starting with Windows Threshold, use AddAudioEffectAsync and AddVideoEffectAsync instead")
    def add_effect_async(self, media_stream_type: MediaStreamType, effect_activation_id: str, effect_settings: windows_foundation_collections.IPropertySet, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.IMediaExtension> Windows.Media.Capture.MediaCapture::AddVideoEffectAsync(Windows.Media.Effects.IVideoEffectDefinition,Windows.Media.Capture.MediaStreamType)
    def add_video_effect_async(self, definition: windows_media_effects.IVideoEffectDefinition, media_stream_type: MediaStreamType, /) -> windows_foundation.IAsyncOperation[windows_media.IMediaExtension]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::CapturePhotoToStorageFileAsync(Windows.Media.MediaProperties.ImageEncodingProperties,Windows.Storage.IStorageFile)
    def capture_photo_to_storage_file_async(self, type: windows_media_mediaproperties.ImageEncodingProperties, file: windows_storage.IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::CapturePhotoToStreamAsync(Windows.Media.MediaProperties.ImageEncodingProperties,Windows.Storage.Streams.IRandomAccessStream)
    def capture_photo_to_stream_async(self, type: windows_media_mediaproperties.ImageEncodingProperties, stream: windows_storage_streams.IRandomAccessStream, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::ClearEffectsAsync(Windows.Media.Capture.MediaStreamType)
    def clear_effects_async(self, media_stream_type: MediaStreamType, /) -> windows_foundation.IAsyncAction: ...
    # System.Void Windows.Media.Capture.MediaCapture::Close()
    def close(self) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.Frames.MediaFrameReader> Windows.Media.Capture.MediaCapture::CreateFrameReaderAsync(Windows.Media.Capture.Frames.MediaFrameSource)
    def create_frame_reader_async(self, input_source: windows_media_capture_frames.MediaFrameSource, /) -> windows_foundation.IAsyncOperation[windows_media_capture_frames.MediaFrameReader]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.Frames.MediaFrameReader> Windows.Media.Capture.MediaCapture::CreateFrameReaderAsync(Windows.Media.Capture.Frames.MediaFrameSource,System.String,Windows.Graphics.Imaging.BitmapSize)
    def create_frame_reader_with_subtype_and_size_async(self, input_source: windows_media_capture_frames.MediaFrameSource, output_subtype: str, output_size: typing.Union[windows_graphics_imaging.BitmapSize, typing.Tuple[winrt.system.UInt32, winrt.system.UInt32]], /) -> windows_foundation.IAsyncOperation[windows_media_capture_frames.MediaFrameReader]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.Frames.MediaFrameReader> Windows.Media.Capture.MediaCapture::CreateFrameReaderAsync(Windows.Media.Capture.Frames.MediaFrameSource,System.String)
    def create_frame_reader_with_subtype_async(self, input_source: windows_media_capture_frames.MediaFrameSource, output_subtype: str, /) -> windows_foundation.IAsyncOperation[windows_media_capture_frames.MediaFrameReader]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.Frames.MultiSourceMediaFrameReader> Windows.Media.Capture.MediaCapture::CreateMultiSourceFrameReaderAsync(Windows.Foundation.Collections.IIterable`1<Windows.Media.Capture.Frames.MediaFrameSource>)
    def create_multi_source_frame_reader_async(self, input_sources: typing.Iterable[windows_media_capture_frames.MediaFrameSource], /) -> windows_foundation.IAsyncOperation[windows_media_capture_frames.MultiSourceMediaFrameReader]: ...
    # Windows.Media.Capture.MediaCaptureRelativePanelWatcher Windows.Media.Capture.MediaCapture::CreateRelativePanelWatcher(Windows.Media.Capture.StreamingCaptureMode,Windows.UI.WindowManagement.DisplayRegion)
    def create_relative_panel_watcher(self, capture_mode: StreamingCaptureMode, display_region: windows_ui_windowmanagement.DisplayRegion, /) -> MediaCaptureRelativePanelWatcher: ...
    # System.Object Windows.Media.Capture.MediaCapture::GetEncoderProperty(Windows.Media.Capture.MediaStreamType,System.Guid)
    def get_encoder_property(self, media_stream_type: MediaStreamType, property_id: _uuid.UUID, /) -> winrt.system.Object: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.VideoFrame> Windows.Media.Capture.MediaCapture::GetPreviewFrameAsync()
    def get_preview_frame_async(self) -> windows_foundation.IAsyncOperation[windows_media.VideoFrame]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.VideoFrame> Windows.Media.Capture.MediaCapture::GetPreviewFrameAsync(Windows.Media.VideoFrame)
    def get_preview_frame_copy_async(self, destination: windows_media.VideoFrame, /) -> windows_foundation.IAsyncOperation[windows_media.VideoFrame]: ...
    # System.Boolean Windows.Media.Capture.MediaCapture::GetPreviewMirroring()
    def get_preview_mirroring(self) -> bool: ...
    # Windows.Media.Capture.VideoRotation Windows.Media.Capture.MediaCapture::GetPreviewRotation()
    def get_preview_rotation(self) -> VideoRotation: ...
    # Windows.Media.Capture.VideoRotation Windows.Media.Capture.MediaCapture::GetRecordRotation()
    def get_record_rotation(self) -> VideoRotation: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::InitializeAsync()
    def initialize_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::InitializeAsync(Windows.Media.Capture.MediaCaptureInitializationSettings)
    def initialize_with_settings_async(self, media_capture_initialization_settings: MediaCaptureInitializationSettings, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::PauseRecordAsync(Windows.Media.Devices.MediaCapturePauseBehavior)
    def pause_record_async(self, behavior: windows_media_devices.MediaCapturePauseBehavior, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.MediaCapturePauseResult> Windows.Media.Capture.MediaCapture::PauseRecordWithResultAsync(Windows.Media.Devices.MediaCapturePauseBehavior)
    def pause_record_with_result_async(self, behavior: windows_media_devices.MediaCapturePauseBehavior, /) -> windows_foundation.IAsyncOperation[MediaCapturePauseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.AdvancedPhotoCapture> Windows.Media.Capture.MediaCapture::PrepareAdvancedPhotoCaptureAsync(Windows.Media.MediaProperties.ImageEncodingProperties)
    def prepare_advanced_photo_capture_async(self, encoding_properties: windows_media_mediaproperties.ImageEncodingProperties, /) -> windows_foundation.IAsyncOperation[AdvancedPhotoCapture]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagPhotoCapture> Windows.Media.Capture.MediaCapture::PrepareLowLagPhotoCaptureAsync(Windows.Media.MediaProperties.ImageEncodingProperties)
    def prepare_low_lag_photo_capture_async(self, type: windows_media_mediaproperties.ImageEncodingProperties, /) -> windows_foundation.IAsyncOperation[LowLagPhotoCapture]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagPhotoSequenceCapture> Windows.Media.Capture.MediaCapture::PrepareLowLagPhotoSequenceCaptureAsync(Windows.Media.MediaProperties.ImageEncodingProperties)
    def prepare_low_lag_photo_sequence_capture_async(self, type: windows_media_mediaproperties.ImageEncodingProperties, /) -> windows_foundation.IAsyncOperation[LowLagPhotoSequenceCapture]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagMediaRecording> Windows.Media.Capture.MediaCapture::PrepareLowLagRecordToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Media.IMediaExtension)
    def prepare_low_lag_record_to_custom_sink_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_media_sink: windows_media.IMediaExtension, /) -> windows_foundation.IAsyncOperation[LowLagMediaRecording]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagMediaRecording> Windows.Media.Capture.MediaCapture::PrepareLowLagRecordToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,System.String,Windows.Foundation.Collections.IPropertySet)
    def prepare_low_lag_record_to_custom_sink_id_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_sink_activation_id: str, custom_sink_settings: windows_foundation_collections.IPropertySet, /) -> windows_foundation.IAsyncOperation[LowLagMediaRecording]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagMediaRecording> Windows.Media.Capture.MediaCapture::PrepareLowLagRecordToStorageFileAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Storage.IStorageFile)
    def prepare_low_lag_record_to_storage_file_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, file: windows_storage.IStorageFile, /) -> windows_foundation.IAsyncOperation[LowLagMediaRecording]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.LowLagMediaRecording> Windows.Media.Capture.MediaCapture::PrepareLowLagRecordToStreamAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Storage.Streams.IRandomAccessStream)
    def prepare_low_lag_record_to_stream_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, stream: windows_storage_streams.IRandomAccessStream, /) -> windows_foundation.IAsyncOperation[LowLagMediaRecording]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.Core.VariablePhotoSequenceCapture> Windows.Media.Capture.MediaCapture::PrepareVariablePhotoSequenceCaptureAsync(Windows.Media.MediaProperties.ImageEncodingProperties)
    def prepare_variable_photo_sequence_capture_async(self, type: windows_media_mediaproperties.ImageEncodingProperties, /) -> windows_foundation.IAsyncOperation[windows_media_capture_core.VariablePhotoSequenceCapture]: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::RemoveEffectAsync(Windows.Media.IMediaExtension)
    def remove_effect_async(self, effect: windows_media.IMediaExtension, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::ResumeRecordAsync()
    def resume_record_async(self) -> windows_foundation.IAsyncAction: ...
    # System.Void Windows.Media.Capture.MediaCapture::SetEncoderProperty(Windows.Media.Capture.MediaStreamType,System.Guid,System.Object)
    def set_encoder_property(self, media_stream_type: MediaStreamType, property_id: _uuid.UUID, property_value: winrt.system.Object, /) -> None: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::SetEncodingPropertiesAsync(Windows.Media.Capture.MediaStreamType,Windows.Media.MediaProperties.IMediaEncodingProperties,Windows.Media.MediaProperties.MediaPropertySet)
    def set_encoding_properties_async(self, media_stream_type: MediaStreamType, media_encoding_properties: windows_media_mediaproperties.IMediaEncodingProperties, encoder_properties: windows_media_mediaproperties.MediaPropertySet, /) -> windows_foundation.IAsyncAction: ...
    # System.Void Windows.Media.Capture.MediaCapture::SetPreviewMirroring(System.Boolean)
    def set_preview_mirroring(self, value: bool, /) -> None: ...
    # System.Void Windows.Media.Capture.MediaCapture::SetPreviewRotation(Windows.Media.Capture.VideoRotation)
    def set_preview_rotation(self, value: VideoRotation, /) -> None: ...
    # System.Void Windows.Media.Capture.MediaCapture::SetRecordRotation(Windows.Media.Capture.VideoRotation)
    def set_record_rotation(self, value: VideoRotation, /) -> None: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartPreviewAsync()
    def start_preview_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartPreviewToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Media.IMediaExtension)
    def start_preview_to_custom_sink_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_media_sink: windows_media.IMediaExtension, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartPreviewToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,System.String,Windows.Foundation.Collections.IPropertySet)
    def start_preview_to_custom_sink_id_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_sink_activation_id: str, custom_sink_settings: windows_foundation_collections.IPropertySet, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartRecordToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Media.IMediaExtension)
    def start_record_to_custom_sink_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_media_sink: windows_media.IMediaExtension, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartRecordToCustomSinkAsync(Windows.Media.MediaProperties.MediaEncodingProfile,System.String,Windows.Foundation.Collections.IPropertySet)
    def start_record_to_custom_sink_id_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, custom_sink_activation_id: str, custom_sink_settings: windows_foundation_collections.IPropertySet, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartRecordToStorageFileAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Storage.IStorageFile)
    def start_record_to_storage_file_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, file: windows_storage.IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StartRecordToStreamAsync(Windows.Media.MediaProperties.MediaEncodingProfile,Windows.Storage.Streams.IRandomAccessStream)
    def start_record_to_stream_async(self, encoding_profile: windows_media_mediaproperties.MediaEncodingProfile, stream: windows_storage_streams.IRandomAccessStream, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StopPreviewAsync()
    def stop_preview_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Media.Capture.MediaCapture::StopRecordAsync()
    def stop_record_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Media.Capture.MediaCaptureStopResult> Windows.Media.Capture.MediaCapture::StopRecordWithResultAsync()
    def stop_record_with_result_async(self) -> windows_foundation.IAsyncOperation[MediaCaptureStopResult]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_Failed(Windows.Media.Capture.MediaCaptureFailedEventHandler)
    def add_failed(self, error_event_handler: MediaCaptureFailedEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_Failed(Windows.Foundation.EventRegistrationToken)
    def remove_failed(self, event_cookie: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_RecordLimitationExceeded(Windows.Media.Capture.RecordLimitationExceededEventHandler)
    def add_record_limitation_exceeded(self, record_limitation_exceeded_event_handler: RecordLimitationExceededEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_RecordLimitationExceeded(Windows.Foundation.EventRegistrationToken)
    def remove_record_limitation_exceeded(self, event_cookie: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_FocusChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCapture,Windows.Media.Capture.MediaCaptureFocusChangedEventArgs>)
    def add_focus_changed(self, handler: windows_foundation.TypedEventHandler[MediaCapture, MediaCaptureFocusChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_FocusChanged(Windows.Foundation.EventRegistrationToken)
    def remove_focus_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_PhotoConfirmationCaptured(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCapture,Windows.Media.Capture.PhotoConfirmationCapturedEventArgs>)
    def add_photo_confirmation_captured(self, handler: windows_foundation.TypedEventHandler[MediaCapture, PhotoConfirmationCapturedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_PhotoConfirmationCaptured(Windows.Foundation.EventRegistrationToken)
    def remove_photo_confirmation_captured(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_CameraStreamStateChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCapture,System.Object>)
    def add_camera_stream_state_changed(self, handler: windows_foundation.TypedEventHandler[MediaCapture, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_CameraStreamStateChanged(Windows.Foundation.EventRegistrationToken)
    def remove_camera_stream_state_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_ThermalStatusChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCapture,System.Object>)
    def add_thermal_status_changed(self, handler: windows_foundation.TypedEventHandler[MediaCapture, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_ThermalStatusChanged(Windows.Foundation.EventRegistrationToken)
    def remove_thermal_status_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCapture::add_CaptureDeviceExclusiveControlStatusChanged(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCapture,Windows.Media.Capture.MediaCaptureDeviceExclusiveControlStatusChangedEventArgs>)
    def add_capture_device_exclusive_control_status_changed(self, handler: windows_foundation.TypedEventHandler[MediaCapture, MediaCaptureDeviceExclusiveControlStatusChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCapture::remove_CaptureDeviceExclusiveControlStatusChanged(Windows.Foundation.EventRegistrationToken)
    def remove_capture_device_exclusive_control_status_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Media.Devices.AudioDeviceController Windows.Media.Capture.MediaCapture::get_AudioDeviceController()
    @_property
    def audio_device_controller(self) -> windows_media_devices.AudioDeviceController: ...
    # Windows.Media.Capture.MediaCaptureSettings Windows.Media.Capture.MediaCapture::get_MediaCaptureSettings()
    @_property
    def media_capture_settings(self) -> MediaCaptureSettings: ...
    # Windows.Media.Devices.VideoDeviceController Windows.Media.Capture.MediaCapture::get_VideoDeviceController()
    @_property
    def video_device_controller(self) -> windows_media_devices.VideoDeviceController: ...
    # Windows.Media.Devices.CameraStreamState Windows.Media.Capture.MediaCapture::get_CameraStreamState()
    @_property
    def camera_stream_state(self) -> windows_media_devices.CameraStreamState: ...
    # Windows.Media.Capture.MediaCaptureThermalStatus Windows.Media.Capture.MediaCapture::get_ThermalStatus()
    @_property
    def thermal_status(self) -> MediaCaptureThermalStatus: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,Windows.Media.Capture.Frames.MediaFrameSource> Windows.Media.Capture.MediaCapture::get_FrameSources()
    @_property
    def frame_sources(self) -> typing.Mapping[str, windows_media_capture_frames.MediaFrameSource]: ...

@typing.final
class MediaCaptureDeviceExclusiveControlStatusChangedEventArgs(winrt.system.Object):
    # System.String Windows.Media.Capture.MediaCaptureDeviceExclusiveControlStatusChangedEventArgs::get_DeviceId()
    @_property
    def device_id(self) -> str: ...
    # Windows.Media.Capture.MediaCaptureDeviceExclusiveControlStatus Windows.Media.Capture.MediaCaptureDeviceExclusiveControlStatusChangedEventArgs::get_Status()
    @_property
    def status(self) -> MediaCaptureDeviceExclusiveControlStatus: ...

@typing.final
class MediaCaptureFailedEventArgs(winrt.system.Object):
    # System.UInt32 Windows.Media.Capture.MediaCaptureFailedEventArgs::get_Code()
    @_property
    def code(self) -> winrt.system.UInt32: ...
    # System.String Windows.Media.Capture.MediaCaptureFailedEventArgs::get_Message()
    @_property
    def message(self) -> str: ...

@typing.final
class MediaCaptureFocusChangedEventArgs(winrt.system.Object):
    # Windows.Media.Devices.MediaCaptureFocusState Windows.Media.Capture.MediaCaptureFocusChangedEventArgs::get_FocusState()
    @_property
    def focus_state(self) -> windows_media_devices.MediaCaptureFocusState: ...

@typing.final
class MediaCaptureInitializationSettings(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.String Windows.Media.Capture.MediaCaptureInitializationSettings::get_VideoDeviceId()
    @_property
    def video_device_id(self) -> str: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_VideoDeviceId(System.String)
    @video_device_id.setter
    def video_device_id(self, value: str) -> None: ...
    # Windows.Media.Capture.StreamingCaptureMode Windows.Media.Capture.MediaCaptureInitializationSettings::get_StreamingCaptureMode()
    @_property
    def streaming_capture_mode(self) -> StreamingCaptureMode: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_StreamingCaptureMode(Windows.Media.Capture.StreamingCaptureMode)
    @streaming_capture_mode.setter
    def streaming_capture_mode(self, value: StreamingCaptureMode) -> None: ...
    # Windows.Media.Capture.PhotoCaptureSource Windows.Media.Capture.MediaCaptureInitializationSettings::get_PhotoCaptureSource()
    @_property
    def photo_capture_source(self) -> PhotoCaptureSource: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_PhotoCaptureSource(Windows.Media.Capture.PhotoCaptureSource)
    @photo_capture_source.setter
    def photo_capture_source(self, value: PhotoCaptureSource) -> None: ...
    # System.String Windows.Media.Capture.MediaCaptureInitializationSettings::get_AudioDeviceId()
    @_property
    def audio_device_id(self) -> str: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_AudioDeviceId(System.String)
    @audio_device_id.setter
    def audio_device_id(self, value: str) -> None: ...
    # Windows.Media.Capture.MediaCategory Windows.Media.Capture.MediaCaptureInitializationSettings::get_MediaCategory()
    @_property
    def media_category(self) -> MediaCategory: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_MediaCategory(Windows.Media.Capture.MediaCategory)
    @media_category.setter
    def media_category(self, value: MediaCategory) -> None: ...
    # Windows.Media.AudioProcessing Windows.Media.Capture.MediaCaptureInitializationSettings::get_AudioProcessing()
    @_property
    def audio_processing(self) -> windows_media.AudioProcessing: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_AudioProcessing(Windows.Media.AudioProcessing)
    @audio_processing.setter
    def audio_processing(self, value: windows_media.AudioProcessing) -> None: ...
    # Windows.Media.Core.IMediaSource Windows.Media.Capture.MediaCaptureInitializationSettings::get_VideoSource()
    @_property
    def video_source(self) -> windows_media_core.IMediaSource: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_VideoSource(Windows.Media.Core.IMediaSource)
    @video_source.setter
    def video_source(self, value: windows_media_core.IMediaSource) -> None: ...
    # Windows.Media.Core.IMediaSource Windows.Media.Capture.MediaCaptureInitializationSettings::get_AudioSource()
    @_property
    def audio_source(self) -> windows_media_core.IMediaSource: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_AudioSource(Windows.Media.Core.IMediaSource)
    @audio_source.setter
    def audio_source(self, value: windows_media_core.IMediaSource) -> None: ...
    # Windows.Media.Capture.MediaCaptureVideoProfile Windows.Media.Capture.MediaCaptureInitializationSettings::get_VideoProfile()
    @_property
    def video_profile(self) -> MediaCaptureVideoProfile: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_VideoProfile(Windows.Media.Capture.MediaCaptureVideoProfile)
    @video_profile.setter
    def video_profile(self, value: MediaCaptureVideoProfile) -> None: ...
    # Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription Windows.Media.Capture.MediaCaptureInitializationSettings::get_RecordMediaDescription()
    @_property
    def record_media_description(self) -> MediaCaptureVideoProfileMediaDescription: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_RecordMediaDescription(Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription)
    @record_media_description.setter
    def record_media_description(self, value: MediaCaptureVideoProfileMediaDescription) -> None: ...
    # Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription Windows.Media.Capture.MediaCaptureInitializationSettings::get_PreviewMediaDescription()
    @_property
    def preview_media_description(self) -> MediaCaptureVideoProfileMediaDescription: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_PreviewMediaDescription(Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription)
    @preview_media_description.setter
    def preview_media_description(self, value: MediaCaptureVideoProfileMediaDescription) -> None: ...
    # Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription Windows.Media.Capture.MediaCaptureInitializationSettings::get_PhotoMediaDescription()
    @_property
    def photo_media_description(self) -> MediaCaptureVideoProfileMediaDescription: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_PhotoMediaDescription(Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription)
    @photo_media_description.setter
    def photo_media_description(self, value: MediaCaptureVideoProfileMediaDescription) -> None: ...
    # Windows.Media.Capture.Frames.MediaFrameSourceGroup Windows.Media.Capture.MediaCaptureInitializationSettings::get_SourceGroup()
    @_property
    def source_group(self) -> windows_media_capture_frames.MediaFrameSourceGroup: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_SourceGroup(Windows.Media.Capture.Frames.MediaFrameSourceGroup)
    @source_group.setter
    def source_group(self, value: windows_media_capture_frames.MediaFrameSourceGroup) -> None: ...
    # Windows.Media.Capture.MediaCaptureSharingMode Windows.Media.Capture.MediaCaptureInitializationSettings::get_SharingMode()
    @_property
    def sharing_mode(self) -> MediaCaptureSharingMode: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_SharingMode(Windows.Media.Capture.MediaCaptureSharingMode)
    @sharing_mode.setter
    def sharing_mode(self, value: MediaCaptureSharingMode) -> None: ...
    # Windows.Media.Capture.MediaCaptureMemoryPreference Windows.Media.Capture.MediaCaptureInitializationSettings::get_MemoryPreference()
    @_property
    def memory_preference(self) -> MediaCaptureMemoryPreference: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_MemoryPreference(Windows.Media.Capture.MediaCaptureMemoryPreference)
    @memory_preference.setter
    def memory_preference(self, value: MediaCaptureMemoryPreference) -> None: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureInitializationSettings::get_AlwaysPlaySystemShutterSound()
    @_property
    def always_play_system_shutter_sound(self) -> bool: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_AlwaysPlaySystemShutterSound(System.Boolean)
    @always_play_system_shutter_sound.setter
    def always_play_system_shutter_sound(self, value: bool) -> None: ...
    # Windows.Security.Credentials.PasswordCredential Windows.Media.Capture.MediaCaptureInitializationSettings::get_DeviceUriPasswordCredential()
    @_property
    def device_uri_password_credential(self) -> windows_security_credentials.PasswordCredential: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_DeviceUriPasswordCredential(Windows.Security.Credentials.PasswordCredential)
    @device_uri_password_credential.setter
    def device_uri_password_credential(self, value: windows_security_credentials.PasswordCredential) -> None: ...
    # Windows.Foundation.Uri Windows.Media.Capture.MediaCaptureInitializationSettings::get_DeviceUri()
    @_property
    def device_uri(self) -> windows_foundation.Uri: ...
    # System.Void Windows.Media.Capture.MediaCaptureInitializationSettings::put_DeviceUri(Windows.Foundation.Uri)
    @device_uri.setter
    def device_uri(self, value: windows_foundation.Uri) -> None: ...

@typing.final
class MediaCapturePauseResult(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Media.Capture.MediaCapturePauseResult::Close()
    def close(self) -> None: ...
    # Windows.Media.VideoFrame Windows.Media.Capture.MediaCapturePauseResult::get_LastFrame()
    @_property
    def last_frame(self) -> windows_media.VideoFrame: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.MediaCapturePauseResult::get_RecordDuration()
    @_property
    def record_duration(self) -> datetime.timedelta: ...

@typing.final
class MediaCaptureRelativePanelWatcher(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Media.Capture.MediaCaptureRelativePanelWatcher::Close()
    def close(self) -> None: ...
    # System.Void Windows.Media.Capture.MediaCaptureRelativePanelWatcher::Start()
    def start(self) -> None: ...
    # System.Void Windows.Media.Capture.MediaCaptureRelativePanelWatcher::Stop()
    def stop(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Media.Capture.MediaCaptureRelativePanelWatcher::add_Changed(Windows.Foundation.TypedEventHandler`2<Windows.Media.Capture.MediaCaptureRelativePanelWatcher,System.Object>)
    def add_changed(self, handler: windows_foundation.TypedEventHandler[MediaCaptureRelativePanelWatcher, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Media.Capture.MediaCaptureRelativePanelWatcher::remove_Changed(Windows.Foundation.EventRegistrationToken)
    def remove_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Devices.Enumeration.Panel Windows.Media.Capture.MediaCaptureRelativePanelWatcher::get_RelativePanel()
    @_property
    def relative_panel(self) -> windows_devices_enumeration.Panel: ...

@typing.final
class MediaCaptureSettings(winrt.system.Object):
    # System.String Windows.Media.Capture.MediaCaptureSettings::get_AudioDeviceId()
    @_property
    def audio_device_id(self) -> str: ...
    # Windows.Media.Capture.PhotoCaptureSource Windows.Media.Capture.MediaCaptureSettings::get_PhotoCaptureSource()
    @_property
    def photo_capture_source(self) -> PhotoCaptureSource: ...
    # Windows.Media.Capture.StreamingCaptureMode Windows.Media.Capture.MediaCaptureSettings::get_StreamingCaptureMode()
    @_property
    def streaming_capture_mode(self) -> StreamingCaptureMode: ...
    # Windows.Media.Capture.VideoDeviceCharacteristic Windows.Media.Capture.MediaCaptureSettings::get_VideoDeviceCharacteristic()
    @_property
    def video_device_characteristic(self) -> VideoDeviceCharacteristic: ...
    # System.String Windows.Media.Capture.MediaCaptureSettings::get_VideoDeviceId()
    @_property
    def video_device_id(self) -> str: ...
    # Windows.Media.AudioProcessing Windows.Media.Capture.MediaCaptureSettings::get_AudioProcessing()
    @_property
    def audio_processing(self) -> windows_media.AudioProcessing: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureSettings::get_CameraSoundRequiredForRegion()
    @_property
    def camera_sound_required_for_region(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureSettings::get_ConcurrentRecordAndPhotoSequenceSupported()
    @_property
    def concurrent_record_and_photo_sequence_supported(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureSettings::get_ConcurrentRecordAndPhotoSupported()
    @_property
    def concurrent_record_and_photo_supported(self) -> bool: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.MediaCaptureSettings::get_Horizontal35mmEquivalentFocalLength()
    @_property
    def horizontal35mm_equivalent_focal_length(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Media.Capture.MediaCategory Windows.Media.Capture.MediaCaptureSettings::get_MediaCategory()
    @_property
    def media_category(self) -> MediaCategory: ...
    # Windows.Foundation.IReference`1<System.Int32> Windows.Media.Capture.MediaCaptureSettings::get_PitchOffsetDegrees()
    @_property
    def pitch_offset_degrees(self) -> typing.Optional[winrt.system.Int32]: ...
    # Windows.Foundation.IReference`1<System.UInt32> Windows.Media.Capture.MediaCaptureSettings::get_Vertical35mmEquivalentFocalLength()
    @_property
    def vertical35mm_equivalent_focal_length(self) -> typing.Optional[winrt.system.UInt32]: ...
    # Windows.Graphics.DirectX.Direct3D11.IDirect3DDevice Windows.Media.Capture.MediaCaptureSettings::get_Direct3D11Device()
    @_property
    def direct3d11_device(self) -> windows_graphics_directx_direct3d11.IDirect3DDevice: ...

@typing.final
class MediaCaptureStopResult(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Media.Capture.MediaCaptureStopResult::Close()
    def close(self) -> None: ...
    # Windows.Media.VideoFrame Windows.Media.Capture.MediaCaptureStopResult::get_LastFrame()
    @_property
    def last_frame(self) -> windows_media.VideoFrame: ...
    # Windows.Foundation.TimeSpan Windows.Media.Capture.MediaCaptureStopResult::get_RecordDuration()
    @_property
    def record_duration(self) -> datetime.timedelta: ...

@typing.final
class MediaCaptureVideoProfile(winrt.system.Object):
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfile> Windows.Media.Capture.MediaCaptureVideoProfile::GetConcurrency()
    def get_concurrency(self) -> typing.Sequence[MediaCaptureVideoProfile]: ...
    # System.String Windows.Media.Capture.MediaCaptureVideoProfile::get_Id()
    @_property
    def id(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription> Windows.Media.Capture.MediaCaptureVideoProfile::get_SupportedPhotoMediaDescription()
    @_property
    def supported_photo_media_description(self) -> typing.Sequence[MediaCaptureVideoProfileMediaDescription]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription> Windows.Media.Capture.MediaCaptureVideoProfile::get_SupportedPreviewMediaDescription()
    @_property
    def supported_preview_media_description(self) -> typing.Sequence[MediaCaptureVideoProfileMediaDescription]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription> Windows.Media.Capture.MediaCaptureVideoProfile::get_SupportedRecordMediaDescription()
    @_property
    def supported_record_media_description(self) -> typing.Sequence[MediaCaptureVideoProfileMediaDescription]: ...
    # System.String Windows.Media.Capture.MediaCaptureVideoProfile::get_VideoDeviceId()
    @_property
    def video_device_id(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Media.Capture.Frames.MediaFrameSourceInfo> Windows.Media.Capture.MediaCaptureVideoProfile::get_FrameSourceInfos()
    @_property
    def frame_source_infos(self) -> typing.Sequence[windows_media_capture_frames.MediaFrameSourceInfo]: ...
    # Windows.Foundation.Collections.IMapView`2<System.Guid,System.Object> Windows.Media.Capture.MediaCaptureVideoProfile::get_Properties()
    @_property
    def properties(self) -> typing.Mapping[_uuid.UUID, winrt.system.Object]: ...

@typing.final
class MediaCaptureVideoProfileMediaDescription(winrt.system.Object):
    # System.Double Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_FrameRate()
    @_property
    def frame_rate(self) -> winrt.system.Double: ...
    # System.UInt32 Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_Height()
    @_property
    def height(self) -> winrt.system.UInt32: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_IsHdrVideoSupported()
    @_property
    def is_hdr_video_supported(self) -> bool: ...
    # System.Boolean Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_IsVariablePhotoSequenceSupported()
    @_property
    def is_variable_photo_sequence_supported(self) -> bool: ...
    # System.UInt32 Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_Width()
    @_property
    def width(self) -> winrt.system.UInt32: ...
    # Windows.Foundation.Collections.IMapView`2<System.Guid,System.Object> Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_Properties()
    @_property
    def properties(self) -> typing.Mapping[_uuid.UUID, winrt.system.Object]: ...
    # System.String Windows.Media.Capture.MediaCaptureVideoProfileMediaDescription::get_Subtype()
    @_property
    def subtype(self) -> str: ...

@typing.final
class OptionalReferencePhotoCapturedEventArgs(winrt.system.Object):
    # System.Object Windows.Media.Capture.OptionalReferencePhotoCapturedEventArgs::get_Context()
    @_property
    def context(self) -> winrt.system.Object: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.OptionalReferencePhotoCapturedEventArgs::get_Frame()
    @_property
    def frame(self) -> CapturedFrame: ...

@typing.final
class PhotoCapturedEventArgs(winrt.system.Object):
    # Windows.Foundation.TimeSpan Windows.Media.Capture.PhotoCapturedEventArgs::get_CaptureTimeOffset()
    @_property
    def capture_time_offset(self) -> datetime.timedelta: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.PhotoCapturedEventArgs::get_Frame()
    @_property
    def frame(self) -> CapturedFrame: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.PhotoCapturedEventArgs::get_Thumbnail()
    @_property
    def thumbnail(self) -> CapturedFrame: ...

@typing.final
class PhotoConfirmationCapturedEventArgs(winrt.system.Object):
    # Windows.Foundation.TimeSpan Windows.Media.Capture.PhotoConfirmationCapturedEventArgs::get_CaptureTimeOffset()
    @_property
    def capture_time_offset(self) -> datetime.timedelta: ...
    # Windows.Media.Capture.CapturedFrame Windows.Media.Capture.PhotoConfirmationCapturedEventArgs::get_Frame()
    @_property
    def frame(self) -> CapturedFrame: ...

@typing.final
class VideoStreamConfiguration(winrt.system.Object):
    # Windows.Media.MediaProperties.VideoEncodingProperties Windows.Media.Capture.VideoStreamConfiguration::get_InputProperties()
    @_property
    def input_properties(self) -> windows_media_mediaproperties.VideoEncodingProperties: ...
    # Windows.Media.MediaProperties.VideoEncodingProperties Windows.Media.Capture.VideoStreamConfiguration::get_OutputProperties()
    @_property
    def output_properties(self) -> windows_media_mediaproperties.VideoEncodingProperties: ...

