import { Pool } from 'pg'; import { IDataProvider, AdapterFilter as Filter, Sort, Item, NonEmptyAdapterAggregation as Aggregation, ResponseField } from '@wix-velo/velo-external-db-types'; import FilterParser from './sql_filter_transformer'; export default class DataProvider implements IDataProvider { pool: Pool; filterParser: FilterParser; constructor(pool: Pool, filterParser: FilterParser); find(collectionName: string, filter: Filter, sort: Sort[], skip: number, limit: number, projection: string[]): Promise; count(collectionName: string, filter: Filter): Promise; insert(collectionName: string, items: Item[], fields: ResponseField[], upsert?: boolean): Promise; update(collectionName: string, items: Item[]): Promise; delete(collectionName: string, itemIds: string[]): Promise; truncate(collectionName: string): Promise; aggregate(collectionName: string, filter: Filter, aggregation: Aggregation, sort: Sort[], skip: number, limit: number): Promise; }