import type { QueryExecutor } from './introspect'; /** `pg_proc.provolatile`: `i` immutable, `s` stable, `v` volatile. */ export type Volatility = 'i' | 's' | 'v'; export interface ProcVolatility { /** Schema-qualified name, or bare name if in `pg_catalog` / a common system schema. */ name: string; volatility: Volatility; isSecurityDefiner: boolean; /** True if this is a built-in / system function (we usually allow-list these). */ isSystem: boolean; } /** * Look up `(schema, name)` tuples in pg_proc and return their volatility. * Returns a map keyed by the two names the AST walker might see: * - `schema.name` (schema-qualified) * - `name` (unqualified; only used when the function lives in `pg_catalog`) */ export declare function lookupVolatility(exec: QueryExecutor, names: Array<{ schema?: string; name: string; }>): Promise>;