import * as React from 'react'; export declare function useButton(parameters?: useButton.Parameters): useButton.ReturnValue; export interface UseButtonParameters { /** * Whether the component should ignore user interaction. * @default false */ disabled?: boolean; /** * Whether the button may receive focus even if it is disabled. * @default false */ focusableWhenDisabled?: boolean; tabIndex?: NonNullable['tabIndex']>; /** * Whether the component is being rendered as a native button. * @default true */ native?: boolean; } export interface UseButtonReturnValue { /** * Resolver for the button props. * @param externalProps additional props for the button * @returns props that should be spread on the button */ getButtonProps: (externalProps?: React.ComponentPropsWithRef) => React.ComponentPropsWithRef; /** * A ref to the button DOM element. This ref should be passed to the rendered element. * It is not a part of the props returned by `getButtonProps`. */ buttonRef: React.Ref; } export declare namespace useButton { type Parameters = UseButtonParameters; type ReturnValue = UseButtonReturnValue; }