UNPKG

@adonisjs/limiter

Version:

Rate limiting package for AdonisJS framework

23 lines (22 loc) 889 B
import type { QueryClientContract } from '@adonisjs/lucid/types/database'; import RateLimiterBridge from './bridge.ts'; import type { LimiterDatabaseStoreConfig } from '../types.ts'; /** * Database-backed limiter store that persists rate limit data in a SQL database. * Supports PostgreSQL, MySQL, and SQLite databases. * * Wraps rate-limiter-flexible database implementations (RateLimiterMySQL, * RateLimiterPostgres, RateLimiterSQLite). */ export default class LimiterDatabaseStore extends RateLimiterBridge { #private; get name(): string; constructor(client: QueryClientContract, config: LimiterDatabaseStoreConfig); /** * Truncates the database table, removing all rate limit data. * * **Warning**: Use a dedicated table for each limiter configuration * to avoid accidentally clearing other limiter data. */ clear(): Promise<void>; }