diff --git a/typings/objection/index.d.ts b/typings/objection/index.d.ts index e14784130..38d71b10b 100644 --- a/typings/objection/index.d.ts +++ b/typings/objection/index.d.ts @@ -225,16 +225,20 @@ declare namespace Objection { */ type PartialModelGraph = T extends any ? { - [K in DataPropertyNames]?: Defined extends Model - ? PartialModelGraph> - : Defined extends Array - ? I extends Model - ? PartialModelGraph[] - : Expression - : Expression; + [K in DataPropertyNames]?: null extends T[K] + ? PartialModelGraphField> | null // handle nullable BelongsToOneRelations + : PartialModelGraphField; } : never; + type PartialModelGraphField = Defined extends Model + ? PartialModelGraph> + : Defined extends Array + ? I extends Model + ? PartialModelGraph[] + : Expression + : Expression; + /** * Extracts the property names (excluding relations) of a model class. */