import type { Container } from '@chubbyts/chubbyts-dic-types/dist/container';
import type { ConcreteContainer } from '@chubbyts/chubbyts-dic/dist/container';
type ContainerByConfigFactory = (concreteContainer?: ConcreteContainer) => ConcreteContainer;
export type ConfigFactory = (container: Container, name: string) => unknown;
export type ConfigDelegator = (container: Container, name: string, factory: () => unknown) => unknown;
type Config = {
    dependencies?: {
        services?: Map<string, unknown>;
        factories?: Map<string, ConfigFactory>;
        aliases?: Map<string, string>;
        delegators?: Map<string, Array<ConfigDelegator>>;
    };
    [x: string]: unknown;
};
export declare const createContainerByConfigFactory: (config: Config) => ContainerByConfigFactory;
export {};
