import { EventEmitter } from '@angular/core';
export declare class ClickOutsideDirective {
    constructor();
    private elementIsActive;
    containerElements: any[];
    manuallyActiveElement: boolean;
    clickOutside: EventEmitter<{}>;
    manuallyActiveElementUsed: EventEmitter<{}>;
    /**
     * Mouse click event whose target will either be inside or outside of the containing element(s).
     * @param $event mouse click event
     */
    onClick($event: MouseEvent): void;
    elementIsClicked(): void;
    elementIsFocus(): void;
    elementIsChanged(): void;
    /**
     * Keyboard event to handle closing.
     * @param $event keyboard event to be handled.
     */
    keyboardInput($event: KeyboardEvent): void;
    /**
     * Handle events and check if we should close element.
     * @param inputEvent Can be MouseClick or keyboard event etc.
     */
    private handleEvent(inputEvent);
    /**
     * See whether the specified element is visible.
     * @param el HTML element being checked
     */
    private isVisible(el);
    /**
     * See whether the clicked element is in any of the specified container elements.
     * @param clickedElement HTML element that was clicked
     */
    private checkIfClickedInside(clickedElement);
}
export declare class ndClickOutsideModule {
}
