/// import 'reflect-metadata'; import * as mongoose from 'mongoose'; export * from './method'; export * from './prop'; export * from './hooks'; export * from './plugin'; export { getClassForDocument } from './utils'; export declare type InstanceType = T & mongoose.Document; export declare type ModelType = mongoose.Model> & T; export interface GetModelForClassOptions { existingMongoose?: mongoose.Mongoose; schemaOptions?: mongoose.SchemaOptions; existingConnection?: mongoose.Connection; } export declare class Typegoose { getModelForClass(t: T, {existingMongoose, schemaOptions, existingConnection}?: GetModelForClassOptions): mongoose.Model> & this & T; setModelForClass(t: T, {existingMongoose, schemaOptions, existingConnection}?: GetModelForClassOptions): mongoose.Model> & this & T; private buildSchema(name, schemaOptions, sch?); }