import { OnInit, ElementRef, EventEmitter } from '@angular/core';
import { CfCoreComponent } from '../core/core.component';
import { ButtonMenuModel } from '../../models/button-menu/button-menu.model';
import { ButtonMenuStylingModel } from '../../models/button-menu/button-menu-styling.model';
import { TemplateService } from '../../services/template-service/template.service';
/**
 * <p>CF Button-Menu Component</p>
 * <pre>
 * <code>
 * import { ButtonMenuModel } from 'cedrus-fusion'
 * import { ButtonMenuStylingModel } from 'cedrus-fusion'
 * <</code>cf-button-menu<code>></code><code><</code><code>/</code>cf-button-menu<code>>
 * </code>
 * </pre>
 */
export declare class CfButtonMenuComponent extends CfCoreComponent implements OnInit {
    /**@hidden */ elementRef: ElementRef;
    /**@hidden */
    notifacationClickable: string;
    /**@hidden
     * It is the ButtonMenu object which will recive data from ButtonMenuModel and after will be used in component template.
     */
    cfButtonMenu: ButtonMenuModel;
    /**@hidden
     * <p> The type of the needed button.</p>
     * <p> Type can be: mat-button, mat-raised-button.</p>
     */
    buttonType: string;
    /**
     * <pre>{
     *  display: boolean, // Default: True
     *  disable: boolean, // Default: False
     *  buttonProperty: ButtonModel,
     *  menuProperty: MenuModel
     * }
     * </pre>
     */
    properties: ButtonMenuModel;
    /**
     * <pre>{
     * // styling of the container surrounding the button-menu
     * container: {
     *   dynamic class: function() -> string, //function that returns a string of the name of the class
     *   class: string //name of the class specified in you scss/css file
     * },
     * buttonStyling: { buttonStylingModel }, // Refer to button component
     * menuStyling: { MenuStylingModel }, // Refer to menu component
     *}
     * </pre>
     */
    styling: ButtonMenuStylingModel;
    /**
     * <p>Event emitted when the button is clicked (left part of button).</p>
     */
    onClick: EventEmitter<{}>;
    /**@hidden */
    notificationAction: any;
    /**@hidden */
    constructor(/**@hidden */ elementRef: ElementRef, /**@hidden */ templateService: TemplateService);
    /**@hidden
     * <p>On initialization:</p>
     * <p>Check to see if any of the angular material button types are needed to be passed to the child button.</p>
     * <p>Types are: <b>md-button</b>, <b>md-raised-button</b>.</p>
     * <p>Then initialize the button element.</p>
     */
    ngOnInit(): void;
    /** @hidden
     * <p>The method will emit event when the button is clicked</p>
     */
    buttonClicked(): void;
    /**@hidden
     * It is function for creating Notification click events by using Core Component <b>notificationAction</b> event emmiter.
     * @param notification	it is json notification object
     */
    cfNotificationAction(notification: any): void;
}
