import React from 'react';
import { type ButtonProps as MuiButtonProps } from '@mui/material/Button';
import { type ThemePaletteSemanticColors } from '../styles';
/**
* Material UI has a known typescript problem with components that uses the 'component' prop:
*
* @see https://github.com/mui/material-ui/pull/32404#issuecomment-1105228783
*
* Therefore, adding a workaround by extending the source MenuProps interface and adding the 'component' prop.
*
* At the moment that the following PR is merged, this workaround can probably be removed:
*
* @see https://github.com/mui/material-ui/pull/35924
*
* Once the PR is merged, verify the fix by making sure that there is no typescript error in the following code:
*
*
*
* The following components share the same problem: Button, IconButton, ToggleButton, List, ListItem, ListItemButton, MenuList, Menu, MenuItem, Paper, Dialog, Drawer, Typography.
*/
export interface ButtonProps extends MuiButtonProps {
component?: React.ElementType;
href?: HTMLAnchorElement['href'];
target?: HTMLAnchorElement['target'];
loading?: boolean;
loadingIndicator?: React.ReactNode;
loadingPosition?: 'start' | 'center' | 'end';
unstableToColor?: ThemePaletteSemanticColors;
unstableGradientAngle?: number;
}
declare const Button: React.FC;
export default Button;