You are viewing documentation for a previous version of FAST. The latest version is 3.x. View latest docs →

@microsoft/fast-element/di.js > DI

DI variable

The gateway to dependency injection APIs.

Signature:

DI: Readonly<{
    installAsContextRequestStrategy(fallback?: () => DOMContainer): void;
    createContainer(config?: Partial<ContainerConfiguration>): Container;
    findResponsibleContainer(target: EventTarget, fallback?: () => DOMContainer): DOMContainer;
    findParentContainer(target: EventTarget, fallback?: () => DOMContainer): DOMContainer;
    getOrCreateDOMContainer(target?: EventTarget, config?: Partial<Omit<ContainerConfiguration, "parentLocator">>): DOMContainer;
    getDependencies(Type: Constructable | Injectable): Key[];
    defineProperty(target: {}, propertyName: string, key: Key, respectConnection?: boolean): void;
    createContext: typeof createContext;
    inject(...dependencies: Key[]): (target: any, key?: string | number, descriptor?: PropertyDescriptor | number) => void;
    transient<T extends Constructable>(target: T & Partial<RegisterSelf<T>>): T & RegisterSelf<T>;
    singleton<T extends Constructable>(target: T & Partial<RegisterSelf<T>>, options?: SingletonOptions): T & RegisterSelf<T>;
}>