import { ElementRef, OnDestroy, Renderer2 } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { TriStateCheckboxState, ITriStateCheckboxControl, ITriCheckboxRegister } from './tri-state-checkbox.types';
export declare class NgTriStateCheckboxComponent implements OnDestroy, ControlValueAccessor, ITriCheckboxRegister {
    protected renderer: Renderer2;
    checkboxClass: string;
    private _isDisabled;
    controls: Map<ITriStateCheckboxControl, any>;
    currentState: TriStateCheckboxState;
    customCheckbox: ElementRef;
    onChanged: (_: any) => void;
    onTouched: () => void;
    constructor(renderer: Renderer2);
    ngOnDestroy(): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState(isDisabled: boolean): void;
    get isDisabled(): boolean;
    addControl(control: ITriStateCheckboxControl): void;
    removeControl(control: ITriStateCheckboxControl): void;
    changeControlValue(control: ITriStateCheckboxControl, value: any): void;
    refreshState(): void;
    getState(): TriStateCheckboxState;
    onClick(): void;
    writeAllControlValues(nValue: boolean): void;
    refreshCheckboxState(): void;
    emitValueChanged(): void;
    reset(): void;
    writeValue(obj: any): void;
}
