Skip to content

Commit

Permalink
types: make HydratedSingleSubdocument and HydratedArraySubdocument me…
Browse files Browse the repository at this point in the history
…rge types instead of using &

Fix #14793
  • Loading branch information
vkarpov15 committed Aug 11, 2024
1 parent 4fa87e9 commit a9ff3f1
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions types/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -157,8 +157,37 @@ declare module 'mongoose' {
>
>
>;
export type HydratedSingleSubdocument<DocType, TOverrides = {}> = Types.Subdocument<unknown, Record<string, never>, DocType> & Require_id<DocType> & TOverrides;
export type HydratedArraySubdocument<DocType, TOverrides = {}> = Types.ArraySubdocument<unknown, Record<string, never>, DocType> & Require_id<DocType> & TOverrides;
export type HydratedSingleSubdocument<
DocType,
TOverrides = {}
> = IfAny<
DocType,
any,
TOverrides extends Record<string, never> ?
Types.Subdocument<unknown, Record<string, never>, DocType> & Require_id<DocType> :
IfAny<
TOverrides,
Types.Subdocument<unknown, Record<string, never>, DocType> & Require_id<DocType>,
Types.Subdocument<unknown, Record<string, never>, DocType> & MergeType<
Require_id<DocType>,
TOverrides
>
>
>;
export type HydratedArraySubdocument<DocType, TOverrides = {}> = IfAny<
DocType,
any,
TOverrides extends Record<string, never> ?
Types.ArraySubdocument<unknown, Record<string, never>, DocType> & Require_id<DocType> :
IfAny<
TOverrides,
Types.ArraySubdocument<unknown, Record<string, never>, DocType> & Require_id<DocType>,
Types.ArraySubdocument<unknown, Record<string, never>, DocType> & MergeType<
Require_id<DocType>,
TOverrides
>
>
>;

export type HydratedDocumentFromSchema<TSchema extends Schema> = HydratedDocument<
InferSchemaType<TSchema>,
Expand Down

0 comments on commit a9ff3f1

Please sign in to comment.