import { EventEmitter } from 'events'; import { ComponentType, ReactElement, ReactNode } from 'react'; import { OmitValueOfKey } from 'tslang'; import { EscKeyService } from '../../../core'; import { ContextualPopoverHandlers, ContextualPopupContentProps, ContextualShowOptions, IContextualPopupService } from './contextual-popup.doc'; export interface ContextualPopupService { on(event: 'show', listener: () => void): this; emit(event: 'show'): boolean; } export declare class ContextualPopupService extends EventEmitter implements IContextualPopupService { private escKeyService; private lastPopupId; private readonly popupInfoSet; private mask; readonly container: HTMLElement; constructor(escKeyService: EscKeyService); readonly active: boolean; readonly popups: ReactNode[]; show(name: string, content: ReactElement>> | ComponentType>>, context: HTMLElement, options?: ContextualShowOptions): Promise; toggle(name: string, content: ReactElement>> | ComponentType>>, context: HTMLElement, options?: OmitValueOfKey): Promise; clearAll(): void; createPopoverHandlers(name: string, content: ReactElement>>, options?: OmitValueOfKey): ContextualPopoverHandlers; private clearMatching; private _show; private ensureMask; private clear; private listenDocumentScroll; private listenDocumentClick; private listenWindowResize; }