import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
import { CdkOverlayOrigin, OverlayContainer } from '@angular/cdk/overlay';
import { ChangeDetectorRef, ElementRef, EventEmitter } from '@angular/core';
import { DejaConnectionPositionPair, Destroy, MediaService } from '@deja-js/component/core';
import * as i0 from "@angular/core";
export declare class DejaOverlayComponent extends Destroy {
    private changeDetectorRef;
    private elementRef;
    private overlayContainer;
    overlayBackdropClass: string;
    overlayContainerClass: string;
    /** Déclenché lorsque la visibilité du dialog change. */
    readonly visibleChange: EventEmitter<boolean>;
    /** Déclenché lorsque l'overlay est fermé. */
    readonly closed: EventEmitter<boolean>;
    /** Internal use */
    overlayOffsetX: number;
    overlayOffsetY: number;
    /** Overlay pane containing the options. */
    private overlay;
    overlayOrigin: CdkOverlayOrigin;
    /** Renvoie une valeur qui indique si le dialog est affiché. */
    private _isVisible;
    get isVisible(): BooleanInput;
    set isVisible(value: BooleanInput);
    private _hasBackdrop;
    private _width;
    private _widthForMobile;
    private _ownerElement;
    set hasBackdrop(value: BooleanInput);
    get hasBackdrop(): BooleanInput;
    /** Renvoie ou définit l'élement sur lequel le menu devra s'aligner */
    set ownerElement(value: HTMLElement);
    private _positions;
    private _positionsForMobile;
    private _isMobile;
    private disableMediaService;
    constructor(changeDetectorRef: ChangeDetectorRef, elementRef: ElementRef, overlayContainer: OverlayContainer, mediaService: MediaService);
    get positionPairs(): DejaConnectionPositionPair[];
    get positions(): string | DejaConnectionPositionPair[];
    set positions(value: DejaConnectionPositionPair[] | string);
    /** Si pas null, sera utilisé quand isMobile est vrai. Si null et si isMobile est vrai,
     *  alors c'est la valeur 'start top start top' qui est utilisée.
     * */
    set positionsForMobile(value: DejaConnectionPositionPair[] | string);
    get isMobile(): BooleanInput;
    set isMobile(value: BooleanInput);
    get width(): NumberInput;
    set width(width: NumberInput);
    get widthForMobile(): string;
    set widthForMobile(widthForMobile: string);
    get overlayWidth(): NumberInput;
    updatePosition(): void;
    /** Affiche le dialog. */
    show(eventOrOffsetX: MouseEvent | number, offsetY?: number): void;
    /** Ferme le dialog. */
    close(): void;
    private updateOriginOverlay;
    static ɵfac: i0.ɵɵFactoryDeclaration<DejaOverlayComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DejaOverlayComponent, "deja-overlay", never, { "overlayBackdropClass": "overlayBackdropClass"; "overlayContainerClass": "overlayContainerClass"; "overlayOffsetX": "overlayOffsetX"; "overlayOffsetY": "overlayOffsetY"; "isVisible": "isVisible"; "hasBackdrop": "hasBackdrop"; "ownerElement": "ownerElement"; "positions": "positions"; "positionsForMobile": "positionsForMobile"; "isMobile": "isMobile"; "width": "width"; "widthForMobile": "widthForMobile"; }, { "visibleChange": "visibleChange"; "closed": "closed"; }, never, ["*"]>;
}
