import { ElementRef, OnDestroy, OnInit, Renderer2, TemplateRef } from '@angular/core';
import { Observable, Subscription } from 'rxjs';
import { ModalContainerDirective } from './modal.directive';
import * as i0 from "@angular/core";
export declare class ModalComponent implements OnInit, OnDestroy {
    private elementRef;
    private renderer;
    private doc;
    id: string;
    showAnimation: boolean;
    /**
     * @deprecated Use showAnimation to replace.
     */
    set showAnimate(isShowAnimate: any);
    width: string;
    zIndex: number;
    backDropZIndex: number;
    backdropCloseable: boolean;
    beforeHidden: () => boolean | Promise<boolean> | Observable<boolean>;
    draggable: boolean;
    placement: 'center' | 'top' | 'bottom';
    offsetX: string;
    offsetY: string;
    bodyScrollable: boolean;
    escapable: boolean;
    modalContainerHost: ModalContainerDirective;
    dialogElement: ElementRef;
    animateState: string;
    draggableHandleEl: HTMLElement;
    scrollTop: number;
    scrollLeft: number;
    documentOverFlow: boolean;
    mouseDwonEl: ElementRef;
    ignoreBackDropClick: boolean;
    pressEscToClose: Subscription;
    contentTemplate: TemplateRef<any>;
    document: Document;
    constructor(elementRef: ElementRef, renderer: Renderer2, doc: any);
    ngOnInit(): void;
    onHidden(): void;
    updateButtonOptions<T>(buttonOptions: Array<T>): void;
    canHideModel(): Promise<boolean>;
    onModalClick: ($event: any) => void;
    modalMouseDown: ($event: any) => void;
    modalMouseUp: ($event: any) => void;
    hide(): void;
    onAnimationEnd($event: any): void;
    show(): void;
    resolveTransformTranslate(): string;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ModalComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ModalComponent, "d-modal", never, { "id": "id"; "showAnimation": "showAnimation"; "showAnimate": "showAnimate"; "width": "width"; "zIndex": "zIndex"; "backDropZIndex": "backDropZIndex"; "backdropCloseable": "backdropCloseable"; "beforeHidden": "beforeHidden"; "draggable": "draggable"; "placement": "placement"; "offsetX": "offsetX"; "offsetY": "offsetY"; "bodyScrollable": "bodyScrollable"; "escapable": "escapable"; }, {}, never, never, false>;
}
