/**
 * Avatar type definitions
 * @countermeasure/web-components/display/avatar
 */

export type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl'
export type AvatarShape = 'circle' | 'square'
export type AvatarStatus = 'online' | 'offline' | 'away' | 'busy'

export interface AvatarConfig {
  container?: HTMLElement | string
  src?: string
  alt?: string
  name?: string
  size?: AvatarSize
  shape?: AvatarShape
  status?: AvatarStatus
  className?: string
  /** When true, avatar is decorative (role="presentation", no aria-label) */
  decorative?: boolean
}

export interface AvatarGroupConfig {
  container?: HTMLElement | string
  max?: number
  size?: AvatarSize
  className?: string
}
