basalt / subscriptions/src / MemoryUsageStore
Class: MemoryUsageStore
Defined in: subscriptions/src/stores.ts:136
Usage counters: periodKey is 'lifetime' or 'YYYY-MM' for meters.
Implements
Constructors
Constructor
> new MemoryUsageStore(): MemoryUsageStore
Returns
MemoryUsageStore
Methods
consume()
> consume(billableId, feature, periodKey, amount, limit): Promise<UsageConsumeResult>
Defined in: subscriptions/src/stores.ts:160
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/src/stores.ts:143
Parameters
billableId
string
feature
string
periodKey
string
Returns
Promise<number>
Implementation of
increment()
> increment(billableId, feature, periodKey, amount): Promise<number>
Defined in: subscriptions/src/stores.ts:147
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>