import * as React from 'react'; import { buttonClasses, ButtonProps as MuiButtonProps } from '@mui/material/Button'; import { OverridableComponent, OverrideProps, OverridableTypeMap } from '../overridable-component'; import { ISpinnerProps } from '../spinner'; export declare const buttonComponentName: "QuantumButton"; export { buttonClasses }; export interface IButtonTypeMap

{ props: P & Omit & { isLoading?: boolean; component?: React.ElementType; target?: string; rel?: string; /** Alternative to using `props.children`. This is a convenience prop for other components using an `action` prop */ label?: React.ReactNode; SpinnerProps?: Partial; maxWidth?: string; analyticsId?: string; }; defaultComponent: D; } export interface IExtendButtonTypeMap { props: M['props'] & (M['props'] extends { classes?: Record; } ? Omit : IButtonTypeMap['props']); defaultComponent: M['defaultComponent']; } export type ExtendButton = ((props: OverrideProps, 'button'>) => JSX.Element) & OverridableComponent>; export type IButtonProps = OverrideProps, D>; export declare const Button: OverridableComponent; declare module '@mui/material/Button' { interface ButtonPropsColorOverrides { danger: true; default: true; error: false; secondary: false; success: false; warning: false; } interface ButtonPropsVariantOverrides { link: true; text: false; } }