export declare class Drop { private static CLOSE_OTHERS_EVENT; private id; private element; private target; private targetParent; private showEvents; private hideEvents; private appendedEvents; private visible; private placer; private closeOthers; private verticalPos; private horizontalPos; private hideHandler; private showHandler; private keepOpen; constructor(element: HTMLElement, target: HTMLElement, targetParent?: boolean); showOn(...events: DropEvent[]): Drop; hideOn(...events: DropEvent[]): Drop; onHide(handler: (drop: Drop) => any): Drop; onShow(handler: (drop: Drop) => any): Drop; placedVerticallyAt(verticalPos: string): Drop; placedHorizontallyAt(horizontalPos: string): Drop; closeOthersWhenVisible(): Drop; handleEvent(event: UIEvent | CustomEvent): void; private actionExecutor; toggle(): void; isVisible(): boolean; show(): void; hide(): void; build(): void; destroy(): void; private eventOnContext; private appendControlEvents; private appendShowEvent; private appendHideEvent; } export declare type DropEvent = "click" | "dblclick" | "mouseover" | "focus" | "contextmenu" | "blur" | "clickoutside" | "mouseleave" | "mouseout";