# Functions
GenerateJWT generates a JWT token for a given user.
PermissionMiddleware checks if the user has the required permissions.
ValidateAdminMiddleware checks if the user is an admin.
ValidateJWTMiddleware validates the JWT token from the request header.
# Structs
UserClaims represents the authenticated user and their permissions.