diff --git a/src/ZodSchemaClass.ts b/src/ZodSchemaClass.ts index 1bc86c4..bb9e065 100644 --- a/src/ZodSchemaClass.ts +++ b/src/ZodSchemaClass.ts @@ -140,7 +140,7 @@ export interface ZodSchemaClassBuilder< // \/ Ensures `extends` can only be called once at the beginning this: ZodSchemaClassBuilder, superclass: Super, - ): InstanceType> + ): ZodSchemaClassBuilder expresses< const T extends readonly Trait< @@ -158,4 +158,21 @@ export interface ZodSchemaClassBuilder< Superclass, TraitExpressionBuilder.ExpressesReturnTypeTraits > + + expressesFirst< + const T extends readonly Trait< + TraitExpression< + typeof TraitExpression.NullSuperclass, + readonly Trait[] + >, + any, + any, + any + >[] + >( + ...traits: T + ): ZodSchemaClassBuilder< + Superclass, + TraitExpressionBuilder.ExpressesFirstReturnTypeTraits + > }