UNPKG

dockview

Version:

Zero dependency layout manager supporting tabs, grids and splitviews with ReactJS support

42 lines (41 loc) 1.49 kB
import { DockviewPanelApi } from '../api/groupPanelApi'; import { Event } from '../events'; import { IDisposable } from '../lifecycle'; import { HeaderPartInitParameters } from './types'; import { IPanel, PanelInitParameters, PanelUpdateEvent, Parameters } from '../panel/types'; import { GroupviewPanel } from './groupviewPanel'; import { IGroupPanelView } from '../dockview/defaultGroupPanelView'; export interface IGroupPanelInitParameters extends PanelInitParameters, HeaderPartInitParameters { view: IGroupPanelView; } export declare type GroupPanelUpdateEvent = PanelUpdateEvent<{ params?: Parameters; title?: string; suppressClosable?: boolean; }>; export interface IGroupPanel extends IDisposable, IPanel { readonly view?: IGroupPanelView; readonly group?: GroupviewPanel; readonly api: DockviewPanelApi; readonly title: string; readonly suppressClosable: boolean; updateParentGroup(group: GroupviewPanel, isGroupActive: boolean): void; setDirty(isDirty: boolean): void; close?(): Promise<boolean>; init(params: IGroupPanelInitParameters): void; onDidStateChange: Event<void>; toJSON(): GroupviewPanelState; update(event: GroupPanelUpdateEvent): void; } export interface GroupviewPanelState { id: string; view?: any; title: string; params?: { [key: string]: any; }; suppressClosable?: boolean; state?: { [key: string]: any; }; }