import { EventEmitter } from '@angular/core';
import { FormControl, FormGroup, NgForm } from '@angular/forms';
import { IInputVal, ZUICheckboxStatus, ZuiCheckboxType } from '../constants';
import { ZUICheckboxService } from './index.service';
import { ILabelPosition } from './types';
export declare class ZUICheckboxComponent {
    #private;
    private zuiCheckboxService;
    label: string;
    name: string;
    validateMsg: string;
    groupName: string;
    /**
     * "checkbox" | "slide"
     */
    type: ZuiCheckboxType;
    /**
     * "primary" | "accent" | "warn"
     */
    status: ZUICheckboxStatus;
    color: string;
    rippleColor: string;
    disabledValidate: boolean;
    indeterminate: boolean;
    /**
     * "before" | "after"
     */
    position: ILabelPosition;
    requiredVal: boolean;
    set required(val: IInputVal);
    isCheckAll: boolean;
    set checkAll(val: IInputVal);
    disabledVal: boolean;
    set disabled(val: IInputVal);
    /**
     * disable select text
     */
    set disabledSelect(val: IInputVal);
    disabledSelectVal: boolean;
    allowToggle: boolean;
    set disabledToggle(val: IInputVal);
    set model(value: boolean);
    set form(val: NgForm | FormGroup);
    modelChange: EventEmitter<boolean>;
    indeterminateChange: EventEmitter<boolean>;
    formControl: FormControl;
    constructor(zuiCheckboxService: ZUICheckboxService);
    ngOnInit(): void;
    ngOnChanges(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    onIndeterminateChange: (value: boolean) => void;
    onChange: (value: boolean) => void;
}
