33// This file is licensed under the MIT License.
44// License text available at https://opensource.org/licenses/MIT
55
6+ /**
7+ * Facilities to manage artifacts and their dependencies using {@link Context}
8+ * in your Node.js applications. It can be used independent of the LoopBack
9+ * framework.
10+ *
11+ * @remarks
12+ * This package exposes TypeScript/JavaScript APIs and decorators to register
13+ * artifacts, declare dependencies, and resolve artifacts by keys. The
14+ * {@link Context} also serves as an IoC container to support dependency
15+ * injection.
16+ * Context and Binding are the two core concepts. A context is a registry of
17+ * bindings and each binding represents a resolvable artifact by the key.
18+ *
19+ * - Bindings can be fulfilled by a constant, a factory function, a class, or a
20+ * provider.
21+ * - Bindings can be grouped by tags and searched by tags.
22+ * - Binding scopes can be used to control how a resolved binding value is
23+ * shared.
24+ * - Bindings can be resolved synchronously or asynchronously.
25+ * - Provide {@link inject | @inject} and other variants of decorators to
26+ * express dependencies.
27+ * - Support Constructor, property, and method injections.
28+ * - Allow contexts to form a hierarchy to share or override bindings.
29+ *
30+ * @pakageDocumentation
31+ */
32+
633export * from '@loopback/metadata' ;
734export * from './binding' ;
835export * from './binding-config' ;
@@ -22,9 +49,9 @@ export * from './interception-proxy';
2249export * from './interceptor' ;
2350export * from './interceptor-chain' ;
2451export * from './invocation' ;
52+ export * from './json-types' ;
2553export * from './keys' ;
2654export * from './provider' ;
2755export * from './resolution-session' ;
2856export * from './resolver' ;
2957export * from './value-promise' ;
30- export * from './json-types' ;
0 commit comments