TraitExpression work
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Julien Valverdé
2024-02-19 01:11:22 +01:00
parent 40eaa80eb6
commit 34c91707ae
3 changed files with 44 additions and 37 deletions

View File

@@ -1,4 +1,4 @@
import { AbstractClass, Class, Simplify } from "type-fest"
import { AbstractClass, Simplify } from "type-fest"
import { Trait, Traits } from "./Trait"
import { TraitExpression } from "./TraitExpression"
import { ExtendPlain, StaticMembers } from "./util"
@@ -37,7 +37,7 @@ export class TraitBuilder<
>,
Abstract extends object,
StaticAbstract extends object,
ImplClass extends Class<object, []>,
ImplClass extends AbstractClass<object, []>,
> {
constructor(
private readonly traitSuperExpression: SuperExpression,
@@ -85,7 +85,7 @@ export class TraitBuilder<
this.traitStaticAbstract,
apply as unknown as (Super: AbstractClass<object>) => (
Class< // TODO: use abstract class instead
AbstractClass<
Simplify<
Omit<
InstanceType<ImplClassWithAbstract>,