import { ButtonOverrides as BaseUIButtonOverrides, KIND, ButtonProps as BaseuiButtonProps } from '../baseui/button'; import * as React from 'react'; import { Override, StyleOverride } from '../overrides'; import { TooltipProps } from '../tooltip'; import { ClassName, Intent, Variant, SpacewebComponentProps, Size } from '../types'; import { ValueOf } from '../utility-types'; import { AriaRole } from 'react'; export declare type Shape = 'default' | 'round' | 'square' | 'pill'; export type { Size }; export declare type ButtonOverrides = { [key in keyof BaseUIButtonOverrides]?: Override>; } & { StatefulTooltip?: Override>; }; export declare type ButtonSharedProps = { $disabled?: boolean; $intent?: Intent; $isLoading?: boolean; $isSelected?: boolean; $shape?: Shape; $size?: Size; $variant?: Variant; $fullWidth?: boolean; $isFocusVisible?: boolean; $isIconButton?: boolean; $animate?: boolean; }; export declare type ButtonProps = SpacewebComponentProps<{ $as?: React.ElementType; className?: ClassName; style?: StyleOverride; size?: Size; shape?: Shape; variant?: Variant; intent?: Intent; isLoading?: boolean; isSelected?: boolean; animate?: boolean; disabled?: boolean; fullWidth?: boolean; autoFocus?: boolean; role?: AriaRole | undefined; href?: string; target?: string; rel?: string; children?: React.ReactNode; endEnhancer?: BaseuiButtonProps['endEnhancer']; onClick?: (event: React.MouseEvent) => any; overrides?: ButtonOverrides; startEnhancer?: BaseuiButtonProps['startEnhancer']; type?: 'submit' | 'reset' | 'button'; tooltipContent?: TooltipProps['content']; tabIndex?: number | undefined; }>; export declare type VariantAdapterProps = Record>;