import { IFindOp } from '../libs/storage/framework/IFindOp'; import { IUpdateOp } from '../libs/storage/framework/IUpdateOp'; import { ISaveOp } from '../libs/storage/framework/ISaveOp'; import { IDeleteOp } from '../libs/storage/framework/IDeleteOp'; import { IAggregateOp } from '../libs/storage/framework/IAggregateOp'; export interface IEntityControllerApi { doBeforeFind?(op: IFindOp): void; doAfterFind?(results: T[], error: Error, op: IFindOp): void; doBeforeUpdate?(op: IUpdateOp): void; doAfterUpdate?(results: number, error: Error, op: IUpdateOp): void; doBeforeSave?(object: T[] | T, op: ISaveOp): void; doAfterSave?(object: T[] | T, error: Error, op: ISaveOp): void; doBeforeRemove?(op: IDeleteOp): void; doAfterRemove?(results: number | T[], error: Error, op: IDeleteOp): void; doBeforeAggregate?(op: IAggregateOp): void; doAfterAggregate?(results: T[], error: Error, op: IAggregateOp): void; }