From a833a96e1a476daf8b9ed722942dca814d7f1d1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Wed, 1 May 2024 02:37:27 +0200 Subject: [PATCH] extendsEffectSchemaExpression --- src/effect.ts | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) 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> >