import { Queryable } from '../domain/queryable'; export interface IRepository { execute(query: string, data?: any): Promise; insert(entity: TEntity): Promise; insert(entity: TEntity, include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; insert(entity: TEntity, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkInsert(entities: TEntity[]): Promise; bulkInsert(entities: TEntity[], include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkInsert(entities: TEntity[], include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; update(entity: TEntity): Promise; update(entity: TEntity, include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; update(entity: TEntity, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; upsert(entity: TEntity): Promise; upsert(entity: TEntity, include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; upsert(entity: TEntity, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; updateAll(data: any, map: (value: TEntity) => unknown, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; merge(entity: TEntity): Promise; merge(entity: TEntity, include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; merge(entity: TEntity, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkMerge(entities: TEntity[]): Promise; bulkMerge(entities: TEntity[], include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkMerge(entities: TEntity[], include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; delete(entity: TEntity): Promise; delete(entity: TEntity, include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; delete(entity: TEntity, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkDelete(entities: TEntity[]): Promise; bulkDelete(entities: TEntity[], include: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; bulkDelete(entities: TEntity[], include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; deleteAll(data: any, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; list(data: any, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; distinct(data: any, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; first(data: any, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; last(data: any, filter?: (value: TQuery, index: number, array: TQuery[]) => unknown, include?: (value: TQuery, index: number, array: TQuery[]) => unknown): Promise; query(): Queryable; } //# sourceMappingURL=repository.d.ts.map