/** Core */
import { CoreComponent } from "cmf.core/src/core";
/** Angular2 */
import * as ng from "@angular/core";
import { Style } from "cmf.core/src/domain/metadata/style";
/**
* Base Button definition
*/
export interface Button extends Style {
/**
* Order - used to sort the buttons
*/
order?: number;
/**
* Tag
*/
tag?: any;
/**
* Source component where the button is nested
*/
source?: any;
/**
* Operation associated with the component
*/
operation?: any;
/**
* Is Button disabled
*/
disabled?: boolean;
/**
* Button id
*/
id: string;
/**
* Button name
*/
title: string;
}
/**
* ItemSelect arguments interface
*/
export interface ItemSelectArgs {
index: number;
item: Button;
}
/**
* @whatItDoes
* The MoreOptionsDropDown component.
* This component serves as a container for templates of items served in a dropDown menu
*
* @howToUse
* This component is used with the inputs and outputs mentioned below.
*
* ### Inputs
* `Button[]` : **items** - Items to be displayed ;
* `boolean` : **minimizedMode** - If the minimized mode is allowed. If false and with only one item, the more option will be showed .
*
* ### Outputs
* `any` : **onOpen** - Event emitter for dropdown open ;
* `any` : **onClose** - Event emitter for dropdown close ;
* `ItemSelectArgs` : **onItemSelect** - Triggered when the value change .
*
* ### Example
* To use the component, assume this HTML Template as an example:
*
* ```HTML
*
*
* ```
*
*/
export declare class MoreOptions extends CoreComponent {
private _elementRef;
/**
* Items to be displayed
*/
items: Button[];
/**
* If the minimized mode is allowed. If false and with only one item, the more option will be showed
*/
minimizedMode: boolean;
/**
* Event emitter for changes
*/
onItemSelect: ng.EventEmitter;
/**
* Event emitter for dropdown open
*/
onOpen: ng.EventEmitter;
/**
* Event emitter for dropdown close.
*/
onClose: ng.EventEmitter;
/**
* @method constructor
*/
constructor(_elementRef: ng.ElementRef);
/**
* Handle a click on the list item.
* Dispatch an event to the parent with the selected item.
*/
private _onItemSelect;
}
export declare class MoreOptionsModule {
}