import type { ComputedRef, ExtractPropTypes, PropType, Ref } from 'vue'; import type { MaybeArray } from '../../../_utils'; import type { OnUpdateChecked } from './interface'; export interface CheckboxGroupInjection { checkedCountRef: ComputedRef; maxRef: Ref; minRef: Ref; disabledRef: Ref; valueSetRef: Ref>; mergedSizeRef: Ref<'small' | 'medium' | 'large'>; toggleCheckbox: (checked: boolean, checkboxValue: string | number) => void; } export declare const checkboxGroupInjectionKey: import("vue").InjectionKey; export declare const checkboxBaseProps: { size: PropType<"small" | "medium" | "large">; checked: { type: PropType; default: undefined; }; defaultChecked: { type: PropType; default: boolean; }; value: PropType; disabled: { type: PropType; default: undefined; }; checkedValue: { type: (StringConstructor | BooleanConstructor | NumberConstructor)[]; default: boolean; }; uncheckedValue: { type: (StringConstructor | BooleanConstructor | NumberConstructor)[]; default: boolean; }; 'onUpdate:checked': PropType>; onUpdateChecked: PropType>; onChange: PropType>; }; export type CheckboxBaseProps = ExtractPropTypes; export interface UseCheckbox { selfRef: Ref; mergedSize: ComputedRef<'small' | 'medium' | 'large'>; mergedDisabled: Ref; renderedChecked: ComputedRef; handleClick: (e: MouseEvent) => void; handleKeyUp: (e: KeyboardEvent) => void; handleKeyDown: (e: KeyboardEvent) => void; focus: () => void; blur: () => void; } export declare function useCheckbox(props: CheckboxBaseProps): UseCheckbox;