import { PropType, VNodeChild } from 'vue';
import { DirectionType } from '../_utils/type';
import { ConversationItemRenderInfo, ConversationItemType, ConversationsItemMenu, ConversationsProps } from './interface';
export interface ConversationsItemProps {
    info: ConversationItemType;
    index: number;
    prefixCls?: string;
    direction?: DirectionType;
    menu?: ConversationsItemMenu;
    active?: boolean;
    labelRender?: ConversationsProps["labelRender"];
    iconRender?: ConversationsProps["iconRender"];
    labelRenderSlot?: (info: ConversationItemRenderInfo) => VNodeChild;
    iconRenderSlot?: (info: ConversationItemRenderInfo) => VNodeChild;
    classes?: any;
    style?: any;
    onClick?: ConversationsProps["onActiveChange"];
}
declare const ConversationsItem: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    info: {
        type: PropType<ConversationItemType>;
        required: true;
    };
    index: {
        type: NumberConstructor;
        default: number;
    };
    prefixCls: {
        type: StringConstructor;
        default: string;
    };
    direction: {
        type: PropType<DirectionType>;
        default: string;
    };
    menu: {
        type: PropType<ConversationsItemMenu>;
        default: undefined;
    };
    active: {
        type: BooleanConstructor;
        default: boolean;
    };
    labelRender: {
        type: PropType<ConversationsItemProps["labelRender"]>;
        default: undefined;
    };
    iconRender: {
        type: PropType<ConversationsItemProps["iconRender"]>;
        default: undefined;
    };
    labelRenderSlot: {
        type: PropType<ConversationsItemProps["labelRenderSlot"]>;
        default: undefined;
    };
    iconRenderSlot: {
        type: PropType<ConversationsItemProps["iconRenderSlot"]>;
        default: undefined;
    };
    classes: {
        type: PropType<ConversationsItemProps["classes"]>;
        default: undefined;
    };
    style: {
        type: PropType<ConversationsItemProps["style"]>;
        default: undefined;
    };
    onClick: {
        type: PropType<ConversationsProps["onActiveChange"]>;
        default: undefined;
    };
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    info: {
        type: PropType<ConversationItemType>;
        required: true;
    };
    index: {
        type: NumberConstructor;
        default: number;
    };
    prefixCls: {
        type: StringConstructor;
        default: string;
    };
    direction: {
        type: PropType<DirectionType>;
        default: string;
    };
    menu: {
        type: PropType<ConversationsItemMenu>;
        default: undefined;
    };
    active: {
        type: BooleanConstructor;
        default: boolean;
    };
    labelRender: {
        type: PropType<ConversationsItemProps["labelRender"]>;
        default: undefined;
    };
    iconRender: {
        type: PropType<ConversationsItemProps["iconRender"]>;
        default: undefined;
    };
    labelRenderSlot: {
        type: PropType<ConversationsItemProps["labelRenderSlot"]>;
        default: undefined;
    };
    iconRenderSlot: {
        type: PropType<ConversationsItemProps["iconRenderSlot"]>;
        default: undefined;
    };
    classes: {
        type: PropType<ConversationsItemProps["classes"]>;
        default: undefined;
    };
    style: {
        type: PropType<ConversationsItemProps["style"]>;
        default: undefined;
    };
    onClick: {
        type: PropType<ConversationsProps["onActiveChange"]>;
        default: undefined;
    };
}>> & Readonly<{}>, {
    prefixCls: string;
    direction: DirectionType;
    style: any;
    menu: ConversationsItemMenu;
    active: boolean;
    classes: any;
    onClick: ((value: ConversationItemType["key"], item?: import('./interface').ItemType) => void) | undefined;
    labelRender: import('./interface').ConversationItemRender;
    iconRender: import('./interface').ConversationItemRender;
    index: number;
    labelRenderSlot: ((info: ConversationItemRenderInfo) => VNodeChild) | undefined;
    iconRenderSlot: ((info: ConversationItemRenderInfo) => VNodeChild) | undefined;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default ConversationsItem;
