UNPKG

mongoose-delete-ts

Version:
18 lines (17 loc) 1.7 kB
import { FilterQuery, MongooseBaseQueryOptions, QueryWithHelpers, UpdateWriteOpResult } from 'mongoose'; import DeletedSchema from './types/DeletedSchema'; import DeletedFieldOptions from './types/DeletedFieldOptions'; import { DeleteResult, DeleteOptions as MongoDbDeleteOptions, UpdateOptions as MongoDbUpdateOptions } from 'mongodb'; import { DeleteSchemaOptions } from './types/DeleteSchemaOptions'; type DeleteOptions<RawDocType> = MongoDbDeleteOptions & Omit<MongooseBaseQueryOptions<RawDocType>, 'lean' | 'timestamps'>; type UpdateOptions<RawDocType> = MongoDbUpdateOptions & Omit<MongooseBaseQueryOptions<RawDocType>, 'lean'>; export interface DeletedStaticMethods<DocType, THelpers = {}, RawDocType = DocType> { restoreOne(filter?: FilterQuery<RawDocType>, options?: UpdateOptions<RawDocType> | null): QueryWithHelpers<UpdateWriteOpResult, DocType, THelpers, RawDocType, 'updateOne'>; restoreMany(filter?: FilterQuery<RawDocType>, options?: UpdateOptions<RawDocType> | null): QueryWithHelpers<UpdateWriteOpResult, DocType, THelpers, RawDocType, 'updateMany'>; } export interface DeletedByStaticMethods<DocType, TUser = any, THelpers = {}, RawDocType = DocType> { deleteOneByUser(user: TUser, filter?: FilterQuery<RawDocType>, options?: DeleteOptions<RawDocType> | null): QueryWithHelpers<DeleteResult, DocType, THelpers, RawDocType, 'deleteOne'>; deleteManyByUser(user: TUser, filter?: FilterQuery<RawDocType>, options?: DeleteOptions<RawDocType> | null): QueryWithHelpers<DeleteResult, DocType, THelpers, RawDocType, 'deleteMany'>; } export default function (schema: DeletedSchema, schemaOptions: DeleteSchemaOptions, deletedFieldOptions: DeletedFieldOptions): void; export {};