
package com.tmerclub.cloud.api.auth.feign;

import com.tmerclub.cloud.api.auth.bo.LoginInfoBO;
import com.tmerclub.cloud.api.auth.bo.UidInfoBO;

import com.tmerclub.cloud.api.auth.dto.ThirdApiAbutmentUserDto;

/**
 * @author tmerclub
 * @date 2020/7/15
 */
public interface TokenFeignClient {

    /**
     * 校验token并返回token保存的用户信息
     * @param accessToken accessToken
     * @return token保存的用户信息
     */
    UidInfoBO checkToken(String accessToken);

    /**
     * 清除当前用户所有token信息
     */
    void clearToken();

    /**
     * 获取用户的登录用户信息
     * @return
     */
    UidInfoBO getUidInfoInToken();

    /**
     * 获取用户登录信息
     * @return
     */
    LoginInfoBO getLoginInfo();

    /**
     * 同步第三方token
     * @param thirdApiAbutmentUserDto
     */
    void userTokenSync(ThirdApiAbutmentUserDto thirdApiAbutmentUserDto);

}
