UNPKG

@typegoose/typegoose

Version:

Define Mongoose models using TypeScript classes

51 lines (50 loc) 2.65 kB
/// <reference types="mongoose/types/aggregate" /> /// <reference types="mongoose/types/callback" /> /// <reference types="mongoose/types/collection" /> /// <reference types="mongoose/types/connection" /> /// <reference types="mongoose/types/cursor" /> /// <reference types="mongoose/types/document" /> /// <reference types="mongoose/types/error" /> /// <reference types="mongoose/types/expressions" /> /// <reference types="mongoose/types/helpers" /> /// <reference types="mongoose/types/middlewares" /> /// <reference types="mongoose/types/indexes" /> /// <reference types="mongoose/types/models" /> /// <reference types="mongoose/types/mongooseoptions" /> /// <reference types="mongoose/types/pipelinestage" /> /// <reference types="mongoose/types/populate" /> /// <reference types="mongoose/types/query" /> /// <reference types="mongoose/types/schemaoptions" /> /// <reference types="mongoose/types/schematypes" /> /// <reference types="mongoose/types/session" /> /// <reference types="mongoose/types/types" /> /// <reference types="mongoose/types/utility" /> /// <reference types="mongoose/types/validation" /> /// <reference types="mongoose/types/virtuals" /> /// <reference types="mongoose/types/inferschematype" /> /// <reference types="mongoose/types/inferrawdoctype" /> import mongoose from 'mongoose'; import type { AnyParamConstructor, IBuildSchemaOptions, IModelOptions, INamingOptions } from '../types'; /** * Internal Schema Builder for Classes * This Function should not be used directly outside of typegoose internals, use "buildSchema" from typegoose.ts directly * @param cl The Class to build a Model from * @param origSch A Schema to clone and extend onto * @param opt Overwrite SchemaOptions (Merged with Decorator Options) * @param isFinalSchema Set if this Schema is the final (top-level) to build, only when "true" are discriminators, hooks, virtuals, etc applied * @param overwriteNaming Overwrite options for name generation * @param extraOptions Extra options to affect what needs to be done * @returns Returns the Build Schema * @private */ export declare function _buildSchema<U extends AnyParamConstructor<any>>(cl: U, origSch?: mongoose.Schema<any>, opt?: IModelOptions, isFinalSchema?: boolean, overwriteNaming?: INamingOptions, extraOptions?: IBuildSchemaOptions): mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, { [x: string]: unknown; }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{ [x: string]: unknown; }>> & mongoose.FlatRecord<{ [x: string]: unknown; }> & Required<{ _id: unknown; }> & { __v: number; }>;