0.1.20 #20

Merged
Thilawyn merged 12 commits from next into master 2024-05-01 02:51:13 +02:00
Showing only changes of commit a833a96e1a - Show all commits

View File

@@ -1,14 +1,14 @@
import { Schema as S } from "@effect/schema"
import { AbstractClass, Simplify } from "type-fest"
import { Simplify } from "type-fest"
import { Trait, TraitTuple } from "./Trait"
import { TraitExpression } from "./TraitExpression"
import { Extend, StaticMembers } from "./util"
import { Extend } from "./util"
export function extendsEffectSchemaExpression<
Fields extends S.Struct.Fields,
A, I, R, C,
Inherited,
Inherited extends object,
Proto,
const Traits extends readonly Trait<any, any, any, any>[],
@@ -19,20 +19,19 @@ export function extendsEffectSchemaExpression<
>
) {
return <Self>(): (
AbstractClass<
InstanceType<
S.Class<Self, Fields, A, I, R, C, Inherited, Proto>
> &
S.Class<
Self,
Fields,
A, I, R, C,
Simplify<
Extend<TraitTuple.MapImplInstance<Traits>>
Extend<[
Inherited,
...TraitTuple.MapImplInstance<Traits>
]>
>,
ConstructorParameters<S.Class<Self, Fields, A, I, R, C, Inherited, Proto>>
Proto
> &
StaticMembers<
S.Class<Self, Fields, A, I, R, C, Inherited, Proto>
> &
Simplify<
Extend<TraitTuple.MapImplStaticMembers<Traits>>
>