import { ArgumentsHost, ExceptionFilter } from '@nestjs/common'; import { DeepPartial, Dictionary, Entity, IBaseRequest, ICondition, IPaginationResponse, IResponseDto, KeyOf } from '../models'; import { ConfigService, LogService } from '../modules'; export interface IBaseController { configService?: ConfigService; logService?: LogService; paginate(query: IBaseRequest): Promise>; detail(id: ID, query: IBaseRequest): Promise; create(entity: DeepPartial): Promise; update(id: ID, entity: DeepPartial): Promise; delete(id: ID): Promise; } export interface IBaseService { configService?: ConfigService; logService?: LogService; paginate(req: REQ): Promise>; find(req: REQ): Promise; findOne(req: REQ): Promise; create(entity: DeepPartial): Promise; update(id: ID, entity: DeepPartial): Promise; delete(id: ID): Promise; restore(id: ID): Promise; } export interface IBaseRepository { paginate(query: IBaseRequest): Promise>; find(query: IBaseRequest): Promise; count(query: IBaseRequest): Promise; findOne(cond: ID | ICondition, query?: Omit, 'condition'>, opts?: Dictionary): Promise; create(body: DeepPartial, opts?: Dictionary): Promise; update(cond: ID | ICondition, body: DeepPartial, opts?: Dictionary): Promise; delete(cond: ID | ICondition, opts?: Dictionary & { force?: boolean; }): Promise; restore(cond: ID | ICondition, opts?: Dictionary): Promise; upsert(body: DeepPartial, onConflicts: KeyOf[], opts?: Dictionary): Promise; bulkUpsert(docs: Array>, onConflicts?: KeyOf[], opts?: Dictionary): Promise; } export interface IExceptionFilter extends ExceptionFilter { transformStatus(exception: Error): number; transformError(exception: Error): any; transformMessage(exception: Error): string; transformTitle(exception: Error): string; transformCode(exception: Error): number; debug(exception: Error): void; minify(host: ArgumentsHost, errorBody: IResponseDto): IResponseDto; } //# sourceMappingURL=base.interface.d.ts.map