20 lines
557 B
Go
20 lines
557 B
Go
package types
|
|
|
|
import "github.com/golang-jwt/jwt/v5"
|
|
|
|
type UserClaims struct {
|
|
UserEmail string `json:"user_email"`
|
|
jwt.RegisteredClaims
|
|
}
|
|
|
|
type ApiClaims struct {
|
|
UserID string `json:"user_id"`
|
|
// Permissions are guard's defined permissions
|
|
// Examples:
|
|
// 1. User MetaData (specifically some fields like email, profile picture and name)
|
|
// 2. Actions on User, e.g. home permissions fetching, notifications emitting
|
|
Permissions []string `json:"permissions"`
|
|
// Subject is an API ID defined in guard's DB after registration
|
|
jwt.RegisteredClaims
|
|
}
|