import { EnvironmentInjector, Injector, OnChanges, OnDestroy, SimpleChanges, Type, ViewContainerRef } from '@angular/core';
import * as i0 from "@angular/core";
/**
 * Simplified version of [NgComponentOutlet](https://github.com/angular/angular/blob/main/packages/common/src/directives/ng_component_outlet.ts)
 *
 * In contrast to NgComponentOutlet it allows to set the environment injector.
 *
 * A [PR](https://github.com/angular/angular/pull/54764) has been raised to add that functionality in Angular.
 *
 * TODO: Remove this directive once the PR is merged.
 */
export declare class C8yComponentOutlet implements OnChanges, OnDestroy {
    private __viewContainerRef;
    c8yComponentOutlet: Type<any> | null;
    c8yComponentOutletInjector?: Injector;
    c8yComponentOutletEnvironmentInjector?: EnvironmentInjector;
    private _componentRef;
    private environment;
    constructor(__viewContainerRef: ViewContainerRef);
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    private _needToReCreateComponentInstance;
    static ɵfac: i0.ɵɵFactoryDeclaration<C8yComponentOutlet, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<C8yComponentOutlet, "[c8yComponentOutlet]", never, { "c8yComponentOutlet": { "alias": "c8yComponentOutlet"; "required": false; }; "c8yComponentOutletInjector": { "alias": "c8yComponentOutletInjector"; "required": false; }; "c8yComponentOutletEnvironmentInjector": { "alias": "c8yComponentOutletEnvironmentInjector"; "required": false; }; }, {}, never, never, true, never>;
}
//# sourceMappingURL=component-outlet.directive.d.ts.map