import React, { type AriaAttributes, type ComponentProps, type ElementType, type ReactElement } from 'react'; import type { TestIdProp } from '../../types'; import type { StyledButtonProps } from './Button.css'; type ButtonPrimitive = ComponentProps<'button'>; declare const LOCALE_TEXT_DEFAULT: { readonly loading: "loading"; }; type LocaleText = Partial>; export interface ButtonProps extends Pick, Pick, StyledButtonProps, TestIdProp { /** * Disabling the button will prevent it from receiving keyboard focus or click events */ disabled?: boolean; as?: ElementType | ReactElement; isLoading?: boolean; isFullWidth?: boolean; /** * Pill shaped button appearance */ rounded?: boolean; withDoubleClicks?: boolean; /** * Language content overrides */ localeText?: LocaleText; } export declare const calcIconSize: (size: ButtonProps["size"]) => "small" | "medium"; /** * The Button supports a variety of appearances and is one of the main interactive Overdrive * components. `variant`, `size` and `rounded` provide the main choices. * * By default the button will have a disabled timeout to avoid multiple rapid clicks. * To prevent this feature, use the `withDoubleClicks` prop. * * It is recommended to use the `onPress` and related event handler provided by react-aria. * For more information see the * [usePress](https://react-spectrum.adobe.com/react-aria/usePress.html) documentation. * * Use the `isLoading` prop where there is on-page data handling. * * _NOTE:_ Button `as` prop cannot be provided an HTML tag. ` */ export declare const Button: React.ForwardRefExoticComponent>; export {}; //# sourceMappingURL=Button.d.ts.map