Files
kiro.rs/src/kiro/model/token_refresh.rs
2026-03-05 21:28:41 +08:00

45 lines
1.1 KiB
Rust

use serde::{Deserialize, Serialize};
/// 刷新 Token 的请求体 (Social 认证)
#[derive(Debug, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct RefreshRequest {
pub refresh_token: String,
}
/// 刷新 Token 的响应体 (Social 认证)
#[derive(Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct RefreshResponse {
pub access_token: String,
#[serde(default)]
pub refresh_token: Option<String>,
#[serde(default)]
pub profile_arn: Option<String>,
#[serde(default)]
pub expires_in: Option<i64>,
}
/// IdC Token 刷新请求体 (AWS SSO OIDC)
#[derive(Debug, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct IdcRefreshRequest {
pub client_id: String,
pub client_secret: String,
pub refresh_token: String,
pub grant_type: String,
}
/// IdC Token 刷新响应体 (AWS SSO OIDC)
#[derive(Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct IdcRefreshResponse {
pub access_token: String,
#[serde(default)]
pub refresh_token: Option<String>,
// #[serde(default)]
// pub token_type: Option<String>,
#[serde(default)]
pub expires_in: Option<i64>,
}