Skip to content

DI Bag API / index / ModulePublicProviders

Type Alias: ModulePublicProviders<R extends Registrations, P extends keyof R> ​

ts
type ModulePublicProviders<R extends Registrations, P extends keyof R> = [Extract<P, symbol>] extends [never] ? {
    [K in P]: SealedProvider<R, P, R[K]>;
} : [Extract<P, string>] extends [never] ? SymbolProviders<R, P> : {
    [K in Extract<P, string>]: SealedProvider<R, P, R[K]>;
} & SymbolProviders<R, P>;

Defined in: module-types.ts:152

Project selected module exports to dependency-free providers that keep behavioral contracts. The conditional answer carries no alias, so declarations print the providers directly.

Type Parameters ​

Type ParameterDescription
R-
P-

See ​

https://dany-fedorov.github.io/di-bag/guides/api-reference.html#provider-and-module-projections

Ordinary services. Checked composition. Explicit ownership.