UNPKG

bb-inspired

Version:

Core library for BB-inspired NestJS backend

24 lines (23 loc) 1.06 kB
import { BaseEntity } from './base.entity'; import { IBaseRepository } from './base.repository'; export interface IBaseService<T extends BaseEntity> { findAll(filters?: Partial<T>): Promise<T[]>; findById(id: string): Promise<T>; findOne(filters: Partial<T>): Promise<T>; create(data: Partial<T>): Promise<T>; update(id: string, data: Partial<T>): Promise<T>; remove(id: string): Promise<boolean>; count(filters?: Partial<T>): Promise<number>; } export declare abstract class BaseService<T extends BaseEntity> implements IBaseService<T> { protected readonly repository: IBaseRepository<T>; protected readonly entityName: string; constructor(repository: IBaseRepository<T>, entityName: string); findAll(filters?: Partial<T>): Promise<T[]>; findById(id: string): Promise<T>; findOne(filters: Partial<T>): Promise<T>; create(data: Partial<T>): Promise<T>; update(id: string, data: Partial<T>): Promise<T>; remove(id: string): Promise<boolean>; count(filters?: Partial<T>): Promise<number>; }