import { Document, Model, AnyKeys, AnyObject } from "mongoose"; import { AppException } from "./../exception_filter/app.exception"; export declare class NotFoundException extends AppException { constructor(); } export declare abstract class EntityRepository { protected readonly entityModel: Model; constructor(entityModel: Model); getAll(refs?: string[]): Promise; getCount(): Promise; getCountBy(groupBy: string): Promise; findById(id: string, refs?: string[]): Promise; find(filters?: {}, refs?: string[]): Promise; findAll(filters?: {}, skip?: number, limit?: number, refs?: string[]): Promise; exists(filters?: {}, refs?: string[]): Promise; save(document: T): Promise; create(data: AnyKeys & AnyObject): Promise; update(document: T): Promise; delete(id: string): Promise; }