import type { CSSProperties, ExtractPublicPropTypes } from 'vue';
import type { ComponentSize } from 'element-plus/es/constants';
import type { IconPropType } from 'element-plus/es/utils';
export interface AvatarProps {
    /**
     * @description avatar size.
     */
    size?: number | ComponentSize;
    /**
     * @description avatar shape.
     */
    shape?: 'circle' | 'square';
    /**
     * @description representation type to icon, more info on icon component.
     */
    icon?: IconPropType;
    /**
     * @description the source of the image for an image avatar.
     */
    src?: string;
    /**
     * @description native attribute `alt` of image avatar.
     */
    alt?: string;
    /**
     * @description native attribute srcset of image avatar.
     */
    srcSet?: string;
    /**
     * @description set how the image fit its container for an image avatar.
     */
    fit?: CSSProperties['object-fit'];
}
/**
 * @deprecated Removed after 3.0.0, Use `AvatarProps` instead.
 */
export declare const avatarProps: {
    readonly size: {
        readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<readonly [NumberConstructor, StringConstructor], "" | "small" | "default" | "large", number>>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    readonly shape: {
        readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "circle" | "square", unknown>>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    readonly icon: {
        readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | ((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component))[], unknown, unknown>>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
    readonly alt: StringConstructor;
    readonly srcSet: StringConstructor;
    readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => "fill" | "contain" | "-moz-initial" | "inherit" | "initial" | "revert" | "revert-layer" | "unset" | "none" | "cover" | "scale-down") | (() => import("csstype").Property.ObjectFit | undefined) | ((new (...args: any[]) => "fill" | "contain" | "-moz-initial" | "inherit" | "initial" | "revert" | "revert-layer" | "unset" | "none" | "cover" | "scale-down") | (() => import("csstype").Property.ObjectFit | undefined))[], unknown, unknown, "cover", boolean>;
};
/**
 * @deprecated Removed after 3.0.0, Use `AvatarProps` instead.
 */
export type AvatarPropsPublic = ExtractPublicPropTypes<typeof avatarProps>;
export declare const avatarEmits: {
    error: (evt: Event) => boolean;
};
export type AvatarEmits = typeof avatarEmits;
