@cmk/fe_utils
Version:
frontend utility library
35 lines (33 loc) • 1.24 kB
TypeScript
import { CSSProperties, ReactNode, Ref } from 'react';
import { TooltipProps, ButtonProps } from '@mui/material';
import { ButtonDropdown } from './defs';
import { IconProps } from '@mdi/react/dist/IconProps';
export type CButtonProps = Omit<ButtonProps, 'label' | 'loading' | 'icon' | 'color' | 'slotProps' | 'endIcon'> & {
label?: ReactNode;
children?: ReactNode;
loading?: boolean;
loadingMode?: 'auto' | 'leftPlaceholder' | 'rightPlaceholder';
icon?: ReactNode;
endIcon?: ReactNode;
dropdown?: ButtonDropdown;
iconButton?: boolean;
disableHover?: boolean;
tooltip?: ReactNode;
color?: ButtonProps['color'];
iconColor?: string;
fontColor?: string;
iconSize?: CSSProperties['fontSize'];
disableTabstop?: boolean;
disabled?: boolean;
disableTooltipWhenDisabled?: boolean;
disableInteractiveTooltip?: boolean;
slotProps?: {
tooltip?: Partial<TooltipProps>;
startIcon?: Partial<IconProps>;
endIcon?: Partial<IconProps>;
};
borderRadius?: CSSProperties['borderRadius'];
rootInjection?: ReactNode;
ref?: Ref<HTMLButtonElement>;
};
export declare const Button: (props: CButtonProps) => import("react/jsx-runtime").JSX.Element;