@developers-joyride/shortify
Version:
High performance URL shortener library with multi-database support (MongoDB, SQLite, PostgreSQL, MySQL)
17 lines (16 loc) • 719 B
TypeScript
import { IDatabaseAdapter, DatabaseConfig, PostgresConfig, MysqlConfig } from "../interfaces/database.interface";
export declare class DatabaseFactory {
static createAdapter(config: DatabaseConfig): IDatabaseAdapter;
static createMongoAdapter(mongoUri: string, options?: {
maxRetries?: number;
retryDelay?: number;
collectionName?: string;
}): IDatabaseAdapter;
static createSqliteAdapter(database: string, options?: {
maxRetries?: number;
retryDelay?: number;
tableName?: string;
}): IDatabaseAdapter;
static createMysqlAdapter(config: MysqlConfig): IDatabaseAdapter;
static createPostgresAdapter(config: PostgresConfig): IDatabaseAdapter;
}