import { ParserRuleContext } from "antlr4ng"; import type { QueryExpr } from "../ir/ir.js"; import { type StatementCategory } from "../ir/statement.js"; /** Lower a parsed Snowflake file (snowflake_file: a `;`-separated batch) into the IR. * A single query statement lowers fully; anything else (DDL, DML, multi-statement * batches) becomes a flagged non-query body — a valid parse never throws. */ export declare function lower(tree: ParserRuleContext): QueryExpr; /** Per-statement categories for every `sql_command` in a parsed `snowflake_file`, in source order — * the file-level view behind statementCategory (which folds >1 into "compound"), using the same * `commandCategory` per element. Parity with the other dialects; feeds the corpus reclassifier. */ export declare function statementCategories(tree: ParserRuleContext): StatementCategory[];