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

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

import winrt._winrt
import winrt.system
import winrt.windows.foundation as windows_foundation
import winrt.windows.storage as windows_storage

from winrt.windows.foundation.diagnostics import CausalityRelation, CausalitySource, CausalitySynchronousWork, CausalityTraceLevel, ErrorOptions, LoggingFieldFormat, LoggingLevel, LoggingOpcode

Self = typing.TypeVar('Self')

@typing.final
class AsyncCausalityTracer_Static(winrt._winrt.IInspectable_Static):
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::TraceOperationCompletion(Windows.Foundation.Diagnostics.CausalityTraceLevel,Windows.Foundation.Diagnostics.CausalitySource,System.Guid,System.UInt64,Windows.Foundation.AsyncStatus)
    def trace_operation_completion(cls, trace_level: CausalityTraceLevel, source: CausalitySource, platform_id: _uuid.UUID, operation_id: winrt.system.UInt64, status: windows_foundation.AsyncStatus, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::TraceOperationCreation(Windows.Foundation.Diagnostics.CausalityTraceLevel,Windows.Foundation.Diagnostics.CausalitySource,System.Guid,System.UInt64,System.String,System.UInt64)
    def trace_operation_creation(cls, trace_level: CausalityTraceLevel, source: CausalitySource, platform_id: _uuid.UUID, operation_id: winrt.system.UInt64, operation_name: str, related_context: winrt.system.UInt64, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::TraceOperationRelation(Windows.Foundation.Diagnostics.CausalityTraceLevel,Windows.Foundation.Diagnostics.CausalitySource,System.Guid,System.UInt64,Windows.Foundation.Diagnostics.CausalityRelation)
    def trace_operation_relation(cls, trace_level: CausalityTraceLevel, source: CausalitySource, platform_id: _uuid.UUID, operation_id: winrt.system.UInt64, relation: CausalityRelation, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::TraceSynchronousWorkCompletion(Windows.Foundation.Diagnostics.CausalityTraceLevel,Windows.Foundation.Diagnostics.CausalitySource,Windows.Foundation.Diagnostics.CausalitySynchronousWork)
    def trace_synchronous_work_completion(cls, trace_level: CausalityTraceLevel, source: CausalitySource, work: CausalitySynchronousWork, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::TraceSynchronousWorkStart(Windows.Foundation.Diagnostics.CausalityTraceLevel,Windows.Foundation.Diagnostics.CausalitySource,System.Guid,System.UInt64,Windows.Foundation.Diagnostics.CausalitySynchronousWork)
    def trace_synchronous_work_start(cls, trace_level: CausalityTraceLevel, source: CausalitySource, platform_id: _uuid.UUID, operation_id: winrt.system.UInt64, work: CausalitySynchronousWork, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Foundation.Diagnostics.AsyncCausalityTracer::add_TracingStatusChanged(Windows.Foundation.EventHandler`1<Windows.Foundation.Diagnostics.TracingStatusChangedEventArgs>)
    def add_tracing_status_changed(cls, handler: windows_foundation.EventHandler[TracingStatusChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Foundation.Diagnostics.AsyncCausalityTracer::remove_TracingStatusChanged(Windows.Foundation.EventRegistrationToken)
    def remove_tracing_status_changed(cls, cookie: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...

@typing.final
class AsyncCausalityTracer(winrt.system.Object, metaclass=AsyncCausalityTracer_Static):
    pass

@typing.final
class ErrorDetails_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Diagnostics.ErrorDetails> Windows.Foundation.Diagnostics.ErrorDetails::CreateFromHResultAsync(System.Int32)
    def create_from_h_result_async(cls, error_code: winrt.system.Int32, /) -> windows_foundation.IAsyncOperation[ErrorDetails]: ...

@typing.final
class ErrorDetails(winrt.system.Object, metaclass=ErrorDetails_Static):
    # System.String Windows.Foundation.Diagnostics.ErrorDetails::get_Description()
    @_property
    def description(self) -> str: ...
    # Windows.Foundation.Uri Windows.Foundation.Diagnostics.ErrorDetails::get_HelpUri()
    @_property
    def help_uri(self) -> windows_foundation.Uri: ...
    # System.String Windows.Foundation.Diagnostics.ErrorDetails::get_LongDescription()
    @_property
    def long_description(self) -> str: ...

@typing.final
class FileLoggingSession(winrt.system.Object, IFileLoggingSession, 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], name: str) -> Self: ...
    # System.Void Windows.Foundation.Diagnostics.FileLoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    def add_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.FileLoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel,Windows.Foundation.Diagnostics.LoggingLevel)
    def add_logging_channel_with_level(self, logging_channel: ILoggingChannel, max_level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.FileLoggingSession::Close()
    def close(self) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Foundation.Diagnostics.FileLoggingSession::CloseAndSaveToFileAsync()
    def close_and_save_to_file_async(self) -> windows_foundation.IAsyncOperation[windows_storage.StorageFile]: ...
    # System.Void Windows.Foundation.Diagnostics.FileLoggingSession::RemoveLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    def remove_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Foundation.Diagnostics.FileLoggingSession::add_LogFileGenerated(Windows.Foundation.TypedEventHandler`2<Windows.Foundation.Diagnostics.IFileLoggingSession,Windows.Foundation.Diagnostics.LogFileGeneratedEventArgs>)
    def add_log_file_generated(self, handler: windows_foundation.TypedEventHandler[IFileLoggingSession, LogFileGeneratedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Foundation.Diagnostics.FileLoggingSession::remove_LogFileGenerated(Windows.Foundation.EventRegistrationToken)
    def remove_log_file_generated(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.String Windows.Foundation.Diagnostics.FileLoggingSession::get_Name()
    @_property
    def name(self) -> str: ...

@typing.final
class LogFileGeneratedEventArgs(winrt.system.Object):
    # Windows.Storage.StorageFile Windows.Foundation.Diagnostics.LogFileGeneratedEventArgs::get_File()
    @_property
    def file(self) -> windows_storage.StorageFile: ...

@typing.final
class LoggingActivity(winrt.system.Object, ILoggingTarget, 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: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], activity_name: str, logging_channel: ILoggingChannel) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], activity_name: str, logging_channel: ILoggingChannel, level: LoggingLevel) -> Self: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::Close()
    def close(self) -> None: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingActivity::IsEnabled()
    def is_enabled(self) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingActivity::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel)
    def is_enabled_with_level(self, level: LoggingLevel, /) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingActivity::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel,System.Int64)
    def is_enabled_with_level_and_keywords(self, level: LoggingLevel, keywords: winrt.system.Int64, /) -> bool: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::LogEvent(System.String)
    def log_event(self, event_name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    def log_event_with_fields(self, event_name: str, fields: LoggingFields, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    def log_event_with_fields_and_level(self, event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    def log_event_with_fields_and_options(self, event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> None: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingActivity::StartActivity(System.String)
    def start_activity(self, start_event_name: str, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingActivity::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    def start_activity_with_fields(self, start_event_name: str, fields: LoggingFields, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingActivity::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    def start_activity_with_fields_and_level(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingActivity::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    def start_activity_with_fields_and_options(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> LoggingActivity: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::StopActivity(System.String)
    def stop_activity(self, stop_event_name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::StopActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    def stop_activity_with_fields(self, stop_event_name: str, fields: LoggingFields, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingActivity::StopActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingOptions)
    def stop_activity_with_fields_and_options(self, stop_event_name: str, fields: LoggingFields, options: LoggingOptions, /) -> None: ...
    # System.Guid Windows.Foundation.Diagnostics.LoggingActivity::get_Id()
    @_property
    def id(self) -> _uuid.UUID: ...
    # System.String Windows.Foundation.Diagnostics.LoggingActivity::get_Name()
    @_property
    def name(self) -> str: ...
    # Windows.Foundation.Diagnostics.LoggingChannel Windows.Foundation.Diagnostics.LoggingActivity::get_Channel()
    @_property
    def channel(self) -> LoggingChannel: ...

@typing.final
class LoggingChannel(winrt.system.Object, ILoggingTarget, ILoggingChannel, 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: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], name: str, options: LoggingChannelOptions) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], name: str, options: LoggingChannelOptions, id: _uuid.UUID) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], name: str) -> Self: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::Close()
    def close(self) -> None: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingChannel::IsEnabled()
    def is_enabled(self) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingChannel::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel)
    def is_enabled_with_level(self, level: LoggingLevel, /) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingChannel::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel,System.Int64)
    def is_enabled_with_level_and_keywords(self, level: LoggingLevel, keywords: winrt.system.Int64, /) -> bool: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogEvent(System.String)
    def log_event(self, event_name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    def log_event_with_fields(self, event_name: str, fields: LoggingFields, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    def log_event_with_fields_and_level(self, event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    def log_event_with_fields_and_options(self, event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogMessage(System.String)
    def log_message(self, event_string: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogMessage(System.String,Windows.Foundation.Diagnostics.LoggingLevel)
    def log_message_with_level(self, event_string: str, level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogValuePair(System.String,System.Int32)
    def log_value_pair(self, value1: str, value2: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::LogValuePair(System.String,System.Int32,Windows.Foundation.Diagnostics.LoggingLevel)
    def log_value_pair_with_level(self, value1: str, value2: winrt.system.Int32, level: LoggingLevel, /) -> None: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingChannel::StartActivity(System.String)
    def start_activity(self, start_event_name: str, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingChannel::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    def start_activity_with_fields(self, start_event_name: str, fields: LoggingFields, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingChannel::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    def start_activity_with_fields_and_level(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.LoggingChannel::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    def start_activity_with_fields_and_options(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> LoggingActivity: ...
    # Windows.Foundation.EventRegistrationToken Windows.Foundation.Diagnostics.LoggingChannel::add_LoggingEnabled(Windows.Foundation.TypedEventHandler`2<Windows.Foundation.Diagnostics.ILoggingChannel,System.Object>)
    def add_logging_enabled(self, handler: windows_foundation.TypedEventHandler[ILoggingChannel, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannel::remove_LoggingEnabled(Windows.Foundation.EventRegistrationToken)
    def remove_logging_enabled(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Boolean Windows.Foundation.Diagnostics.LoggingChannel::get_Enabled()
    @_property
    def enabled(self) -> bool: ...
    # Windows.Foundation.Diagnostics.LoggingLevel Windows.Foundation.Diagnostics.LoggingChannel::get_Level()
    @_property
    def level(self) -> LoggingLevel: ...
    # System.String Windows.Foundation.Diagnostics.LoggingChannel::get_Name()
    @_property
    def name(self) -> str: ...
    # System.Guid Windows.Foundation.Diagnostics.LoggingChannel::get_Id()
    @_property
    def id(self) -> _uuid.UUID: ...

@typing.final
class LoggingChannelOptions(winrt.system.Object):
    @typing.overload
    def __new__(cls: typing.Type[Self]) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], group: _uuid.UUID) -> Self: ...
    # System.Guid Windows.Foundation.Diagnostics.LoggingChannelOptions::get_Group()
    @_property
    def group(self) -> _uuid.UUID: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingChannelOptions::put_Group(System.Guid)
    @group.setter
    def group(self, value: _uuid.UUID) -> None: ...

@typing.final
class LoggingFields(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBoolean(System.String,System.Boolean)
    def add_boolean(self, name: str, value: bool, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBooleanArray(System.String,System.Boolean[])
    def add_boolean_array(self, name: str, value: typing.Union[winrt.system.Array[bool], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBooleanArray(System.String,System.Boolean[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_boolean_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[bool], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBooleanArray(System.String,System.Boolean[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_boolean_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[bool], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBoolean(System.String,System.Boolean,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_boolean_with_format(self, name: str, value: bool, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddBoolean(System.String,System.Boolean,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_boolean_with_format_and_tags(self, name: str, value: bool, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16(System.String,System.Char)
    def add_char16(self, name: str, value: winrt.system.Char16, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16Array(System.String,System.Char[])
    def add_char16_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Char16], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16Array(System.String,System.Char[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_char16_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Char16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16Array(System.String,System.Char[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_char16_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Char16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16(System.String,System.Char,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_char16_with_format(self, name: str, value: winrt.system.Char16, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddChar16(System.String,System.Char,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_char16_with_format_and_tags(self, name: str, value: winrt.system.Char16, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTime(System.String,Windows.Foundation.DateTime)
    def add_date_time(self, name: str, value: datetime.datetime, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTimeArray(System.String,Windows.Foundation.DateTime[])
    def add_date_time_array(self, name: str, value: typing.Union[winrt.system.Array[datetime.datetime], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTimeArray(System.String,Windows.Foundation.DateTime[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_date_time_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[datetime.datetime], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTimeArray(System.String,Windows.Foundation.DateTime[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_date_time_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[datetime.datetime], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTime(System.String,Windows.Foundation.DateTime,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_date_time_with_format(self, name: str, value: datetime.datetime, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDateTime(System.String,Windows.Foundation.DateTime,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_date_time_with_format_and_tags(self, name: str, value: datetime.datetime, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDouble(System.String,System.Double)
    def add_double(self, name: str, value: winrt.system.Double, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDoubleArray(System.String,System.Double[])
    def add_double_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Double], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDoubleArray(System.String,System.Double[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_double_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Double], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDoubleArray(System.String,System.Double[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_double_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Double], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDouble(System.String,System.Double,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_double_with_format(self, name: str, value: winrt.system.Double, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddDouble(System.String,System.Double,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_double_with_format_and_tags(self, name: str, value: winrt.system.Double, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddEmpty(System.String)
    def add_empty(self, name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddEmpty(System.String,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_empty_with_format(self, name: str, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddEmpty(System.String,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_empty_with_format_and_tags(self, name: str, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuid(System.String,System.Guid)
    def add_guid(self, name: str, value: _uuid.UUID, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuidArray(System.String,System.Guid[])
    def add_guid_array(self, name: str, value: typing.Union[winrt.system.Array[_uuid.UUID], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuidArray(System.String,System.Guid[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_guid_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[_uuid.UUID], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuidArray(System.String,System.Guid[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_guid_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[_uuid.UUID], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuid(System.String,System.Guid,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_guid_with_format(self, name: str, value: _uuid.UUID, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddGuid(System.String,System.Guid,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_guid_with_format_and_tags(self, name: str, value: _uuid.UUID, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16(System.String,System.Int16)
    def add_int16(self, name: str, value: winrt.system.Int16, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16Array(System.String,System.Int16[])
    def add_int16_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int16], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16Array(System.String,System.Int16[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int16_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16Array(System.String,System.Int16[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int16_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16(System.String,System.Int16,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int16_with_format(self, name: str, value: winrt.system.Int16, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt16(System.String,System.Int16,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int16_with_format_and_tags(self, name: str, value: winrt.system.Int16, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32(System.String,System.Int32)
    def add_int32(self, name: str, value: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32Array(System.String,System.Int32[])
    def add_int32_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int32], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32Array(System.String,System.Int32[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int32_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int32], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32Array(System.String,System.Int32[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int32_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int32], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32(System.String,System.Int32,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int32_with_format(self, name: str, value: winrt.system.Int32, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt32(System.String,System.Int32,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int32_with_format_and_tags(self, name: str, value: winrt.system.Int32, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64(System.String,System.Int64)
    def add_int64(self, name: str, value: winrt.system.Int64, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64Array(System.String,System.Int64[])
    def add_int64_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int64], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64Array(System.String,System.Int64[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int64_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int64], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64Array(System.String,System.Int64[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int64_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Int64], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64(System.String,System.Int64,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_int64_with_format(self, name: str, value: winrt.system.Int64, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddInt64(System.String,System.Int64,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_int64_with_format_and_tags(self, name: str, value: winrt.system.Int64, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPoint(System.String,Windows.Foundation.Point)
    def add_point(self, name: str, value: typing.Union[windows_foundation.Point, typing.Tuple[winrt.system.Single, winrt.system.Single]], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPointArray(System.String,Windows.Foundation.Point[])
    def add_point_array(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Point], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPointArray(System.String,Windows.Foundation.Point[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_point_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Point], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPointArray(System.String,Windows.Foundation.Point[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_point_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Point], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPoint(System.String,Windows.Foundation.Point,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_point_with_format(self, name: str, value: typing.Union[windows_foundation.Point, typing.Tuple[winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddPoint(System.String,Windows.Foundation.Point,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_point_with_format_and_tags(self, name: str, value: typing.Union[windows_foundation.Point, typing.Tuple[winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRect(System.String,Windows.Foundation.Rect)
    def add_rect(self, name: str, value: typing.Union[windows_foundation.Rect, typing.Tuple[winrt.system.Single, winrt.system.Single, winrt.system.Single, winrt.system.Single]], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRectArray(System.String,Windows.Foundation.Rect[])
    def add_rect_array(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Rect], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRectArray(System.String,Windows.Foundation.Rect[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_rect_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Rect], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRectArray(System.String,Windows.Foundation.Rect[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_rect_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Rect], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRect(System.String,Windows.Foundation.Rect,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_rect_with_format(self, name: str, value: typing.Union[windows_foundation.Rect, typing.Tuple[winrt.system.Single, winrt.system.Single, winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddRect(System.String,Windows.Foundation.Rect,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_rect_with_format_and_tags(self, name: str, value: typing.Union[windows_foundation.Rect, typing.Tuple[winrt.system.Single, winrt.system.Single, winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingle(System.String,System.Single)
    def add_single(self, name: str, value: winrt.system.Single, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingleArray(System.String,System.Single[])
    def add_single_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Single], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingleArray(System.String,System.Single[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_single_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Single], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingleArray(System.String,System.Single[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_single_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.Single], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingle(System.String,System.Single,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_single_with_format(self, name: str, value: winrt.system.Single, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSingle(System.String,System.Single,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_single_with_format_and_tags(self, name: str, value: winrt.system.Single, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSize(System.String,Windows.Foundation.Size)
    def add_size(self, name: str, value: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSizeArray(System.String,Windows.Foundation.Size[])
    def add_size_array(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Size], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSizeArray(System.String,Windows.Foundation.Size[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_size_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Size], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSizeArray(System.String,Windows.Foundation.Size[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_size_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[windows_foundation.Size], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSize(System.String,Windows.Foundation.Size,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_size_with_format(self, name: str, value: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddSize(System.String,Windows.Foundation.Size,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_size_with_format_and_tags(self, name: str, value: typing.Union[windows_foundation.Size, typing.Tuple[winrt.system.Single, winrt.system.Single]], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddString(System.String,System.String)
    def add_string(self, name: str, value: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddStringArray(System.String,System.String[])
    def add_string_array(self, name: str, value: typing.Union[winrt.system.Array[str], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddStringArray(System.String,System.String[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_string_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[str], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddStringArray(System.String,System.String[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_string_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[str], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddString(System.String,System.String,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_string_with_format(self, name: str, value: str, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddString(System.String,System.String,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_string_with_format_and_tags(self, name: str, value: str, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpan(System.String,Windows.Foundation.TimeSpan)
    def add_time_span(self, name: str, value: datetime.timedelta, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpanArray(System.String,Windows.Foundation.TimeSpan[])
    def add_time_span_array(self, name: str, value: typing.Union[winrt.system.Array[datetime.timedelta], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpanArray(System.String,Windows.Foundation.TimeSpan[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_time_span_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[datetime.timedelta], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpanArray(System.String,Windows.Foundation.TimeSpan[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_time_span_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[datetime.timedelta], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpan(System.String,Windows.Foundation.TimeSpan,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_time_span_with_format(self, name: str, value: datetime.timedelta, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddTimeSpan(System.String,Windows.Foundation.TimeSpan,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_time_span_with_format_and_tags(self, name: str, value: datetime.timedelta, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16(System.String,System.UInt16)
    def add_uint16(self, name: str, value: winrt.system.UInt16, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16Array(System.String,System.UInt16[])
    def add_uint16_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt16], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16Array(System.String,System.UInt16[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint16_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16Array(System.String,System.UInt16[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint16_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt16], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16(System.String,System.UInt16,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint16_with_format(self, name: str, value: winrt.system.UInt16, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt16(System.String,System.UInt16,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint16_with_format_and_tags(self, name: str, value: winrt.system.UInt16, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32(System.String,System.UInt32)
    def add_uint32(self, name: str, value: winrt.system.UInt32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32Array(System.String,System.UInt32[])
    def add_uint32_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt32], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32Array(System.String,System.UInt32[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint32_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt32], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32Array(System.String,System.UInt32[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint32_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt32], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32(System.String,System.UInt32,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint32_with_format(self, name: str, value: winrt.system.UInt32, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt32(System.String,System.UInt32,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint32_with_format_and_tags(self, name: str, value: winrt.system.UInt32, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64(System.String,System.UInt64)
    def add_uint64(self, name: str, value: winrt.system.UInt64, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64Array(System.String,System.UInt64[])
    def add_uint64_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt64], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64Array(System.String,System.UInt64[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint64_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt64], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64Array(System.String,System.UInt64[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint64_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt64], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64(System.String,System.UInt64,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint64_with_format(self, name: str, value: winrt.system.UInt64, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt64(System.String,System.UInt64,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint64_with_format_and_tags(self, name: str, value: winrt.system.UInt64, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8(System.String,System.Byte)
    def add_uint8(self, name: str, value: winrt.system.UInt8, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8Array(System.String,System.Byte[])
    def add_uint8_array(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt8], winrt.system.ReadableBuffer], /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8Array(System.String,System.Byte[],Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint8_array_with_format(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt8], winrt.system.ReadableBuffer], format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8Array(System.String,System.Byte[],Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint8_array_with_format_and_tags(self, name: str, value: typing.Union[winrt.system.Array[winrt.system.UInt8], winrt.system.ReadableBuffer], format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8(System.String,System.Byte,Windows.Foundation.Diagnostics.LoggingFieldFormat)
    def add_uint8_with_format(self, name: str, value: winrt.system.UInt8, format: LoggingFieldFormat, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::AddUInt8(System.String,System.Byte,Windows.Foundation.Diagnostics.LoggingFieldFormat,System.Int32)
    def add_uint8_with_format_and_tags(self, name: str, value: winrt.system.UInt8, format: LoggingFieldFormat, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::BeginStruct(System.String)
    def begin_struct(self, name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::BeginStruct(System.String,System.Int32)
    def begin_struct_with_tags(self, name: str, tags: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::Clear()
    def clear(self) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingFields::EndStruct()
    def end_struct(self) -> None: ...

@typing.final
class LoggingOptions(winrt.system.Object):
    @typing.overload
    def __new__(cls: typing.Type[Self]) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self], keywords: winrt.system.Int64) -> Self: ...
    # System.Int16 Windows.Foundation.Diagnostics.LoggingOptions::get_Task()
    @_property
    def task(self) -> winrt.system.Int16: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_Task(System.Int16)
    @task.setter
    def task(self, value: winrt.system.Int16) -> None: ...
    # System.Int32 Windows.Foundation.Diagnostics.LoggingOptions::get_Tags()
    @_property
    def tags(self) -> winrt.system.Int32: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_Tags(System.Int32)
    @tags.setter
    def tags(self, value: winrt.system.Int32) -> None: ...
    # System.Guid Windows.Foundation.Diagnostics.LoggingOptions::get_RelatedActivityId()
    @_property
    def related_activity_id(self) -> _uuid.UUID: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_RelatedActivityId(System.Guid)
    @related_activity_id.setter
    def related_activity_id(self, value: _uuid.UUID) -> None: ...
    # Windows.Foundation.Diagnostics.LoggingOpcode Windows.Foundation.Diagnostics.LoggingOptions::get_Opcode()
    @_property
    def opcode(self) -> LoggingOpcode: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_Opcode(Windows.Foundation.Diagnostics.LoggingOpcode)
    @opcode.setter
    def opcode(self, value: LoggingOpcode) -> None: ...
    # System.Int64 Windows.Foundation.Diagnostics.LoggingOptions::get_Keywords()
    @_property
    def keywords(self) -> winrt.system.Int64: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_Keywords(System.Int64)
    @keywords.setter
    def keywords(self, value: winrt.system.Int64) -> None: ...
    # System.Guid Windows.Foundation.Diagnostics.LoggingOptions::get_ActivityId()
    @_property
    def activity_id(self) -> _uuid.UUID: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingOptions::put_ActivityId(System.Guid)
    @activity_id.setter
    def activity_id(self, value: _uuid.UUID) -> None: ...

@typing.final
class LoggingSession(winrt.system.Object, ILoggingSession, 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], name: str) -> Self: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    def add_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel,Windows.Foundation.Diagnostics.LoggingLevel)
    def add_logging_channel_with_level(self, logging_channel: ILoggingChannel, max_level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingSession::Close()
    def close(self) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.LoggingSession::RemoveLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    def remove_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Foundation.Diagnostics.LoggingSession::SaveToFileAsync(Windows.Storage.IStorageFolder,System.String)
    def save_to_file_async(self, folder: windows_storage.IStorageFolder, file_name: str, /) -> windows_foundation.IAsyncOperation[windows_storage.StorageFile]: ...
    # System.String Windows.Foundation.Diagnostics.LoggingSession::get_Name()
    @_property
    def name(self) -> str: ...

@typing.final
class RuntimeBrokerErrorSettings(winrt.system.Object, IErrorReportingSettings):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # Windows.Foundation.Diagnostics.ErrorOptions Windows.Foundation.Diagnostics.RuntimeBrokerErrorSettings::GetErrorOptions()
    def get_error_options(self) -> ErrorOptions: ...
    # System.Void Windows.Foundation.Diagnostics.RuntimeBrokerErrorSettings::SetErrorOptions(Windows.Foundation.Diagnostics.ErrorOptions)
    def set_error_options(self, value: ErrorOptions, /) -> None: ...

@typing.final
class TracingStatusChangedEventArgs(winrt.system.Object):
    # System.Boolean Windows.Foundation.Diagnostics.TracingStatusChangedEventArgs::get_Enabled()
    @_property
    def enabled(self) -> bool: ...
    # Windows.Foundation.Diagnostics.CausalityTraceLevel Windows.Foundation.Diagnostics.TracingStatusChangedEventArgs::get_TraceLevel()
    @_property
    def trace_level(self) -> CausalityTraceLevel: ...

@typing.final
class _IErrorReportingSettings: ...

class IErrorReportingSettings(winrt._winrt.IInspectable):
    # Windows.Foundation.Diagnostics.ErrorOptions Windows.Foundation.Diagnostics.IErrorReportingSettings::GetErrorOptions()
    @abstractmethod
    def get_error_options(self) -> ErrorOptions: ...
    # System.Void Windows.Foundation.Diagnostics.IErrorReportingSettings::SetErrorOptions(Windows.Foundation.Diagnostics.ErrorOptions)
    @abstractmethod
    def set_error_options(self, value: ErrorOptions, /) -> None: ...

@typing.final
class _IFileLoggingSession: ...

class IFileLoggingSession(windows_foundation.IClosable, winrt._winrt.IInspectable):
    # System.Void Windows.Foundation.Diagnostics.IFileLoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    @abstractmethod
    def add_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.IFileLoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def add_logging_channel_with_level(self, logging_channel: ILoggingChannel, max_level: LoggingLevel, /) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Foundation.Diagnostics.IFileLoggingSession::CloseAndSaveToFileAsync()
    @abstractmethod
    def close_and_save_to_file_async(self) -> windows_foundation.IAsyncOperation[windows_storage.StorageFile]: ...
    # System.Void Windows.Foundation.Diagnostics.IFileLoggingSession::RemoveLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    @abstractmethod
    def remove_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Foundation.Diagnostics.IFileLoggingSession::add_LogFileGenerated(Windows.Foundation.TypedEventHandler`2<Windows.Foundation.Diagnostics.IFileLoggingSession,Windows.Foundation.Diagnostics.LogFileGeneratedEventArgs>)
    @abstractmethod
    def add_log_file_generated(self, handler: windows_foundation.TypedEventHandler[IFileLoggingSession, LogFileGeneratedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Foundation.Diagnostics.IFileLoggingSession::remove_LogFileGenerated(Windows.Foundation.EventRegistrationToken)
    @abstractmethod
    def remove_log_file_generated(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.String Windows.Foundation.Diagnostics.IFileLoggingSession::get_Name()
    @_property
    @abstractmethod
    def name(self) -> str: ...

@typing.final
class _ILoggingChannel: ...

class ILoggingChannel(windows_foundation.IClosable, winrt._winrt.IInspectable):
    # System.Void Windows.Foundation.Diagnostics.ILoggingChannel::LogMessage(System.String)
    @abstractmethod
    def log_message(self, event_string: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingChannel::LogMessage(System.String,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def log_message_with_level(self, event_string: str, level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingChannel::LogValuePair(System.String,System.Int32)
    @abstractmethod
    def log_value_pair(self, value1: str, value2: winrt.system.Int32, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingChannel::LogValuePair(System.String,System.Int32,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def log_value_pair_with_level(self, value1: str, value2: winrt.system.Int32, level: LoggingLevel, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Foundation.Diagnostics.ILoggingChannel::add_LoggingEnabled(Windows.Foundation.TypedEventHandler`2<Windows.Foundation.Diagnostics.ILoggingChannel,System.Object>)
    @abstractmethod
    def add_logging_enabled(self, handler: windows_foundation.TypedEventHandler[ILoggingChannel, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingChannel::remove_LoggingEnabled(Windows.Foundation.EventRegistrationToken)
    @abstractmethod
    def remove_logging_enabled(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Boolean Windows.Foundation.Diagnostics.ILoggingChannel::get_Enabled()
    @_property
    @abstractmethod
    def enabled(self) -> bool: ...
    # Windows.Foundation.Diagnostics.LoggingLevel Windows.Foundation.Diagnostics.ILoggingChannel::get_Level()
    @_property
    @abstractmethod
    def level(self) -> LoggingLevel: ...
    # System.String Windows.Foundation.Diagnostics.ILoggingChannel::get_Name()
    @_property
    @abstractmethod
    def name(self) -> str: ...

@typing.final
class _ILoggingSession: ...

class ILoggingSession(windows_foundation.IClosable, winrt._winrt.IInspectable):
    # System.Void Windows.Foundation.Diagnostics.ILoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    @abstractmethod
    def add_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingSession::AddLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def add_logging_channel_with_level(self, logging_channel: ILoggingChannel, max_level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingSession::RemoveLoggingChannel(Windows.Foundation.Diagnostics.ILoggingChannel)
    @abstractmethod
    def remove_logging_channel(self, logging_channel: ILoggingChannel, /) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Foundation.Diagnostics.ILoggingSession::SaveToFileAsync(Windows.Storage.IStorageFolder,System.String)
    @abstractmethod
    def save_to_file_async(self, folder: windows_storage.IStorageFolder, file_name: str, /) -> windows_foundation.IAsyncOperation[windows_storage.StorageFile]: ...
    # System.String Windows.Foundation.Diagnostics.ILoggingSession::get_Name()
    @_property
    @abstractmethod
    def name(self) -> str: ...

@typing.final
class _ILoggingTarget: ...

class ILoggingTarget(winrt._winrt.IInspectable):
    # System.Boolean Windows.Foundation.Diagnostics.ILoggingTarget::IsEnabled()
    @abstractmethod
    def is_enabled(self) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.ILoggingTarget::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def is_enabled_with_level(self, level: LoggingLevel, /) -> bool: ...
    # System.Boolean Windows.Foundation.Diagnostics.ILoggingTarget::IsEnabled(Windows.Foundation.Diagnostics.LoggingLevel,System.Int64)
    @abstractmethod
    def is_enabled_with_level_and_keywords(self, level: LoggingLevel, keywords: winrt.system.Int64, /) -> bool: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingTarget::LogEvent(System.String)
    @abstractmethod
    def log_event(self, event_name: str, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingTarget::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    @abstractmethod
    def log_event_with_fields(self, event_name: str, fields: LoggingFields, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingTarget::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def log_event_with_fields_and_level(self, event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> None: ...
    # System.Void Windows.Foundation.Diagnostics.ILoggingTarget::LogEvent(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    @abstractmethod
    def log_event_with_fields_and_options(self, event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> None: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.ILoggingTarget::StartActivity(System.String)
    @abstractmethod
    def start_activity(self, start_event_name: str, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.ILoggingTarget::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields)
    @abstractmethod
    def start_activity_with_fields(self, start_event_name: str, fields: LoggingFields, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.ILoggingTarget::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel)
    @abstractmethod
    def start_activity_with_fields_and_level(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, /) -> LoggingActivity: ...
    # Windows.Foundation.Diagnostics.LoggingActivity Windows.Foundation.Diagnostics.ILoggingTarget::StartActivity(System.String,Windows.Foundation.Diagnostics.LoggingFields,Windows.Foundation.Diagnostics.LoggingLevel,Windows.Foundation.Diagnostics.LoggingOptions)
    @abstractmethod
    def start_activity_with_fields_and_options(self, start_event_name: str, fields: LoggingFields, level: LoggingLevel, options: LoggingOptions, /) -> LoggingActivity: ...

