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

import datetime
import sys
import types
import typing

import winsdk._winrt as _winrt
import winsdk.windows.applicationmodel.socialinfo
import winsdk.windows.foundation
import winsdk.windows.foundation.collections

Self = typing.TypeVar('Self')

class SocialDashboardItemUpdater(_winrt.Object):
    timestamp: datetime.datetime
    thumbnail: typing.Optional[winsdk.windows.applicationmodel.socialinfo.SocialItemThumbnail]
    target_uri: typing.Optional[winsdk.windows.foundation.Uri]
    content: typing.Optional[winsdk.windows.applicationmodel.socialinfo.SocialFeedContent]
    owner_remote_id: str
    @staticmethod
    def _from(obj: _winrt.Object) -> SocialDashboardItemUpdater: ...
    def commit_async(self) -> typing.Optional[winsdk.windows.foundation.IAsyncAction]: ...

class SocialFeedUpdater(_winrt.Object):
    items: typing.Optional[winsdk.windows.foundation.collections.IVector[winsdk.windows.applicationmodel.socialinfo.SocialFeedItem]]
    kind: winsdk.windows.applicationmodel.socialinfo.SocialFeedKind
    owner_remote_id: str
    @staticmethod
    def _from(obj: _winrt.Object) -> SocialFeedUpdater: ...
    def commit_async(self) -> typing.Optional[winsdk.windows.foundation.IAsyncAction]: ...

class SocialInfoProviderManager(_winrt.Object):
    @staticmethod
    def _from(obj: _winrt.Object) -> SocialInfoProviderManager: ...
    @staticmethod
    def create_dashboard_item_updater_async(owner_remote_id: str) -> winsdk.windows.foundation.IAsyncOperation[SocialDashboardItemUpdater]: ...
    @staticmethod
    def create_social_feed_updater_async(kind: winsdk.windows.applicationmodel.socialinfo.SocialFeedKind, mode: winsdk.windows.applicationmodel.socialinfo.SocialFeedUpdateMode, owner_remote_id: str) -> winsdk.windows.foundation.IAsyncOperation[SocialFeedUpdater]: ...
    @staticmethod
    def deprovision_async() -> typing.Optional[winsdk.windows.foundation.IAsyncAction]: ...
    @staticmethod
    def provision_async() -> winsdk.windows.foundation.IAsyncOperation[_winrt.Boolean]: ...
    @staticmethod
    def report_new_content_available(contact_remote_id: str, kind: winsdk.windows.applicationmodel.socialinfo.SocialFeedKind) -> None: ...
    @staticmethod
    def update_badge_count_value(item_remote_id: str, new_count: _winrt.Int32) -> None: ...

