UNPKG

iagate-querykit

Version:

QueryKit: lightweight TypeScript query toolkit with models, views, triggers, events, scheduler and adapters (better-sqlite3).

34 lines 1.15 kB
export type DatabaseType = 'sqlite' | 'mysql' | 'postgresql' | 'mongodb' | 'redis' | 'firebase' | 'cassandra' | 'hbase' | 'couchbase' | 'hadoop' | 'spark'; export type QueryResult = { data: any[]; affectedRows?: number; lastInsertId?: number | string; metadata?: Record<string, any>; }; export interface DatabaseConfig { name: string; type: DatabaseType; host?: string; port?: number; user?: string; password?: string; database?: string; filePath?: string; options?: Record<string, any>; } export declare abstract class BaseDatabaseAdapter { protected config: DatabaseConfig; constructor(config: DatabaseConfig); getConfig(): DatabaseConfig; abstract connect(): Promise<void>; abstract disconnect(): Promise<void>; abstract isConnectedToDatabase(): boolean; abstract executeQuery(sql: string, params?: any[]): Promise<QueryResult>; backup(destPath: string): Promise<void>; restore(srcPath: string): Promise<void>; getConnectionInfo(): Promise<{ uptime: number; activeConnections: number; }>; } //# sourceMappingURL=base-adapter.d.ts.map