import { App } from 'vue';
declare const OAvatar: {
    new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        size: {
            type: import('vue').PropType<number | string>;
            default: string;
        };
        background: {
            type: StringConstructor;
        };
        url: {
            type: StringConstructor;
        };
        name: {
            type: StringConstructor;
        };
        nameFormatter: {
            type: import('vue').PropType<(data: {
                name?: string;
            }) => import('vue').VNode>;
        };
        clickable: {
            type: BooleanConstructor;
            default: boolean;
        };
        objectFit: {
            type: import('vue').PropType<import('./types').ObjectFitT>;
            default: string;
        };
    }>> & Readonly<{
        onError?: (() => any) | undefined;
        onClick?: ((evt: MouseEvent) => any) | undefined;
        onLoad?: (() => any) | undefined;
    }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
        error: () => any;
        click: (evt: MouseEvent) => any;
        load: () => any;
    }, import('vue').PublicProps, {
        size: string | number;
        objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
        clickable: boolean;
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        size: {
            type: import('vue').PropType<number | string>;
            default: string;
        };
        background: {
            type: StringConstructor;
        };
        url: {
            type: StringConstructor;
        };
        name: {
            type: StringConstructor;
        };
        nameFormatter: {
            type: import('vue').PropType<(data: {
                name?: string;
            }) => import('vue').VNode>;
        };
        clickable: {
            type: BooleanConstructor;
            default: boolean;
        };
        objectFit: {
            type: import('vue').PropType<import('./types').ObjectFitT>;
            default: string;
        };
    }>> & Readonly<{
        onError?: (() => any) | undefined;
        onClick?: ((evt: MouseEvent) => any) | undefined;
        onLoad?: (() => any) | undefined;
    }>, {}, {}, {}, {}, {
        size: string | number;
        objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
        clickable: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
    size: {
        type: import('vue').PropType<number | string>;
        default: string;
    };
    background: {
        type: StringConstructor;
    };
    url: {
        type: StringConstructor;
    };
    name: {
        type: StringConstructor;
    };
    nameFormatter: {
        type: import('vue').PropType<(data: {
            name?: string;
        }) => import('vue').VNode>;
    };
    clickable: {
        type: BooleanConstructor;
        default: boolean;
    };
    objectFit: {
        type: import('vue').PropType<import('./types').ObjectFitT>;
        default: string;
    };
}>> & Readonly<{
    onError?: (() => any) | undefined;
    onClick?: ((evt: MouseEvent) => any) | undefined;
    onLoad?: (() => any) | undefined;
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    error: () => any;
    click: (evt: MouseEvent) => any;
    load: () => any;
}, string, {
    size: string | number;
    objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
    clickable: boolean;
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
    $slots: Readonly<{
        name(): any;
        'trigger-icon'(): any;
    }> & {
        name(): any;
        'trigger-icon'(): any;
    };
}) & {
    install(app: App): void;
};
declare const OAvatarGroup: {
    new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        urlList: {
            type: import('vue').PropType<import('./types').AvatarItem[]>;
            default: () => never[];
        };
        size: {
            type: import('vue').PropType<number | string>;
            default: string;
        };
        layout: {
            type: import('vue').PropType<import('./types').AvatarGroupLayout>;
            default: string;
        };
        overflowType: {
            type: import('vue').PropType<"ellipsis" | "count">;
            default: string;
        };
        objectFit: {
            type: import('vue').PropType<import('./types').ObjectFitT>;
            default: string;
        };
        nameFormatter: {
            type: import('vue').PropType<(data: {
                name?: string;
            }) => import('vue').VNode>;
        };
    }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
        size: string | number;
        layout: import('./types').AvatarGroupLayout;
        objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
        urlList: import('./types').AvatarItem[];
        overflowType: "ellipsis" | "count";
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        urlList: {
            type: import('vue').PropType<import('./types').AvatarItem[]>;
            default: () => never[];
        };
        size: {
            type: import('vue').PropType<number | string>;
            default: string;
        };
        layout: {
            type: import('vue').PropType<import('./types').AvatarGroupLayout>;
            default: string;
        };
        overflowType: {
            type: import('vue').PropType<"ellipsis" | "count">;
            default: string;
        };
        objectFit: {
            type: import('vue').PropType<import('./types').ObjectFitT>;
            default: string;
        };
        nameFormatter: {
            type: import('vue').PropType<(data: {
                name?: string;
            }) => import('vue').VNode>;
        };
    }>> & Readonly<{}>, {}, {}, {}, {}, {
        size: string | number;
        layout: import('./types').AvatarGroupLayout;
        objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
        urlList: import('./types').AvatarItem[];
        overflowType: "ellipsis" | "count";
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
    urlList: {
        type: import('vue').PropType<import('./types').AvatarItem[]>;
        default: () => never[];
    };
    size: {
        type: import('vue').PropType<number | string>;
        default: string;
    };
    layout: {
        type: import('vue').PropType<import('./types').AvatarGroupLayout>;
        default: string;
    };
    overflowType: {
        type: import('vue').PropType<"ellipsis" | "count">;
        default: string;
    };
    objectFit: {
        type: import('vue').PropType<import('./types').ObjectFitT>;
        default: string;
    };
    nameFormatter: {
        type: import('vue').PropType<(data: {
            name?: string;
        }) => import('vue').VNode>;
    };
}>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
    size: string | number;
    layout: import('./types').AvatarGroupLayout;
    objectFit: "fill" | "none" | "contain" | "cover" | "scale-down";
    urlList: import('./types').AvatarItem[];
    overflowType: "ellipsis" | "count";
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
    $slots: Readonly<{
        more(): any;
    }> & {
        more(): any;
    };
}) & {
    install(app: App): void;
};
export { OAvatar, OAvatarGroup };
export * from './types';
