import { RendererFactory2 } from '@angular/core';
import { Observable } from 'rxjs';
import { VModalComponent } from '../components/v-modal/modal.component';
import { ModalData } from '../models';
import * as i0 from "@angular/core";
export declare class ModalService {
    rendererFactory2: RendererFactory2;
    private readonly document;
    private readonly _modalUuid$;
    private readonly _modalVisible$;
    private readonly _appearing$;
    private readonly _disappearing$;
    private readonly _appearingDelayMs$;
    private readonly _modalData$;
    private renderer;
    private _carbonModalElements;
    get modalUuid$(): Observable<string>;
    get modalVisible$(): Observable<boolean>;
    get appearing$(): Observable<boolean>;
    get disappearing$(): Observable<boolean>;
    get appearingDelayMs$(): Observable<number>;
    get appearingDelayMs(): number;
    get modalData$(): Observable<any>;
    constructor(rendererFactory2: RendererFactory2, document: Document);
    setCurrentModal(modalComponent: VModalComponent): void;
    setModalData(modalData: ModalData): void;
    clearModalData(): void;
    openModal(modalComponent?: VModalComponent, modalData?: ModalData): void;
    closeModal(callBackFunction?: () => void): void;
    getModalVisible(modalUuid: string): Observable<boolean>;
    setAppearingDelay(appearingDelayMs: number): void;
    private setAppearingTimeout;
    private setDisappearingTimeout;
    private disablePageScroll;
    private overrideCarbonModalStyles;
    private removeOverrideCarbonModalStyles;
    private enablePageScroll;
    static ɵfac: i0.ɵɵFactoryDeclaration<ModalService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ModalService>;
}
//# sourceMappingURL=modal.service.d.ts.map