import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _Checkbox from './checkbox';
import _CheckboxGroup from './checkbox-group';
declare const Checkbox: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            disabled: boolean;
            modelValue: boolean | (string | number | boolean)[];
            defaultChecked: boolean;
            indeterminate: boolean;
            uninjectGroupContext: boolean;
        }> & Omit<Readonly<{
            modelValue?: unknown;
            defaultChecked?: unknown;
            value?: unknown;
            disabled?: unknown;
            indeterminate?: unknown;
            uninjectGroupContext?: unknown;
        } & {
            disabled: boolean;
            defaultChecked: boolean;
            indeterminate: boolean;
            uninjectGroupContext: boolean;
        } & {
            value?: string | number | boolean | undefined;
            modelValue?: boolean | (string | number | boolean)[] | undefined;
        }> & {
            onChange?: ((value: boolean | (string | number | boolean)[], ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: boolean | (string | number | boolean)[]) => any) | undefined;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "disabled" | "modelValue" | "defaultChecked" | "indeterminate" | "uninjectGroupContext">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $emit: ((event: "change", value: boolean | (string | number | boolean)[], ev: Event) => void) & ((event: "update:modelValue", value: boolean | (string | number | boolean)[]) => void);
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<{
            modelValue?: unknown;
            defaultChecked?: unknown;
            value?: unknown;
            disabled?: unknown;
            indeterminate?: unknown;
            uninjectGroupContext?: unknown;
        } & {
            disabled: boolean;
            defaultChecked: boolean;
            indeterminate: boolean;
            uninjectGroupContext: boolean;
        } & {
            value?: string | number | boolean | undefined;
            modelValue?: boolean | (string | number | boolean)[] | undefined;
        }> & {
            onChange?: ((value: boolean | (string | number | boolean)[], ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: boolean | (string | number | boolean)[]) => any) | undefined;
        }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            'update:modelValue': (value: boolean | (string | number | boolean)[]) => true;
            change: (value: boolean | (string | number | boolean)[], ev: Event) => true;
        }, string, {
            disabled: boolean;
            modelValue: boolean | (string | number | boolean)[];
            defaultChecked: boolean;
            indeterminate: boolean;
            uninjectGroupContext: boolean;
        }> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<{
        modelValue?: unknown;
        defaultChecked?: unknown;
        value?: unknown;
        disabled?: unknown;
        indeterminate?: unknown;
        uninjectGroupContext?: unknown;
    } & {
        disabled: boolean;
        defaultChecked: boolean;
        indeterminate: boolean;
        uninjectGroupContext: boolean;
    } & {
        value?: string | number | boolean | undefined;
        modelValue?: boolean | (string | number | boolean)[] | undefined;
    }> & {
        onChange?: ((value: boolean | (string | number | boolean)[], ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: boolean | (string | number | boolean)[]) => any) | undefined;
    } & import("vue").ShallowUnwrapRef<() => JSX.Element> & {} & {} & import("vue").ComponentCustomProperties;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<{
    modelValue?: unknown;
    defaultChecked?: unknown;
    value?: unknown;
    disabled?: unknown;
    indeterminate?: unknown;
    uninjectGroupContext?: unknown;
} & {
    disabled: boolean;
    defaultChecked: boolean;
    indeterminate: boolean;
    uninjectGroupContext: boolean;
} & {
    value?: string | number | boolean | undefined;
    modelValue?: boolean | (string | number | boolean)[] | undefined;
}> & {
    onChange?: ((value: boolean | (string | number | boolean)[], ev: Event) => any) | undefined;
    "onUpdate:modelValue"?: ((value: boolean | (string | number | boolean)[]) => any) | undefined;
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: boolean | (string | number | boolean)[]) => true;
    change: (value: boolean | (string | number | boolean)[], ev: Event) => true;
}, string, {
    disabled: boolean;
    modelValue: boolean | (string | number | boolean)[];
    defaultChecked: boolean;
    indeterminate: boolean;
    uninjectGroupContext: boolean;
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    Group: import("vue").DefineComponent<{
        modelValue: {
            type: import("vue").PropType<(string | number | boolean)[]>;
            default: undefined;
        };
        defaultValue: {
            type: import("vue").PropType<(string | number | boolean)[]>;
            default: () => never[];
        };
        max: {
            type: NumberConstructor;
        };
        options: {
            type: import("vue").PropType<(string | number | import("./interface").CheckboxOption)[]>;
        };
        direction: {
            type: import("vue").PropType<"horizontal" | "vertical">;
            default: string;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        'update:modelValue': (value: (string | number | boolean)[]) => true;
        change: (value: (string | number | boolean)[], ev: Event) => true;
    }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
        modelValue?: unknown;
        defaultValue?: unknown;
        max?: unknown;
        options?: unknown;
        direction?: unknown;
        disabled?: unknown;
    } & {
        disabled: boolean;
        defaultValue: (string | number | boolean)[];
        direction: "horizontal" | "vertical";
    } & {
        modelValue?: (string | number | boolean)[] | undefined;
        options?: (string | number | import("./interface").CheckboxOption)[] | undefined;
        max?: number | undefined;
    }> & {
        onChange?: ((value: (string | number | boolean)[], ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: (string | number | boolean)[]) => any) | undefined;
    }, {
        disabled: boolean;
        defaultValue: (string | number | boolean)[];
        modelValue: (string | number | boolean)[];
        direction: "horizontal" | "vertical";
    }>;
    install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type CheckboxInstance = InstanceType<typeof _Checkbox>;
export declare type CheckboxGroupInstance = InstanceType<typeof _CheckboxGroup>;
export type { CheckboxOption } from './interface';
export { _CheckboxGroup as CheckboxGroup };
export default Checkbox;
