import type { ComponentProps, FC, PropsWithChildren, ReactElement } from 'react'; import type { FlowbiteColors, FlowbitePositions, FlowbiteSizes } from '../Flowbite/FlowbiteTheme'; export interface FlowbiteAvatarTheme { base: string; bordered: string; img: { off: string; on: string; placeholder: string; }; color: AvatarColors; rounded: string; size: AvatarSizes; stacked: string; status: { away: string; base: string; busy: string; offline: string; online: string; }; statusPosition: FlowbitePositions; initials: { base: string; text: string; }; } export interface AvatarColors extends Pick { [key: string]: string; } export interface AvatarSizes extends Pick { [key: string]: string; } export interface AvatarImageProps { alt?: string; className: string; 'data-testid': string; } export interface AvatarProps extends PropsWithChildren, 'color'>> { alt?: string; bordered?: boolean; img?: string | ((props: AvatarImageProps) => ReactElement); color?: keyof AvatarColors; rounded?: boolean; size?: keyof AvatarSizes; stacked?: boolean; status?: 'away' | 'busy' | 'offline' | 'online'; statusPosition?: keyof FlowbitePositions; placeholderInitials?: string; } export declare const Avatar: FC & { Group: FC; Counter: FC; };