import { ModuleWithProviders, Provider } from '@angular/core';
import { ComponentRegistry } from './component-map';
import { OrchestratorDynamicComponentType } from './types';
import * as i0 from "@angular/core";
import * as i1 from "./orchestrator/orchestrator.component";
import * as i2 from "./render-item/render-item.component";
import * as i3 from "@angular/common";
import * as i4 from "ng-dynamic-component";
export declare class OrchestratorCoreModule {
    /**
     * Use this to import module in root application only once
     */
    static forRoot(): ModuleWithProviders<OrchestratorCoreModule>;
    /**
     * Use this to import module with components in root application only once
     */
    static withComponents(components: ComponentRegistry<OrchestratorDynamicComponentType>): ModuleWithProviders<OrchestratorCoreModule>;
    /**
     * Use this to provide custom components for {@link OrchestratorCoreModule}
     */
    static registerComponents(components: ComponentRegistry<OrchestratorDynamicComponentType>): Provider[];
    private static getRootProviders;
    static ɵfac: i0.ɵɵFactoryDeclaration<OrchestratorCoreModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<OrchestratorCoreModule, [typeof i1.OrchestratorComponent, typeof i2.RenderItemComponent], [typeof i3.CommonModule, typeof i4.DynamicModule, typeof i4.DynamicAttributesModule, typeof i4.DynamicDirectivesModule], [typeof i1.OrchestratorComponent, typeof i2.RenderItemComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<OrchestratorCoreModule>;
}
