UNPKG

@vasoyaprince14/sql-analyzer

Version:

🚀 Enhanced SQL database analyzer with AI-powered insights, comprehensive security analysis, RLS policy auditing, and beautiful HTML reports

58 lines • 1.49 kB
import { Client } from 'pg'; export interface QueryBuilderOptions { table: string; columns?: string[]; where?: Record<string, any>; joins?: JoinClause[]; orderBy?: OrderByClause[]; groupBy?: string[]; having?: string; limit?: number; offset?: number; } export interface JoinClause { type: 'INNER' | 'LEFT' | 'RIGHT' | 'FULL'; table: string; on: string; } export interface OrderByClause { column: string; direction: 'ASC' | 'DESC'; } export interface QueryBuilderResult { sql: string; explanation: string; optimizationTips: string[]; } export declare class QueryBuilder { private client; constructor(client: Client); /** * Build an optimized SQL query from options */ buildQuery(options: QueryBuilderOptions): Promise<QueryBuilderResult>; /** * Generate suggested queries based on table analysis */ suggestQueries(tableName: string): Promise<string[]>; /** * Generate explanation for the query options */ private generateExplanation; /** * Generate optimization tips for the query */ private generateOptimizationTips; /** * Get available tables for query building */ getAvailableTables(): Promise<string[]>; /** * Get available columns for a table */ getAvailableColumns(tableName: string): Promise<Array<{ name: string; type: string; }>>; } //# sourceMappingURL=query-builder.d.ts.map