import * as react_jsx_runtime from 'react/jsx-runtime';
import { MouseEventHandler } from 'react';

type buttonProps = {
    height?: "XS" | "SM" | "MD" | "LG" | "XL" | string;
    width?: "XS" | "SM" | "MD" | "LG" | "XL" | string;
    font?: string;
    fontSize?: string;
    lineHeight?: string;
    fontWeight?: string;
    style?: string;
    fontColor?: string;
    backgroundColor?: string;
    hoverBackgroundColor?: string;
    activeBackgroundColor?: string;
    focusBackgroundColor?: string;
    leftIconPath?: string;
    rigthIconPath?: string;
    text?: string;
    gap?: string;
    radius?: string;
    padding?: string;
    disabled?: boolean;
    disabledBackground?: string;
    disabledFontColor?: string;
    theme?: "brand" | "neutral" | "destructive";
    mainStyle?: "primary" | "secondary" | "outline" | "ghost";
    border?: string;
    disabledBorder?: string;
    onClick?: MouseEventHandler<HTMLButtonElement>;
    unfocusAfterClick?: boolean;
};
type textButtonProps = {
    height?: "XS" | "SM" | string;
    width?: "XS" | "SM" | string;
    font?: string;
    fontSize?: string;
    lineHeight?: string;
    fontWeight?: string;
    style?: string;
    fontColor?: string;
    backgroundColor?: string;
    hoverBackgroundColor?: string;
    activeBackgroundColor?: string;
    focusBackgroundColor?: string;
    leftIconPath?: string;
    rigthIconPath?: string;
    text?: string;
    gap?: string;
    radius?: string;
    padding?: string;
    disabled?: boolean;
    disabledBackground?: string;
    disabledFontColor?: string;
    theme?: "brand" | "neutral" | "destructive";
    border?: string;
    disabledBorder?: string;
    onClick?: MouseEventHandler<HTMLButtonElement>;
    unfocusAfterClick?: boolean;
    hoverFontColor?: string;
    pressedFontColor?: string;
};
type iconButtonProps = {
    height?: "XS" | "SM" | "MD" | "LG" | "XL" | string;
    width?: "XS" | "SM" | "MD" | "LG" | "XL" | string;
    style?: string;
    backgroundColor?: string;
    hoverBackgroundColor?: string;
    activeBackgroundColor?: string;
    focusBackgroundColor?: string;
    radius?: string;
    padding?: string;
    disabled?: boolean;
    disabledBackground?: string;
    disabledFontColor?: string;
    theme?: "brand" | "neutral" | "destructive";
    mainStyle?: "primary" | "secondary" | "outline" | "ghost";
    border?: string;
    disabledBorder?: string;
    onClick?: MouseEventHandler<HTMLButtonElement>;
    unfocusAfterClick?: boolean;
    iconPath?: string;
};
declare function Button(buttonProps?: buttonProps): react_jsx_runtime.JSX.Element;
declare function TextButton(textButtonProps?: textButtonProps): react_jsx_runtime.JSX.Element;
declare function IconButton(iconButtonProps?: iconButtonProps): react_jsx_runtime.JSX.Element;

export { Button, IconButton, TextButton, type buttonProps, type iconButtonProps, type textButtonProps };
