import { Context, Effect, Layer } from "effect" interface MyService { readonly value: T } const MyServiceAnyTag = Context.GenericTag>("MyService") const MyServiceStringTag = Context.GenericTag>("MyService") declare const MyServiceAnyLayer: Layer.Layer> declare const MyServiceStringLayer: Layer.Layer> const prg = Effect.gen(function*() { yield* MyServiceAnyTag yield* MyServiceStringTag }).pipe( Effect.provide(MyServiceStringLayer) )