diff --git a/src/TraitExpressionBuilder.ts b/src/TraitExpressionBuilder.ts index 23c76de..b6b35a6 100644 --- a/src/TraitExpressionBuilder.ts +++ b/src/TraitExpressionBuilder.ts @@ -84,7 +84,15 @@ class TraitExpressionBuilder< } expresses< - const T extends Trait[] + const T extends Trait< + TraitExpression< + typeof TraitExpression.NullSuperclass, + Trait[] + >, + any, + any, + any + >[] >( ...traits: T ): TraitExpressionBuilder< @@ -97,7 +105,7 @@ class TraitExpressionBuilder< uniq([ ...this.expressionTraits, ...traits.flatMap(trait => [ - ...trait.superExpression.allTraits, + ...trait.superExpression.traits, trait, ]), ]) as [...Traits, ...SpreadSupertraits],