import { PaletteColor, Theme } from '@mui/material';
import { ButtonProps } from '../../../extended/mui/Button/types';
import { ComponentPalletColor, Sizes } from '@m4l/styles';
import { ReactNode } from 'react';
import { ACTIONCANCEL_KEY_COMPONENT } from './constants';
import { ActionCancelSlots } from './slots';
import { OverridesStyleRules } from '@mui/material/styles/overrides';
export type ActionCancelVariants = 'outlined';
/**
 * Properties of the `ActionCancel` component.
 * The `ActionIntro` component renders a button with an optional icon and label.
 * It supports different sizes, colors, and states such as disabled.
 */
export interface ActionCancelProps extends Omit<ButtonProps, 'variant' | 'color' | 'size'> {
    variant?: ActionCancelVariants;
    color?: ComponentPalletColor;
    dataTestid?: 'string';
    size?: Extract<Sizes, 'small' | 'medium'>;
    startIcon?: ReactNode;
    endIcon?: ReactNode;
}
/**
 * Owner state of the `ActionCancel` used to define internal style and behavior properties.
 */
export interface ActionCancelOwnerState extends Pick<ButtonProps, 'size' | 'variant' | 'color' | 'disabled'> {
    disabled?: boolean;
    paletteColor: PaletteColor;
}
export type ActionCancelSlotsType = keyof typeof ActionCancelSlots;
/**
 * Styles applicable to the `ActionCancel` using themes and custom slots.
 */
export type ActionCancelStyles = Partial<OverridesStyleRules<ActionCancelSlotsType, typeof ACTIONCANCEL_KEY_COMPONENT, Theme> | undefined> | undefined;
//# sourceMappingURL=types.d.ts.map