const useStoreA = (payload: any) => Effect.provide(process(payload), StoreA)
const useStoreB = (payload: any) => Effect.provide(process(payload), StoreB)
const caller = (payload: any) => Effect.gen(function* (_) {
const storeToUse = payload.useA ? useStoreA : useStoreB
yield* _(storeToUse(payload))
})
const useStoreA = (payload: any) => Effect.provide(process(payload), StoreA)
const useStoreB = (payload: any) => Effect.provide(process(payload), StoreB)
const caller = (payload: any) => Effect.gen(function* (_) {
const storeToUse = payload.useA ? useStoreA : useStoreB
yield* _(storeToUse(payload))
})