make:{ <T=never>():[T]extends[never] ?"Missing service type — write make<T>()(nsid) / makeSingleton<T>()(nsid)" :<constSextendsstring>(identifier:NsidParam<S>)=>MultiTag<T,S>; <T,Sextendsstring=string>( identifier:NsidParam<S>, ):MultiTag<T,string>; } = ...
Defines a multi (registry) capability — the default: an open registry contributed to by
many modules, yielding a live Contributions collection.
Preferred (curried) form captures the NSID string literal, so the requirement channel stays
precise and portable — the same shape Effect uses for Context.Tag/Effect.Service:
make<T>()('org.dxos…capability'). The service type T is explicit (it cannot be inferred);
the NSID S is inferred as a literal in the second call.
The single-call form make<T>(nsid) is a transitional shim that widens S to string
(identifier stays portable but the requirement check for that capability is coarse); migrate
to the curried form to restore a precise check. Static NSID strings are 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>)=>MultiTag<T,S>
Type Parameters
T = never
Returns [T]extends[never] ?"Missing service type — write make<T>()(nsid) / makeSingleton<T>()(nsid)" :<constSextendsstring>(identifier:NsidParam<S>)=>MultiTag<T,S>
Defines a multi (registry) capability — the default: an open registry contributed to by many modules, yielding a live Contributions collection.
Preferred (curried) form captures the NSID string literal, so the requirement channel stays precise and portable — the same shape Effect uses for
Context.Tag/Effect.Service:make<T>()('org.dxos…capability'). The service typeTis explicit (it cannot be inferred); the NSIDSis inferred as a literal in the second call.The single-call form
make<T>(nsid)is a transitional shim that widensStostring(identifier stays portable but the requirement check for that capability is coarse); migrate to the curried form to restore a precise check. Static NSID strings are validated via DXN.Name.