import { Accessibility } from '../../types'; /** * @description * Adds tabIndex='0' to 'trigger' slot, if it is not tabbable element and no tabIndex attribute provided. * * @specification * Adds attribute 'aria-disabled=true' to 'trigger' slot if 'disabled' property is true. Does not set the attribute otherwise. * Adds attribute 'role=dialog' to 'popup' slot if 'trapFocus' property is true. Sets the attribute to 'complementary' otherwise. * Adds attribute 'aria-modal=true' to 'popup' slot if 'trapFocus' property is true. Does not set the attribute otherwise. */ export declare const popupBehavior: Accessibility; declare type PopupEvents = 'click' | 'hover' | 'focus' | 'context'; declare type RestrictedClickEvents = 'click' | 'focus'; declare type RestrictedHoverEvents = 'hover' | 'focus' | 'context'; declare type PopupEventsArray = RestrictedClickEvents[] | RestrictedHoverEvents[]; export declare type PopupBehaviorProps = { /** Indicates if focus should be trapped inside popup's container. */ trapFocus?: boolean | object; /** Events triggering the popup. */ on?: PopupEvents | PopupEventsArray; /** Indicates if popup's trigger is disabled. */ disabled?: boolean; /** Element which triggers popup */ trigger?: { props?: { /** Element type. */ as?: string; href?: string; tabIndex?: string; }; /** Element type. */ type?: string; }; /** Whether the trigger should be tabbable */ tabbableTrigger?: boolean; /** Whether the popup was opened by right click */ isOpenedByRightClick?: boolean; }; export {};