import { ApplicationRef, ComponentRef, EmbeddedViewRef, EnvironmentInjector, Injector, TemplateRef } from '@angular/core';
import { DokuBackdropRef } from '../backdrop/backdrop-ref';
import { DokuBackdropService } from '../backdrop/backdrop.service';
import { DokuActiveModal } from './modal-ref';
import { ComponentType } from './modal.interface';
export declare class ViewElement {
    static createElement<T>(content: ComponentType<T> | TemplateRef<T>, props: {
        environmentInjector: EnvironmentInjector;
        applicationRef: ApplicationRef;
        injector: Injector;
        document: Document;
        activeModal: DokuActiveModal;
    }): {
        element: {
            portal: HTMLDivElement;
            modal: HTMLDivElement;
            modalContent: HTMLDivElement;
        };
        content: {
            componentRef: ComponentRef<T> | undefined;
            templateRef: EmbeddedViewRef<T> | undefined;
        };
    };
    private static createModalElement;
    private static createModalContentElement;
    private static createPortalElement;
    static appendToBody(view: ReturnType<typeof this.createElement>, props: {
        backdropService: DokuBackdropService;
        document: Document;
    }): {
        backdropRef: DokuBackdropRef;
    };
    static removeFromBody(view: ReturnType<typeof this.createElement>, props: {
        backdropService: DokuBackdropService;
        document: Document;
        backdropRef?: DokuBackdropRef;
    }): void;
}
