import { PgTable } from "./table.js"; import { type Check } from "./checks.js"; import type { AnyPgColumn } from "./columns/index.js"; import { type ForeignKey } from "./foreign-keys.js"; import type { Index } from "./indexes.js"; import { PgPolicy } from "./policies.js"; import { type PrimaryKey } from "./primary-keys.js"; import { type UniqueConstraint } from "./unique-constraint.js"; import { type PgMaterializedView, type PgView } from "./view.js"; export declare function getTableConfig(table: TTable): { columns: import("./index.js").PgColumn, {}, {}>[]; indexes: Index[]; foreignKeys: ForeignKey[]; checks: Check[]; primaryKeys: PrimaryKey[]; uniqueConstraints: UniqueConstraint[]; name: string; schema: string | undefined; policies: PgPolicy[]; enableRLS: boolean; }; export declare function getViewConfig(view: PgView): { with?: import("./view.js").ViewWithConfig; name: TName; originalName: TName; schema: string | undefined; selectedFields: import("../index.js").ColumnsSelection; isExisting: TExisting; query: TExisting extends true ? undefined : import("../index.js").SQL; isAlias: boolean; }; export declare function getMaterializedViewConfig(view: PgMaterializedView): { with?: import("./view.js").PgMaterializedViewWithConfig; using?: string; tablespace?: string; withNoData?: boolean; name: TName; originalName: TName; schema: string | undefined; selectedFields: import("../index.js").ColumnsSelection; isExisting: TExisting; query: TExisting extends true ? undefined : import("../index.js").SQL; isAlias: boolean; }; export type ColumnsWithTable[]> = { [Key in keyof TColumns]: AnyPgColumn<{ tableName: TForeignTableName; }>; };