diff --git a/src/effect/schema/class/MobXObservable.ts b/src/effect/schema/class/MobXObservable.ts index 5ebbeb8..bf7b08c 100644 --- a/src/effect/schema/class/MobXObservable.ts +++ b/src/effect/schema/class/MobXObservable.ts @@ -1,13 +1,15 @@ import type { Struct } from "@effect/schema/Schema" import { makeObservable, observable, type CreateObservableOptions } from "mobx" import { mapValues } from "remeda" -import type { Constructor } from "type-fest" +interface MobXObservableInput { + new(...args: any[]): Struct.Type + readonly fields: { readonly [K in keyof Struct.Fields]: Struct.Fields[K] } +} + export function MobXObservable< - This extends Constructor, any> & { - readonly fields: { readonly [K in keyof Struct.Fields]: Struct.Fields[K] } - } + This extends MobXObservableInput >( class_: This, options?: Omit,