import { Compiler, SimpleChanges, ViewContainerRef, OnDestroy } from '@angular/core';
import { DynamicComponentOptions } from './options';
/**
* DynamicComponent is a directive to create dynamic component.
*
* Example:
*
* ```ts
* @Component({
* selector: 'my-app',
* template: `
*
* `
* })
* export class AppComponent {
* self = this;
*
* template = `
* `;
* }
* ```
*
* Result:
*
* ```html
*
*
*
* ```
*
*/
export declare class DynamicComponentDirective implements OnDestroy {
private options;
private vcRef;
private compiler;
template: string;
selector: string;
context: any;
private component;
private moduleType;
private cmpType;
constructor(options: DynamicComponentOptions, vcRef: ViewContainerRef, compiler: Compiler);
private createComponentType();
private createNgModuleType(componentType);
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
}