Constructor
# new TokenManager(options)
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
options |
object
|
|||
storage |
'localStorage'
|
'memory'
|
<optional> |
'localStorage' | |
storagePrefix |
string
|
<optional> |
'hiyve_auth_' | Key prefix for localStorage |
autoRefresh |
boolean
|
<optional> |
true | |
refreshBuffer |
number
|
<optional> |
300 | Seconds before expiry to trigger refresh |
Classes
Methods
# decodeToken(token) → {object|null}
Decode the JWT payload (no verification).
Parameters:
| Name | Type | Description |
|---|---|---|
token |
string
|
object
|
null
# getTokenExpiry(token) → {number|null}
Decode JWT payload and return the exp field (seconds since epoch).
Does NOT verify the signature.
Parameters:
| Name | Type | Description |
|---|---|---|
token |
string
|
JWT string |
Expiry timestamp in seconds, or null if unreadable
number
|
null
# setTokens(tokens)
Store tokens.
Parameters:
| Name | Type | Description |
|---|---|---|
tokens |
object
|
|
accessToken |
string
|
|
refreshToken |
string
|
# startAutoRefresh(refreshFn)
Start auto-refresh timer. Calls refreshFn when the access token nears expiry.
Parameters:
| Name | Type | Description |
|---|---|---|
refreshFn |
function
|
Async function that performs token refresh |