import { Provider } from './provider'; import { Injector } from './injector'; import { Self, SkipSelf } from './metadata'; import { ProvideScope } from './injectable'; export interface ReflectiveDependency { injectKey: any; visibility: SkipSelf | Self; optional: boolean; } export interface NormalizedProvider { provide: any; generateFactory: (injector: Injector, cacheFn: (token: any, value: any) => void) => (...args: any[]) => any; deps: ReflectiveDependency[]; scope: ProvideScope; } /** * 标准化 provide,并返回统一数据结构 * @param provider */ export declare function normalizeProvider(provider: Provider): NormalizedProvider;