UNPKG

naga-audit-service

Version:

A comprehensive audit service library for NestJS applications with MongoDB support

19 lines 1.44 kB
import { AggregateOptions, FilterQuery, PipelineStage, ProjectionType, QueryOptions, UpdateQuery } from "mongoose"; import { BulkWriteOpResult, UpdatedModel, WriteOperation } from "./mongo-lib.types"; export declare abstract class IMongoRepository<T, K, L> { abstract findOne(filters: FilterQuery<T>, projections?: ProjectionType<T>, options?: QueryOptions<T>): Promise<K>; abstract find(filters: FilterQuery<T>, projections?: ProjectionType<T>, options?: QueryOptions<T>): Promise<K[]>; abstract findOneAndUpdate(filters: FilterQuery<T>, updateQuery: UpdateQuery<T>, options?: QueryOptions<T>): Promise<K>; abstract findOneAndDelete(filters: FilterQuery<T>, options?: QueryOptions<T>): Promise<K>; abstract updateMany(filters: FilterQuery<T>, updateQuery: UpdateQuery<T>): Promise<UpdatedModel>; abstract countDocuments(filters: FilterQuery<T>, options?: QueryOptions<T>): Promise<number>; abstract create(payload: Partial<K>): Promise<L>; abstract aggregate<L>(pipeline: PipelineStage[], options?: AggregateOptions): Promise<L[]>; abstract bulkWrite(operations: WriteOperation[]): Promise<BulkWriteOpResult>; abstract distinct(field: string, filters?: FilterQuery<T>): Promise<any[]>; abstract deleteMany(filters: FilterQuery<T>): Promise<{ deletedCount: number; }>; abstract insertMany(payload: Partial<K>[]): Promise<K[]>; } //# sourceMappingURL=repository.abstract.d.ts.map