import React from 'react';
import { ButtonDropdownProps, LinkItem } from '../interfaces';
import { NonCancelableEventHandler } from '../../internal/events';
interface UseButtonDropdown {
    (props: {
        items: ButtonDropdownProps.Items;
        onItemClick?: NonCancelableEventHandler<ButtonDropdownProps.ItemClickDetails>;
        hasExpandableGroups: boolean;
        isInRestrictedView?: boolean;
        isChild?: boolean;
        usingMouse: React.MutableRefObject<boolean>;
    }): {
        isOpen: boolean;
        highlightedItem?: ButtonDropdownProps.Item | ButtonDropdownProps.ItemGroup | LinkItem;
        expandedItem?: ButtonDropdownProps.ItemGroup;
        onKeyDown: (event: React.KeyboardEvent) => void;
        onKeyUp: (event: React.KeyboardEvent) => void;
        onItemActivate: (item: ButtonDropdownProps.Item | ButtonDropdownProps.ItemGroup, event?: Event) => void;
        toggleDropdown: () => void;
        closeExpanded: () => void;
        onTriggerClick: () => void;
        resetHighlight: () => void;
        goHome: () => void;
    };
}
export declare const useButtonDropdown: UseButtonDropdown;
export {};
