package com.chinaweal.aiccs.org.entity.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * OAuth令牌响应DTO
 *
 * @author lroyia
 * @since 2025/11/21
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "OAuth令牌响应DTO")
public class TokenResponseDTO {

    @ApiModelProperty(value = "访问令牌", example = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...")
    @JsonProperty("access_token")
    private String accessToken;

    @ApiModelProperty(value = "令牌类型", example = "Bearer")
    @JsonProperty("token_type")
    private String tokenType;

    @ApiModelProperty(value = "过期时间（秒）", example = "3600")
    @JsonProperty("expires_in")
    private Integer expiresIn;

    @ApiModelProperty(value = "刷新令牌", example = "refresh_token_67890")
    @JsonProperty("refresh_token")
    private String refreshToken;

    @ApiModelProperty(value = "授权范围", example = "read write")
    @JsonProperty("scope")
    private String scope;
}