basalt / permissions-sqlite/src / SqliteTemporaryGrantStore
Class: SqliteTemporaryGrantStore
Defined in: permissions-sqlite/src/index.ts:229
Durable TemporaryGrantStore (table perm_temporary_grants, created by migrate()). activeFor filters expires_at > now, user and scope in SQL; the Gate re-verifies all three on every row anyway. Expired rows are inert — pruneExpired() deletes them.
Implements
Constructors
Constructor
> new SqliteTemporaryGrantStore(db): SqliteTemporaryGrantStore
Defined in: permissions-sqlite/src/index.ts:230
Parameters
db
DatabaseSync
Returns
SqliteTemporaryGrantStore
Methods
activeFor()
> activeFor(userId, scope, now): Promise<TemporaryGrant[]>
Defined in: permissions-sqlite/src/index.ts:257
Non-expired grants for a user in a scope.
Parameters
userId
string
scope
string
now
number
Returns
Promise<TemporaryGrant[]>
Implementation of
add()
> add(grant): Promise<void>
Defined in: permissions-sqlite/src/index.ts:232
Parameters
grant
Returns
Promise<void>
Implementation of
all()
> all(): Promise<TemporaryGrant[]>
Defined in: permissions-sqlite/src/index.ts:269
Returns
Promise<TemporaryGrant[]>
Implementation of
pruneExpired()
> pruneExpired(now?): Promise<number>
Defined in: permissions-sqlite/src/index.ts:275
Deletes grants expired at now (default: the current time). Returns how many.
Parameters
now?
number = ...
Returns
Promise<number>
revoke()
> revoke(id): Promise<void>
Defined in: permissions-sqlite/src/index.ts:264
Parameters
id
string
Returns
Promise<void>