rawsql-ts
Version:
High-performance SQL parser and AST analyzer written in TypeScript. Provides fast parsing and advanced transformation capabilities.
26 lines (25 loc) • 1.06 kB
TypeScript
import { TableSchema } from '../transformers/SchemaCollector';
import { SqlComponent } from '../models/SqlComponent';
import { TableColumnResolver } from '../transformers/TableColumnResolver';
/**
* Validates SQL query structures against known tables and columns.
*
* @example
* ```typescript
* const tables = [
* { name: 'users', columns: ['id', 'email'] }
* ];
*
* SqlSchemaValidator.validate('SELECT id FROM users', tables);
* ```
* Related tests: packages/core/tests/utils/SqlSchemaValidator.validate.test.ts
*/
export declare class SqlSchemaValidator {
/**
* Validates a SQL query structure against a provided TableColumnResolver or TableSchema array.
* @param sql The SQL query structure to validate, can be a SQL string or a SqlComponent.
* @param tableResolver The TableColumnResolver or TableSchema array to validate against.
* @throws Error if the query contains undefined tables or columns.
*/
static validate(sql: string | SqlComponent, tableResolver: TableColumnResolver | TableSchema[]): void;
}