@elsikora/cladi
Version:
Zero-dependency TypeScript DI toolkit with typed tokens and scoped lifecycles.
37 lines • 1.65 kB
TypeScript
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