import { ParserRuleContext } from "antlr4ng"; import type { QueryExpr } from "../ir/ir.js"; import { type StatementCategory } from "../ir/statement.js"; /** Lower a parsed DuckDB file (root: stmtblock of `;`-separated statements) into the IR. * A single SELECT (or FROM-first) statement lowers fully; anything else becomes a flagged * non-query body — a valid parse never throws. Frozen — immutable after lower(). */ export declare function lower(tree: ParserRuleContext): QueryExpr; /** Per-statement categories for every top-level `stmt` in a parsed `root`, in source order. */ export declare function statementCategories(tree: ParserRuleContext): StatementCategory[];