Versions in this module Expand all Collapse all v0 v0.1.5 Nov 26, 2025 Changes in this version + const DefaultAccessTTL + const DefaultNonceTTL + const DefaultRefreshTTL + const NonceKeySuffix + const NonceLength + const RefreshKeySuffix + const RefreshTokenLength + var ErrInvalidNonce = fmt.Errorf("invalid or expired nonce") + var ErrInvalidRefreshData = fmt.Errorf("invalid refresh token data") + var ErrInvalidRefreshToken = fmt.Errorf("invalid refresh token") + var ErrRefreshTokenExpired = fmt.Errorf("refresh token expired") + type NonceManager struct + func NewNonceManager(storage adapter.Storage, prefix string, ttl time.Duration) *NonceManager + func (nm *NonceManager) Generate() (string, error) + func (nm *NonceManager) IsValid(nonce string) bool + func (nm *NonceManager) Verify(nonce string) bool + func (nm *NonceManager) VerifyAndConsume(nonce string) error + type RefreshTokenInfo struct + AccessToken string + CreateTime int64 + Device string + ExpireTime int64 + LoginID string + RefreshToken string + func (r *RefreshTokenInfo) MarshalBinary() ([]byte, error) + func (r *RefreshTokenInfo) UnmarshalBinary(data []byte) error + type RefreshTokenManager struct + func NewRefreshTokenManager(storage adapter.Storage, prefix, keyPrefix string, cfg *config.Config) *RefreshTokenManager + func (rtm *RefreshTokenManager) GenerateTokenPair(loginID, device string, accessTokenOverride ...string) (*RefreshTokenInfo, error) + func (rtm *RefreshTokenManager) GetRefreshTokenInfo(refreshToken string) (*RefreshTokenInfo, error) + func (rtm *RefreshTokenManager) IsValid(refreshToken string) bool + func (rtm *RefreshTokenManager) RefreshAccessToken(refreshToken string) (*RefreshTokenInfo, error) + func (rtm *RefreshTokenManager) RevokeRefreshToken(refreshToken string) error