UNPKG

@trycourier/courier-ui-inbox

Version:

Inbox components for the Courier web UI

33 lines (32 loc) 1.27 kB
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; }