import { ApplicationRef, EnvironmentInjector, Injector, OnDestroy, TemplateRef } from '@angular/core';
import { Router } from '@angular/router';
import { DokuBackdropService } from '../backdrop/backdrop.service';
import { DokuModalRef } from './modal-ref';
import { ComponentType, DokuModalConfig } from './modal.interface';
import * as i0 from "@angular/core";
export declare class DokuModalService implements OnDestroy {
    private envInjector;
    private appRef;
    private document;
    private backdropService;
    private injector;
    private router;
    protected modalRefs: DokuModalRef<unknown>[];
    private destroy$;
    constructor(envInjector: EnvironmentInjector, appRef: ApplicationRef, document: Document, backdropService: DokuBackdropService, injector: Injector, router: Router);
    ngOnDestroy(): void;
    open<T>(componentOrTemplateRef: ComponentType<T> | TemplateRef<T>, config?: DokuModalConfig): DokuModalRef<T>;
    closeAll(): void;
    protected close(modalRef: DokuModalRef<unknown>): void;
    /**
     * @returns Normalized DokuModalConfig
     */
    private setViewByConfig;
    static ɵfac: i0.ɵɵFactoryDeclaration<DokuModalService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DokuModalService>;
}
