mastercache
Version:
Multi-tier cache module for Node.js. Redis, Upstash, CloudfareKV, File, in-memory and others drivers
50 lines (47 loc) • 1.62 kB
TypeScript
import { DatabaseDriver } from '../database.js';
import { C as CreateDriverResult } from '../../../../mastercache-Di19srNZ.js';
import { KnexConfig } from '../../../types/options/drivers-options.js';
import { DatabaseAdapter } from '../../../types/driver.js';
import '../../base-driver.js';
import '../../../types/provider.js';
import '../../../types/helpers.js';
import 'typescript-log';
import '../../../types/options/methods-options.js';
import '../../../types/options/options.js';
import '../../../../events-CkqPK7En.js';
import '../../../types/bus.js';
import '@boringnode/bus/types/main';
import 'knex';
import 'kysely';
import '@aws-sdk/client-dynamodb';
import 'ioredis';
import 'orchid-orm';
/**
* Knex adapter for the DatabaseDriver
*/
declare class KnexAdapter implements DatabaseAdapter {
#private;
constructor(config: KnexConfig);
setTableName(tableName: string): void;
get(key: string): Promise<{
value: string;
expiresAt: number | null;
} | undefined>;
delete(key: string): Promise<boolean>;
deleteMany(keys: string[]): Promise<number>;
disconnect(): Promise<void>;
createTableIfNotExists(): Promise<void>;
pruneExpiredEntries(): Promise<void>;
clear(prefix: string): Promise<void>;
set(row: {
key: string;
value: any;
expiresAt: Date | null;
}): Promise<void>;
}
/**
* Create a knex driver
* You will need to install the underlying database package (mysql2, pg, sqlite3, etc)
*/
declare function knexDriver(options: KnexConfig): CreateDriverResult<DatabaseDriver>;
export { KnexAdapter, knexDriver };