import { Theme } from '@mui/material';
import { TypographyProps } from '@m4l/base';
import { HELPER_ERROR_KEY_COMPONENT } from './constant';
import { HelperErrorSlots } from './slots';
import { OverridesStyleRules } from '@mui/material/styles/overrides';
import { ComponentPalletColor, Sizes } from '@m4l/styles';
/**
 * Extiende de TypographyProps para incluir propiedades de esqueleto y añade la propiedad `message`.
 * `message` es el mensaje de error a mostrar.
 */
export interface HelperErrorProps extends Pick<TypographyProps, 'skeletonWidth' | 'htmlFor'> {
    /**
     * Mensaje que se visualiza en el componente HelperError.
     */
    message: string | undefined;
    /**
     * Propiedad que permite administrar estilos para su uso en los slots
     */
    className?: string;
    /**
     * Tamaño del componente, puede ser uno de los valores definidos en 'small' , 'medium'.
     */
    size?: Extract<Sizes, 'small' | 'medium'>;
}
/**
 * Representa el estado del componente HelperError, incluyendo todas las propiedades de HelperErrorProps.
 * Se utiliza para controlar el estilo del componente basado en su estado.
 */
export interface HelperErrorOwnerState {
    /**
     * Color de la paleta del texto.
     */
    color?: Extract<ComponentPalletColor, 'error'>;
    /**
     * Tamaño del campo de texto.
     */
    size: Extract<Sizes, 'small' | 'medium'>;
}
/**
 * Define los tipos de slots disponibles en HelperError utilizando las claves de HelperErrorSlots.
 */
export type HelperErrorSlotsType = keyof typeof HelperErrorSlots;
/**
 * Define los estilos personalizables para HelperError, permitiendo la sobrescritura de estilos por defecto.
 */
export type HelperErrorStyles = OverridesStyleRules<HelperErrorSlotsType, typeof HELPER_ERROR_KEY_COMPONENT, Theme>;
//# sourceMappingURL=types.d.ts.map