import { QualifiedTablename, SqlValue, Statement } from '../../util/index.js'; import { QueryBuilder } from './builder.js'; import { ForeignKey } from '../triggers.js'; declare class PgBuilder extends QueryBuilder { readonly dialect = "Postgres"; readonly AUTOINCREMENT_PK = "SERIAL PRIMARY KEY"; readonly BLOB = "TEXT"; readonly getVersion = "SELECT version();"; readonly paramSign = "$"; readonly defaultNamespace = "public"; /** **Disables** FKs for the duration of the transaction */ readonly deferOrDisableFKsForTx = "SET LOCAL session_replication_role = replica;"; pgOnly(query: string): string; sqliteOnly(_query: string): string; tableExists(table: QualifiedTablename): Statement; countTablesIn(tableNames: string[]): Statement; toHex(column: string): string; hexValue(hexString: string): string; createIndex(indexName: string, onTable: QualifiedTablename, columns: string[]): string; getLocalTableNames(notIn?: string[]): Statement; getTableInfo(table: QualifiedTablename): Statement; insertOrIgnore(table: QualifiedTablename, columns: string[], values: SqlValue[]): Statement; insertOrReplace(table: QualifiedTablename, columns: string[], values: Array, conflictCols: string[], updateCols: string[]): Statement; insertOrReplaceWith(table: QualifiedTablename, columns: string[], values: Array, conflictCols: string[], updateCols: string[], updateVals: SqlValue[]): Statement; batchedInsertOrReplace(table: QualifiedTablename, columns: string[], records: Array>, conflictCols: string[], updateCols: string[], maxSqlParameters: number): Statement[]; dropTriggerIfExists(triggerName: string, table: QualifiedTablename): string; createNoFkUpdateTrigger(table: QualifiedTablename, pk: string[]): string[]; createPKJsonObject(rows: string): string; createJsonbObject(rows: string): string; removeSpaceAndNullValuesFromJson(json: string): string; setTriggerSetting(table: QualifiedTablename, value: 0 | 1): string; createOplogTrigger(opType: 'INSERT' | 'UPDATE' | 'DELETE', table: QualifiedTablename, newPKs: string, newRows: string, oldRows: string): string[]; createFkCompensationTrigger(opType: 'INSERT' | 'UPDATE', table: QualifiedTablename, childKey: string, fkTable: QualifiedTablename, joinedFkPKs: string, foreignKey: ForeignKey): string[]; setTagsForShadowRows(oplog: QualifiedTablename, shadow: QualifiedTablename): string; removeDeletedShadowRows(oplog: QualifiedTablename, shadow: QualifiedTablename): string; makePositionalParam(i: number): string; } declare const _default: PgBuilder; export default _default;