import React, { MouseEventHandler, PropsWithChildren, ReactElement } from 'react'; import { ThemeColorPalette } from '@dreipol/t3-react-theme'; export type ButtonProps = Omit, HTMLButtonElement>, 'color' | 'prefix'> & PropsWithChildren<{ /** * Click handler */ onClick?: MouseEventHandler; /** * Custom color */ color?: ThemeColorPalette; /** * Use the contrast color for the label instead of the main color */ contrastLabel?: boolean; /** * Variant of the button */ variant?: 'outlined' | 'filled' | 'text' | 'underline' | 'plain'; /** * Render in active mode. Currently only supported for variant='underline' */ active?: boolean; /** * Render as disabled state */ disabled?: boolean; /** * Custom icon prefix */ prefix?: ReactElement; /** * Custom icon suffix */ suffix?: ReactElement; /** * Custom sizes */ size?: 'small' | 'medium'; /** * Render in fullwidth */ fullWidth?: boolean; /** * Custom background color */ background?: ThemeColorPalette; }>; export declare const Button: ({ variant, disabled, onClick, children, className, prefix, suffix, contrastLabel, fullWidth, color, size, background, active, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element | null;