package com.sf.oauth.domain;

import lombok.*;

import java.io.Serializable;

/**
 * 授权所需的token
 *
 * @author zoukun
 */
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AuthToken implements Serializable {
    private String accessToken;
    private int expireIn;
    private String refreshToken;
    private int refreshTokenExpireIn;
    private String uid;
    private String openId;
    private String accessCode;
    private String unionId;

    /**
     * 华为返回 生成的Access Token中包含的scope。
     */
    private String scope;

    /**
     * 华为返回 固定返回Bearer，标识返回Access Token的类型
     */
    private String tokenType;

    /**
     * 华为返回 返回JWT格式数据，包含用户基本帐号、用户邮箱等信息。
     * 参照https://developer.huawei.com/consumer/cn/doc/HMSCore-References/account-verify-id-token_hms_reference-0000001050050577#section3142132691914
     */
    private String idToken;
}
