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

import enum
import datetime
import sys
import types
import typing

import winsdk._winrt as _winrt
import winsdk.windows.applicationmodel.appservice
import winsdk.windows.foundation
import winsdk.windows.foundation.collections
import winsdk.windows.networking
import winsdk.windows.security.credentials
import winsdk.windows.system

class RemoteSystemAccessStatus(enum.IntEnum):
    UNSPECIFIED = 0
    ALLOWED = 1
    DENIED_BY_USER = 2
    DENIED_BY_SYSTEM = 3

class RemoteSystemAuthorizationKind(enum.IntEnum):
    SAME_USER = 0
    ANONYMOUS = 1

class RemoteSystemDiscoveryType(enum.IntEnum):
    ANY = 0
    PROXIMAL = 1
    CLOUD = 2
    SPATIALLY_PROXIMAL = 3

class RemoteSystemPlatform(enum.IntEnum):
    UNKNOWN = 0
    WINDOWS = 1
    ANDROID = 2
    IOS = 3
    LINUX = 4

class RemoteSystemSessionCreationStatus(enum.IntEnum):
    SUCCESS = 0
    SESSION_LIMITS_EXCEEDED = 1
    OPERATION_ABORTED = 2

class RemoteSystemSessionDisconnectedReason(enum.IntEnum):
    SESSION_UNAVAILABLE = 0
    REMOVED_BY_CONTROLLER = 1
    SESSION_CLOSED = 2

class RemoteSystemSessionJoinStatus(enum.IntEnum):
    SUCCESS = 0
    SESSION_LIMITS_EXCEEDED = 1
    OPERATION_ABORTED = 2
    SESSION_UNAVAILABLE = 3
    REJECTED_BY_CONTROLLER = 4

class RemoteSystemSessionMessageChannelReliability(enum.IntEnum):
    RELIABLE = 0
    UNRELIABLE = 1

class RemoteSystemSessionParticipantWatcherStatus(enum.IntEnum):
    CREATED = 0
    STARTED = 1
    ENUMERATION_COMPLETED = 2
    STOPPING = 3
    STOPPED = 4
    ABORTED = 5

class RemoteSystemSessionWatcherStatus(enum.IntEnum):
    CREATED = 0
    STARTED = 1
    ENUMERATION_COMPLETED = 2
    STOPPING = 3
    STOPPED = 4
    ABORTED = 5

class RemoteSystemStatus(enum.IntEnum):
    UNAVAILABLE = 0
    DISCOVERING_AVAILABILITY = 1
    AVAILABLE = 2
    UNKNOWN = 3

class RemoteSystemStatusType(enum.IntEnum):
    ANY = 0
    AVAILABLE = 1

class RemoteSystemWatcherError(enum.IntEnum):
    UNKNOWN = 0
    INTERNET_NOT_AVAILABLE = 1
    AUTHENTICATION_ERROR = 2

Self = typing.TypeVar('Self')

class KnownRemoteSystemCapabilities(_winrt.Object):
    app_service: str
    launch_uri: str
    remote_session: str
    spatial_entity: str
    @staticmethod
    def _from(obj: _winrt.Object) -> KnownRemoteSystemCapabilities: ...

class RemoteSystem(_winrt.Object):
    display_name: str
    id: str
    is_available_by_proximity: _winrt.Boolean
    kind: str
    status: RemoteSystemStatus
    is_available_by_spatial_proximity: _winrt.Boolean
    manufacturer_display_name: str
    model_display_name: str
    platform: RemoteSystemPlatform
    apps: typing.Optional[winsdk.windows.foundation.collections.IVectorView[RemoteSystemApp]]
    user: typing.Optional[winsdk.windows.system.User]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystem: ...
    @typing.overload
    @staticmethod
    def create_watcher() -> typing.Optional[RemoteSystemWatcher]: ...
    @typing.overload
    @staticmethod
    def create_watcher(filters: typing.Iterable[IRemoteSystemFilter]) -> typing.Optional[RemoteSystemWatcher]: ...
    @typing.overload
    @staticmethod
    def create_watcher_for_user(user: typing.Optional[winsdk.windows.system.User]) -> typing.Optional[RemoteSystemWatcher]: ...
    @typing.overload
    @staticmethod
    def create_watcher_for_user(user: typing.Optional[winsdk.windows.system.User], filters: typing.Iterable[IRemoteSystemFilter]) -> typing.Optional[RemoteSystemWatcher]: ...
    @staticmethod
    def find_by_host_name_async(host_name: typing.Optional[winsdk.windows.networking.HostName]) -> winsdk.windows.foundation.IAsyncOperation[RemoteSystem]: ...
    def get_capability_supported_async(self, capability_name: str) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    @staticmethod
    def is_authorization_kind_enabled(kind: RemoteSystemAuthorizationKind) -> _winrt.Boolean: ...
    @staticmethod
    def request_access_async() -> winsdk.windows.foundation.IAsyncOperation[RemoteSystemAccessStatus]: ...

class RemoteSystemAddedEventArgs(_winrt.Object):
    remote_system: typing.Optional[RemoteSystem]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemAddedEventArgs: ...

class RemoteSystemApp(_winrt.Object):
    attributes: typing.Optional[winsdk.windows.foundation.collections.IMapView[str, str]]
    display_name: str
    id: str
    is_available_by_proximity: _winrt.Boolean
    is_available_by_spatial_proximity: _winrt.Boolean
    connection_token: str
    user: typing.Optional[winsdk.windows.system.User]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemApp: ...

class RemoteSystemAppRegistration(_winrt.Object):
    attributes: typing.Optional[winsdk.windows.foundation.collections.IMap[str, str]]
    user: typing.Optional[winsdk.windows.system.User]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemAppRegistration: ...
    @staticmethod
    def get_default() -> typing.Optional[RemoteSystemAppRegistration]: ...
    @staticmethod
    def get_for_user(user: typing.Optional[winsdk.windows.system.User]) -> typing.Optional[RemoteSystemAppRegistration]: ...
    def save_async(self) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...

class RemoteSystemAuthorizationKindFilter(_winrt.Object):
    remote_system_authorization_kind: RemoteSystemAuthorizationKind
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemAuthorizationKindFilter: ...
    def __new__(cls: typing.Type[RemoteSystemAuthorizationKindFilter], remote_system_authorization_kind: RemoteSystemAuthorizationKind) -> RemoteSystemAuthorizationKindFilter:...

class RemoteSystemConnectionInfo(_winrt.Object):
    is_proximal: _winrt.Boolean
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemConnectionInfo: ...
    @staticmethod
    def try_create_from_app_service_connection(connection: typing.Optional[winsdk.windows.applicationmodel.appservice.AppServiceConnection]) -> typing.Optional[RemoteSystemConnectionInfo]: ...

class RemoteSystemConnectionRequest(_winrt.Object):
    remote_system: typing.Optional[RemoteSystem]
    remote_system_app: typing.Optional[RemoteSystemApp]
    connection_token: str
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemConnectionRequest: ...
    def __new__(cls: typing.Type[RemoteSystemConnectionRequest], remote_system: typing.Optional[RemoteSystem]) -> RemoteSystemConnectionRequest:...
    @staticmethod
    def create_for_app(remote_system_app: typing.Optional[RemoteSystemApp]) -> typing.Optional[RemoteSystemConnectionRequest]: ...
    @staticmethod
    def create_from_connection_token(connection_token: str) -> typing.Optional[RemoteSystemConnectionRequest]: ...
    @staticmethod
    def create_from_connection_token_for_user(user: typing.Optional[winsdk.windows.system.User], connection_token: str) -> typing.Optional[RemoteSystemConnectionRequest]: ...

class RemoteSystemDiscoveryTypeFilter(_winrt.Object):
    remote_system_discovery_type: RemoteSystemDiscoveryType
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemDiscoveryTypeFilter: ...
    def __new__(cls: typing.Type[RemoteSystemDiscoveryTypeFilter], discovery_type: RemoteSystemDiscoveryType) -> RemoteSystemDiscoveryTypeFilter:...

class RemoteSystemEnumerationCompletedEventArgs(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemEnumerationCompletedEventArgs: ...

class RemoteSystemKindFilter(_winrt.Object):
    remote_system_kinds: typing.Optional[winsdk.windows.foundation.collections.IVectorView[str]]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemKindFilter: ...
    def __new__(cls: typing.Type[RemoteSystemKindFilter], remote_system_kinds: typing.Iterable[str]) -> RemoteSystemKindFilter:...

class RemoteSystemKinds(_winrt.Object):
    desktop: str
    holographic: str
    hub: str
    phone: str
    xbox: str
    iot: str
    laptop: str
    tablet: str
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemKinds: ...

class RemoteSystemRemovedEventArgs(_winrt.Object):
    remote_system_id: str
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemRemovedEventArgs: ...

class RemoteSystemSession(_winrt.Object):
    controller_display_name: str
    display_name: str
    id: str
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, *args) -> None: ...
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSession: ...
    def close(self) -> None: ...
    def create_participant_watcher(self) -> typing.Optional[RemoteSystemSessionParticipantWatcher]: ...
    @staticmethod
    def create_watcher() -> typing.Optional[RemoteSystemSessionWatcher]: ...
    def send_invitation_async(self, invitee: typing.Optional[RemoteSystem]) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    def add_disconnected(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSession, RemoteSystemSessionDisconnectedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_disconnected(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemSessionAddedEventArgs(_winrt.Object):
    session_info: typing.Optional[RemoteSystemSessionInfo]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionAddedEventArgs: ...

class RemoteSystemSessionController(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionController: ...
    @typing.overload
    def __new__(cls: typing.Type[RemoteSystemSessionController], display_name: str) -> RemoteSystemSessionController:...
    @typing.overload
    def __new__(cls: typing.Type[RemoteSystemSessionController], display_name: str, options: typing.Optional[RemoteSystemSessionOptions]) -> RemoteSystemSessionController:...
    def create_session_async(self) -> winsdk.windows.foundation.IAsyncOperation[RemoteSystemSessionCreationResult]: ...
    def remove_participant_async(self, p_participant: typing.Optional[RemoteSystemSessionParticipant]) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    def add_join_requested(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionController, RemoteSystemSessionJoinRequestedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_join_requested(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemSessionCreationResult(_winrt.Object):
    session: typing.Optional[RemoteSystemSession]
    status: RemoteSystemSessionCreationStatus
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionCreationResult: ...

class RemoteSystemSessionDisconnectedEventArgs(_winrt.Object):
    reason: RemoteSystemSessionDisconnectedReason
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionDisconnectedEventArgs: ...

class RemoteSystemSessionInfo(_winrt.Object):
    controller_display_name: str
    display_name: str
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionInfo: ...
    def join_async(self) -> winsdk.windows.foundation.IAsyncOperation[RemoteSystemSessionJoinResult]: ...

class RemoteSystemSessionInvitation(_winrt.Object):
    sender: typing.Optional[RemoteSystem]
    session_info: typing.Optional[RemoteSystemSessionInfo]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionInvitation: ...

class RemoteSystemSessionInvitationListener(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionInvitationListener: ...
    def __new__(cls: typing.Type[RemoteSystemSessionInvitationListener]) -> RemoteSystemSessionInvitationListener:...
    def add_invitation_received(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionInvitationListener, RemoteSystemSessionInvitationReceivedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_invitation_received(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemSessionInvitationReceivedEventArgs(_winrt.Object):
    invitation: typing.Optional[RemoteSystemSessionInvitation]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionInvitationReceivedEventArgs: ...

class RemoteSystemSessionJoinRequest(_winrt.Object):
    participant: typing.Optional[RemoteSystemSessionParticipant]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionJoinRequest: ...
    def accept(self) -> None: ...

class RemoteSystemSessionJoinRequestedEventArgs(_winrt.Object):
    join_request: typing.Optional[RemoteSystemSessionJoinRequest]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionJoinRequestedEventArgs: ...
    def get_deferral(self) -> typing.Optional[winsdk.windows.foundation.Deferral]: ...

class RemoteSystemSessionJoinResult(_winrt.Object):
    session: typing.Optional[RemoteSystemSession]
    status: RemoteSystemSessionJoinStatus
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionJoinResult: ...

class RemoteSystemSessionMessageChannel(_winrt.Object):
    session: typing.Optional[RemoteSystemSession]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionMessageChannel: ...
    @typing.overload
    def __new__(cls: typing.Type[RemoteSystemSessionMessageChannel], session: typing.Optional[RemoteSystemSession], channel_name: str) -> RemoteSystemSessionMessageChannel:...
    @typing.overload
    def __new__(cls: typing.Type[RemoteSystemSessionMessageChannel], session: typing.Optional[RemoteSystemSession], channel_name: str, reliability: RemoteSystemSessionMessageChannelReliability) -> RemoteSystemSessionMessageChannel:...
    def broadcast_value_set_async(self, message_data: typing.Optional[winsdk.windows.foundation.collections.ValueSet]) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    def send_value_set_async(self, message_data: typing.Optional[winsdk.windows.foundation.collections.ValueSet], participant: typing.Optional[RemoteSystemSessionParticipant]) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    def send_value_set_to_participants_async(self, message_data: typing.Optional[winsdk.windows.foundation.collections.ValueSet], participants: typing.Iterable[RemoteSystemSessionParticipant]) -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    def add_value_set_received(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionMessageChannel, RemoteSystemSessionValueSetReceivedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_value_set_received(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemSessionOptions(_winrt.Object):
    is_invite_only: _winrt.Boolean
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionOptions: ...
    def __new__(cls: typing.Type[RemoteSystemSessionOptions]) -> RemoteSystemSessionOptions:...

class RemoteSystemSessionParticipant(_winrt.Object):
    remote_system: typing.Optional[RemoteSystem]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionParticipant: ...
    def get_host_names(self) -> typing.Optional[winsdk.windows.foundation.collections.IVectorView[winsdk.windows.networking.HostName]]: ...

class RemoteSystemSessionParticipantAddedEventArgs(_winrt.Object):
    participant: typing.Optional[RemoteSystemSessionParticipant]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionParticipantAddedEventArgs: ...

class RemoteSystemSessionParticipantRemovedEventArgs(_winrt.Object):
    participant: typing.Optional[RemoteSystemSessionParticipant]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionParticipantRemovedEventArgs: ...

class RemoteSystemSessionParticipantWatcher(_winrt.Object):
    status: RemoteSystemSessionParticipantWatcherStatus
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionParticipantWatcher: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def add_added(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionParticipantWatcher, RemoteSystemSessionParticipantAddedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_added(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_enumeration_completed(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionParticipantWatcher, _winrt.Object]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_enumeration_completed(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_removed(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionParticipantWatcher, RemoteSystemSessionParticipantRemovedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_removed(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemSessionRemovedEventArgs(_winrt.Object):
    session_info: typing.Optional[RemoteSystemSessionInfo]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionRemovedEventArgs: ...

class RemoteSystemSessionUpdatedEventArgs(_winrt.Object):
    session_info: typing.Optional[RemoteSystemSessionInfo]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionUpdatedEventArgs: ...

class RemoteSystemSessionValueSetReceivedEventArgs(_winrt.Object):
    message: typing.Optional[winsdk.windows.foundation.collections.ValueSet]
    sender: typing.Optional[RemoteSystemSessionParticipant]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionValueSetReceivedEventArgs: ...

class RemoteSystemSessionWatcher(_winrt.Object):
    status: RemoteSystemSessionWatcherStatus
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemSessionWatcher: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def add_added(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionWatcher, RemoteSystemSessionAddedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_added(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_removed(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionWatcher, RemoteSystemSessionRemovedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_removed(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_updated(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemSessionWatcher, RemoteSystemSessionUpdatedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_updated(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemStatusTypeFilter(_winrt.Object):
    remote_system_status_type: RemoteSystemStatusType
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemStatusTypeFilter: ...
    def __new__(cls: typing.Type[RemoteSystemStatusTypeFilter], remote_system_status_type: RemoteSystemStatusType) -> RemoteSystemStatusTypeFilter:...

class RemoteSystemUpdatedEventArgs(_winrt.Object):
    remote_system: typing.Optional[RemoteSystem]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemUpdatedEventArgs: ...

class RemoteSystemWatcher(_winrt.Object):
    user: typing.Optional[winsdk.windows.system.User]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemWatcher: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def add_remote_system_added(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemWatcher, RemoteSystemAddedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_remote_system_added(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_remote_system_removed(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemWatcher, RemoteSystemRemovedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_remote_system_removed(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_remote_system_updated(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemWatcher, RemoteSystemUpdatedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_remote_system_updated(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_enumeration_completed(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemWatcher, RemoteSystemEnumerationCompletedEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_enumeration_completed(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...
    def add_error_occurred(self, handler: winsdk.windows.foundation.TypedEventHandler[RemoteSystemWatcher, RemoteSystemWatcherErrorOccurredEventArgs]) -> winsdk.windows.foundation.EventRegistrationToken: ...
    def remove_error_occurred(self, token: winsdk.windows.foundation.EventRegistrationToken) -> None: ...

class RemoteSystemWatcherErrorOccurredEventArgs(_winrt.Object):
    error: RemoteSystemWatcherError
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemWatcherErrorOccurredEventArgs: ...

class RemoteSystemWebAccountFilter(_winrt.Object):
    account: typing.Optional[winsdk.windows.security.credentials.WebAccount]
    @staticmethod
    def _from(obj: _winrt.Object) -> RemoteSystemWebAccountFilter: ...
    def __new__(cls: typing.Type[RemoteSystemWebAccountFilter], account: typing.Optional[winsdk.windows.security.credentials.WebAccount]) -> RemoteSystemWebAccountFilter:...

class IRemoteSystemFilter(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> IRemoteSystemFilter: ...

