import { ChangeEvent, ElementType, ForwardedRef, Ref } from "react"; import { ValidationState } from "../../input"; export interface UseCheckboxProps { active?: boolean; ariaLabel?: string; ariaLabelledBy?: string; autoFocus?: boolean | number; checked?: boolean | null; cssModule?: string; defaultChecked?: boolean; defaultIndeterminate?: boolean; disabled?: boolean; focus?: boolean; forwardedRef?: ForwardedRef; hover?: boolean; id?: string; indeterminate?: boolean | null; isInField?: boolean; name?: string; onChange?: (event: ChangeEvent, isChecked: boolean) => void; required?: boolean; reverse?: boolean; size?: "sm" | "md"; tabIndex?: number; validationState?: ValidationState; } export interface UseCheckboxReturn { inputProps: { "aria-checked": boolean | "mixed"; "aria-invalid": boolean; "aria-label"?: string; "aria-labelledby"?: string; "aria-required": boolean; as?: ElementType; checked?: boolean; disabled?: boolean; id?: string; name?: string; onChange?: (event: ChangeEvent) => void; ref: Ref; tabIndex?: number; type?: "checkbox"; }; isChecked: boolean; isIndeterminate?: boolean; wrapperProps: { className?: string; ref?: Ref; }; } export declare function useCheckbox({ active, ariaLabel, ariaLabelledBy, autoFocus, checked, cssModule: module, defaultChecked, defaultIndeterminate, disabled, focus, forwardedRef, hover, id, indeterminate, isInField, name, onChange, required, reverse, size, tabIndex, validationState }: UseCheckboxProps): UseCheckboxReturn;