UNPKG

@orchestrator/core

Version:
44 lines (43 loc) 1.51 kB
import { InjectFlags, InjectionToken, Injector, Provider, Type } from '@angular/core'; import { InjectorMap } from '../types'; import * as i0 from "@angular/core"; export interface InjectorMapToken extends Array<InjectorMap> { } /** * Multi-provider of {@link InjectorMap} */ export declare const INJECTOR_MAP_TOKEN: InjectionToken<InjectorMapToken>; /** * Helper to provide {@link INJECTOR_MAP_TOKEN} */ export declare function provideInjectorMap(map: InjectorMap): Provider; /** * Maps tokens to other tokens and then executes parent injector. * * NOT a Service! * Use via {@link MappedInjectorFactory} */ export declare class MappedInjector implements Injector { private parent; private injectorMaps; private injectorMap; constructor(parent: Injector, injectorMaps: InjectorMapToken); get<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): T; get(token: any, notFoundValue?: any, flags?: InjectFlags): any; private mapToken; private maybeInitInjectorMap; private processToken; } /** * Factory for {@link MappedInjector} */ export declare class MappedInjectorFactory { private injectorMap; constructor(injectorMap: InjectorMapToken); /** * Creates MappedInjector with parent injector and {@link INJECTOR_MAP_TOKEN} from DI */ create(parent: Injector): Injector; static ɵfac: i0.ɵɵFactoryDeclaration<MappedInjectorFactory, never>; static ɵprov: i0.ɵɵInjectableDeclaration<MappedInjectorFactory>; }