/**
 * @jsxFrag
 * @jsxRuntime classic
 * @jsx jsx
 */
import React, { type ReactNode } from 'react';
import type { UIAnalyticsEvent } from '@atlaskit/analytics-next';
import type { MenuItemCommonProps, MenuItemSlots } from '../types';
export type ExpandableMenuItemTriggerProps = MenuItemCommonProps & Omit<MenuItemSlots, 'actionsOnHover' | 'elemBefore'> & {
    /**
     * `ReactNode` to be placed visually after the `children` and will
     * only be displayed on hover or focus, or when the expandable menu item
     * is expanded.
     *
     * It is intended for additional actions (e.g. IconButtons).
     *
     * This `ReactNode` will replace `elemAfter` on hover/focus or when expanded.
     *
     * This `ReactNode` will be rendered visually on top of the main
     * interactive element for the menu item. If this element does not
     * contain an interactive element (`button` or `a`) then `pointer-events`
     * will be set to `none` on this slot so that users can click through
     * this element onto the main interactive element of the menu item.
     */
    actionsOnHover?: ReactNode;
    /**
     * The element to display before the content of the menu item.
     *
     * By default, a chevron icon will be displayed in this slot. If a custom `elemBefore`
     * is provided, the custom element will replaced by the chevron icon while the user is
     * hovering or focused on the item.
     *
     * `ExpandableMenuItemTrigger` does not respect `COLLAPSE_ELEM_BEFORE` as a chevron
     * will always be displayed.
     */
    elemBefore?: ReactNode;
    /**
     * Indicates that the menu item is selected.
     */
    isSelected?: boolean;
    /**
     * If provided, the chevron icon (expand/collapse symbol) will be rendered within a separate
     * icon button element. Clicking on this icon button will not trigger the `onClick` event. It
     * will only expand or collapse the expandable.
     *
     * If a `href` is not provided, the chevron icon is rendered as part of the element.
     */
    href?: string;
    /**
     * Called when the user has clicked on the trigger content.
     *
     * __It is not called when the user clicks on the expand/collapse chevron icon button.__
     * This is to differentiate a click that will only "expand" the menu item _without selecting it_,
     * from a click to expand _and_ "select" or navigate to the menu item.
     *
     * If you need a callback for when the user expands or collapses the expandable, use
     * `onExpansionToggle` on the `ExpandableMenuItem` component instead.
     */
    onClick?: (event: React.MouseEvent<HTMLAnchorElement | HTMLButtonElement>, analyticsEvent: UIAnalyticsEvent, analyticsAttributes: {
        isExpanded: boolean;
    }) => void;
};
/**
 * __ExpandableMenuItemTrigger__
 *
 * The trigger component for an `ExpandableMenuItem`. Interacting with it will expand or collapse the expandable.
 */
export declare const ExpandableMenuItemTrigger: React.ForwardRefExoticComponent<React.PropsWithoutRef<ExpandableMenuItemTriggerProps> & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement>>;
