import { OnInit, ElementRef, EventEmitter } from '@angular/core';
import { IHasData } from '../../../../../component/IHasData';
import { AbstractSelectItems } from '../../../../../component/dataview/input/AbstractSelectItems';
import { NeedFocusService } from '../../../../../service/NeedFocusService.service';
import { ValidationResult } from '../../../../../component/model/ValidationResult';
import { DefaultSelectItemModel } from '../../../../../component/model/DefaultSelectItemModel';
import { IDataComparator } from '../../../../../component/IDataComparator';
export declare class MaterialButtonToggle extends AbstractSelectItems implements OnInit, IHasData {
    static readonly TYPE_NAME: string;
    protected dataParent: IHasData;
    protected ignoreParentData: boolean;
    protected data: any;
    protected ignoreParentDisabled: boolean;
    protected delegateHistory: boolean;
    protected onDisabled: Function;
    protected onEnabled: Function;
    protected loadingEnabled: boolean;
    protected i18nKey: string;
    protected bypass: boolean;
    protected options: any;
    protected disabled: boolean;
    protected field: string;
    protected name: string;
    protected typeOfData: string;
    protected readOnly: boolean;
    protected help: any;
    protected dataComparator: IDataComparator<any>;
    protected items: DefaultSelectItemModel[];
    protected loadEvent: EventEmitter<any>;
    protected startValidateEvent: EventEmitter<any>;
    protected endValidateEvent: EventEmitter<any>;
    protected beforeFocusEvent: EventEmitter<any>;
    protected focusEvent: EventEmitter<any>;
    protected beforeLostFocusEvent: EventEmitter<any>;
    protected lostFocusEvent: EventEmitter<any>;
    protected beforeChangeEvent: EventEmitter<any>;
    protected changeEvent: EventEmitter<any>;
    protected beforeSelectEvent: EventEmitter<any>;
    protected selectEvent: EventEmitter<any>;
    protected value: any;
    protected multiple: boolean;
    protected vertical: boolean;
    protected disableRipple: boolean;
    protected checked: boolean;
    protected beforeClickEvent: EventEmitter<any>;
    protected clickEvent: EventEmitter<any>;
    private group;
    private _beforeClickInited;
    private array;
    constructor(elementRef: ElementRef, needFocusService: NeedFocusService);
    ngOnInit(): void;
    private setSelectedItem($event, index);
    getItems(): any[];
    isDisableRipple(): boolean;
    setDisableRipple(disableRipple: boolean): void;
    isMultiple(): boolean;
    setMultiple(multiple: boolean): void;
    toggle(): void;
    isDisabledRipple(): boolean;
    setDisabledRipple(disableRipple: boolean): void;
    isVertical(): boolean;
    setVertical(vertical: boolean): void;
    isChecked(): boolean;
    setChecked(checked: boolean): void;
    onChange($event: any, i: number): void;
    onFocusing($event: Event): void;
    onLostFocusing($event: Event): void;
    initEventHandlers(): void;
    onClick($event: Event, index: number, fireEvent?: boolean): void;
    protected emitBeforeClickEvent($event?: any): void;
    protected emitClickEvent($event?: any): void;
    protected doFocus($event: Event): void;
    protected doLostFocus($event: Event): void;
    protected onValidationEnd(inputValue: any, results: ValidationResult[]): void;
    protected onDataChange(data: any, inputVal: any): void;
}
