import type { Node } from '@libpg-query/parser'; /** * Resolves a CONSTR_DEFAULT constraint's raw_expr to a lowercase function/op name. * Handles the shapes @libpg-query/parser produces for column defaults: * - `FuncCall` (e.g. `uuidv7()`, `now()`): last segment of `funcname`, lowercased. * - `SQLValueFunction` (e.g. bare `CURRENT_TIMESTAMP`): mapped from its `op` enum. * - `TypeCast` (e.g. `now()::timestamptz`): recurses into the cast's inner arg. * Returns null for any other/unrecognized raw_expr shape. */ export declare function extractDefaultFunction(rawExpr: Node | undefined): string | null; /** * Resolves a FuncCall raw_expr's argument column names, lowercased (e.g. the `id` in * `uuid_extract_timestamp(id)`). Used to verify a GENERATED column expression references * a specific source column, not just that it calls the expected function. * Returns an empty array for non-FuncCall shapes, a TypeCast-wrapped call recurses into * its inner arg; non-column-ref args are skipped. */ export declare function extractFuncCallArgColumnNames(rawExpr: Node | undefined): string[];