import { CdkPortalOutlet, Portal, DomPortal } from '@angular/cdk/portal'; import * as i0 from '@angular/core'; import { ElementRef, ComponentFactoryResolver, ViewContainerRef } from '@angular/core'; /** * @summary PortalDirective is a utility that lets you portal the host element into another DOM element. * This is designed to be beneficial when there's issues with the stacking context. * * Extends CdkPortalOutlet to gain functionality for attaching/detaching the host element, and for proper cleanup. * * Using portal directive to reposition HTML elements, might break angular functionality and/or styling, so use * with care. */ declare class PortalDirective extends CdkPortalOutlet { private elementRef; private componentFactoryResolver; private viewContainerRef; private _outlet; /** The DOM element for which the host element should be appended as a child. */ set outlet(outlet: HTMLElement | undefined); get outlet(): HTMLElement | undefined; /** * Override portal to handle if user provides a portal of another type than DOMPortal, which CdkPortal would * otherwise allow. This can be modified to handle other portal types in the future, should the need arise */ set portal(portal: Portal | null); constructor(elementRef: ElementRef, componentFactoryResolver: ComponentFactoryResolver, viewContainerRef: ViewContainerRef); /** * Nearly identical to super class, yet we want to use provided outlet instead of directive host as new content * parent which is otherwise the default for CdKPortal */ attachDomPortal: (portal: DomPortal) => void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export { PortalDirective }; //# sourceMappingURL=kirbydesign-designsystem-shared-portal.d.ts.map