import type { ButtonProps as MuiButtonProps } from '@mui/material'; import { type ComponentPropsWithRef, type ElementType, type ReactNode } from 'react'; import type { WithoutEmotionSpecific } from '../types'; import { ButtonColors, ButtonVariants } from './enums'; export type ButtonProps = Omit, 'variant' | 'color'> & { /** * Тип кнопки */ variant?: `${ButtonVariants}`; /** * Если `true`, появляется loader внутри кнопки */ loading?: boolean; /** * @deprecated Не поддерживается, используется стандартный индикатор загрузки */ loadingIndicator?: ReactNode; /** * @deprecated Не поддерживается, используется стандартное положение индикатора загрузки `center` */ loadingPosition?: 'start' | 'end' | 'center'; /** * Цвет текста кнопки */ color?: `${ButtonColors}`; /** * Тип html-элемента */ component?: TComponent; /** * Состояние кнопки - selected */ selected?: boolean; } & Omit, ''>; export declare const Button: (props: Omit, "color" | "variant"> & { /** * Тип кнопки */ variant?: "link" | "text" | "contained" | "light" | undefined; /** * Если `true`, появляется loader внутри кнопки */ loading?: boolean | undefined; /** * @deprecated Не поддерживается, используется стандартный индикатор загрузки */ loadingIndicator?: ReactNode; /** * @deprecated Не поддерживается, используется стандартное положение индикатора загрузки `center` */ loadingPosition?: "center" | "end" | "start" | undefined; /** * Цвет текста кнопки */ color?: "primary" | "error" | "success" | "warning" | undefined; /** * Тип html-элемента */ component?: TComponent | undefined; /** * Состояние кнопки - selected */ selected?: boolean | undefined; } & Omit, ""> & import("react").RefAttributes) => import("react").ReactElement> | null; export default Button;