import { keyvalue } from "../../../types/keyvalue.type"; import { DbQuery } from "./queries/DbQuery"; export interface IRepository { find(query: DbQuery, cb: (error: Error | null, result: Array) => void): Promise>; findOne(query: DbQuery, cb: (error: Error | null, result: any) => void): Promise; insert(key: string, item: any): Promise; insertMany(items: Array>): Promise; update(key: string, parameters: any): Promise; delete(key: string): Promise; deleteMany(parameters: any): Promise; contains(parameters: any): Promise; } export declare abstract class Repository implements IRepository { configuration: any; constructor(configuration?: any); protected abstract __select__(table: String): void; isDBQuery(query: any): boolean; createQuery(parameters: any): DbQuery; abstract find(parameters: any): Promise>; abstract findOne(parameters: any): Promise; abstract insert(key: string, item: any): Promise; abstract insertMany(items: Array>): Promise; abstract contains(parameters: any): Promise; abstract update(key: string, parameters: any): Promise; abstract delete(key: string): Promise; abstract deleteMany(parameters: any): Promise; }