@@ -273,10 +273,10 @@ declare module 'mongoose' {
273273 /**
274274 * Create a new schema
275275 */
276- constructor ( definition ?: SchemaDefinition < SchemaDefinitionType < RawDocType > , RawDocType > | DocType , options ?: SchemaOptions < FlatRecord < DocType > , TInstanceMethods , TQueryHelpers , TStaticMethods , TVirtuals , THydratedDocumentType > | ResolveSchemaOptions < TSchemaOptions > ) ;
276+ constructor ( definition ?: SchemaDefinition < SchemaDefinitionType < RawDocType > , RawDocType , THydratedDocumentType > | DocType , options ?: SchemaOptions < FlatRecord < DocType > , TInstanceMethods , TQueryHelpers , TStaticMethods , TVirtuals , THydratedDocumentType > | ResolveSchemaOptions < TSchemaOptions > ) ;
277277
278278 /** Adds key path / schema type pairs to this schema. */
279- add ( obj : SchemaDefinition < SchemaDefinitionType < RawDocType > > | Schema , prefix ?: string ) : this;
279+ add ( obj : SchemaDefinition < SchemaDefinitionType < RawDocType > , RawDocType > | Schema , prefix ?: string ) : this;
280280
281281 /**
282282 * Add an alias for `path`. This means getting or setting the `alias`
@@ -541,21 +541,21 @@ declare module 'mongoose' {
541541 ? DateSchemaDefinition
542542 : ( Function | string ) ;
543543
544- export type SchemaDefinitionProperty < T = undefined , EnforcedDocType = any > = SchemaDefinitionWithBuiltInClass < T > |
545- SchemaTypeOptions < T extends undefined ? any : T , EnforcedDocType > |
546- typeof SchemaType |
547- Schema < any , any , any > |
548- Schema < any , any , any > [ ] |
549- SchemaTypeOptions < T extends undefined ? any : Unpacked < T > , EnforcedDocType > [ ] |
550- Function [ ] |
551- SchemaDefinition < T , EnforcedDocType > |
552- SchemaDefinition < Unpacked < T > , EnforcedDocType > [ ] |
553- typeof Schema . Types . Mixed |
554- MixedSchemaTypeOptions < EnforcedDocType > ;
555-
556- export type SchemaDefinition < T = undefined , EnforcedDocType = any > = T extends undefined
544+ export type SchemaDefinitionProperty < T = undefined , EnforcedDocType = any , THydratedDocumentType = HydratedDocument < EnforcedDocType > > = SchemaDefinitionWithBuiltInClass < T >
545+ | SchemaTypeOptions < T extends undefined ? any : T , EnforcedDocType , THydratedDocumentType >
546+ | typeof SchemaType
547+ | Schema < any , any , any >
548+ | Schema < any , any , any > [ ]
549+ | SchemaTypeOptions < T extends undefined ? any : Unpacked < T > , EnforcedDocType , THydratedDocumentType > [ ]
550+ | Function [ ]
551+ | SchemaDefinition < T , EnforcedDocType , THydratedDocumentType >
552+ | SchemaDefinition < Unpacked < T > , EnforcedDocType , THydratedDocumentType > [ ]
553+ | typeof Schema . Types . Mixed
554+ | MixedSchemaTypeOptions < EnforcedDocType > ;
555+
556+ export type SchemaDefinition < T = undefined , EnforcedDocType = any , THydratedDocumentType = HydratedDocument < EnforcedDocType > > = T extends undefined
557557 ? { [ path : string ] : SchemaDefinitionProperty ; }
558- : { [ path in keyof T ] ?: SchemaDefinitionProperty < T [ path ] , EnforcedDocType > ; } ;
558+ : { [ path in keyof T ] ?: SchemaDefinitionProperty < T [ path ] , EnforcedDocType , THydratedDocumentType > ; } ;
559559
560560 export type AnyArray < T > = T [ ] | ReadonlyArray < T > ;
561561 export type ExtractMongooseArray < T > = T extends Types . Array < any > ? AnyArray < Unpacked < T > > : T ;
0 commit comments