package infra

// JWTClaims contiene claims estandar y custom para un JWT.
// Incluye los campos registrados mas comunes (sub, iss, aud, exp, iat)
// y un mapa libre `Custom` para claims de aplicacion (ej: role, email).
type JWTClaims struct {
	Subject   string         `json:"sub"`
	Issuer    string         `json:"iss,omitempty"`
	Audience  string         `json:"aud,omitempty"`
	ExpiresAt int64          `json:"exp"`
	IssuedAt  int64          `json:"iat"`
	Custom    map[string]any `json:"custom,omitempty"`
}
