import { ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, Injector, IterableDiffers, OnDestroy, Type, ViewRef } from '@angular/core'; import { DashComponentInjector } from '../component-injector'; import { InputsType, IoFactoryService, OutputsType } from '../io'; import { WindowRefService } from '../window-ref'; import * as i0 from "@angular/core"; export interface DynamicDirectiveDef { type: Type; inputs?: InputsType; outputs?: OutputsType; } export declare function dynamicDirectiveDef(type: Type, inputs?: InputsType, outputs?: OutputsType): DynamicDirectiveDef; export interface DirectiveRef { instance: T; type: Type; injector: Injector; hostComponent: Type; hostView: ViewRef; location: ElementRef; changeDetectorRef: ChangeDetectorRef; onDestroy: (callback: Function) => void; } export declare class DynamicDirectivesDirective implements OnDestroy, DoCheck { private iterableDiffers; private ioFactoryService; private windowRef; private componentInjector?; dashDynamicDirectives: DynamicDirectiveDef[]; ngComponentOutletDashDynamicDirectives: DynamicDirectiveDef[]; dashDynamicDirectivesCreated: EventEmitter[]>; private lastCompInstance; private get directives(); private get componentRef(); private get compInstance(); private get isCompChanged(); private get hostInjector(); private get hostVcr(); private get reflect(); private dirRef; private dirIo; private dirsDiffer; constructor(iterableDiffers: IterableDiffers, ioFactoryService: IoFactoryService, windowRef: WindowRefService, componentInjector?: DashComponentInjector); ngDoCheck(): void; ngOnDestroy(): void; private maybeDestroyDirectives; private processDirChanges; private updateDirectives; private updateDirective; private initDirective; private destroyAllDirectives; private destroyDirective; private initDirIO; private dirToCompDef; private destroyDirRef; private createDirective; private resolveDirParamTypes; private callInitHooks; private callHook; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }