using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Claims;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEA_Core.HttpContextUser
{
    public interface IUser
    {
        /// 
        /// 名称
        /// 
        string UserName { get; }
        /// 
        /// UserId
        /// 
        int UserId { get; }
        /// 
        /// 租户ID
        /// 
        long TenantId { get; }
        int RoleId { get; }
        string Token { get; }
        int MenuType { get; }
        void UpdateToke(string token);
        /// 
        /// 是否认证
        /// 
        /// 
        bool IsAuthenticated();
        IEnumerable GetClaimsIdentity();
        List GetClaimValueByType(string ClaimType);
        string GetToken();
        List GetUserInfoFromToken(string ClaimType);
        bool IsSuperAdmin { get; }
        bool IsHighestRole { get; }
        bool IsRoleIdSuperAdmin(int roleId);
    }
}