import { QueryResult } from "./QueryResult.js"; /** * Transaction interface - common methods for all database types * This interface ensures consistent transaction handling across MySQL and PostgreSQL */ export interface DatabaseTransaction { /** * Execute a query within the transaction */ query(text: string, params?: any[]): Promise>; /** * Commit the transaction * This method should only be called once and marks the transaction as completed */ commit(): Promise; /** * Rollback the transaction * This method should be safe to call multiple times */ rollback(): Promise; /** * Check if the transaction has been completed (committed or rolled back) */ isCompleted(): boolean; getDatabaseType(): 'postgresql' | 'mysql'; supportsReturning(): boolean; adaptSql(sql: string): string; createInsertSql(tableName: string, columns: string[]): string; createUpdateSql(tableName: string, columns: string[]): string; } //# sourceMappingURL=DatabaseTransaction.d.ts.map