import { Nullable } from '@fundamental-ngx/cdk/utils';
import { MenuComponent } from '@fundamental-ngx/core/menu';
import { Placement, PopoverFillMode } from '@fundamental-ngx/core/shared';
import { ShellbarMenuItem } from '../model/shellbar-menu-item';
import * as i0 from "@angular/core";
/**
 * The component that represents a product menu.
 * Product menu is used for navigating to applications within the product.
 * ```html
 * <fd-product-menu [control]="productMenuControl"
 *                  [items]="productMenuItems">
 * </fd-product-menu>
 * ```
 */
export declare class ProductMenuComponent {
    /** Whether the popover should close when the escape key is pressed. */
    closeOnEscapeKey: boolean;
    /** Whether the popover should close when a click is made outside its boundaries. */
    closeOnOutsideClick: boolean;
    /** The trigger events that will open/close the popover.
     *  Accepts any [HTML DOM Events](https://www.w3schools.com/jsref/dom_obj_event.asp). */
    triggers: string[];
    /** The placement of the popover. It can be one of: top, top-start, top-end, bottom,
     *  bottom-start, bottom-end, right, right-start, right-end, left, left-start, left-end. */
    placement: Placement;
    /** Whether the popover is disabled. */
    disabled: boolean;
    /**
     * Preset options for the popover body width.
     * * `at-least` will apply a minimum width to the body equivalent to the width of the control.
     * * `equal` will apply a width to the body equivalent to the width of the control.
     * * Leave blank for no effect.
     */
    fillControlMode: Nullable<PopoverFillMode>;
    /**
     * The control element to toggle the product menu,
     * represented by the name of the current application.
     */
    control: string;
    /**
     *  The items in the product menu. If the value is not passed or there is empty array,
     * the template changes and shows only control
     */
    items: ShellbarMenuItem[];
    /** When set to true, popover list will be closed after selecting the option */
    closePopoverOnSelect: boolean;
    /** @hidden */
    menu: MenuComponent;
    /** @hidden */
    itemClicked(item: ShellbarMenuItem, event: MouseEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ProductMenuComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ProductMenuComponent, "fd-product-menu", never, { "closeOnEscapeKey": { "alias": "closeOnEscapeKey"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; "triggers": { "alias": "triggers"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "fillControlMode": { "alias": "fillControlMode"; "required": false; }; "control": { "alias": "control"; "required": false; }; "items": { "alias": "items"; "required": false; }; "closePopoverOnSelect": { "alias": "closePopoverOnSelect"; "required": false; }; }, {}, never, never, true, never>;
}
