import React from 'react'; import type { VirtualElement } from '@popperjs/core'; export declare type LayerCloseReason = 'outsideClick' | 'escapeKeyDown'; export interface LayerExtendableProps { disableOutsideClick?: boolean; disableEscapeKeyDown?: boolean; onEscapeKeyDown?: (event: KeyboardEvent) => void; onEnterKeyDown?: (event: KeyboardEvent) => void; onOutsideClick?: (event: MouseEvent) => void; onClose?: (event: MouseEvent | KeyboardEvent, reason: LayerCloseReason) => void; } export declare type ContentElement = Element | (VirtualElement & { contains?: (other: Node | null) => boolean; }); export interface LayerConfig extends LayerExtendableProps { contentRefs?: Array | undefined>; } declare class LayerManager { private stack; private mouseDownTarget; add(config: LayerConfig): void; remove(config: LayerConfig): void; private addListeners; private removeListeners; private handleDocumentKeyDown; private handleDocumentClick; private handleDocumentMouseDown; private getTopLayer; private isOutsideClick; } export declare const layerManager: LayerManager; export {};