import { ReactNode, MouseEvent } from 'react';
import { ButtonProps as MuiButtonProps } from '@mui/material';
export type ActionButtonVariant = 'filled' | 'tonal' | 'outline' | 'elevated' | 'text';
export type ActionButtonSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
export type ActionButtonShape = 'round' | 'square';
export interface ActionButtonProps extends Omit<MuiButtonProps, 'variant' | 'size' | 'color' | 'type' | 'startIcon' | 'endIcon' | 'onClick'> {
    testId?: string;
    variant?: ActionButtonVariant;
    size?: ActionButtonSize;
    shape?: ActionButtonShape;
    type?: 'button' | 'submit' | 'reset';
    loading?: boolean;
    loadingText?: string;
    startIcon?: ReactNode;
    endIcon?: ReactNode;
    onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
}
