UNPKG

rawsql-ts

Version:

High-performance SQL parser and AST analyzer written in TypeScript. Provides fast parsing and advanced transformation capabilities.

22 lines (21 loc) 875 B
import { SelectQuery } from "../models/SelectQuery"; import { SqlComponent } from "../models/SqlComponent"; export type SelectBodyWrapperKind = "create-table-as" | "create-view" | "create-materialized-view" | "insert-select"; export interface SelectBodyExtractionResult { supported: boolean; kind: SelectBodyWrapperKind | null; targetName: string | null; selectQuery: SelectQuery | null; reason?: string; } export declare class SelectBodyExtractor { static extract(input: string | SqlComponent): SelectBodyExtractionResult; private static extractFromSql; private static extractFromStatement; private static extractCreateViewFromLexemes; private static isCreateViewStatement; private static consumeBalancedParentheses; private static createTableTargetName; private static insertTargetName; private static unsupported; }