basalt / subscriptions-prisma/src / PrismaUsageStore
Class: PrismaUsageStore
Defined in: subscriptions-prisma/src/index.ts:241
Usage counters: periodKey is 'lifetime' or 'YYYY-MM' for meters.
Implements
Constructors
Constructor
> new PrismaUsageStore(client, options?): PrismaUsageStore
Defined in: subscriptions-prisma/src/index.ts:244
Parameters
client
options?
PrismaSubscriptionsStoreOptions = {}
Returns
PrismaUsageStore
Methods
consume()
> consume(billableId, feature, periodKey, amount, limit): Promise<UsageConsumeResult>
Defined in: subscriptions-prisma/src/index.ts:275
Atomically increments by amount only if the result stays within limit. Must be atomic under concurrency so a quota is never overshot. amount must be a positive safe integer — implementations reject anything else with assertUsageAmount (a negative amount would refund quota).
Parameters
billableId
string
feature
string
periodKey
string
amount
number
limit
number
Returns
Promise<UsageConsumeResult>
Implementation of
get()
> get(billableId, feature, periodKey): Promise<number>
Defined in: subscriptions-prisma/src/index.ts:251
Parameters
billableId
string
feature
string
periodKey
string
Returns
Promise<number>
Implementation of
increment()
> increment(billableId, feature, periodKey, amount): Promise<number>
Defined in: subscriptions-prisma/src/index.ts:256
Unconditional increment — used for unlimited features. Returns the new total. amount must be a positive safe integer (see assertUsageAmount).
Parameters
billableId
string
feature
string
periodKey
string
amount
number
Returns
Promise<number>