16 lines
536 B
Go
16 lines
536 B
Go
|
|
package repository
|
||
|
|
|
||
|
|
import (
|
||
|
|
"context"
|
||
|
|
"time"
|
||
|
|
)
|
||
|
|
|
||
|
|
// TokenRevokeStore tracks access/refresh jti pairs and JWT revocation blacklist.
|
||
|
|
type TokenRevokeStore interface {
|
||
|
|
SavePair(ctx context.Context, accessJTI, refreshJTI string, accessTTL, refreshTTL time.Duration) error
|
||
|
|
GetPairedJTI(ctx context.Context, jti string) (string, error)
|
||
|
|
DeletePair(ctx context.Context, accessJTI, refreshJTI string) error
|
||
|
|
Blacklist(ctx context.Context, jti string, ttl time.Duration) error
|
||
|
|
IsBlacklisted(ctx context.Context, jti string) (bool, error)
|
||
|
|
}
|