UNPKG

2 kBPlain TextView Raw
1import { Module } from './module'
2import { Injector, Injectable, Injected, InjectableAsync, defaultInjector } from './injector';
3
4declare var $$defaultInjector;
5
6if (!global['$$defaultInjector'])
7 global['$$defaultInjector'] = defaultInjector;
8
9
10export function resolve<T = any>(name: string): T
11{
12 return defaultInjector.resolve<T>(name);
13}
14
15export function unregister(name: string)
16{
17 return defaultInjector.unregister(name);
18}
19
20export function merge(i: Injector)
21{
22 return defaultInjector.merge(i);
23}
24
25export function inspect()
26{
27 return defaultInjector.inspect();
28}
29
30export function inject<T>(injectable: Injectable<T>): Injected<T>
31export function inject<T>(...toInject: string[]): (b: TypedPropertyDescriptor<T>) => void
32export function inject<T>(a: string | Injectable<T>, ...b: string[])
33{
34 return defaultInjector.inject(a, ...b);
35}
36
37export function exec<T>(...toInject: string[]): (f: Injectable<T>) => T
38{
39 return defaultInjector.exec(...toInject);
40}
41
42export function injectNew<T>(a: Injectable<T>)
43{
44 return defaultInjector.injectNew(a);
45}
46
47export function injectWithName<T>(toInject: string[], a: Injectable<T>)
48{
49 return defaultInjector.injectWithName(toInject, a);
50}
51
52export function injectNewWithName(toInject: string[], a: Function)
53{
54 return defaultInjector.injectNewWithName(toInject, a);
55}
56
57export function resolveAsync<T = any>(name: string)
58{
59 return defaultInjector.resolveAsync<T>(name)
60}
61
62export function onResolve<T = any>(name: string)
63{
64 return defaultInjector.onResolve<T>(name)
65}
66
67export function injectWithNameAsync<T>(toInject: string[], a: InjectableAsync<T> | Injectable<T>)
68{
69 return defaultInjector.injectWithNameAsync(toInject, a);
70}
71
72export function register<T>(name: string, value: T, override?: boolean)
73{
74 return defaultInjector.register(name, value, override);
75}
76export function registerFactory<T>(name: string, value: () => T, override?: boolean)
77{
78 return defaultInjector.registerFactory(name, value, override);
79}
\No newline at end of file