UNPKG

@elsikora/cladi

Version:

Zero-dependency TypeScript DI toolkit with typed tokens and scoped lifecycles.

37 lines 1.65 kB
import type { ILogger } from '../../domain/interface/index'; import type { IDIContainer } from '../../domain/type/index'; import type { IConsoleLoggerOptions, ICoreFactoryOptions, IDIContainerOptions } from '../interface/index'; /** * Factory for creating DI infrastructure components. */ export declare class CoreFactory { private readonly LOGGER; /** * Creates a new infrastructure factory. * @param {ICoreFactoryOptions} options - The options to use for the factory. * @see {@link https://elsikora.com/docs/cladi/core-concepts/factory} */ constructor(options: ICoreFactoryOptions); /** * Creates a new factory instance. * Useful for static composition-root bootstrap flows. * @param {ICoreFactoryOptions} options - The options to use for the factory. * @returns {CoreFactory} A new factory instance. * @see {@link https://elsikora.com/docs/cladi/core-concepts/factory} */ static getInstance(options: ICoreFactoryOptions): CoreFactory; /** * Creates a new advanced DI container instance. * @param {IDIContainerOptions} options - The options to use for the DI container. * @returns {IDIContainer} A new advanced DI container. */ createDIContainer(options?: IDIContainerOptions): IDIContainer; /** * Creates a new logger instance. * @param {IConsoleLoggerOptions} options - The options to use for the logger. * @returns {ILogger} A new logger instance. * @see {@link https://elsikora.com/docs/cladi/services/logging} */ createLogger(options: IConsoleLoggerOptions): ILogger; } //# sourceMappingURL=core.factory.d.ts.map