import { HTMLWidget, Widget } from "@hpcc-js/common";
import { DockPanel as PhosphorDockPanel, IMessageHandler, IMessageHook, Message } from "./phosphor-shim.ts";
import { IClosable, WidgetAdapter } from "./WidgetAdapter.ts";
import "../src/DockPanel.css";
export declare class DockPanel extends HTMLWidget implements IMessageHandler, IMessageHook {
private _dock;
constructor();
protected getWidgetAdapter(widget: Widget): WidgetAdapter | null;
addWidget(widget: Widget, title: string, location?: PhosphorDockPanel.InsertMode, refWidget?: Widget, closable?: boolean | IClosable, padding?: number): this;
removeWidget(widget: Widget): this;
isVisible(widget: Widget): boolean;
widgetAdapters(): WidgetAdapter[];
widgets(): Widget[];
layout(): object;
layout(_: object): this;
private _layoutObj;
layoutObj(_: object | null): this;
private _pPlaceholder;
enter(domNode: any, element: any): void;
_prevHideSingleTabs: any;
update(domNode: any, element: any): void;
exit(domNode: any, element: any): void;
render(callback?: (w: Widget) => void): this;
refit(): void;
messageHook(handler: IMessageHandler, msg: Message): boolean;
private _lazyLayoutChanged;
_prevActive: Widget;
processMessage(msg: Message): void;
active(): Widget;
childActivation(w: Widget, wa: WidgetAdapter): void;
layoutChanged(): void;
}
export interface DockPanel {
hideSingleTabs(): boolean;
hideSingleTabs(_: boolean): this;
}