declare class DzPaneMgr extends QWidget {

    /* Properties */
    modal: boolean;
    windowModality: number;
    geometry: QObject;
    frameGeometry: QObject;
    normalGeometry: QObject;
    pos: QObject;
    frameSize: QObject;
    size: QObject;
    rect: QObject;
    childrenRect: QObject;
    childrenRegion: QObject;
    minimumSize: QObject;
    maximumSize: QObject;
    minimumWidth: number;
    minimumHeight: number;
    maximumWidth: number;
    maximumHeight: number;
    sizeIncrement: QObject;
    baseSize: QObject;
    cursor: QObject;
    mouseTracking: boolean;
    isActiveWindow: boolean;
    focusPolicy: number;
    focus: boolean;
    contextMenuPolicy: number;
    updatesEnabled: boolean;
    visible: boolean;
    minimized: boolean;
    maximized: boolean;
    fullScreen: boolean;
    sizeHint: QObject;

    acceptDrops: boolean;
    windowTitle: string;
    windowIcon: QObject;
    windowIconText: string;
    windowOpacity: number;
    windowModified: boolean;
    accessibleName: string;
    accessibleDescription: string;
    layoutDirection: number;
    autoFillBackground: boolean;
    styleSheet: string;
    locale: QObject;
    windowFilePath: string;
    inputMethodHints: number;
    NO_DOCKING: number;
    DOCK_LEFT: number;
    DOCK_TOP: number;
    DOCK_RIGHT: number;
    DOCK_BOTTOM: number;
    DOCK_CENTER: number;

    /* Methods */
    customContextMenuRequested(): any; // TODO ;
    setEnabled(): any; // TODO ;
    setDisabled(): any; // TODO ;
    setWindowModified(): any; // TODO ;
    setWindowTitle(): any; // TODO ;
    setStyleSheet(): any; // TODO ;
    setFocus(): any; // TODO ;
    update(): any; // TODO ;
    repaint(): any; // TODO ;
    setVisible(): any; // TODO ;
    setHidden(): any; // TODO ;
    show(): any; // TODO ;
    hide(): any; // TODO ;
    setShown(): any; // TODO ;
    showMinimized(): any; // TODO ;
    showMaximized(): any; // TODO ;
    showFullScreen(): any; // TODO ;
    showNormal(): any; // TODO ;
    close(): any; // TODO ;
    raise(): any; // TODO ;
    lower(): any; // TODO ;
    updateMicroFocus(): any; // TODO ;
    layoutListChanged(): void;
    activeLayoutAboutToChange(newLayoutIdx: number): void;
    activeLayoutChanged(which: number): void;
    toolbarListChanged(): void;
    activityBarEnabled(onOff: boolean): void;
    layoutRestored(filename: QString): void;
    orientTabsAlongTopChanged(onOff: boolean): void;
    workflowAssistanceModeChanged(): void;
    workflowAssistanceEnableStateChanged(onOff: boolean): void;
    setSessionLayout(filename: QString): DzError;

    saveLayout(filename: QString, description?: QString): DzError;

    restoreLayout(root: QDomElement): void;
    restoreLayout(filename: QString): DzError;
    restoreLayout(filename: QString, executeScript: boolean): DzError;

    showPane(pane: DzPane): DzError;
    showPane(className: QString): DzError;
    showAllPanes(): void;
    hidePane(pane: DzPane): DzError;
    hidePane(className: QString): DzError;
    hideAllPanes(): void;
    togglePane(pane: DzPane): DzError;
    togglePane(className: QString): DzError;
    togglePane(index: number): DzError;
    togglePane(pane: DzPane): DzError;
    togglePane(className: QString): DzError;
    togglePane(index: number): DzError;
    togglePane(pane: DzPane): DzError;
    togglePane(className: QString): DzError;
    togglePane(index: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    tearOffPane(pane: DzPane, x: number, y: number): DzError;
    tearOffPane(className: QString, x: number, y: number): DzError;
    tearOffPane(index: number, x: number, y: number): DzError;
    showPaneGroup(group: DzPaneGroup): DzError;
    showPaneGroup(which: number): DzError;
    showPaneGroup(group: DzPaneGroup): DzError;
    showPaneGroup(which: number): DzError;
    hidePaneGroup(group: DzPaneGroup): DzError;
    hidePaneGroup(which: number): DzError;
    hidePaneGroup(group: DzPaneGroup): DzError;
    hidePaneGroup(which: number): DzError;
    clearAllGroups(): void;
    movePaneGroup(group: DzPaneGroup, dock: number): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number, index: number, newLine: boolean): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number, index: number, newLine: boolean): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number, index: number, newLine: boolean): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number): DzError;
    movePaneGroup(group: DzPaneGroup, dock: number, index: number, newLine: boolean): DzError;
    createToolBar(name: QString): DzToolBar;
    removeToolBar(name: QString): void;
    removeAllToolBars(): void;
    hideAllToolBars(): void;
    createActivityLayout(name: QString, description: QString): DzActivityLayout;
    addActivityLayout(layout: DzActivityLayout): void;
    removeActivityLayout(name: QString): boolean;
    removeActivityLayout(which: number): boolean;
    removeActivityLayout(name: QString): boolean;
    removeActivityLayout(which: number): boolean;
    removeAllActivityLayouts(): void;
    setActiveActivityLayout(which: DzActivityLayout): void;
    setActiveActivityLayout(which: number): void;
    setActiveActivityLayout(which: DzActivityLayout): void;
    setActiveActivityLayout(which: number): void;
    enableActivityBar(onOff: boolean): void;
    setActivityBarImage(img: QString): void;
    loadNextActivityBarImage(): void;
    setPaneEnabled(pane: DzPane, enabled: boolean): DzError;
    setPaneEnabled(className: QString, enabled: boolean): DzError;
    setPaneEnabled(pane: DzPane, enabled: boolean): DzError;
    setPaneEnabled(className: QString, enabled: boolean): DzError;

    /**
     * The path to the file that is the layout for this session of the application.
     */
    getSessionLayout(): QString;

    getDefaultLayoutNames(): String[];
    getDefaultLayout(): QString;
    getSimpleLayout(): QString;
    getBasicLayout(): QString;
    getStandardLayout(): QString;
    getAdvancedLayout(): QString;
    getProLayout(): any; // TODO ;
    getNumPanes(): number;
    getPaneList(): QObject[];
    getPaneGroupList(): QObject[];
    findPane(className: QString): DzPane;
    getNumPaneGroups(): number;
    getPaneGroup(which: number): DzPaneGroup;
    isUnpinnedMenu(pane: DzPane): boolean;
    getNumToolBars(): number;
    getToolBar(i: number): DzToolBar;
    findToolBar(name: QString): DzToolBar;
    getNumDockBars(): number;
    getDockBar(i: number): DzDockBar;
    findDockBar(className: QString): DzDockBar;
    findDockBarByName(name: QString): DzDockBar;
    getNumActivityLayouts(): number;
    getActivityLayout(which: number): DzActivityLayout;
    findActivityLayout(name: QString): DzActivityLayout;
    getActiveActivityLayout(): DzActivityLayout;
    getActiveActivityLayoutIndex(): number;
    isActivityBarEnabled(): boolean;
    getActivityBarImage(): QString;
    getActivityBarImageList(): String[];
    createEmptyPaneGroup(): DzPaneGroup;
    closeAllPaneGroupDlgs(): void;
    getPaneGroupDlg(which: number): DzPaneGroupDlg;
    getNumPaneGroupDlgs(): number;
    addPaneGroupDlg(dlg: DzPaneGroupDlg): void;
    removePaneGroupDlg(dlg: DzPaneGroupDlg): void;
    removePaneGroup(group: DzPaneGroup): void;
    setShowLessonStrip(onOff: boolean): void;
    getShowLessonStrip(): boolean;
    selectLesson(path: QString): boolean;
    setOrientTabsAlongTop(onOff: boolean): void;
    getOrientTabsAlongTop(): boolean;
    setUseWorkflowAssistance(onOff: boolean): void;
    getUseWorkflowAssistance(): boolean;
}