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

import enum
import datetime
import sys
import types
import typing

import winsdk.system

class PlatformTelemetryRegistrationStatus(enum.IntEnum):
    SUCCESS = 0
    SETTINGS_OUT_OF_RANGE = 1
    UNKNOWN_FAILURE = 2

Self = typing.TypeVar('Self')

class PlatformTelemetryClient(winsdk.system.Object):
    @staticmethod
    def _from(obj: winsdk.system.Object, /) -> PlatformTelemetryClient: ...
    @typing.overload
    @staticmethod
    def register(id: str, /) -> typing.Optional[PlatformTelemetryRegistrationResult]: ...
    @typing.overload
    @staticmethod
    def register(id: str, settings: typing.Optional[PlatformTelemetryRegistrationSettings], /) -> typing.Optional[PlatformTelemetryRegistrationResult]: ...

class PlatformTelemetryRegistrationResult(winsdk.system.Object):
    status: PlatformTelemetryRegistrationStatus
    @staticmethod
    def _from(obj: winsdk.system.Object, /) -> PlatformTelemetryRegistrationResult: ...

class PlatformTelemetryRegistrationSettings(winsdk.system.Object):
    upload_quota_size: winsdk.system.UInt32
    storage_size: winsdk.system.UInt32
    @staticmethod
    def _from(obj: winsdk.system.Object, /) -> PlatformTelemetryRegistrationSettings: ...
    def __new__(cls: typing.Type[PlatformTelemetryRegistrationSettings]) -> PlatformTelemetryRegistrationSettings:...

