import { AutoHideSide } from './AutoHideManager.js'; import { ContainerType } from "./ContainerType.js"; import { Dialog } from "./Dialog.js"; import { DockManager } from "./DockManager.js"; import { EventHandler } from "./EventHandler.js"; import { Point } from "./Point.js"; import { TabPage } from './TabPage.js'; import { UndockInitiator } from "./UndockInitiator.js"; import { PanelType } from "./enums/PanelType.js"; import { IContextMenuProvider } from "./interfaces/IContextMenuProvider.js"; import { IDockContainer } from "./interfaces/IDockContainer.js"; import { IDockContainerWithSize } from "./interfaces/IDockContainerWithSize.js"; import { ISize } from "./interfaces/ISize.js"; import { IState } from "./interfaces/IState.js"; /** * This dock container wraps the specified element on a panel frame with a title bar and close button */ export declare class PanelContainer implements IDockContainerWithSize, IContextMenuProvider { closePanelContainerCallback: (panelContainer: PanelContainer) => Promise; onTitleChanged: (panelContainer: PanelContainer, title: string) => void; elementPanel: HTMLDivElement; elementTitle: HTMLDivElement; elementTitleText: HTMLDivElement; elementContentHost: HTMLDivElement; name: string; state: ISize; elementContent: HTMLElement & { resizeHandler?: any; _dockSpawnPanelContainer: PanelContainer; }; private _resolvedElementContent; elementContentContainer: HTMLElement; elementContentWrapper: HTMLElement; dockManager: DockManager; title: string; containerType: ContainerType; icon: string; hasChanges: boolean; minimumAllowedChildNodes: number; isDialog: boolean; eventListeners: any[]; undockInitiator: UndockInitiator; elementButtonClose: HTMLDivElement; elementButtonAutoHide: HTMLButtonElement; elementButtonFullscreen: HTMLButtonElement; _hideFullscreenButton: boolean; private fullscreen?; closeButtonClickedHandler: EventHandler; closeButtonTouchedHandler: EventHandler; mouseDownHandler: EventHandler; touchDownHandler: EventHandler; panelType: PanelType; tabPage?: TabPage; undockedToNewBrowserWindow: boolean; contextMenuHandler: EventHandler; lastDialogSize?: ISize; _floatingDialog?: Dialog; _canUndock: boolean; _cachedWidth: number; _cachedHeight: number; _hideCloseButton: boolean; private destroyed; _grayOut: HTMLDivElement; _ctxMenu: HTMLDivElement; private _contextMenuProvider; constructor(elementContent: HTMLElement, dockManager: DockManager, title?: string, panelType?: PanelType, hideCloseButton?: boolean); _initialize(): void; static createContextMenuContentCallback: (panelContainer: PanelContainer) => Node[]; createContextMenuItems(): Node[]; oncontextMenuClicked(e: MouseEvent): void; closeContextMenu(): void; windowsContextMenuClose(e: Event): void; canUndock(state: boolean): void; addListener(listener: any): void; removeListener(listener: any): void; get floatingDialog(): Dialog; set floatingDialog(value: Dialog); static loadFromState(state: IState, dockManager: DockManager): Promise; saveState(state: IState): void; loadState(state: IState): void; setActiveChild(): void; get containerElement(): HTMLDivElement; grayOut(show: boolean): void; onMouseDown(): void; hideCloseButton(state: boolean): void; destroy(): void; /** * Undocks the panel and and converts it to a dialog box */ performUndockToDialog(e: any, dragOffset: Point): Dialog; /** * Closes the panel */ private performClose; /** * Undocks the container and from the layout hierarchy * The container would be removed from the DOM */ performUndock(): void; prepareForDocking(): void; get width(): number; set width(value: number); get height(): number; set height(value: number); get resolvedElementContent(): HTMLElement; private panelDocked; resize(width: number, height: number): Promise; _setPanelDimensions(width: number, height: number): Promise; setDialogPosition(x: number, y: number): void; setVisible(isVisible: boolean): void; get isFullscreen(): boolean; /** Hide this panel's fullscreen controls independently of the global opt-in. */ hideFullscreenButton(hidden: boolean): void; createFullscreenButton(): HTMLButtonElement; updateFullscreenButton(): void; /** Fill the manager's container without changing the dock tree or using browser fullscreen. */ setFullscreen(enabled: boolean): void; private resizeFullscreen; get isAutoHidden(): boolean; /** Collapse a tool panel to an edge tab, or pin it back into the layout. */ setAutoHide(enabled: boolean, side?: AutoHideSide): void; updateAutoHideButton(): void; setTitle(title: string): void; setTitleIcon(icon: string): void; setHasChanges(changes: boolean): void; setCloseIconTemplate(closeIconTemplate: string): void; _updateTitle(): void; getRawTitle(): string; performLayout(children: IDockContainer[], relayoutEvenIfEqual: boolean): void; onCloseButtonClicked(e: Event): void; undockToBrowserDialog(): void; close(): Promise; private closeInternal; }