smart-factory
Version:
functional programming-ready dependancy injector/ioc container library
7 lines (6 loc) • 829 B
TypeScript
import { Candidate, Instantiator, Injectable, ContainerOptions, ContainerLogger } from './types';
export declare const injectableFunc: (srcOpts: ContainerOptions, candidates: Candidate[]) => <T>(key: string, deps: string[], instantiator: Instantiator, multiInstance?: boolean) => Promise<Injectable<T>>;
export declare const readyFunc: (srcOpts: ContainerOptions, logger: ContainerLogger, candidates: Candidate[], instances: Map<string, any>) => () => Promise<void>;
export declare const resolveFunc: (srcOpts: ContainerOptions, instances: Map<string, any>) => <T>(key: string) => T;
export declare const setFunc: (srcOpts: ContainerOptions, instances: Map<string, any>) => <T>(key: string, instance: T) => Map<string, any>;
export declare const clearFunc: (srcOpts: ContainerOptions, instances: Map<string, any>) => () => void;