import { ForwardedRef, ChangeEvent, ElementType, Ref } from 'react'; import { ValidationState } from '../../input/src/types.js'; import '../../group/src/Group.js'; import 'react/jsx-runtime'; import '../../layout/src/Flex.js'; import '../../styling/src/styled-system/props-handler.js'; import 'csstype'; import '../../styling/src/useResponsiveValue.js'; import '../../styling/src/BreakpointProvider.js'; import '../../shared/src/type-fest.js'; import '../../styling/src/styled-system/StylingContext.js'; import '../../shared/src/types.js'; 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; } 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; }; } 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; export { type UseCheckboxProps, type UseCheckboxReturn, useCheckbox };