import { WrappedTab } from './components/tab/defaultTab';
import { GroupPanelPartInitParameters, IActionsRenderer, IContentRenderer, ITabRenderer } from '../groupview/types';
import { GroupviewPanel } from '../groupview/groupviewPanel';
import { IDisposable } from '../lifecycle';
import { GroupPanelUpdateEvent } from '../groupview/groupPanel';
export interface IGroupPanelView extends IDisposable {
    readonly content: IContentRenderer;
    readonly tab?: ITabRenderer;
    readonly actions?: IActionsRenderer;
    update(event: GroupPanelUpdateEvent): void;
    layout(width: number, height: number): void;
    init(params: GroupPanelPartInitParameters): void;
    updateParentGroup(group: GroupviewPanel, isPanelVisible: boolean): void;
    toJSON(): {};
}
export declare class DefaultGroupPanelView implements IGroupPanelView {
    private readonly _content;
    private readonly _tab;
    private readonly _actions;
    get content(): IContentRenderer;
    get tab(): WrappedTab;
    get actions(): IActionsRenderer | undefined;
    constructor(renderers: {
        content: IContentRenderer;
        tab?: ITabRenderer;
        actions?: IActionsRenderer;
    });
    init(params: GroupPanelPartInitParameters): void;
    updateParentGroup(group: GroupviewPanel, isPanelVisible: boolean): void;
    layout(width: number, height: number): void;
    update(event: GroupPanelUpdateEvent): void;
    toJSON(): {};
    dispose(): void;
}
