Options
All
  • Public
  • Public/Protected
  • All
Menu

Class MongoEntity<T>

Type parameters

  • T = any

Hierarchy

  • Serializable<T>
    • MongoEntity

Index

Constructors

constructor

  • new MongoEntity<T>(partial?: DeepPartial<T>): MongoEntity<T>
  • Type parameters

    • T = any

    Parameters

    • Optional partial: DeepPartial<T>

    Returns MongoEntity<T>

Properties

_id

_id: string

Methods

assign

  • Parameters

    • Optional partial: Partial<T>

    Returns MongoEntity<T>

del

  • del(): Promise<any>

patch

  • patch<T>(patch: UpdateQuery<T> | DeepPartial<T>, opts: { deep: true }): Promise<T>
  • Type parameters

    Parameters

    • patch: UpdateQuery<T> | DeepPartial<T>
    • opts: { deep: true }
      • deep: true

    Returns Promise<T>

toJSON

  • toJSON(settings?: JsonSettings): any
  • Parameters

    • Optional settings: JsonSettings

    Returns any

toJson

  • toJson(settings?: JsonSettings): any
  • Parameters

    • Optional settings: JsonSettings

    Returns any

upsert

Static aggregateMany

  • aggregateMany<TOut, T>(pipeline?: IAggrPipeline<any>[], options?: { Type?: Constructor<TOut> } & CollectionAggregationOptions): Promise<TOut[]>
  • Type parameters

    Parameters

    • Optional pipeline: IAggrPipeline<any>[]
    • Optional options: { Type?: Constructor<TOut> } & CollectionAggregationOptions

    Returns Promise<TOut[]>

Static aggregateManyPaged

  • aggregateManyPaged<TOut, T>(pipeline?: IAggrPipeline<any>[], options?: { Type?: Constructor<TOut> } & CollectionAggregationOptions): Promise<{ collection: TOut[]; total: number }>
  • Type parameters

    Parameters

    • Optional pipeline: IAggrPipeline<any>[]
    • Optional options: { Type?: Constructor<TOut> } & CollectionAggregationOptions

    Returns Promise<{ collection: TOut[]; total: number }>

Static count

  • count<T>(query?: FilterQuery<T>): Promise<any>

Static del

  • del<T>(entity: T): Promise<any>

Static delMany

  • delMany<T>(arr: T[]): Promise<any>

Static fetch

  • fetch<T>(query: FilterQuery<InstanceType<T>>, options?: FindOptions<InstanceType<T>> & FindOneOptions): Promise<InstanceType<T>>

Static fetchMany

  • fetchMany<T>(query?: FilterQuery<InstanceType<T>>, options?: FindOptions<InstanceType<T>> & FindOneOptions): Promise<InstanceType<T>[]>
  • Type parameters

    Parameters

    • Optional query: FilterQuery<InstanceType<T>>
    • Optional options: FindOptions<InstanceType<T>> & FindOneOptions

    Returns Promise<InstanceType<T>[]>

Static fetchManyPaged

  • fetchManyPaged<T>(query?: FilterQuery<InstanceType<T>>, options?: FindOptions<InstanceType<T>> & FindOneOptions): Promise<{ collection: InstanceType<T>[]; total: number }>
  • Type parameters

    Parameters

    • Optional query: FilterQuery<InstanceType<T>>
    • Optional options: FindOptions<InstanceType<T>> & FindOneOptions

    Returns Promise<{ collection: InstanceType<T>[]; total: number }>

Static fetchManyPagedPartial

  • fetchManyPagedPartial<T, P>(query: FilterQuery<InstanceType<T>>, options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>): Promise<{ collection: TDeepPickByProjection<InstanceType<T>, P>[]; total: number }>
  • Type parameters

    • T: typeof MongoEntity

    • P: TProjection<InstanceType<T>>

    Parameters

    • query: FilterQuery<InstanceType<T>>
    • options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>

    Returns Promise<{ collection: TDeepPickByProjection<InstanceType<T>, P>[]; total: number }>

Static fetchManyPartial

  • fetchManyPartial<T, P>(query: FilterQuery<InstanceType<T>>, options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>): Promise<TDeepPickByProjection<InstanceType<T>, P>[]>
  • Type parameters

    • T: typeof MongoEntity

    • P: TProjection<InstanceType<T>>

    Parameters

    • query: FilterQuery<InstanceType<T>>
    • options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>

    Returns Promise<TDeepPickByProjection<InstanceType<T>, P>[]>

Static fetchPartial

  • fetchPartial<T, P>(query: FilterQuery<InstanceType<T>>, options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>): Promise<TDeepPickByProjection<InstanceType<T>, P>>
  • Type parameters

    • T: typeof MongoEntity

    • P: TProjection<InstanceType<T>>

    Parameters

    • query: FilterQuery<InstanceType<T>>
    • options: Omit<FindOneOptions, "projection"> & FindOptionsProjected<InstanceType<T>, P>

    Returns Promise<TDeepPickByProjection<InstanceType<T>, P>>

Static fromJSON

  • fromJSON<T>(json: any, settings?: JsonSettings & IType): InstanceType<T>
  • Type parameters

    • T: typeof Serializable

    Parameters

    • json: any
    • Optional settings: JsonSettings & IType

    Returns InstanceType<T>

Static fromJson

  • fromJson<T>(json: any, settings?: JsonSettings & IType): InstanceType<T>
  • Type parameters

    • T: typeof Serializable

    Parameters

    • json: any
    • Optional settings: JsonSettings & IType

    Returns InstanceType<T>

Static getCollection

  • getCollection(): Promise<Collection<any>>

Static getDb

  • getDb(server?: string): Promise<Db>

Static patch

  • patch<T>(instance: T, patch: Partial<T> | UpdateQuery<T>): Promise<T>

Static patchBy

  • patchBy<T>(finder: FilterQuery<T>, patch: Partial<T> | UpdateQuery<T>): Promise<WriteOpResult>
  • Type parameters

    Parameters

    • finder: FilterQuery<T>
    • patch: Partial<T> | UpdateQuery<T>

    Returns Promise<WriteOpResult>

Static patchDeeply

  • patchDeeply<T>(instance: T, patch: Partial<T> | UpdateQuery<T>): Promise<T>

Static patchDeeplyBy

  • patchDeeplyBy<T>(finder: FilterQuery<T>, patch: DeepPartial<T>): Promise<WriteOpResult>
  • Find document by filter query, and patch it.

    Type parameters

    Parameters

    • finder: FilterQuery<T>
    • patch: DeepPartial<T>

    Returns Promise<WriteOpResult>

Static patchMany

  • patchMany<T>(arr: [FilterQuery<T>, DeepPartial<T> | UpdateQuery<T>][]): Promise<void>

Static patchMultipleBy

  • patchMultipleBy<T>(finder: FilterQuery<T>, patch: DeepPartial<T> | UpdateQuery<T>): Promise<WriteOpResult>
  • Type parameters

    Parameters

    • finder: FilterQuery<T>
    • patch: DeepPartial<T> | UpdateQuery<T>

    Returns Promise<WriteOpResult>

Static patchMultipleDeeplyBy

  • patchMultipleDeeplyBy<T>(finder: FilterQuery<T>, patch: DeepPartial<T> | UpdateQuery<T>): Promise<WriteOpResult>
  • Type parameters

    Parameters

    • finder: FilterQuery<T>
    • patch: DeepPartial<T> | UpdateQuery<T>

    Returns Promise<WriteOpResult>

Static upsert

  • upsert<T>(instance: T): Promise<T>

Static upsertBy

  • upsertBy<T>(finder: TFindQuery<T>, instance: T): Promise<T>

Static upsertMany

  • upsertMany<T>(arr: T[]): Promise<T[]>

Static upsertManyBy

  • upsertManyBy<T>(finder: TFindQuery<T>, arr: T[]): Promise<T[]>

Static validate

  • validate(x: any, settings?: IValidationSettings<any>): IRuleError<any>[]
  • Parameters

    • x: any
    • Optional settings: IValidationSettings<any>

    Returns IRuleError<any>[]

Generated using TypeDoc