import type { AvatarProps as MuiAvatarProps } from '@mui/material/Avatar';
import type { CustomIconProps } from '../custom-icon';

export interface AvatarProps extends MuiAvatarProps {
  /**
   * Set the size of the avatar.
   */
  size?: 'small' | 'medium' | 'large' | 'xlarge';
  /**
   * Custom avatar size (in pixels, overrides the `size`).
   */
  customSize?: 0 | 16 | 24 | 32 | 40 | 48 | 56 | 64 | 72 | 80 | 88 | 96 | 104;
  /**
   * Text to be displayed inside the avatar.
   */
  initials?: string;
  /**
   * Background color of the avatar.
   */
  backgroundColor?: string;
  /**
   * Color of the initials and icons.
   */
  color?: 'inherit' | string;
  /**
   * Whether to show pending icon or different props.
   * @deprecated Should use the `CustomIcon` instead
   */
  emailVerified?: boolean;
  /**
   * Avatar img to be displayed in case `emailVerified` is `true`.
   */
  src?: string;
  /**
   * Icon to be displayed in case no image was supplied.
   */
  icon?: CustomIconProps;
  /**
   * Custom class name in case you need to add custom styles to the component.
   */
  className?: string;
}
