import * as react from 'react'; import * as _jala_banyu_system from '@jala-banyu/system'; import { PropGetter, HTMLBanyuProps } from '@jala-banyu/system'; import { ButtonProps } from './button.mjs'; import { ButtonGroupVariantProps } from '@jala-banyu/theme'; import { ReactRef } from '@jala-banyu/react-utils'; import './use-button.mjs'; import '@jala-banyu/use-aria-button'; import '@jala-banyu/ripple'; interface Props extends HTMLBanyuProps, ButtonGroupVariantProps { /** * Ref to the DOM node. */ ref?: ReactRef; /** * Whether the buttons are disabled. * @default false */ isDisabled?: ButtonProps["isDisabled"]; /** An accessibility label for this item. */ "aria-label"?: string; } type ContextType = { size?: ButtonProps["size"]; color?: ButtonProps["color"]; variant?: ButtonProps["variant"]; radius?: ButtonProps["radius"]; isDisabled?: ButtonProps["isDisabled"]; disableAnimation?: ButtonProps["disableAnimation"]; disableRipple?: ButtonProps["disableRipple"]; isIconOnly?: ButtonProps["isIconOnly"]; fullWidth?: boolean; }; type UseButtonGroupProps = Props & Partial>; declare function useButtonGroup(originalProps: UseButtonGroupProps): { Component: _jala_banyu_system.As; children: react.ReactNode; domRef: react.RefObject; context: ContextType; classNames: string; getButtonGroupProps: PropGetter, _jala_banyu_system.DOMAttributes<_jala_banyu_system.DOMElement>>; }; type UseButtonGroupReturn = ReturnType; export { type ContextType, type UseButtonGroupProps, type UseButtonGroupReturn, useButtonGroup };