Package-level declarations

Types

Link copied to clipboard
data class JwtClaims(val subject: String?, val email: String?, val issuedAt: Date?, val expiresAt: Date?, val confirmJkt: String? = null)

Minimal set of claims we extract from a validated access token (JWT).

Link copied to clipboard
data class RefreshTokenIssue(val id: String, val expiresAt: Instant, val familyId: String)

Info needed to set the refresh cookie on the response. id goes into the cookie value; expiresAt is used to compute Max-Age; familyId groups a session.

Link copied to clipboard
data class RefreshTokenRecord(val id: String, val familyId: String, val userId: Long, val jkt: String?, val expiresAt: Instant, var used: Boolean, var revoked: Boolean)

Server-side record for one refresh token in a family. This is not exposed to the browser. Fields:

Link copied to clipboard
data class RotationResult(val newRecord: RefreshTokenRecord?, val reuseDetected: Boolean)

Result of trying to use a refresh token.