makeSingleton:{ <T=never>():[T]extends[never] ?"Missing service type — write make<T>()(nsid) / makeSingleton<T>()(nsid)" :<constSextendsstring>(identifier:NsidParam<S>)=>Tag<T,S>; <T,Sextendsstring=string>(identifier:NsidParam<S>):Tag<T,string>; } = ...
Defines a singleton capability: exactly one provider, yield* yields the implementation.
Curried like make (and Effect's Context.Tag/Effect.Service): makeSingleton<T>()(nsid);
the single-call makeSingleton<T>(nsid) is the same transitional shim. Validated via DXN.Name.
Type declaration
<T=never>():[T]extends[never] ?"Missing service type — write make<T>()(nsid) / makeSingleton<T>()(nsid)" :<constSextendsstring>(identifier:NsidParam<S>)=>Tag<T,S>
Type Parameters
T = never
Returns [T]extends[never] ?"Missing service type — write make<T>()(nsid) / makeSingleton<T>()(nsid)" :<constSextendsstring>(identifier:NsidParam<S>)=>Tag<T,S>
Defines a singleton capability: exactly one provider,
yield*yields the implementation. Curried like make (and Effect'sContext.Tag/Effect.Service):makeSingleton<T>()(nsid); the single-callmakeSingleton<T>(nsid)is the same transitional shim. Validated via DXN.Name.