import { RibbonItem } from './../index';
import { RibbonItemType, RibbonItemSize, RibbonItemSettings } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { RibbonItemType, RibbonItemSize, RibbonItemSettings, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { RibbonItem } from './../index';
export declare class RibbonItemComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<RibbonItem>);
    private eventHandlers;
    nativeElement: RibbonItem;
    /** @description Creates the component on demand.
     * @param properties An optional object of properties, which will be added to the template binded ones.
     */
    createComponent(properties?: {}): any;
    /** @description Specifies whether the ribbon item is disabled and unresponsive to user interactions. If set to 'true', the ribbon item will appear visually inactive and cannot be clicked or selected by the user. If 'false', the item remains enabled and fully interactive. */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Specifies the text displayed as the label on the ribbon item, providing users with a clear description or name for the ribbon element. */
    get label(): string;
    set label(value: string);
    /** @description Specifies the category or function of the ribbon item, such as button, dropdown, separator, or other UI element types. This property helps define how the ribbon item behaves and is displayed within the ribbon interface. */
    get type(): RibbonItemType | string;
    set type(value: RibbonItemType | string);
    /** @description Specifies the template used to render the ribbon item. This property accepts one of the following:- An HTMLTemplateElement instance.- The id (string) of an existing HTMLTemplateElement in the DOM.- A function that returns either a template string or an HTML element.This allows you to customize the appearance and content of the ribbon item by providing a static template, referencing a template by id, or generating templates dynamically through a function. */
    get template(): string;
    set template(value: string);
    /** @description Specifies the dimensions or size configuration (such as small, medium, or large) for the ribbon item, affecting its visual appearance and layout within the ribbon interface. */
    get size(): RibbonItemSize | string;
    set size(value: RibbonItemSize | string);
    /** @description  */
    get sizeChanged(): any;
    set sizeChanged(value: any);
    /** @description Specifies the permissible dimensions (such as small, medium, or large) that the ribbon item can be displayed in. This setting controls which size options are available for the ribbon item’s appearance within the user interface. */
    get allowedSizes(): any;
    set allowedSizes(value: any);
    /** @description Specifies the icon displayed on the ribbon item. This property sets the visual symbol or graphic that represents the ribbon item in the user interface, allowing users to quickly identify its function. The icon can typically be defined using an icon name, image URL, or SVG markup, depending on the framework or library in use. */
    get icon(): string;
    set icon(value: string);
    /** @description Controls the configuration options for the ribbon item. When the ribbon item is designated as a Smart Element, these settings are applied as its properties, allowing for dynamic customization of its appearance and behavior within the ribbon interface. */
    get settings(): RibbonItemSettings;
    set settings(value: RibbonItemSettings);
    /** @description Specifies the CSS class or classes to be applied to the ribbon item, allowing for customized styling and appearance. This property enables developers to control the visual presentation of individual ribbon items by assigning one or more class names. */
    get cssClass(): string;
    set cssClass(value: string);
    /** @description Assigns a custom function to be executed when the ribbon item is clicked, enabling the implementation of specific actions or behaviors in response to user interaction. */
    get onItemClick(): any;
    set onItemClick(value: any);
    /** @description Registers a handler function that will be triggered when the ribbon item's value or state changes, allowing you to respond dynamically to user interactions or programmatic updates. */
    get onItemChange(): any;
    set onItemChange(value: any);
    /** @description Specifies the text that appears as a tooltip when users hover over the ribbon item, providing additional information or guidance about its function. */
    get tooltip(): string;
    set tooltip(value: string);
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RibbonItemComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<RibbonItemComponent, "smart-ribbon-item, [smart-ribbon-item]", ["smart-ribbon-item"], { "disabled": "disabled"; "label": "label"; "type": "type"; "template": "template"; "size": "size"; "sizeChanged": "sizeChanged"; "allowedSizes": "allowedSizes"; "icon": "icon"; "settings": "settings"; "cssClass": "cssClass"; "onItemClick": "onItemClick"; "onItemChange": "onItemChange"; "tooltip": "tooltip"; }, {}, never>;
}
