This commit is contained in:
@@ -10,8 +10,12 @@ import { AbstractClass, Opaque, UnionToIntersection } from "type-fest"
|
|||||||
export type StaticMembers<C> = Pick<C, keyof C>
|
export type StaticMembers<C> = Pick<C, keyof C>
|
||||||
|
|
||||||
|
|
||||||
export type Trait<C extends AbstractClass<any, any>> =
|
export type Trait<
|
||||||
Opaque<(Parent: AbstractClass<any, any[]>) => C, "Trait">
|
C extends AbstractClass<any, any>
|
||||||
|
> = Opaque<
|
||||||
|
(Parent: AbstractClass<any, any[]>) => C,
|
||||||
|
"Trait"
|
||||||
|
>
|
||||||
|
|
||||||
export type GetTraitC<T> =
|
export type GetTraitC<T> =
|
||||||
T extends Trait<infer C>
|
T extends Trait<infer C>
|
||||||
@@ -54,7 +58,6 @@ export function extendsAndExpresses<
|
|||||||
> &
|
> &
|
||||||
|
|
||||||
StaticMembers<C> &
|
StaticMembers<C> &
|
||||||
|
|
||||||
StaticMembers<
|
StaticMembers<
|
||||||
UnionToIntersection<
|
UnionToIntersection<
|
||||||
GetTraitC<
|
GetTraitC<
|
||||||
|
|||||||
Reference in New Issue
Block a user