vsavkin 6f4a39c337 refactor(di): removed @Parent
BREAKING CHANGE
    The @Parent annotation has been removed. Use @Ancestor instead.
    @Parent was used to enforce a particular DOM structure (e.g., a pane component is a direct child of the tabs component).
    DI is not the right mechanism to do it. We should enforce it using schema instead.
2015-07-21 14:39:28 -07:00

46 lines
1.1 KiB
TypeScript

/**
* @module
* @description
* The `di` module provides dependency injection container services.
*/
export {
InjectMetadata,
OptionalMetadata,
InjectableMetadata,
VisibilityMetadata,
SelfMetadata,
AncestorMetadata,
UnboundedMetadata,
DependencyMetadata,
DEFAULT_VISIBILITY
} from './src/di/metadata';
// we have to reexport * because Dart and TS export two different sets of types
export * from './src/di/decorators';
export {forwardRef, resolveForwardRef, ForwardRefFn} from './src/di/forward_ref';
export {
Injector,
ProtoInjector,
BindingWithVisibility,
DependencyProvider,
PUBLIC_AND_PRIVATE,
PUBLIC,
PRIVATE,
undefinedValue
} from './src/di/injector';
export {Binding, BindingBuilder, ResolvedBinding, Dependency, bind} from './src/di/binding';
export {Key, KeyRegistry, TypeLiteral} from './src/di/key';
export {
NoBindingError,
AbstractBindingError,
AsyncBindingError,
CyclicDependencyError,
InstantiationError,
InvalidBindingError,
NoAnnotationError,
OutOfBoundsError
} from './src/di/exceptions';
export {OpaqueToken} from './src/di/opaque_token';