import React from 'react'; import { ButtonIconWrapperProps } from './ButtonIconWrapper'; import { ButtonTextWrapperProps } from './ButtonTextWrapper'; import { ButtonContainerProps } from './ButtonContainer'; type ButtonNativeProps = React.ButtonHTMLAttributes; export interface ButtonBaseProps extends Omit { /** * Icon or another JSX element placed before button label\ * Example: * ```tsx * * ``` */ readonly startIcon?: JSX.Element; /** * Icon or another JSX element placed after button label * Example: * ```tsx * * ``` */ readonly endIcon?: JSX.Element; /** * If true, then expect SVG icon as children. The button will be rendered as icon button * Example: * ```tsx * * ``` ` */ readonly iconOnly?: ButtonContainerProps['iconOnly']; /** * You can pass the primary, default, secondary name of the colors or your specified color value */ readonly color?: ButtonContainerProps['color']; /** * Overridable components map */ readonly overrides?: ButtonBaseOverrides; } export interface ButtonBaseOverrides { /** * Element container */ readonly Container?: React.ComponentType>; /** * icon wrapper */ readonly IconWrapper?: React.ComponentType>; /** * text wrapper */ readonly TextWrapper?: React.ComponentType>; } declare const _default: React.ForwardRefExoticComponent>; export default _default;