// Copyright (c) Meta Platforms, Inc. and affiliates. 'use client'; /** * @file AvatarGroupContext.ts * @input None (pure context definition) * @output Exports AvatarGroup context and useAvatarGroup hook * @position Shared context; consumed by children for group-aware styling */ import { createContext, use } from 'react'; import type { AvatarShape, AvatarSize } from "../Avatar/index.js"; export interface AvatarGroupContextValue { size: AvatarSize; shape: AvatarShape; overlap: number; numericSize: number; } export const AvatarGroupContext = createContext(null); AvatarGroupContext.displayName = 'AvatarGroupContext'; export function useAvatarGroup(): AvatarGroupContextValue | null { return use(AvatarGroupContext); }