import { AnyObject, juggler } from '@loopback/repository'; import { ColumnSchema, DatabaseSchema, IDbConnector, QueryParam } from '../../types'; import { IAuthUserWithPermissions } from '@sourceloop/core'; export declare class PgConnector implements IDbConnector { protected readonly db: juggler.DataSource; protected readonly user?: IAuthUserWithPermissions | undefined; protected readonly defaultConditions?: AnyObject | undefined; protected operatorMap: Record; constructor(db: juggler.DataSource, user?: IAuthUserWithPermissions | undefined, defaultConditions?: AnyObject | undefined); execute(query: string, limit?: number, offset?: number, params?: QueryParam[]): Promise; validate(query: string): Promise; toDDL(dbSchema: DatabaseSchema): string; protected _execute(query: string, params?: QueryParam[]): Promise; private _addTable; protected mapDbTypeToColumnType(dbType: string): string; protected mapColumnToDbType(name: string, column: ColumnSchema): string; /** * Clean a SQL query by removing trailing semicolons and comments * @param query - The SQL query to clean * @returns The cleaned SQL query */ private _cleanQuery; }