import { MaybeRefOrGetter } from 'vue';
import type { Groupable, ConversationsProps, ItemType } from '../interface';
export type GroupListItem = {
    data: ItemType[];
    name?: string;
    title?: Groupable['title'];
    label?: Groupable['label'];
    collapsible?: boolean;
    /** When false, render items flat without GroupTitle (dividers / ungrouped). */
    enableGroup?: boolean;
};
declare const useGroupable: (groupable?: MaybeRefOrGetter<ConversationsProps["groupable"]>, items?: MaybeRefOrGetter<ItemType[]>) => import("vue").ComputedRef<{
    groupList: GroupListItem[];
    enableGroup: boolean;
    collapsibleOptions: {
        defaultExpandedKeys: string[] | undefined;
        expandedKeys: string[] | undefined;
        onExpand: Groupable["onExpand"];
    };
    hasCollapsible: boolean;
}>;
export default useGroupable;
