import { ComponentType, Overlay, OverlayContainer } from '@angular/cdk/overlay'; import { InjectionToken, Injector, OnDestroy, TemplateRef, Type } from '@angular/core'; import { Observable, Subject } from 'rxjs'; import { BaoModalConfig } from './modal-config'; import { _BaoModalContainerBase, BaoModalContainer } from './modal-container'; import { BaoModalRef } from './modal-ref'; import * as i0 from "@angular/core"; /** Injection token that can be used to access the data that was passed in to a modal. */ export declare const BAO_MODAL_DATA: InjectionToken; export declare abstract class BaoModalBase implements OnDestroy { private _overlay; private _injector; private _parentModal; private _overlayContainer; private _modalRefConstructor; private _modalContainerType; private _modalDataToken; readonly afterAllClosed: Observable; private _openModalsAtThisLevel; private readonly _afterAllClosedAtThisLevel; private readonly _afterOpenedAtThisLevel; private _ariaHiddenElements; private _modalAnimatingOpen; private _animationStateSubscriptions; private _lastModalRef; constructor(_overlay: Overlay, _injector: Injector, _parentModal: BaoModalBase | undefined, _overlayContainer: OverlayContainer, _modalRefConstructor: Type>, _modalContainerType: Type, _modalDataToken: InjectionToken); /** Keeps track of the currently-open modals. */ get openModals(): BaoModalRef[]; /** Stream that emits when a modal has been opened. */ get afterOpened(): Subject>; getAfterAllClosed(): Subject; /** * Opens a modal modal containing the given template. */ open(componentOrTemplateRef: ComponentType | TemplateRef, config?: BaoModalConfig): BaoModalRef; /** * Closes all of the currently-open modals. */ closeAll(): void; /** * Finds an open modal by its id. */ getModalById(id: string): BaoModalRef | undefined; ngOnDestroy(): void; /** * Creates the overlay into which the modal will be loaded. */ private _createOverlay; /** * Creates an overlay config from a modal config. */ private _getOverlayConfig; /** * Attaches a modal container to a modal's already-created overlay. */ private _attachModalContainer; /** * Attaches the user-provided component to the already-created modal container. */ private _attachModalContent; /** * Creates a custom injector to be used inside the modal. This allows a component loaded inside * of a modal to close itself and, optionally, to return a value. */ private _createInjector; /** * Removes a modal from the array of open modals. */ private _removeOpenModal; /** * Hides all of the content that isn't an overlay from assistive technology. */ private _hideNonModalContentFromAssistiveTechnology; /** Closes all of the modals in an array. */ private _closeModals; /** * Applies default options to the modal config. */ private _applyConfigDefaults; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵdir: i0.ɵɵDirectiveDeclaration, never, never, {}, {}, never, never, false, never>; } /** * Service to open modal. */ export declare class BaoModal extends BaoModalBase { constructor(overlay: Overlay, injector: Injector, parentModal: BaoModal, overlayContainer: OverlayContainer); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }