import { ComponentRef, EnvironmentInjector, EventEmitter, Injector, NgModuleRef, OnChanges, SimpleChanges, StaticProvider, Type, ViewContainerRef } from '@angular/core';
import { DynamicComponentInjector } from './component-injector';
import * as i0 from "@angular/core";
/**
 * @public
 */
export declare class DynamicComponent<C = unknown> implements OnChanges, DynamicComponentInjector {
    private vcr;
    private static UpdateOnInputs;
    ndcDynamicComponent?: Type<C> | null;
    ndcDynamicInjector?: Injector | null;
    ndcDynamicProviders?: StaticProvider[] | null;
    ndcDynamicContent?: Node[][];
    ndcDynamicNgModuleRef?: NgModuleRef<unknown>;
    ndcDynamicEnvironmentInjector?: EnvironmentInjector | NgModuleRef<unknown>;
    ndcDynamicCreated: EventEmitter<ComponentRef<C>>;
    componentRef: ComponentRef<C> | null;
    constructor(vcr: ViewContainerRef);
    ngOnChanges(changes: SimpleChanges): void;
    createDynamicComponent(): void;
    private _resolveInjector;
    static ɵfac: i0.ɵɵFactoryDeclaration<DynamicComponent<any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DynamicComponent<any>, "ndc-dynamic", never, { "ndcDynamicComponent": "ndcDynamicComponent"; "ndcDynamicInjector": "ndcDynamicInjector"; "ndcDynamicProviders": "ndcDynamicProviders"; "ndcDynamicContent": "ndcDynamicContent"; "ndcDynamicNgModuleRef": "ndcDynamicNgModuleRef"; "ndcDynamicEnvironmentInjector": "ndcDynamicEnvironmentInjector"; }, { "ndcDynamicCreated": "ndcDynamicCreated"; }, never, never, true>;
}
//# sourceMappingURL=dynamic.component.d.ts.map