import type { ComponentType, ReactNode } from 'react' import type { ButtonProps } from './Button' export type ButtonDropdownTokens = { alignSelf?: string backgroundColor?: string borderColor?: string borderRadius?: number | string borderWidth?: number | string color?: string descriptionFontName?: string descriptionFontSize?: number descriptionFontWeight?: number descriptionLineHeight?: number descriptionTextPaddingBottom?: number | string dividerColor?: string fontName?: string fontSize?: number fontWeight?: number icon?: string iconAlignSelf?: string iconBackground?: string iconBorderRadius?: number | string iconColor?: string iconPadding?: number | string iconPosition?: string iconSize?: number iconSpace?: number iconTranslateX?: number iconTranslateY?: number leadIcon?: string leadIconBackgroundColor?: string leadIconBorderRadius?: number | string leadIconColor?: string leadIconContainerPaddingBottom?: number | string leadIconContainerPaddingLeft?: number | string leadIconContainerPaddingRight?: number | string leadIconContainerPaddingTop?: number | string leadIconPadding?: number | string leadIconSize?: number lineHeight?: number minWidth?: number | string opacity?: number outerBackgroundColor?: string outerBorderColor?: string outerBorderGap?: number | string outerBorderWidth?: number | string paddingBottom?: number | string paddingLeft?: number | string paddingRight?: number | string paddingTop?: number | string shadow?: string subtitleColor?: string textAlign?: string textPaddingLeft?: number | string textPaddingRight?: number | string width?: string } export type ButtonDropdownVariants = { size?: 'default' | 'small' width?: 'full' } type ButtonDropdownChildState = { hovered: boolean focused: boolean pressed: boolean inactive: boolean selected: boolean open: boolean textStyles: Record } export interface ButtonDropdownProps extends Omit { value?: boolean initialValue?: boolean onChange?: (value: boolean, event?: any) => void label?: string tokens?: ButtonDropdownTokens variant?: ButtonDropdownVariants readOnly?: boolean children?: ReactNode | ((state: ButtonDropdownChildState) => ReactNode) description?: string singleOption?: boolean } declare const ButtonDropdown: ComponentType export { ButtonDropdown }