Skip to content

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 ​

TemporaryGrantStore.activeFor


add() ​

> add(grant): Promise<void>

Defined in: permissions-sqlite/src/index.ts:232

Parameters ​

grant ​

TemporaryGrant

Returns ​

Promise<void>

Implementation of ​

TemporaryGrantStore.add


all() ​

> all(): Promise<TemporaryGrant[]>

Defined in: permissions-sqlite/src/index.ts:269

Returns ​

Promise<TemporaryGrant[]>

Implementation of ​

TemporaryGrantStore.all


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>

Implementation of ​

TemporaryGrantStore.revoke

Released under the MIT License.