UNPKG

@calf/serializable

Version:

Serializable module of Calf framework.

47 lines (46 loc) 1.15 kB
import { Serializable } from "../classes/serializable.class"; import { IQuery } from "../interfaces/query.interface"; import { IPopulate } from "../interfaces/populate.interface"; /** * Entity dao * @description */ export interface IEntityDao<T extends Serializable> { /** * Save entity * @param entity * @param args */ save(entity: T, ...args: any[]): Promise<T>; /** * Get entity * @param entity * @param args */ get(entity: T, populate: IPopulate[], ...args: any[]): Promise<T>; /** * Get list of entities * @param query * @param args */ getList(query: IQuery, ...args: any[]): Promise<T[]>; /** * Remove * @param query * @param args */ remove(query: IQuery, ...args: any[]): Promise<any>; /** * Count entities * @param query * @param args */ count(query: IQuery, ...args: any[]): Promise<number>; /** * Update * @param query * @param payload * @param args */ update(query: IQuery, payload: any, ...args: any[]): Promise<any>; }