cyber-mysql-openai
Version:
Intelligent natural language to SQL translator with self-correction capabilities using OpenAI and MySQL
57 lines (56 loc) • 1.45 kB
TypeScript
import { TokenUsage } from "../types";
/**
* Registro de una ejecución de consulta
*/
export interface QueryRecord {
id: string;
timestamp: Date;
naturalQuery: string;
generatedSQL: string;
confidence?: number;
success: boolean;
executionTime: number;
fromCache: boolean;
tokenUsage?: TokenUsage;
error?: string;
}
/**
* Administrador de historial de consultas en memoria.
* Almacena un registro rotativo de ejecuciones para depuración y análisis.
*/
export declare class QueryHistory {
private history;
private maxSize;
constructor(maxSize?: number);
/**
* Agrega un registro de consulta al historial
*/
addRecord(record: QueryRecord): void;
/**
* Obtiene el historial de consultas, opcionalmente limitado a las últimas N entradas
*/
getHistory(limit?: number): QueryRecord[];
/**
* Obtiene la última consulta ejecutada
*/
getLastQuery(): QueryRecord | null;
/**
* Obtiene estadísticas sobre la ejecución de consultas
*/
getStats(): {
totalQueries: number;
successfulQueries: number;
failedQueries: number;
averageExecutionTime: number;
cacheHitRate: number;
totalTokensUsed: number;
};
/**
* Limpia el historial completo
*/
clearHistory(): void;
/**
* Exporta el historial como cadena JSON
*/
exportHistory(): string;
}