import { CourierInboxThemeManager } from '../types/courier-inbox-theme-manager';
import { CourierInboxHeaderMenuItemId } from './courier-inbox-header';
import { CourierInboxIcon } from '../types/courier-inbox-theme';
export type CourierInboxMenuOptionType = 'filters' | 'actions';
export type CourierInboxMenuOption = {
    id: CourierInboxHeaderMenuItemId;
    text: string;
    icon: CourierInboxIcon;
    selectionIcon?: CourierInboxIcon | null;
    onClick: (option: CourierInboxMenuOption) => void;
};
export declare class CourierInboxOptionMenu extends HTMLElement {
    private _themeSubscription;
    private _type;
    private _selectedIndex;
    private _options;
    private _selectable;
    private _onMenuOpen;
    private _menuButton;
    private _menu;
    private _style;
    constructor(themeManager: CourierInboxThemeManager, type: CourierInboxMenuOptionType, selectable: boolean, options: CourierInboxMenuOption[], onMenuOpen: () => void);
    private getStyles;
    private refreshTheme;
    setOptions(options: CourierInboxMenuOption[]): void;
    private refreshMenuItems;
    private toggleMenu;
    private handleOutsideClick;
    closeMenu(): void;
    selectOption(option: CourierInboxMenuOption): void;
    disconnectedCallback(): void;
}
