import { type BrowserWindow, type KeyboardEvent, type MenuItem, type MenuItemConstructorOptions } from 'electron'; import { type Observable } from 'rxjs'; import { type Stream } from 'xstream'; export declare type MenuItemOptions = Omit & { submenu?: MenuItemOptions[]; }; interface MenuItemClickEvent { menuItem: MenuItem; browserWindow: BrowserWindow; event: KeyboardEvent; } export declare class ApplicationMenuSource { private readonly menuItemClick$; constructor(sink$: Observable); select(id: T): Observable; private readonly handleUpdateMenu; } export declare function makeApplicationMenuDriver(): (xs$: Stream) => ApplicationMenuSource; export {};