/**
* Dropdown Menu Component
* Shows a menu when clicking the floating button with options for DevTools and Preferences
*/
declare const DEVTOOLS_ICON = "";
declare const PREFERENCES_ICON = "";
declare const EYE_ICON = "";
export type CornerPosition = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
export interface MenuItem {
id: string;
label: string;
description?: string;
icon?: string;
/** Type of menu item - 'action' triggers onClick, 'toggle' shows a switch */
type?: 'action' | 'toggle';
/** For toggle items: whether the toggle is checked */
checked?: boolean;
onClick: () => void;
}
export interface DropdownMenuOptions {
items: MenuItem[];
position: CornerPosition;
/** Reference element to position the menu relative to */
referenceElement?: HTMLElement;
onOpen?: () => void;
onClose?: () => void;
}
export interface DropdownMenuInstance {
element: HTMLElement;
isOpen: () => boolean;
open: () => void;
close: () => void;
toggle: () => void;
updatePosition: (position: CornerPosition) => void;
setReferenceElement: (element: HTMLElement) => void;
/** Update a menu item's checked state */
updateItemChecked: (itemId: string, checked: boolean) => void;
destroy: () => void;
}
/**
* Creates a dropdown menu
*/
export declare function createDropdownMenu(options: DropdownMenuOptions): DropdownMenuInstance;
export { detectPreferenceTrigger as detectPreferenceCenterTrigger, getPreferenceCenterOpener, } from '../utils/preference-trigger';
export { DEVTOOLS_ICON, EYE_ICON, PREFERENCES_ICON };