import { ElementRef, EventEmitter, Injector } from '@angular/core';
import { ActionItem } from '../actions';
import { CoreBaseComponent } from '../common/base.component';
import * as i0 from "@angular/core";
/**
 *
 * @smeDoc {@label Context-Menu @id sme-context-menu}
 *
 * @overview
 * @file {@filepath ./examples/context-menu-overview.md}
 *
 * @example {@label Basic Usage @id sme-dev-guide-controls-context-menu}
 * @file {@filename component.html @filepath ./examples/context-menu-example.component.html}
 * @file {@filename component.ts @filepath ./examples/context-menu-example.component.ts}
 *
 * @example {@label Nested Actions Usage @id sme-nested-actions-guide}
 * @file {@filename component.html @filepath ./examples/nested-context-menu-example.component.html}
 * @file {@filename component.ts @filepath ./examples/context-menu-example.component.ts}
 */
export declare class ContextMenuComponent extends CoreBaseComponent {
    private element;
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    /**
     * Gets the items to display in the contextmenu -they should of type actionItem
    */
    contextMenuItems: ActionItem[];
    /**
     * Gets the mouse right-click event for positioning
    */
    mouseEventData: MouseEvent;
    /**
     * Target data model for app bar passed to all contained actions when any action executes or app bar changes states
     * (e.g. on enabled/disabled)
     */
    target: any;
    /**
     *Takes in a function that is executed once an actionItem is clicked
    */
    contextMenuItemClick: EventEmitter<any>;
    /**
     * Value that toggles the contextmenu
    */
    isOpen: boolean;
    constructor(injector: Injector, element: ElementRef);
    /**
     * Function that does the positioning of the contextmenu depending on the right-click
    */
    getMenuPosition(): {
        top: string;
        left: string;
    };
    /**
     * Function that adds focus to the element when using the keyboard
    */
    autoFocus(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ContextMenuComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ContextMenuComponent, "sme-context-menu", never, { "contextMenuItems": "contextMenuItems"; "mouseEventData": "mouseEventData"; "target": "target"; }, { "contextMenuItemClick": "contextMenuItemClick"; }, never, ["*"], false, never>;
}
