UNPKG

cyber-mysql-openai

Version:

Intelligent natural language to SQL translator with self-correction capabilities using OpenAI and MySQL

46 lines (45 loc) 1.34 kB
import mysql from 'mysql2/promise'; import { DBConfig } from '../types'; import Logger from '../utils/index'; /** * Clase DBManager que maneja la conexión a la base de datos */ export declare class DBManager { private config; private logger; private pool; constructor(config: DBConfig, logger?: Logger); /** * Obtiene o crea el pool de conexiones */ getPool(): Promise<mysql.Pool>; /** * Cierra la conexión al pool */ closePool(): Promise<void>; /** * Ejecuta una consulta SQL * @param sql - Consulta SQL * @param params - Parámetros para la consulta * @returns Resultado de la consulta */ executeQuery(sql: string, params?: any[]): Promise<any>; /** * Ejecuta una consulta SQL de solo lectura, validando primero * @param sql - Consulta SQL * @returns Resultado de la consulta */ executeReadOnlyQuery(sql: string): Promise<any[]>; /** * Obtiene el esquema de la base de datos * @returns Esquema de la base de datos */ getDatabaseSchema(): Promise<Record<string, any>>; /** * Obtiene las columnas de una tabla específica * @param tableName - Nombre de la tabla * @returns Columnas de la tabla */ getTableColumns(tableName: string): Promise<any[]>; } export default DBManager;