import type { Statement } from "./parser/ast"; export interface ParseResult { ast: Statement[]; errors: Array<{ message: string; line?: number; column?: number; }>; } export * from "./parser/ast"; export type { ContentAssistResult, TableRef, } from "./autocomplete/content-assist"; export type { AutocompleteProvider, Suggestion, SchemaInfo, TableInfo, ColumnInfo, } from "./autocomplete/index"; export { QuestDBLexer, tokenize, allTokens } from "./parser/lexer"; export { parser, parse } from "./parser/parser"; export { visitor } from "./parser/visitor"; export { toSql } from "./parser/toSql"; export { Select, From, Where, Insert, Update, Delete, Create, Drop, Alter, Table, Sample, By, Latest, On, Partition, } from "./parser/lexer"; export { getContentAssist, getNextValidTokens, isTokenExpected, } from "./autocomplete/content-assist"; export { createAutocompleteProvider } from "./autocomplete/index"; export { SuggestionKind, SuggestionPriority } from "./autocomplete/index"; export { IDENTIFIER_TOKENS, IDENTIFIER_KEYWORD_TOKENS, SKIP_TOKENS, tokenNameToKeyword, buildSuggestions, } from "./autocomplete/index"; export { keywords, dataTypes, constants, functions, operators, } from "./grammar/index"; /** * Parse SQL string to AST */ export declare function parseToAst(sql: string): ParseResult; /** * Parse multiple SQL statements (no semicolons needed) */ export declare function parseStatements(sql: string): Statement[]; /** * Parse single SQL statement and return AST */ export declare function parseOne(sql: string): Statement;