2023-02-28 06:31:18 +00:00
|
|
|
type CreatableComponent = Parameters<typeof import('react').createElement>[0];
|
|
|
|
|
2023-03-15 06:09:12 +00:00
|
|
|
type IconButtonPresetMapToStateIconBundle =
|
|
|
|
| 'add'
|
|
|
|
| 'close'
|
2024-04-05 23:36:59 +00:00
|
|
|
| 'copy'
|
2023-06-20 00:49:42 +00:00
|
|
|
| 'delete'
|
2023-03-15 06:09:12 +00:00
|
|
|
| 'edit'
|
2023-03-28 02:02:36 +00:00
|
|
|
| 'play'
|
2023-03-15 06:09:12 +00:00
|
|
|
| 'visibility';
|
2023-02-28 06:31:18 +00:00
|
|
|
|
2023-03-15 05:23:18 +00:00
|
|
|
type IconButtonStateIconBundle = {
|
|
|
|
iconType: CreatableComponent;
|
|
|
|
iconProps?: import('@mui/material').SvgIconProps;
|
|
|
|
};
|
|
|
|
|
|
|
|
type IconButtonMapToStateIconBundle = Record<string, IconButtonStateIconBundle>;
|
2023-02-28 06:31:18 +00:00
|
|
|
|
2023-06-20 00:49:42 +00:00
|
|
|
type IconButtonVariant = 'contained' | 'normal' | 'redcontained';
|
2023-02-28 06:31:18 +00:00
|
|
|
|
2023-03-16 02:42:11 +00:00
|
|
|
type IconButtonMouseEventHandler =
|
|
|
|
import('@mui/material').IconButtonProps['onClick'];
|
|
|
|
|
2023-02-28 06:31:18 +00:00
|
|
|
type IconButtonOptionalProps = {
|
|
|
|
defaultIcon?: CreatableComponent;
|
|
|
|
iconProps?: import('@mui/material').SvgIconProps;
|
2023-03-15 05:23:18 +00:00
|
|
|
mapPreset?: IconButtonPresetMapToStateIconBundle;
|
|
|
|
mapToIcon?: IconButtonMapToStateIconBundle;
|
2023-02-28 06:31:18 +00:00
|
|
|
state?: string;
|
|
|
|
variant?: IconButtonVariant;
|
|
|
|
};
|