public static string Convert(IProtoService protoService, ChatMember member)
        {
            switch (member.Status)
            {
            case ChatMemberStatusAdministrator administrator:
                return(string.Format(Strings.Resources.EditAdminPromotedBy, protoService.GetUser(member.InviterUserId).GetFullName()));

            case ChatMemberStatusRestricted restricted:
                return(string.Format(Strings.Resources.UserRestrictionsBy, protoService.GetUser(member.InviterUserId).GetFullName()));

            case ChatMemberStatusBanned banned:
                return(string.Format(Strings.Resources.UserRestrictionsBy, protoService.GetUser(member.InviterUserId).GetFullName()));

            default:
                return(LastSeenConverter.GetLabel(protoService.GetUser(member.UserId), false));
            }
        }
        public object Convert(object value, Type targetType, object parameter, string language)
        {
            var participant = value as TLChannelParticipantBase;

            switch (value)
            {
            case TLChannelParticipantCreator creator:
                return(Strings.Android.ChannelCreator);

            case TLChannelParticipantAdmin admin:
                return(string.Format(Strings.Android.EditAdminPromotedBy, admin.PromotedByUser.FullName));

            case TLChannelParticipantBanned banned:
                return(string.Format(Strings.Android.UserRestrictionsBy, banned.KickedByUser.FullName));

            default:
                return(LastSeenConverter.GetLabel(participant.User, false));
            }
        }