import { Array, Literal, Partial, Record, Static, String } from "runtypes"; import { ManyObjectProvider } from "../core"; export declare const FunctionRecord: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; export interface FunctionI extends Static { } export declare const ContractRecord: Record<{ name: String; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>; export interface ContractI extends Static { } declare enum FunctionOpCodes { CreateFunction = "create_function", ReplaceFunction = "replace_function", DropFunction = "drop_function", RenameFunction = "rename_function", AlterFunctionVolatility = "alter_function_volatility", AlterFunctionSecurity = "alter_function_security" } export declare const FunctionOperation: import("runtypes").Union6; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>, Record<{ code: Literal; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>, Record<{ code: Literal; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>, Record<{ code: Literal; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>, Record<{ code: Literal; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>, Record<{ code: Literal; func: import("runtypes").Intersect2, string, unknown>, string, unknown>; arguments: Array, string, unknown>, string, unknown>; type: import("runtypes").Constraint, string, unknown>, string, unknown>; }, false>, Partial<{ default: String; }>>, false>; returns: import("runtypes").Constraint, string, unknown>, string, unknown>; language: import("runtypes").Union2, Literal<"sql">>; security: import("runtypes").Union2, Literal<"definer">>; volatility: import("runtypes").Union3, Literal<"stable">, Literal<"immutable">>; body: String; }, false>, Partial<{ previous_name: import("runtypes").Constraint, string, unknown>, string, unknown>; implements: Array; fallback_for: String; requires: Array, false>; }>>; }, false>>; export declare type FunctionOperationType = Static; export declare const checkFunctionContractsMatch: (func: FunctionI | ContractI, contract: FunctionI | ContractI) => true | string[]; export declare const FunctionProvider: ManyObjectProvider; export {};