import { CheckboxProps } from './checkbox';
import CheckboxGroup from './checkbox-group';
declare const BkCheckbox: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        modelValue: import("vue-types").VueTypeDef<string | number | boolean>;
        label: import("vue-types").VueTypeDef<string | number | boolean>;
        trueLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
            default: string | number | boolean;
        };
        falseLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
            default: string | number | boolean;
        };
        disabled: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        checked: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        indeterminate: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>>;
        beforeChange: import("vue-types").VueTypeValidableDef<(event: boolean | number | string) => Promise<boolean> | boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<(event: boolean | number | string) => Promise<boolean> | boolean>> & {
            default: (event: boolean | number | string) => Promise<boolean> | boolean;
        };
        size: import("vue-types").VueTypeDef<"default" | "small" | "large" | "huge"> & {
            default: "default" | "small" | "large" | "huge";
        };
        immediateEmitChange: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        readonly: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        outline: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
    }>> & Readonly<{
        onChange?: (value: any, _event?: Event) => any;
        onClick?: (_event: MouseEvent) => any;
        "onUpdate:modelValue"?: (value: any) => any;
    }>, {
        inputRef: import("vue").Ref<any, any>;
        isFocus: import("vue").Ref<boolean, boolean>;
        isChecked: import("vue").Ref<boolean, boolean>;
        isPrechecking: import("vue").Ref<boolean, boolean>;
        isDisabled: import("vue").ComputedRef<boolean>;
        setChecked: (value?: boolean) => void;
        handleBlur: () => void;
        handleFocus: () => void;
        handleChange: (event: Event) => void;
        size: "default" | "small" | "large" | "huge";
        resolveClassName: (cls: string) => string;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        'update:modelValue': (value: any) => boolean;
        change: (value: any, _event?: Event) => boolean;
        click: (_event: MouseEvent) => true;
    }, import("vue").PublicProps, {
        size: "default" | "small" | "large" | "huge";
        disabled: boolean;
        outline: boolean;
        readonly: boolean;
        trueLabel: string | number | boolean;
        falseLabel: string | number | boolean;
        checked: boolean;
        beforeChange: (event: boolean | number | string) => Promise<boolean> | boolean;
        immediateEmitChange: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        modelValue: import("vue-types").VueTypeDef<string | number | boolean>;
        label: import("vue-types").VueTypeDef<string | number | boolean>;
        trueLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
            default: string | number | boolean;
        };
        falseLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
            default: string | number | boolean;
        };
        disabled: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        checked: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        indeterminate: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>>;
        beforeChange: import("vue-types").VueTypeValidableDef<(event: boolean | number | string) => Promise<boolean> | boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<(event: boolean | number | string) => Promise<boolean> | boolean>> & {
            default: (event: boolean | number | string) => Promise<boolean> | boolean;
        };
        size: import("vue-types").VueTypeDef<"default" | "small" | "large" | "huge"> & {
            default: "default" | "small" | "large" | "huge";
        };
        immediateEmitChange: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        readonly: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
        outline: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
    }>> & Readonly<{
        onChange?: (value: any, _event?: Event) => any;
        onClick?: (_event: MouseEvent) => any;
        "onUpdate:modelValue"?: (value: any) => any;
    }>, {
        inputRef: import("vue").Ref<any, any>;
        isFocus: import("vue").Ref<boolean, boolean>;
        isChecked: import("vue").Ref<boolean, boolean>;
        isPrechecking: import("vue").Ref<boolean, boolean>;
        isDisabled: import("vue").ComputedRef<boolean>;
        setChecked: (value?: boolean) => void;
        handleBlur: () => void;
        handleFocus: () => void;
        handleChange: (event: Event) => void;
        size: "default" | "small" | "large" | "huge";
        resolveClassName: (cls: string) => string;
    }, {}, {}, {}, {
        size: "default" | "small" | "large" | "huge";
        disabled: boolean;
        outline: boolean;
        readonly: boolean;
        trueLabel: string | number | boolean;
        falseLabel: string | number | boolean;
        checked: boolean;
        beforeChange: (event: boolean | number | string) => Promise<boolean> | boolean;
        immediateEmitChange: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    modelValue: import("vue-types").VueTypeDef<string | number | boolean>;
    label: import("vue-types").VueTypeDef<string | number | boolean>;
    trueLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
        default: string | number | boolean;
    };
    falseLabel: import("vue-types").VueTypeDef<string | number | boolean> & {
        default: string | number | boolean;
    };
    disabled: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
        default: boolean;
    };
    checked: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
        default: boolean;
    };
    indeterminate: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>>;
    beforeChange: import("vue-types").VueTypeValidableDef<(event: boolean | number | string) => Promise<boolean> | boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<(event: boolean | number | string) => Promise<boolean> | boolean>> & {
        default: (event: boolean | number | string) => Promise<boolean> | boolean;
    };
    size: import("vue-types").VueTypeDef<"default" | "small" | "large" | "huge"> & {
        default: "default" | "small" | "large" | "huge";
    };
    immediateEmitChange: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
        default: boolean;
    };
    readonly: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
        default: boolean;
    };
    outline: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
        default: boolean;
    };
}>> & Readonly<{
    onChange?: (value: any, _event?: Event) => any;
    onClick?: (_event: MouseEvent) => any;
    "onUpdate:modelValue"?: (value: any) => any;
}>, {
    inputRef: import("vue").Ref<any, any>;
    isFocus: import("vue").Ref<boolean, boolean>;
    isChecked: import("vue").Ref<boolean, boolean>;
    isPrechecking: import("vue").Ref<boolean, boolean>;
    isDisabled: import("vue").ComputedRef<boolean>;
    setChecked: (value?: boolean) => void;
    handleBlur: () => void;
    handleFocus: () => void;
    handleChange: (event: Event) => void;
    size: "default" | "small" | "large" | "huge";
    resolveClassName: (cls: string) => string;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: any) => boolean;
    change: (value: any, _event?: Event) => boolean;
    click: (_event: MouseEvent) => true;
}, string, {
    size: "default" | "small" | "large" | "huge";
    disabled: boolean;
    outline: boolean;
    readonly: boolean;
    trueLabel: string | number | boolean;
    falseLabel: string | number | boolean;
    checked: boolean;
    beforeChange: (event: boolean | number | string) => Promise<boolean> | boolean;
    immediateEmitChange: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (import("vue").Plugin & Readonly<{
    Group: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        modelValue: import("vue-types").VueTypeValidableDef<unknown[], import("vue-types/dist/shared/vue-types.d8e57a80").b<unknown[]>> & {
            default: () => unknown[];
        };
        disabled: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>>;
        withValidate: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
    }>, {
        resolveClassName: (cls: string) => string;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        'update:modelValue': (value: any[]) => boolean;
        change: (value: any[]) => boolean;
    }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        modelValue: import("vue-types").VueTypeValidableDef<unknown[], import("vue-types/dist/shared/vue-types.d8e57a80").b<unknown[]>> & {
            default: () => unknown[];
        };
        disabled: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>>;
        withValidate: import("vue-types").VueTypeValidableDef<boolean, import("vue-types/dist/shared/vue-types.d8e57a80").b<boolean>> & {
            default: boolean;
        };
    }>> & Readonly<{
        onChange?: (value: any[]) => any;
        "onUpdate:modelValue"?: (value: any[]) => any;
    }>, {
        modelValue: unknown[];
        withValidate: boolean;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}>);
export default BkCheckbox;
export { BkCheckbox, CheckboxGroup as BkCheckboxGroup };
export type { CheckboxProps };
