diff --git a/src/effect.ts b/src/effect.ts index 2602d5b..4ef1242 100644 --- a/src/effect.ts +++ b/src/effect.ts @@ -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[], @@ -19,20 +19,19 @@ export function extendsEffectSchemaExpression< > ) { return (): ( - AbstractClass< - InstanceType< - S.Class - > & + S.Class< + Self, + Fields, + A, I, R, C, Simplify< - Extend> + Extend<[ + Inherited, + ...TraitTuple.MapImplInstance + ]> >, - - ConstructorParameters> + Proto > & - StaticMembers< - S.Class - > & Simplify< Extend> >