import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';
import { Avatar as Avatar$1 } from 'radix-ui';
import { VariantProps } from 'class-variance-authority';
import * as class_variance_authority_types from 'class-variance-authority/types';

type AvatarProps = Avatar$1.AvatarProps & React.RefAttributes<HTMLSpanElement> & {
    /**
     * Defines avatar size
     */
    size?: AvatarSizeType;
};
declare function Avatar({ className, size, ref, ...props }: AvatarProps): react_jsx_runtime.JSX.Element;

declare const avatarCva: (props?: ({
    size?: "sm" | "md" | "lg" | null | undefined;
} & class_variance_authority_types.ClassProp) | undefined) => string;

type AvatarCvaProps = VariantProps<typeof avatarCva>;
type AvatarSizeType = NonNullable<AvatarCvaProps["size"]>;

type AvatarImageProps = React.ComponentProps<typeof Avatar$1.Image>;
declare function AvatarImage({ className, ref, ...props }: AvatarImageProps): react_jsx_runtime.JSX.Element;

type AvatarFallbackProps = React.ComponentProps<typeof Avatar$1.Fallback>;
declare function AvatarFallback({ className, ref, ...props }: AvatarFallbackProps): react_jsx_runtime.JSX.Element;

export { Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, type AvatarImageProps, type AvatarProps, type AvatarSizeType };
