import React, { ComponentPropsWithoutRef } from "react"; import type { IconComponent, IconProps } from "../../icons/types"; import { ObjectFitVariantProps } from "../../styles/utils/objectFit"; import { CenterAlignedProps } from "../CenterAligned"; export type AvatarBaseProps = CenterAlignedProps & { /** * Whether the avatar should be a circle. */ rounded?: boolean; /** * Add an inset border */ border?: boolean; borderClassName?: string; /** * Width and height of the avatar. */ size?: number; /** * This is useful for usage in NextJS projects that want to use NextImage. **/ renderImage?: React.ComponentType>; /** * Renders a badge in the bottom right corner of the avatar. */ badge?: React.JSX.Element; }; export type AvatarImageProps = AvatarBaseProps & { /** * Optional url src for the image. */ src: string | null | undefined; icon?: undefined; seed?: string; } & Omit, "width" | "height"> & ObjectFitVariantProps; export type AvatarVideoProps = AvatarBaseProps & { src: string; icon?: undefined; } & ComponentPropsWithoutRef<"video">; export type AvatarIconProps = AvatarBaseProps & { /** * Optional svg icon component. */ icon: IconComponent; overrides?: { Icon?: IconProps; }; src?: undefined; }; export type AvatarProps = AvatarImageProps | AvatarIconProps | AvatarBaseProps; export declare const isVideo: (props: AvatarProps) => props is AvatarVideoProps; export type AvatarElement = HTMLDivElement | HTMLImageElement | HTMLVideoElement; export declare const Avatar: React.ForwardRefExoticComponent> & { Badge: React.ForwardRefExoticComponent, "height" | "width"> & import("../..").TextColorVariantProps & Omit>>, "tint"> & { tintSrc?: string; } & React.RefAttributes>; }; //# sourceMappingURL=Avatar.d.ts.map