import { ComponentVariablesInput } from '@fluentui/styles';
import * as React from 'react';
import { Accessibility } from '@fluentui/accessibility';
import { MenuItemProps } from './MenuItem';
export declare type MenuContextValue = {
    activeIndex: number;
    vertical: boolean;
    variables: ComponentVariablesInput;
    onItemClick: (e: React.KeyboardEvent | React.MouseEvent, itemProps: MenuItemProps) => void;
    onItemSelect: (e: React.KeyboardEvent | React.MouseEvent, itemIndex: number) => void;
    slotProps: {
        item: Record<string, any>;
        divider: Record<string, any>;
    };
    behaviors: {
        item: Accessibility;
        divider: Accessibility;
    };
};
export declare type MenuItemSubscribedValue = Pick<MenuContextValue, 'variables' | 'onItemClick' | 'onItemSelect' | 'vertical'> & {
    slotProps: MenuContextValue['slotProps']['item'];
    accessibility: MenuContextValue['behaviors']['item'];
    active: boolean;
};
export declare type MenuDividerSubscribedValue = Pick<MenuContextValue, 'variables'> & {
    slotProps: MenuContextValue['slotProps']['divider'];
    accessibility: MenuContextValue['behaviors']['divider'];
};
export declare const MenuContext: import("@fluentui/react-bindings").Context<MenuContextValue>;
export declare const MenuContextProvider: React.Provider<MenuContextValue> & React.FC<React.ProviderProps<MenuContextValue>>;
