import { BootstrapSplitButton } from './../index';
import { BootstrapSplitButtonDropDownPosition, BootstrapSplitButtonLabelType, BootstrapSplitButtonStyleMode } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges, EventEmitter } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { BootstrapSplitButtonDropDownPosition, BootstrapSplitButtonLabelType, BootstrapSplitButtonStyleMode, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { BootstrapSplitButton } from './../index';
export declare class BootstrapSplitButtonComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<BootstrapSplitButton>);
    private eventHandlers;
    nativeElement: BootstrapSplitButton;
    /** @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 Enables or disables the element.  */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Sets or gets the drop down position of the element.  */
    get dropDownPosition(): BootstrapSplitButtonDropDownPosition | string;
    set dropDownPosition(value: BootstrapSplitButtonDropDownPosition | string);
    /** @description Sets or gets the Label of the element. */
    get label(): string;
    set label(value: string);
    /** @description Sets or gets the Label type of the element. */
    get labelType(): BootstrapSplitButtonLabelType | string;
    set labelType(value: BootstrapSplitButtonLabelType | string);
    /** @description Sets or gets the Href of the element. */
    get href(): string;
    set href(value: string);
    /** @description Sets or gets the name attribute for the element. Name is used when submiting HTML forms. */
    get name(): string;
    set name(value: string);
    /** @description Gets or sets whether the dropdown is opened.  */
    get opened(): boolean;
    set opened(value: boolean);
    /** @description Gets or sets whether the dropdown is outlined.  */
    get outlined(): boolean;
    set outlined(value: boolean);
    /** @description Sets or gets the style mode of the element. */
    get styleMode(): BootstrapSplitButtonStyleMode | string;
    set styleMode(value: BootstrapSplitButtonStyleMode | string);
    /** @description Sets or gets the size mode of the element. */
    get sizeMode(): string;
    set sizeMode(value: string);
    /** @description Show event is triggered when the dropdown is going to show.
    *  @param event. The custom event. 	*/
    onShow: EventEmitter<CustomEvent>;
    /** @description Shown event is triggered when the dropdown is shown.
    *  @param event. The custom event. 	*/
    onShown: EventEmitter<CustomEvent>;
    /** @description Hide event is triggered when the dropdown is going to be hidden.
    *  @param event. The custom event. 	*/
    onHide: EventEmitter<CustomEvent>;
    /** @description Hidden event is triggered when the dropdown is hidden
    *  @param event. The custom event. 	*/
    onHidden: EventEmitter<CustomEvent>;
    /** @description Toggles the dropdown visibility
    */
    toggle(): void;
    /** @description Shows the dropdown
    */
    show(): void;
    /** @description Hides the dropdown
    */
    hide(): void;
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /** @description Add event listeners. */
    private listen;
    /** @description Remove event listeners. */
    private unlisten;
    static ɵfac: i0.ɵɵFactoryDeclaration<BootstrapSplitButtonComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<BootstrapSplitButtonComponent, "bootstrap-split-button, [bootstrap-split-button]", ["bootstrap-split-button"], { "disabled": "disabled"; "dropDownPosition": "dropDownPosition"; "label": "label"; "labelType": "labelType"; "href": "href"; "name": "name"; "opened": "opened"; "outlined": "outlined"; "styleMode": "styleMode"; "sizeMode": "sizeMode"; }, { "onShow": "onShow"; "onShown": "onShown"; "onHide": "onHide"; "onHidden": "onHidden"; }, never>;
}
