import { type FnRule } from "../infer/functions.js"; import { type Type } from "../infer/types.js"; import type { Expr } from "../ir/ir.js"; export declare const TSQL_FUNCTION_RETURNS: Record; /** T-SQL pre-registry inference hook — the XML data type methods, which `lowerUdtElem` lowers to * `function` nodes with the receiver as arg 0. `value(xpath, 'sqltype')` is typed by its literal * sqltype argument (never-wrong: no XML shredding — the declared sqltype is the value's runtime * type; a non-literal sqltype falls through to unknown); `exist()` → boolean (bit); `query()` → xml. * https://learn.microsoft.com/en-us/sql/t-sql/xml/xml-data-type-methods */ export declare function tsqlSpecial(fn: Extract): Type | undefined; /** T-SQL literal forms: `'str'` / `N'unicode'` → string, `0x…` → binary, `1` → int, `1.5` → decimal * (numeric), `1e3` → float. */ export declare function tsqlLiteral(text: string): Type; export declare function tsqlParseType(text: string): Type;