package domain

import "errors"

var (
	// Token validation errors
	ErrInvalidTokenID     = errors.New("invalid token ID")
	ErrInvalidUID         = errors.New("invalid UID")
	ErrInvalidAccessToken = errors.New("invalid access token")
	ErrTokenExpired       = errors.New("token expired")
	ErrTokenNotFound      = errors.New("token not found")
	
	// JWT specific errors
	ErrInvalidJWTToken    = errors.New("invalid JWT token")
	ErrJWTSigningFailed   = errors.New("JWT signing failed")
	ErrJWTParsingFailed   = errors.New("JWT parsing failed")
	ErrInvalidSigningKey  = errors.New("invalid signing key")
	ErrInvalidJTI         = errors.New("invalid JWT ID")
	
	// Refresh token errors
	ErrRefreshTokenExpired = errors.New("refresh token expired")
	ErrInvalidRefreshToken = errors.New("invalid refresh token")
	
	// One-time token errors
	ErrOneTimeTokenExpired = errors.New("one-time token expired")
	ErrInvalidOneTimeToken = errors.New("invalid one-time token")
	
	// Blacklist errors
	ErrTokenBlacklisted    = errors.New("token is blacklisted")
	ErrBlacklistNotFound   = errors.New("blacklist entry not found")
)