import { ChangeDetectorRef, EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { DevConfigService } from 'ng-devui/utils';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export declare class CheckBoxComponent implements ControlValueAccessor, OnChanges {
    private changeDetectorRef;
    private devConfigService;
    static ID_SEED: number;
    name: string;
    label: string;
    cssClass: string;
    color: any;
    disabled: boolean;
    isShowTitle: boolean;
    title: any;
    labelTemplate: TemplateRef<any>;
    halfchecked: boolean;
    showAnimation: boolean;
    beforeChange: (value: any) => boolean | Promise<boolean> | Observable<boolean>;
    change: EventEmitter<boolean>;
    animationUnlocked: boolean;
    id: number;
    checked: boolean;
    private onChange;
    private onTouch;
    constructor(changeDetectorRef: ChangeDetectorRef, devConfigService: DevConfigService);
    writeValue(checked: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    toggle($event: any): void;
    private unlockAnimation;
    canChange(): Promise<boolean>;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CheckBoxComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CheckBoxComponent, "d-checkbox", never, { "name": "name"; "label": "label"; "cssClass": "cssClass"; "color": "color"; "disabled": "disabled"; "isShowTitle": "isShowTitle"; "title": "title"; "labelTemplate": "labelTemplate"; "halfchecked": "halfchecked"; "showAnimation": "showAnimation"; "beforeChange": "beforeChange"; }, { "change": "change"; }, never, never, false>;
}
