import { DiffDOM } from "diff-dom"; import type { EditorView } from "prosemirror-view"; import type { Editor } from "../../types.js"; interface HeaderbarBaseItem { id?: string; order?: number; disabled?: (editor: Editor) => boolean; selected?: (editor: Editor) => boolean; available?: (editor: Editor) => boolean; icon?: string; } interface HeaderbarActionItem extends HeaderbarBaseItem { type: "action"; title: string | ((editor: Editor) => string); tooltip?: string | ((editor: Editor) => string); icon?: string; action: (editor: Editor) => void; } interface HeaderbarSettingItem extends HeaderbarBaseItem { type: "setting"; title: string | ((editor: Editor) => string); tooltip?: string | ((editor: Editor) => string); icon?: string; action: (editor: Editor) => void; } interface HeaderbarSeparatorItem extends HeaderbarBaseItem { type: "separator"; } interface HeaderbarMenuItem extends HeaderbarBaseItem { type: "menu"; title: string | ((editor: Editor) => string); tooltip?: string | ((editor: Editor) => string); keys?: string; open: boolean; content: HeaderbarItem[]; } type HeaderbarItem = HeaderbarActionItem | HeaderbarSettingItem | HeaderbarSeparatorItem | HeaderbarMenuItem; interface HeaderbarModel { open: boolean; content: HeaderbarMenuItem[]; } export declare class HeaderbarView { editorView: EditorView; options: { editor: Editor; }; editor: Editor; dd: DiffDOM; headerEl: Element; listeners: { onclick?: (event: MouseEvent) => void; onKeydown?: (event: KeyboardEvent) => void; onKeyup?: (event: KeyboardEvent) => void; onFocusout?: (event: FocusEvent) => void; }; parentChain: HeaderbarMenuItem[]; openMenu: HeaderbarMenuItem | null; cursorMenuItem: HeaderbarItem | null; constructor(editorView: EditorView, options: { editor: Editor; }); removeUnavailable(menu: HeaderbarModel | HeaderbarMenuItem): void; addMissingIds(menu: HeaderbarModel | HeaderbarMenuItem): void; bindEvents(): void; destroy(): void; onclick(event: MouseEvent): void; executeMenuItem(menuItem: HeaderbarItem, menu: HeaderbarMenuItem): void; closeAllMenu(menu: HeaderbarMenuItem): void; closeOtherMenu(menu: HeaderbarMenuItem, currentMenuItem: HeaderbarMenuItem): void; onKeydown(event: KeyboardEvent): void; onKeyup(event: KeyboardEvent): void; changeCursorMenuItem(name: string): void; getAccessKeyHTML(title: string, accessKey: string | undefined): string; saveFileName(): void; onFocusout(event: FocusEvent): void; checkKeys(event: KeyboardEvent, menu: HeaderbarModel | HeaderbarMenuItem, nameKey: string): void; update(): void; getPathText(): string; getTitle(): string; getHeaderHTML(): string; getParticipantListHTML(): string; getHeaderNavHTML(): string; getMenuHTML(menu: HeaderbarMenuItem): string; getMenuItemHTML(menuItem: HeaderbarItem): string; getActionMenuItemHTML(menuItem: HeaderbarActionItem | HeaderbarSettingItem): string; getMenuMenuItemHTML(menuItem: HeaderbarMenuItem): string; } export {}; //# sourceMappingURL=view.d.ts.map