import * as i0 from '@angular/core';
import { ElementRef, EventEmitter } from '@angular/core';
import { ButtonType } from '@fundamental-ngx/core/button';
import { IconFont } from '@fundamental-ngx/core/icon';
import { BaseComponent } from '@fundamental-ngx/platform/shared';
import * as i2 from '@fundamental-ngx/core/content-density';

/**
 * @deprecated
 * Button component is deprecated. Use `fd-button` from `@fundamental-ngx/core/button` with `@fundamental-ngx/core/menu` instead.
 */
declare class MenuButtonComponent extends BaseComponent {
    _elementRef: ElementRef;
    /** Label for menu button */
    label: string;
    /** text for tooltip */
    title: string;
    /** The Icon to include in the menu-button */
    icon: string;
    /** Glyph font family */
    iconFont: IconFont;
    /** The type of the button. Types include 'standard', 'positive', 'negative', 'transparent', 'attention', 'emphasized', 'ghost'.
     * Leave empty for default.'*/
    type: ButtonType;
    /** Event sent when menu-button is clicked */
    buttonClicked: EventEmitter<MouseEvent | KeyboardEvent | TouchEvent>;
    /** @hidden */
    constructor(_elementRef: ElementRef);
    /**
     * @hidden disabling fd-button does not disables menu button.
     * because menu trigger is on menu-button; menu gets open.
     * to prevent this, need to apply disabled at menu-button level as well.
     */
    get menuButtonDisabled(): boolean;
    /** @hidden tabindex for button. */
    get tabindex(): number;
    /**
     *  Handles menu-button click
     */
    onButtonClick($event: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<MenuButtonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MenuButtonComponent, "fdp-menu-button", never, { "label": { "alias": "label"; "required": false; }; "title": { "alias": "title"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "iconFont": { "alias": "iconFont"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, { "buttonClicked": "buttonClicked"; }, never, ["*"], true, never>;
}

declare class PlatformMenuButtonModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<PlatformMenuButtonModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<PlatformMenuButtonModule, never, [typeof MenuButtonComponent, typeof i2.ContentDensityModule], [typeof MenuButtonComponent, typeof i2.ContentDensityModule]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<PlatformMenuButtonModule>;
}

export { MenuButtonComponent, PlatformMenuButtonModule };
