UNPKG

ddd-tool-kit

Version:

A development tool kit for using Domain Driven Design in your Web API Node.js

14 lines (13 loc) 530 B
import { Aggregate } from '../abstract/aggregate/aggregate.abstract'; import { IdValueObject } from '../implementations/value-objects/id/id.value-object'; export interface List<T> { items: T[]; total: number; } export interface IRepository<D extends Aggregate<any>> { save: (aggregate: D) => Promise<void>; saveMany: (aggregates: D[]) => Promise<void>; delete: (id: IdValueObject) => Promise<void>; findMany: (ids: IdValueObject[]) => Promise<D[]>; findOne: (id: IdValueObject) => Promise<D | null>; }