import { BootstrapSwitchButton } from './../index';
import { BootstrapSwitchButtonStyleMode } 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 { BootstrapSwitchButtonStyleMode, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { BootstrapSwitchButton } from './../index';
export declare class BootstrapSwitchButtonComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<BootstrapSwitchButton>);
    private eventHandlers;
    nativeElement: BootstrapSwitchButton;
    /** @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 Gets or sets the checked state of the element.  */
    get checked(): boolean;
    set checked(value: boolean);
    /** @description Enables or disables the element.  */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Gets or sets whether the element is in indeterminate state.  */
    get indeterminate(): boolean;
    set indeterminate(value: boolean);
    /** @description Sets the inner HTML of the element. */
    get innerHTML(): string;
    set innerHTML(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 element is required.  */
    get required(): boolean;
    set required(value: boolean);
    /** @description Sets or gets the style mode of the element. */
    get styleMode(): BootstrapSwitchButtonStyleMode | string;
    set styleMode(value: BootstrapSwitchButtonStyleMode | string);
    /** @description Change event is triggered when the value of the element is changed.
    *  @param event. The custom event. 	*/
    onChange: EventEmitter<CustomEvent>;
    /** @description Toggles the element
    */
    toggle(): 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<BootstrapSwitchButtonComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<BootstrapSwitchButtonComponent, "bootstrap-switch-button, [bootstrap-switch-button]", ["bootstrap-switch-button"], { "checked": "checked"; "disabled": "disabled"; "indeterminate": "indeterminate"; "innerHTML": "innerHTML"; "name": "name"; "required": "required"; "styleMode": "styleMode"; }, { "onChange": "onChange"; }, never>;
}
