import { BasePart, LazyUiParts, UiPartComponent, UiPartConfig } from '.'; import { Modal } from '../../ui/modal'; import { MenuFooterPart } from './menu/footer'; import { SitePart } from './menu/site'; import { TemplateResult } from '@blinkk/selective-edit'; import { UsersPart } from './menu/users'; import { WorkspacesPart } from './menu/workspaces'; import { DataStorage } from '../../../utility/dataStorage'; import { EditorState } from '../../state'; export interface MenuPartConfig extends UiPartConfig { /** * State class for working with editor state. */ state: EditorState; storage: DataStorage; } /** * Ui part for displaying the menu. * * The menu can be displayed in a docked state or as a floating menu. * * When it is docked the template renders normally, but when it is * not docked it is rendered using a modal overlay. */ export declare class MenuPart extends BasePart implements UiPartComponent { config: MenuPartConfig; isDocked: boolean; modal?: Modal; parts: LazyUiParts; constructor(config: MenuPartConfig); protected createModal(): Modal; classesForPart(): Record; /** * Close the menu when it is not docked. */ close(): void; /** * Dock the menu. */ dock(): void; /** * Open the menu when it is not docked. */ open(): void; get partFooter(): MenuFooterPart; get partSite(): SitePart; get partUsers(): UsersPart; get partWorkspaces(): WorkspacesPart; template(): TemplateResult; templateActionDocking(): TemplateResult; templateActionClose(): TemplateResult; templateContent(): TemplateResult; templateMenu(): TemplateResult; templateStructure(): TemplateResult; /** * Toggle the menu when it is not docked. */ toggle(): void; /** * Undock the menu. */ undock(): void; }