import React from 'react';
import { Color } from '../../styles/colors';
import { AvatarStackProps, AvatarStackItemId, AvatarStackItemType, AvatarStackItem, AvatarStackSize, FoldedAvatarStackProps, ViewAllModalProps } from './AvatarStack.types';
export declare const getOverflowValues: (items: AvatarStackItem[]) => {
    visibleItems: AvatarStackItem[];
    foldedItems: AvatarStackItem[];
    restCountLabel: string | null;
    isViewAllNeeded: boolean;
};
export declare function getIcon(type: AvatarStackItemType, size: 'md' | 'sm'): JSX.Element | null;
export declare function getColorOrder(avatarItems: AvatarStackItem[]): Map<AvatarStackItemId, Color>;
export declare function AvatarStackContactItem({ item, item: { id, type, imageUrl, initials, inactive, name, linkUrl }, }: {
    item: AvatarStackItem;
}): JSX.Element;
export declare function AvatarContent({ item, size, }: {
    item: AvatarStackItem;
    size: AvatarStackSize;
}): JSX.Element | null;
export declare function BaseAvatarStack({ items, size, colors, }: {
    items: AvatarStackItem[];
    colors: Map<AvatarStackItemId, Color>;
    size: AvatarStackSize;
}): JSX.Element;
export declare function FoldedAvatarStack({ items, onClickViewAll, size, restCountLabel, isViewAllNeeded, }: FoldedAvatarStackProps): JSX.Element;
export declare const ViewAllModal: React.FC<ViewAllModalProps>;
/**

 We use avatars to visually represent our users, places, and things in the app.
 These can be in the form of rich media or representative illustrations.

 @since 10.19.0

 @see [Storybook](https://procore.github.io/core/latest/?path=/story/demos-avatarstack--demo)

 @see [Design Guidelines](https://design.procore.com/avatar-stack)

 */
export declare const AvatarStack: React.ForwardRefExoticComponent<AvatarStackProps & React.RefAttributes<HTMLDivElement>>;
