| package claude | |
| // PKCECodes holds PKCE verification codes for OAuth2 PKCE flow | |
| type PKCECodes struct { | |
| // CodeVerifier is the cryptographically random string used to correlate | |
| // the authorization request to the token request | |
| CodeVerifier string `json:"code_verifier"` | |
| // CodeChallenge is the SHA256 hash of the code verifier, base64url-encoded | |
| CodeChallenge string `json:"code_challenge"` | |
| } | |
| // ClaudeTokenData holds OAuth token information from Anthropic | |
| type ClaudeTokenData struct { | |
| // AccessToken is the OAuth2 access token for API access | |
| AccessToken string `json:"access_token"` | |
| // RefreshToken is used to obtain new access tokens | |
| RefreshToken string `json:"refresh_token"` | |
| // Email is the Anthropic account email | |
| Email string `json:"email"` | |
| // Expire is the timestamp of the token expire | |
| Expire string `json:"expired"` | |
| } | |
| // ClaudeAuthBundle aggregates authentication data after OAuth flow completion | |
| type ClaudeAuthBundle struct { | |
| // APIKey is the Anthropic API key obtained from token exchange | |
| APIKey string `json:"api_key"` | |
| // TokenData contains the OAuth tokens from the authentication flow | |
| TokenData ClaudeTokenData `json:"token_data"` | |
| // LastRefresh is the timestamp of the last token refresh | |
| LastRefresh string `json:"last_refresh"` | |
| } | |